This commit is contained in:
erike 2023-09-10 20:35:22 -06:00
parent 5cf9fcb426
commit a763926c18
18 changed files with 95 additions and 16 deletions

View File

@ -34,7 +34,7 @@
<activity android:name=".posting.posts.viewer.ui.PostViewerActivity" android:theme="@style/Theme.Isolaatti"/>
<activity android:name=".drafts.ui.DraftsActivity" android:theme="@style/Theme.Isolaatti"/>
<activity android:name=".about.AboutActivity" android:theme="@style/Theme.Isolaatti"/>
<activity android:name=".picture_viewer.ui.PictureViewerActivity" android:theme="@style/Theme.Isolaatti"/>
<activity android:name=".images.picture_viewer.ui.PictureViewerActivity" android:theme="@style/Theme.Isolaatti"/>
</application>
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>

View File

@ -24,7 +24,7 @@ import com.isolaatti.common.ErrorMessageViewModel
import com.isolaatti.databinding.FragmentFeedBinding
import com.isolaatti.drafts.ui.DraftsActivity
import com.isolaatti.home.presentation.FeedViewModel
import com.isolaatti.picture_viewer.ui.PictureViewerActivity
import com.isolaatti.images.picture_viewer.ui.PictureViewerActivity
import com.isolaatti.posting.posts.viewer.ui.PostViewerActivity
import com.isolaatti.posting.comments.ui.BottomSheetPostComments
import com.isolaatti.posting.common.domain.OnUserInteractedWithPostCallback

View File

@ -0,0 +1,17 @@
package com.isolaatti.images
import com.isolaatti.connectivity.RetrofitClient
import com.isolaatti.images.image_list.data.remote.ImagesApi
import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
@Module
@InstallIn(SingletonComponent::class)
class Module {
@Provides
fun provideImagesApi(retrofitClient: RetrofitClient): ImagesApi {
return retrofitClient.client.create(ImagesApi::class.java)
}
}

View File

@ -0,0 +1,9 @@
package com.isolaatti.images.image_list.data.remote
data class ImageDto(
val id: String,
val userId: Int,
val name: String,
val squadId: String?,
val idOnFirebase: String
)

View File

@ -0,0 +1,36 @@
package com.isolaatti.images.image_list.data.remote
import com.isolaatti.utils.SimpleData
import okhttp3.RequestBody
import retrofit2.Call
import retrofit2.http.Body
import retrofit2.http.DELETE
import retrofit2.http.GET
import retrofit2.http.Multipart
import retrofit2.http.POST
import retrofit2.http.Part
import retrofit2.http.Path
import retrofit2.http.Query
interface ImagesApi {
@POST("images/of_user/{userId}")
fun getImagesOfUser(@Path("userId") userId: Int,
@Query("lastId") lastId: String?): Call<List<ImageDto>>
@POST("images/create")
@Multipart
fun postImage(@Part("file") file: RequestBody,
@Part("name") name: String,
@Part("setAsProfile") setAsProfile: Boolean? = null,
@Part("squadId") squadId: String? = null): Call<ImageDto>
@DELETE("images/{imageId}")
fun deleteImage(@Path("imageId") imageId: String): Call<Any>
@GET("images/of_squad/{squadId}")
fun getImagesOfSquad(@Path("squadId") squadId: String,
@Query("lastId") lastId: String?): Call<List<ImageDto>>
@POST("/images/{imageId}/rename")
fun renameImage(@Path("imageId") imageId: String, @Body newName: SimpleData<String>)
}

View File

@ -0,0 +1,5 @@
package com.isolaatti.images.image_list.domain.repository
interface ImagesRepository {
}

View File

@ -0,0 +1,6 @@
package com.isolaatti.images.image_list.presentation
import androidx.lifecycle.ViewModel
class ImageListViewModel : ViewModel() {
}

View File

@ -0,0 +1,4 @@
package com.isolaatti.images.image_list.presentation
class ImagesAdapter {
}

View File

@ -1,4 +1,4 @@
package com.isolaatti.profile.ui
package com.isolaatti.images.image_list.ui
import android.os.Bundle
import android.view.LayoutInflater

View File

@ -0,0 +1,4 @@
package com.isolaatti.images.picture_viewer.domain
class Picture {
}

View File

@ -1,8 +1,8 @@
package com.isolaatti.picture_viewer.presentation
package com.isolaatti.images.picture_viewer.presentation
import androidx.fragment.app.Fragment
import androidx.viewpager2.adapter.FragmentStateAdapter
import com.isolaatti.picture_viewer.ui.PictureViewerImageWrapperFragment
import com.isolaatti.images.picture_viewer.ui.PictureViewerImageWrapperFragment
class PictureViewerViewPagerAdapter(fragment: Fragment, private val images: Array<String>) : FragmentStateAdapter(fragment) {
override fun getItemCount(): Int {

View File

@ -1,11 +1,11 @@
package com.isolaatti.picture_viewer.ui
package com.isolaatti.images.picture_viewer.ui
import android.content.Context
import android.content.Intent
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.isolaatti.databinding.ActivityPictureViewerBinding
import com.isolaatti.picture_viewer.presentation.PictureViewerViewPagerAdapter
import com.isolaatti.images.picture_viewer.presentation.PictureViewerViewPagerAdapter
class PictureViewerActivity : AppCompatActivity() {
private lateinit var binding: ActivityPictureViewerBinding

View File

@ -1,4 +1,4 @@
package com.isolaatti.picture_viewer.ui
package com.isolaatti.images.picture_viewer.ui
import android.os.Bundle
import android.util.Log

View File

@ -1,4 +1,4 @@
package com.isolaatti.picture_viewer.ui
package com.isolaatti.images.picture_viewer.ui
import android.os.Bundle
import android.view.LayoutInflater
@ -6,7 +6,7 @@ import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.isolaatti.databinding.FragmentMainPictureViewerBinding
import com.isolaatti.picture_viewer.presentation.PictureViewerViewPagerAdapter
import com.isolaatti.images.picture_viewer.presentation.PictureViewerViewPagerAdapter
class PictureViewerMainFragment : Fragment() {

View File

@ -1,4 +0,0 @@
package com.isolaatti.picture_viewer.domain
class Picture {
}

View File

@ -2,3 +2,5 @@ package com.isolaatti.utils
data class IntIdentificationWrapper(val id: Int)
data class LongIdentificationWrapper(val id: Long)
data class SimpleData<T>(val data: T)

View File

@ -6,6 +6,6 @@
<fragment
android:id="@+id/pictureViewerMainFragment"
android:name="com.isolaatti.picture_viewer.ui.PictureViewerMainFragment"
android:name="com.isolaatti.images.picture_viewer.ui.PictureViewerMainFragment"
android:label="PictureViewerMainFragment" />
</navigation>

View File

@ -35,7 +35,7 @@
android:label="AudiosFragment" />
<fragment
android:id="@+id/imagesFragment"
android:name="com.isolaatti.profile.ui.ImagesFragment"
android:name="com.isolaatti.images.image_list.ui.ImagesFragment"
android:label="ImagesFragment" />
<fragment
android:id="@+id/blockProfileFragment"