chore: unify url constants
This commit is contained in:
parent
4ede85eafb
commit
ebf279cf25
|
|
@ -47,7 +47,6 @@ import androidx.lifecycle.ViewModel
|
||||||
import androidx.lifecycle.viewModelScope
|
import androidx.lifecycle.viewModelScope
|
||||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.StoatAPIError
|
import chat.stoat.api.StoatAPIError
|
||||||
import chat.stoat.api.routes.invites.fetchInviteByCode
|
import chat.stoat.api.routes.invites.fetchInviteByCode
|
||||||
|
|
@ -57,6 +56,7 @@ import chat.stoat.api.settings.SyncedSettings
|
||||||
import chat.stoat.callbacks.ActionChannel
|
import chat.stoat.callbacks.ActionChannel
|
||||||
import chat.stoat.composables.generic.IconPlaceholder
|
import chat.stoat.composables.generic.IconPlaceholder
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.Invite
|
import chat.stoat.core.model.schemas.Invite
|
||||||
import chat.stoat.core.model.schemas.InviteJoined
|
import chat.stoat.core.model.schemas.InviteJoined
|
||||||
import chat.stoat.core.model.util.RsResult
|
import chat.stoat.core.model.util.RsResult
|
||||||
|
|
|
||||||
|
|
@ -41,11 +41,11 @@ import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.text.style.TextOverflow
|
import androidx.compose.ui.text.style.TextOverflow
|
||||||
import androidx.core.view.WindowCompat
|
import androidx.core.view.WindowCompat
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatHttp
|
import chat.stoat.api.StoatHttp
|
||||||
import chat.stoat.core.model.schemas.AutumnResource
|
import chat.stoat.core.model.schemas.AutumnResource
|
||||||
import chat.stoat.api.settings.LoadedSettings
|
import chat.stoat.api.settings.LoadedSettings
|
||||||
import chat.stoat.api.settings.SyncedSettings
|
import chat.stoat.api.settings.SyncedSettings
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.providers.getAttachmentContentUri
|
import chat.stoat.providers.getAttachmentContentUri
|
||||||
import chat.stoat.ui.theme.StoatTheme
|
import chat.stoat.ui.theme.StoatTheme
|
||||||
import io.ktor.client.request.get
|
import io.ktor.client.request.get
|
||||||
|
|
|
||||||
|
|
@ -19,8 +19,8 @@ import androidx.lifecycle.lifecycleScope
|
||||||
import androidx.media3.common.MediaItem
|
import androidx.media3.common.MediaItem
|
||||||
import androidx.media3.exoplayer.ExoPlayer
|
import androidx.media3.exoplayer.ExoPlayer
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatHttp
|
import chat.stoat.api.StoatHttp
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.AutumnResource
|
import chat.stoat.core.model.schemas.AutumnResource
|
||||||
import chat.stoat.databinding.ActivityVideoplayerBinding
|
import chat.stoat.databinding.ActivityVideoplayerBinding
|
||||||
import chat.stoat.providers.getAttachmentContentUri
|
import chat.stoat.providers.getAttachmentContentUri
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ import chat.stoat.api.realtime.DisconnectionState
|
||||||
import chat.stoat.api.realtime.RealtimeSocket
|
import chat.stoat.api.realtime.RealtimeSocket
|
||||||
import chat.stoat.api.routes.user.fetchSelf
|
import chat.stoat.api.routes.user.fetchSelf
|
||||||
import chat.stoat.api.unreads.Unreads
|
import chat.stoat.api.unreads.Unreads
|
||||||
|
import chat.stoat.core.model.data.STOAT_BASE
|
||||||
import chat.stoat.core.model.schemas.AutumnResource
|
import chat.stoat.core.model.schemas.AutumnResource
|
||||||
import chat.stoat.core.model.schemas.ChannelType
|
import chat.stoat.core.model.schemas.ChannelType
|
||||||
import chat.stoat.core.model.schemas.Emoji
|
import chat.stoat.core.model.schemas.Emoji
|
||||||
|
|
@ -54,21 +55,6 @@ import kotlinx.serialization.json.Json
|
||||||
import java.net.SocketException
|
import java.net.SocketException
|
||||||
import chat.stoat.core.model.schemas.Channel as ChannelSchema
|
import chat.stoat.core.model.schemas.Channel as ChannelSchema
|
||||||
|
|
||||||
private const val USE_ALPHA_API = false
|
|
||||||
|
|
||||||
val STOAT_BASE =
|
|
||||||
if (USE_ALPHA_API) "https://alpha.revolt.chat/api" else "https://api.stoat.chat/0.8"
|
|
||||||
const val STOAT_SUPPORT = "https://support.stoat.chat"
|
|
||||||
const val STOAT_MARKETING = "https://stoat.chat"
|
|
||||||
val STOAT_FILES =
|
|
||||||
if (USE_ALPHA_API) "https://alpha.revolt.chat/autumn" else "https://cdn.stoatusercontent.com"
|
|
||||||
val STOAT_PROXY =
|
|
||||||
if (USE_ALPHA_API) "https://alpha.revolt.chat/january" else "https://proxy.stoatusercontent.com"
|
|
||||||
const val STOAT_WEB_APP = "https://stoat.chat"
|
|
||||||
const val STOAT_INVITES = "https://stt.gg"
|
|
||||||
val STOAT_WEBSOCKET =
|
|
||||||
if (USE_ALPHA_API) "wss://alpha.revolt.chat/ws" else "wss://events.stoat.chat"
|
|
||||||
|
|
||||||
fun String.api(): String {
|
fun String.api(): String {
|
||||||
return "$STOAT_BASE$this"
|
return "$STOAT_BASE$this"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
package chat.stoat.api.internals
|
package chat.stoat.api.internals
|
||||||
|
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.api
|
import chat.stoat.api.api
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.User
|
import chat.stoat.core.model.schemas.User
|
||||||
|
|
||||||
object ResourceLocations {
|
object ResourceLocations {
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
package chat.stoat.api.internals
|
package chat.stoat.api.internals
|
||||||
|
|
||||||
import androidx.core.net.toUri
|
import androidx.core.net.toUri
|
||||||
import chat.stoat.api.STOAT_MARKETING
|
|
||||||
import chat.stoat.api.StoatCbor
|
import chat.stoat.api.StoatCbor
|
||||||
|
import chat.stoat.core.model.data.STOAT_MARKETING
|
||||||
import chat.stoat.core.model.schemas.User
|
import chat.stoat.core.model.schemas.User
|
||||||
import kotlinx.serialization.ExperimentalSerializationApi
|
import kotlinx.serialization.ExperimentalSerializationApi
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
|
@ -26,7 +26,7 @@ object UserQR {
|
||||||
StoatCbor.encodeToByteArray(
|
StoatCbor.encodeToByteArray(
|
||||||
UserQRContents.serializer(),
|
UserQRContents.serializer(),
|
||||||
UserQRContents(
|
UserQRContents(
|
||||||
format = "rqr\$user\$0",
|
format = $$"rqr$user$0",
|
||||||
avatar = user.avatar?.id
|
avatar = user.avatar?.id
|
||||||
?: "01JDZRBY95P8AY4CFVX16FFVWS", // Sentinel value for missing avatar
|
?: "01JDZRBY95P8AY4CFVX16FFVWS", // Sentinel value for missing avatar
|
||||||
displayName = user.displayName
|
displayName = user.displayName
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ package chat.stoat.api.realtime
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import androidx.compose.runtime.mutableStateOf
|
import androidx.compose.runtime.mutableStateOf
|
||||||
import chat.stoat.StoatApplication
|
import chat.stoat.StoatApplication
|
||||||
import chat.stoat.api.STOAT_WEBSOCKET
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.StoatHttp
|
import chat.stoat.api.StoatHttp
|
||||||
import chat.stoat.api.StoatJson
|
import chat.stoat.api.StoatJson
|
||||||
|
|
@ -41,13 +40,14 @@ import chat.stoat.api.realtime.frames.sendable.BeginTypingFrame
|
||||||
import chat.stoat.api.realtime.frames.sendable.EndTypingFrame
|
import chat.stoat.api.realtime.frames.sendable.EndTypingFrame
|
||||||
import chat.stoat.api.realtime.frames.sendable.PingFrame
|
import chat.stoat.api.realtime.frames.sendable.PingFrame
|
||||||
import chat.stoat.api.routes.server.fetchMember
|
import chat.stoat.api.routes.server.fetchMember
|
||||||
import chat.stoat.core.model.schemas.Channel
|
|
||||||
import chat.stoat.core.model.schemas.ChannelType
|
|
||||||
import chat.stoat.core.model.util.ChannelVoiceState
|
|
||||||
import chat.stoat.core.model.schemas.Role
|
|
||||||
import chat.stoat.api.settings.LoadedSettings
|
import chat.stoat.api.settings.LoadedSettings
|
||||||
import chat.stoat.api.settings.SyncedSettings
|
import chat.stoat.api.settings.SyncedSettings
|
||||||
import chat.stoat.c2dm.ChannelRegistrator
|
import chat.stoat.c2dm.ChannelRegistrator
|
||||||
|
import chat.stoat.core.model.data.STOAT_WEBSOCKET
|
||||||
|
import chat.stoat.core.model.schemas.Channel
|
||||||
|
import chat.stoat.core.model.schemas.ChannelType
|
||||||
|
import chat.stoat.core.model.schemas.Role
|
||||||
|
import chat.stoat.core.model.util.ChannelVoiceState
|
||||||
import chat.stoat.persistence.Database
|
import chat.stoat.persistence.Database
|
||||||
import chat.stoat.persistence.SqlStorage
|
import chat.stoat.persistence.SqlStorage
|
||||||
import io.ktor.client.plugins.websocket.ws
|
import io.ktor.client.plugins.websocket.ws
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
package chat.stoat.api.routes.microservices.autumn
|
package chat.stoat.api.routes.microservices.autumn
|
||||||
|
|
||||||
import chat.stoat.api.HitRateLimitException
|
import chat.stoat.api.HitRateLimitException
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.StoatHttp
|
import chat.stoat.api.StoatHttp
|
||||||
import chat.stoat.api.StoatJson
|
import chat.stoat.api.StoatJson
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.AutumnError
|
import chat.stoat.core.model.schemas.AutumnError
|
||||||
import chat.stoat.core.model.schemas.AutumnId
|
import chat.stoat.core.model.schemas.AutumnId
|
||||||
import io.ktor.client.plugins.onUpload
|
import io.ktor.client.plugins.onUpload
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
package chat.stoat.api.routes.microservices.january
|
package chat.stoat.api.routes.microservices.january
|
||||||
|
|
||||||
import chat.stoat.api.STOAT_PROXY
|
import chat.stoat.core.model.data.STOAT_PROXY
|
||||||
import java.net.URLEncoder
|
import java.net.URLEncoder
|
||||||
|
|
||||||
fun asJanuaryProxyUrl(url: String): String {
|
fun asJanuaryProxyUrl(url: String): String {
|
||||||
|
|
|
||||||
|
|
@ -17,13 +17,13 @@ import androidx.core.graphics.drawable.IconCompat
|
||||||
import chat.stoat.BuildConfig
|
import chat.stoat.BuildConfig
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.activities.MainActivity
|
import chat.stoat.activities.MainActivity
|
||||||
import chat.stoat.api.STOAT_BASE
|
|
||||||
import chat.stoat.api.StoatJson
|
import chat.stoat.api.StoatJson
|
||||||
import chat.stoat.api.internals.ULID
|
import chat.stoat.api.internals.ULID
|
||||||
import chat.stoat.api.routes.push.subscribePush
|
import chat.stoat.api.routes.push.subscribePush
|
||||||
|
import chat.stoat.c2dm.ChannelRegistrator.Companion.CHANNEL_ID_GROUP_CONVERSATIONS_MESSAGES
|
||||||
|
import chat.stoat.core.model.data.STOAT_BASE
|
||||||
import chat.stoat.core.model.schemas.Message
|
import chat.stoat.core.model.schemas.Message
|
||||||
import chat.stoat.core.model.schemas.User
|
import chat.stoat.core.model.schemas.User
|
||||||
import chat.stoat.c2dm.ChannelRegistrator.Companion.CHANNEL_ID_GROUP_CONVERSATIONS_MESSAGES
|
|
||||||
import chat.stoat.persistence.Database
|
import chat.stoat.persistence.Database
|
||||||
import chat.stoat.persistence.SqlStorage
|
import chat.stoat.persistence.SqlStorage
|
||||||
import com.bumptech.glide.Glide
|
import com.bumptech.glide.Glide
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,6 @@ import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.graphics.Brush
|
import androidx.compose.ui.graphics.Brush
|
||||||
import androidx.compose.ui.text.style.TextOverflow
|
import androidx.compose.ui.text.style.TextOverflow
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.internals.BrushCompat
|
import chat.stoat.api.internals.BrushCompat
|
||||||
import chat.stoat.api.internals.Roles
|
import chat.stoat.api.internals.Roles
|
||||||
import chat.stoat.api.internals.solidColor
|
import chat.stoat.api.internals.solidColor
|
||||||
|
|
@ -16,6 +15,7 @@ import chat.stoat.core.model.schemas.Member
|
||||||
import chat.stoat.core.model.schemas.User
|
import chat.stoat.core.model.schemas.User
|
||||||
import chat.stoat.composables.generic.UserAvatar
|
import chat.stoat.composables.generic.UserAvatar
|
||||||
import chat.stoat.composables.generic.presenceFromStatus
|
import chat.stoat.composables.generic.presenceFromStatus
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.internals.extensions.TransparentListItemColours
|
import chat.stoat.internals.extensions.TransparentListItemColours
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
|
|
|
||||||
|
|
@ -62,7 +62,6 @@ import androidx.compose.ui.unit.sp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.activities.media.ImageViewActivity
|
import chat.stoat.activities.media.ImageViewActivity
|
||||||
import chat.stoat.activities.media.VideoViewActivity
|
import chat.stoat.activities.media.VideoViewActivity
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.internals.BrushCompat
|
import chat.stoat.api.internals.BrushCompat
|
||||||
import chat.stoat.api.internals.MessageFlag
|
import chat.stoat.api.internals.MessageFlag
|
||||||
|
|
@ -86,6 +85,7 @@ import chat.stoat.composables.generic.UserAvatar
|
||||||
import chat.stoat.composables.generic.UserAvatarWidthPlaceholder
|
import chat.stoat.composables.generic.UserAvatarWidthPlaceholder
|
||||||
import chat.stoat.composables.markdown.LocalMarkdownTreeConfig
|
import chat.stoat.composables.markdown.LocalMarkdownTreeConfig
|
||||||
import chat.stoat.composables.markdown.RichMarkdown
|
import chat.stoat.composables.markdown.RichMarkdown
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.internals.text.Gigamoji
|
import chat.stoat.internals.text.Gigamoji
|
||||||
import chat.stoat.internals.text.MessageProcessor
|
import chat.stoat.internals.text.MessageProcessor
|
||||||
import chat.stoat.markdown.jbm.JBM
|
import chat.stoat.markdown.jbm.JBM
|
||||||
|
|
|
||||||
|
|
@ -33,9 +33,9 @@ import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.text.font.FontWeight
|
import androidx.compose.ui.text.font.FontWeight
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
import chat.stoat.composables.media.AudioPlayer
|
import chat.stoat.composables.media.AudioPlayer
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.AutumnResource
|
import chat.stoat.core.model.schemas.AutumnResource
|
||||||
import dev.chrisbanes.haze.hazeEffect
|
import dev.chrisbanes.haze.hazeEffect
|
||||||
import dev.chrisbanes.haze.hazeSource
|
import dev.chrisbanes.haze.hazeSource
|
||||||
|
|
|
||||||
|
|
@ -82,13 +82,13 @@ import androidx.compose.ui.unit.dp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.activities.StoatTweenFloat
|
import chat.stoat.activities.StoatTweenFloat
|
||||||
import chat.stoat.activities.StoatTweenInt
|
import chat.stoat.activities.StoatTweenInt
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.internals.BrushCompat
|
import chat.stoat.api.internals.BrushCompat
|
||||||
import chat.stoat.core.model.schemas.ChannelType
|
import chat.stoat.core.model.schemas.ChannelType
|
||||||
import chat.stoat.core.model.schemas.Member
|
import chat.stoat.core.model.schemas.Member
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
import chat.stoat.composables.generic.UserAvatar
|
import chat.stoat.composables.generic.UserAvatar
|
||||||
import chat.stoat.composables.screens.chat.ChannelIcon
|
import chat.stoat.composables.screens.chat.ChannelIcon
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.internals.Autocomplete
|
import chat.stoat.internals.Autocomplete
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -28,10 +28,10 @@ import androidx.compose.ui.text.font.FontWeight
|
||||||
import androidx.compose.ui.text.style.TextAlign
|
import androidx.compose.ui.text.style.TextAlign
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.unit.sp
|
import androidx.compose.ui.unit.sp
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.internals.isUlid
|
import chat.stoat.api.internals.isUlid
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
|
|
||||||
@OptIn(ExperimentalFoundationApi::class)
|
@OptIn(ExperimentalFoundationApi::class)
|
||||||
@Composable
|
@Composable
|
||||||
|
|
|
||||||
|
|
@ -62,11 +62,11 @@ import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.unit.sp
|
import androidx.compose.ui.unit.sp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.activities.StoatTweenFloat
|
import chat.stoat.activities.StoatTweenFloat
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.callbacks.Action
|
import chat.stoat.callbacks.Action
|
||||||
import chat.stoat.callbacks.ActionChannel
|
import chat.stoat.callbacks.ActionChannel
|
||||||
import chat.stoat.composables.generic.IconPlaceholder
|
import chat.stoat.composables.generic.IconPlaceholder
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.internals.Category
|
import chat.stoat.internals.Category
|
||||||
import chat.stoat.internals.EmojiImpl
|
import chat.stoat.internals.EmojiImpl
|
||||||
import chat.stoat.internals.EmojiPickerItem
|
import chat.stoat.internals.EmojiPickerItem
|
||||||
|
|
|
||||||
|
|
@ -23,10 +23,10 @@ import androidx.compose.ui.tooling.preview.Preview
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_BASE
|
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.core.model.schemas.AutumnResource
|
import chat.stoat.core.model.schemas.AutumnResource
|
||||||
import chat.stoat.api.settings.LoadedSettings
|
import chat.stoat.api.settings.LoadedSettings
|
||||||
|
import chat.stoat.core.model.data.STOAT_BASE
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
|
|
||||||
enum class Presence {
|
enum class Presence {
|
||||||
Online,
|
Online,
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,6 @@ import androidx.compose.ui.text.font.FontWeight
|
||||||
import androidx.core.net.toUri
|
import androidx.core.net.toUri
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.activities.InviteActivity
|
import chat.stoat.activities.InviteActivity
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.routes.custom.fetchEmoji
|
import chat.stoat.api.routes.custom.fetchEmoji
|
||||||
import chat.stoat.core.model.schemas.isInviteUri
|
import chat.stoat.core.model.schemas.isInviteUri
|
||||||
|
|
@ -43,6 +42,7 @@ import chat.stoat.callbacks.Action
|
||||||
import chat.stoat.callbacks.ActionChannel
|
import chat.stoat.callbacks.ActionChannel
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
import chat.stoat.composables.utils.detectTapGesturesConditionalConsume
|
import chat.stoat.composables.utils.detectTapGesturesConditionalConsume
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.internals.resolveTimestamp
|
import chat.stoat.internals.resolveTimestamp
|
||||||
import chat.stoat.ndk.AstNode
|
import chat.stoat.ndk.AstNode
|
||||||
import chat.stoat.ui.theme.FragmentMono
|
import chat.stoat.ui.theme.FragmentMono
|
||||||
|
|
|
||||||
|
|
@ -26,13 +26,13 @@ import androidx.compose.ui.layout.ContentScale
|
||||||
import androidx.compose.ui.text.font.FontWeight
|
import androidx.compose.ui.text.font.FontWeight
|
||||||
import androidx.compose.ui.text.style.TextOverflow
|
import androidx.compose.ui.text.style.TextOverflow
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.core.model.schemas.AutumnResource
|
import chat.stoat.core.model.schemas.AutumnResource
|
||||||
import chat.stoat.core.model.schemas.ChannelType
|
import chat.stoat.core.model.schemas.ChannelType
|
||||||
import chat.stoat.core.model.schemas.User
|
import chat.stoat.core.model.schemas.User
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
import chat.stoat.composables.generic.UserAvatar
|
import chat.stoat.composables.generic.UserAvatar
|
||||||
import chat.stoat.composables.markdown.MarkdownTree
|
import chat.stoat.composables.markdown.MarkdownTree
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.ndk.AstNode
|
import chat.stoat.ndk.AstNode
|
||||||
import chat.stoat.ndk.Stendal
|
import chat.stoat.ndk.Stendal
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,10 +24,10 @@ import androidx.compose.ui.unit.sp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.activities.StoatTweenFloat
|
import chat.stoat.activities.StoatTweenFloat
|
||||||
import chat.stoat.activities.StoatTweenInt
|
import chat.stoat.activities.StoatTweenInt
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.core.model.schemas.User
|
import chat.stoat.core.model.schemas.User
|
||||||
import chat.stoat.composables.generic.UserAvatar
|
import chat.stoat.composables.generic.UserAvatar
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun StackedUserAvatars(
|
fun StackedUserAvatars(
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,6 @@ import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.unit.sp
|
import androidx.compose.ui.unit.sp
|
||||||
import androidx.navigation.NavController
|
import androidx.navigation.NavController
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.internals.CategorisedChannelList
|
import chat.stoat.api.internals.CategorisedChannelList
|
||||||
import chat.stoat.api.internals.ChannelUtils
|
import chat.stoat.api.internals.ChannelUtils
|
||||||
|
|
@ -90,6 +89,7 @@ import chat.stoat.composables.generic.RemoteImage
|
||||||
import chat.stoat.composables.generic.UserAvatar
|
import chat.stoat.composables.generic.UserAvatar
|
||||||
import chat.stoat.composables.generic.presenceFromStatus
|
import chat.stoat.composables.generic.presenceFromStatus
|
||||||
import chat.stoat.composables.screens.chat.ChannelIcon
|
import chat.stoat.composables.screens.chat.ChannelIcon
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.Category
|
import chat.stoat.core.model.schemas.Category
|
||||||
import chat.stoat.core.model.schemas.Channel
|
import chat.stoat.core.model.schemas.Channel
|
||||||
import chat.stoat.core.model.schemas.ChannelType
|
import chat.stoat.core.model.schemas.ChannelType
|
||||||
|
|
|
||||||
|
|
@ -23,11 +23,11 @@ import androidx.compose.ui.draw.alpha
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.viewinterop.AndroidView
|
import androidx.compose.ui.viewinterop.AndroidView
|
||||||
import chat.stoat.activities.InviteActivity
|
import chat.stoat.activities.InviteActivity
|
||||||
import chat.stoat.api.STOAT_INVITES
|
|
||||||
import chat.stoat.api.STOAT_WEB_APP
|
|
||||||
import chat.stoat.api.StoatJson
|
import chat.stoat.api.StoatJson
|
||||||
import chat.stoat.api.buildUserAgent
|
import chat.stoat.api.buildUserAgent
|
||||||
import chat.stoat.api.internals.ThemeCompat
|
import chat.stoat.api.internals.ThemeCompat
|
||||||
|
import chat.stoat.core.model.data.STOAT_INVITES
|
||||||
|
import chat.stoat.core.model.data.STOAT_WEB_APP
|
||||||
import kotlinx.serialization.json.JsonObject
|
import kotlinx.serialization.json.JsonObject
|
||||||
import kotlinx.serialization.json.JsonPrimitive
|
import kotlinx.serialization.json.JsonPrimitive
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,9 +27,9 @@ import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.unit.sp
|
import androidx.compose.ui.unit.sp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.composables.generic.IconPlaceholder
|
import chat.stoat.composables.generic.IconPlaceholder
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.Server
|
import chat.stoat.core.model.schemas.Server
|
||||||
import chat.stoat.core.model.schemas.ServerFlags
|
import chat.stoat.core.model.schemas.ServerFlags
|
||||||
import chat.stoat.core.model.schemas.has
|
import chat.stoat.core.model.schemas.has
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,6 @@ import androidx.compose.ui.text.SpanStyle
|
||||||
import androidx.compose.ui.text.font.FontWeight
|
import androidx.compose.ui.text.font.FontWeight
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.internals.SpecialUsers
|
import chat.stoat.api.internals.SpecialUsers
|
||||||
import chat.stoat.api.internals.ULID
|
import chat.stoat.api.internals.ULID
|
||||||
|
|
@ -40,6 +39,7 @@ import chat.stoat.api.routes.user.fetchUserProfile
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
import chat.stoat.composables.generic.UserAvatar
|
import chat.stoat.composables.generic.UserAvatar
|
||||||
import chat.stoat.composables.generic.presenceFromStatus
|
import chat.stoat.composables.generic.presenceFromStatus
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.AutumnResource
|
import chat.stoat.core.model.schemas.AutumnResource
|
||||||
import chat.stoat.core.model.schemas.Profile
|
import chat.stoat.core.model.schemas.Profile
|
||||||
import chat.stoat.core.model.schemas.User
|
import chat.stoat.core.model.schemas.User
|
||||||
|
|
|
||||||
|
|
@ -20,10 +20,10 @@ import androidx.compose.ui.graphics.toArgb
|
||||||
import androidx.compose.ui.viewinterop.AndroidView
|
import androidx.compose.ui.viewinterop.AndroidView
|
||||||
import androidx.webkit.WebViewAssetLoader
|
import androidx.webkit.WebViewAssetLoader
|
||||||
import chat.stoat.activities.InviteActivity
|
import chat.stoat.activities.InviteActivity
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.STOAT_WEB_APP
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.internals.ResourceLocations
|
import chat.stoat.api.internals.ResourceLocations
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
|
import chat.stoat.core.model.data.STOAT_WEB_APP
|
||||||
import chat.stoat.core.model.schemas.isInviteUri
|
import chat.stoat.core.model.schemas.isInviteUri
|
||||||
|
|
||||||
@SuppressLint("SetJavaScriptEnabled")
|
@SuppressLint("SetJavaScriptEnabled")
|
||||||
|
|
|
||||||
|
|
@ -72,7 +72,6 @@ import androidx.compose.ui.unit.sp
|
||||||
import androidx.core.net.toUri
|
import androidx.core.net.toUri
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.activities.InviteActivity
|
import chat.stoat.activities.InviteActivity
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.internals.BrushCompat
|
import chat.stoat.api.internals.BrushCompat
|
||||||
import chat.stoat.api.internals.InstancedBrushCompat
|
import chat.stoat.api.internals.InstancedBrushCompat
|
||||||
|
|
@ -86,6 +85,7 @@ import chat.stoat.composables.generic.RemoteImage
|
||||||
import chat.stoat.composables.generic.UserAvatar
|
import chat.stoat.composables.generic.UserAvatar
|
||||||
import chat.stoat.composables.markdown.Annotations
|
import chat.stoat.composables.markdown.Annotations
|
||||||
import chat.stoat.composables.utils.detectTapGesturesConditionalConsume
|
import chat.stoat.composables.utils.detectTapGesturesConditionalConsume
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.ui.theme.FragmentMono
|
import chat.stoat.ui.theme.FragmentMono
|
||||||
import chat.stoat.ui.theme.isThemeDark
|
import chat.stoat.ui.theme.isThemeDark
|
||||||
import dev.snipme.highlights.Highlights
|
import dev.snipme.highlights.Highlights
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,7 @@ import androidx.compose.ui.graphics.toArgb
|
||||||
import androidx.compose.ui.viewinterop.AndroidView
|
import androidx.compose.ui.viewinterop.AndroidView
|
||||||
import androidx.webkit.WebViewAssetLoader
|
import androidx.webkit.WebViewAssetLoader
|
||||||
import chat.stoat.activities.InviteActivity
|
import chat.stoat.activities.InviteActivity
|
||||||
import chat.stoat.api.STOAT_WEB_APP
|
import chat.stoat.core.model.data.STOAT_WEB_APP
|
||||||
import chat.stoat.core.model.schemas.isInviteUri
|
import chat.stoat.core.model.schemas.isInviteUri
|
||||||
|
|
||||||
internal fun Color.asHexString(includeAlphaComponent: Boolean = true): String {
|
internal fun Color.asHexString(includeAlphaComponent: Boolean = true): String {
|
||||||
|
|
|
||||||
|
|
@ -53,11 +53,11 @@ import androidx.lifecycle.viewmodel.compose.viewModel
|
||||||
import androidx.navigation.NavController
|
import androidx.navigation.NavController
|
||||||
import chat.stoat.BuildConfig
|
import chat.stoat.BuildConfig
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_BASE
|
|
||||||
import chat.stoat.api.StoatJson
|
import chat.stoat.api.StoatJson
|
||||||
import chat.stoat.api.routes.misc.Root
|
import chat.stoat.api.routes.misc.Root
|
||||||
import chat.stoat.api.routes.misc.getRootRoute
|
import chat.stoat.api.routes.misc.getRootRoute
|
||||||
import chat.stoat.composables.generic.PrimaryTabs
|
import chat.stoat.composables.generic.PrimaryTabs
|
||||||
|
import chat.stoat.core.model.data.STOAT_BASE
|
||||||
import chat.stoat.internals.Platform
|
import chat.stoat.internals.Platform
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import java.net.URI
|
import java.net.URI
|
||||||
|
|
|
||||||
|
|
@ -42,9 +42,9 @@ import androidx.compose.ui.text.style.TextAlign
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.unit.sp
|
import androidx.compose.ui.unit.sp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_INVITES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.routes.channel.createInvite
|
import chat.stoat.api.routes.channel.createInvite
|
||||||
|
import chat.stoat.core.model.data.STOAT_INVITES
|
||||||
import chat.stoat.internals.Platform
|
import chat.stoat.internals.Platform
|
||||||
import chat.stoat.ui.theme.FragmentMono
|
import chat.stoat.ui.theme.FragmentMono
|
||||||
import kotlinx.coroutines.Job
|
import kotlinx.coroutines.Job
|
||||||
|
|
|
||||||
|
|
@ -44,9 +44,9 @@ import androidx.compose.ui.unit.sp
|
||||||
import androidx.navigation.NavController
|
import androidx.navigation.NavController
|
||||||
import chat.stoat.BuildConfig
|
import chat.stoat.BuildConfig
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_MARKETING
|
|
||||||
import chat.stoat.composables.generic.AnyLink
|
import chat.stoat.composables.generic.AnyLink
|
||||||
import chat.stoat.composables.generic.Weblink
|
import chat.stoat.composables.generic.Weblink
|
||||||
|
import chat.stoat.core.model.data.STOAT_MARKETING
|
||||||
import com.chuckerteam.chucker.api.Chucker
|
import com.chuckerteam.chucker.api.Chucker
|
||||||
|
|
||||||
@OptIn(ExperimentalFoundationApi::class)
|
@OptIn(ExperimentalFoundationApi::class)
|
||||||
|
|
|
||||||
|
|
@ -48,13 +48,13 @@ import androidx.lifecycle.viewModelScope
|
||||||
import androidx.navigation.NavController
|
import androidx.navigation.NavController
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.StoatApplication
|
import chat.stoat.StoatApplication
|
||||||
import chat.stoat.api.STOAT_WEB_APP
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.routes.account.EmailPasswordAssessment
|
import chat.stoat.api.routes.account.EmailPasswordAssessment
|
||||||
import chat.stoat.api.routes.account.negotiateAuthentication
|
import chat.stoat.api.routes.account.negotiateAuthentication
|
||||||
import chat.stoat.api.routes.onboard.needsOnboarding
|
import chat.stoat.api.routes.onboard.needsOnboarding
|
||||||
import chat.stoat.composables.generic.FormTextField
|
import chat.stoat.composables.generic.FormTextField
|
||||||
import chat.stoat.composables.generic.Weblink
|
import chat.stoat.composables.generic.Weblink
|
||||||
|
import chat.stoat.core.model.data.STOAT_WEB_APP
|
||||||
import chat.stoat.persistence.KVStorage
|
import chat.stoat.persistence.KVStorage
|
||||||
import chat.stoat.ui.theme.FragmentMono
|
import chat.stoat.ui.theme.FragmentMono
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|
|
||||||
|
|
@ -33,10 +33,10 @@ import androidx.compose.ui.unit.sp
|
||||||
import androidx.navigation.NavController
|
import androidx.navigation.NavController
|
||||||
import chat.stoat.BuildConfig
|
import chat.stoat.BuildConfig
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_MARKETING
|
|
||||||
import chat.stoat.api.settings.LoadedSettings
|
import chat.stoat.api.settings.LoadedSettings
|
||||||
import chat.stoat.composables.generic.AnyLink
|
import chat.stoat.composables.generic.AnyLink
|
||||||
import chat.stoat.composables.generic.Weblink
|
import chat.stoat.composables.generic.Weblink
|
||||||
|
import chat.stoat.core.model.data.STOAT_MARKETING
|
||||||
import chat.stoat.ui.theme.Theme
|
import chat.stoat.ui.theme.Theme
|
||||||
import com.chuckerteam.chucker.api.Chucker
|
import com.chuckerteam.chucker.api.Chucker
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,13 +46,13 @@ import androidx.lifecycle.ViewModel
|
||||||
import androidx.lifecycle.viewModelScope
|
import androidx.lifecycle.viewModelScope
|
||||||
import androidx.navigation.NavController
|
import androidx.navigation.NavController
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.routes.microservices.autumn.uploadToAutumn
|
import chat.stoat.api.routes.microservices.autumn.uploadToAutumn
|
||||||
import chat.stoat.api.routes.user.fetchUserProfile
|
import chat.stoat.api.routes.user.fetchUserProfile
|
||||||
import chat.stoat.api.routes.user.patchSelf
|
import chat.stoat.api.routes.user.patchSelf
|
||||||
import chat.stoat.composables.generic.InlineMediaPicker
|
import chat.stoat.composables.generic.InlineMediaPicker
|
||||||
import chat.stoat.composables.screens.settings.RawUserOverview
|
import chat.stoat.composables.screens.settings.RawUserOverview
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.Profile
|
import chat.stoat.core.model.schemas.Profile
|
||||||
import io.ktor.http.ContentType
|
import io.ktor.http.ContentType
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|
|
||||||
|
|
@ -52,12 +52,12 @@ import androidx.lifecycle.viewModelScope
|
||||||
import androidx.navigation.NavController
|
import androidx.navigation.NavController
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.activities.StoatTweenFloat
|
import chat.stoat.activities.StoatTweenFloat
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.routes.channel.patchChannel
|
import chat.stoat.api.routes.channel.patchChannel
|
||||||
import chat.stoat.api.routes.microservices.autumn.uploadToAutumn
|
import chat.stoat.api.routes.microservices.autumn.uploadToAutumn
|
||||||
import chat.stoat.composables.generic.InlineMediaPicker
|
import chat.stoat.composables.generic.InlineMediaPicker
|
||||||
import chat.stoat.composables.generic.ListHeader
|
import chat.stoat.composables.generic.ListHeader
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.Channel
|
import chat.stoat.core.model.schemas.Channel
|
||||||
import io.ktor.http.ContentType
|
import io.ktor.http.ContentType
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,6 @@ import androidx.compose.ui.unit.dp
|
||||||
import androidx.core.net.toUri
|
import androidx.core.net.toUri
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.activities.InviteActivity
|
import chat.stoat.activities.InviteActivity
|
||||||
import chat.stoat.api.STOAT_WEB_APP
|
|
||||||
import chat.stoat.api.routes.server.createServer
|
import chat.stoat.api.routes.server.createServer
|
||||||
import chat.stoat.callbacks.Action
|
import chat.stoat.callbacks.Action
|
||||||
import chat.stoat.callbacks.ActionChannel
|
import chat.stoat.callbacks.ActionChannel
|
||||||
|
|
@ -62,6 +61,7 @@ import chat.stoat.composables.sheets.SheetSelection
|
||||||
import chat.stoat.composables.vectorassets.CreateServer
|
import chat.stoat.composables.vectorassets.CreateServer
|
||||||
import chat.stoat.composables.vectorassets.JoinServer
|
import chat.stoat.composables.vectorassets.JoinServer
|
||||||
import chat.stoat.composables.vectorassets.NewServer
|
import chat.stoat.composables.vectorassets.NewServer
|
||||||
|
import chat.stoat.core.model.data.STOAT_WEB_APP
|
||||||
import chat.stoat.material.EasingTokens
|
import chat.stoat.material.EasingTokens
|
||||||
import chat.stoat.screens.chat.ChatRouterDestination
|
import chat.stoat.screens.chat.ChatRouterDestination
|
||||||
import chat.stoat.ui.theme.FragmentMono
|
import chat.stoat.ui.theme.FragmentMono
|
||||||
|
|
|
||||||
|
|
@ -31,13 +31,13 @@ import androidx.compose.ui.text.font.FontWeight
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.unit.sp
|
import androidx.compose.ui.unit.sp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.routes.custom.fetchEmoji
|
import chat.stoat.api.routes.custom.fetchEmoji
|
||||||
import chat.stoat.core.model.schemas.Emoji
|
import chat.stoat.core.model.schemas.Emoji
|
||||||
import chat.stoat.core.model.schemas.Server
|
import chat.stoat.core.model.schemas.Server
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
import chat.stoat.composables.generic.SheetButton
|
import chat.stoat.composables.generic.SheetButton
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.internals.Platform
|
import chat.stoat.internals.Platform
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -29,13 +29,13 @@ import androidx.compose.ui.Alignment
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.platform.LocalClipboardManager
|
import androidx.compose.ui.platform.LocalClipboardManager
|
||||||
import androidx.compose.ui.platform.LocalContext
|
import androidx.compose.ui.platform.LocalContext
|
||||||
|
import androidx.compose.ui.platform.LocalResources
|
||||||
import androidx.compose.ui.res.painterResource
|
import androidx.compose.ui.res.painterResource
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.text.AnnotatedString
|
import androidx.compose.ui.text.AnnotatedString
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import chat.stoat.BuildConfig
|
import chat.stoat.BuildConfig
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_WEB_APP
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.internals.PermissionBit
|
import chat.stoat.api.internals.PermissionBit
|
||||||
import chat.stoat.api.internals.Roles
|
import chat.stoat.api.internals.Roles
|
||||||
|
|
@ -46,6 +46,7 @@ import chat.stoat.api.settings.Experiments
|
||||||
import chat.stoat.callbacks.UiCallbacks
|
import chat.stoat.callbacks.UiCallbacks
|
||||||
import chat.stoat.composables.chat.Message
|
import chat.stoat.composables.chat.Message
|
||||||
import chat.stoat.composables.generic.SheetButton
|
import chat.stoat.composables.generic.SheetButton
|
||||||
|
import chat.stoat.core.model.data.STOAT_WEB_APP
|
||||||
import chat.stoat.internals.Platform
|
import chat.stoat.internals.Platform
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|
||||||
|
|
@ -69,6 +70,7 @@ fun MessageContextSheet(
|
||||||
}
|
}
|
||||||
|
|
||||||
val context = LocalContext.current
|
val context = LocalContext.current
|
||||||
|
val resources = LocalResources.current
|
||||||
val clipboardManager = LocalClipboardManager.current
|
val clipboardManager = LocalClipboardManager.current
|
||||||
val coroutineScope = rememberCoroutineScope()
|
val coroutineScope = rememberCoroutineScope()
|
||||||
|
|
||||||
|
|
@ -111,7 +113,7 @@ fun MessageContextSheet(
|
||||||
onHideSheet()
|
onHideSheet()
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
context,
|
context,
|
||||||
context.getString(
|
resources.getString(
|
||||||
R.string.message_context_sheet_actions_copy_failed_empty
|
R.string.message_context_sheet_actions_copy_failed_empty
|
||||||
),
|
),
|
||||||
Toast.LENGTH_SHORT
|
Toast.LENGTH_SHORT
|
||||||
|
|
@ -123,7 +125,7 @@ fun MessageContextSheet(
|
||||||
if (Platform.needsShowClipboardNotification()) {
|
if (Platform.needsShowClipboardNotification()) {
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
context,
|
context,
|
||||||
context.getString(R.string.copied),
|
resources.getString(R.string.copied),
|
||||||
Toast.LENGTH_SHORT
|
Toast.LENGTH_SHORT
|
||||||
).show()
|
).show()
|
||||||
}
|
}
|
||||||
|
|
@ -156,7 +158,7 @@ fun MessageContextSheet(
|
||||||
if (message.content.isNullOrEmpty()) {
|
if (message.content.isNullOrEmpty()) {
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
context,
|
context,
|
||||||
context.getString(
|
resources.getString(
|
||||||
R.string.message_context_sheet_actions_copy_failed_empty
|
R.string.message_context_sheet_actions_copy_failed_empty
|
||||||
),
|
),
|
||||||
Toast.LENGTH_SHORT
|
Toast.LENGTH_SHORT
|
||||||
|
|
@ -182,7 +184,7 @@ fun MessageContextSheet(
|
||||||
if (Platform.needsShowClipboardNotification()) {
|
if (Platform.needsShowClipboardNotification()) {
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
context,
|
context,
|
||||||
context.getString(
|
resources.getString(
|
||||||
R.string.message_context_sheet_actions_copy_link_copied
|
R.string.message_context_sheet_actions_copy_link_copied
|
||||||
),
|
),
|
||||||
Toast.LENGTH_SHORT
|
Toast.LENGTH_SHORT
|
||||||
|
|
@ -220,7 +222,7 @@ fun MessageContextSheet(
|
||||||
if (Platform.needsShowClipboardNotification()) {
|
if (Platform.needsShowClipboardNotification()) {
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
context,
|
context,
|
||||||
context.getString(
|
resources.getString(
|
||||||
R.string.message_context_sheet_actions_copy_id_copied
|
R.string.message_context_sheet_actions_copy_id_copied
|
||||||
),
|
),
|
||||||
Toast.LENGTH_SHORT
|
Toast.LENGTH_SHORT
|
||||||
|
|
@ -412,7 +414,7 @@ fun MessageContextSheet(
|
||||||
onClick = {
|
onClick = {
|
||||||
Toast.makeText(
|
Toast.makeText(
|
||||||
context,
|
context,
|
||||||
context.getString(R.string.comingsoon_toast),
|
resources.getString(R.string.comingsoon_toast),
|
||||||
Toast.LENGTH_SHORT
|
Toast.LENGTH_SHORT
|
||||||
).show()
|
).show()
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,6 @@ import androidx.compose.ui.text.style.TextAlign
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.unit.sp
|
import androidx.compose.ui.unit.sp
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_FILES
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.internals.isUlid
|
import chat.stoat.api.internals.isUlid
|
||||||
import chat.stoat.api.routes.custom.fetchEmoji
|
import chat.stoat.api.routes.custom.fetchEmoji
|
||||||
|
|
@ -52,6 +51,7 @@ import chat.stoat.api.routes.user.fetchUser
|
||||||
import chat.stoat.api.settings.LoadedSettings
|
import chat.stoat.api.settings.LoadedSettings
|
||||||
import chat.stoat.composables.chat.MemberListItem
|
import chat.stoat.composables.chat.MemberListItem
|
||||||
import chat.stoat.composables.generic.RemoteImage
|
import chat.stoat.composables.generic.RemoteImage
|
||||||
|
import chat.stoat.core.model.data.STOAT_FILES
|
||||||
import chat.stoat.core.model.schemas.Emoji
|
import chat.stoat.core.model.schemas.Emoji
|
||||||
import chat.stoat.core.model.schemas.User
|
import chat.stoat.core.model.schemas.User
|
||||||
import chat.stoat.internals.text.MessageProcessor
|
import chat.stoat.internals.text.MessageProcessor
|
||||||
|
|
|
||||||
|
|
@ -41,13 +41,13 @@ import androidx.compose.ui.text.AnnotatedString
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.core.net.toUri
|
import androidx.core.net.toUri
|
||||||
import chat.stoat.R
|
import chat.stoat.R
|
||||||
import chat.stoat.api.STOAT_WEB_APP
|
|
||||||
import chat.stoat.api.StoatAPI
|
import chat.stoat.api.StoatAPI
|
||||||
import chat.stoat.api.routes.server.leaveOrDeleteServer
|
import chat.stoat.api.routes.server.leaveOrDeleteServer
|
||||||
import chat.stoat.composables.generic.SheetButton
|
import chat.stoat.composables.generic.SheetButton
|
||||||
import chat.stoat.composables.markdown.RichMarkdown
|
import chat.stoat.composables.markdown.RichMarkdown
|
||||||
import chat.stoat.composables.screens.settings.ServerOverview
|
import chat.stoat.composables.screens.settings.ServerOverview
|
||||||
import chat.stoat.composables.sheets.SheetSelection
|
import chat.stoat.composables.sheets.SheetSelection
|
||||||
|
import chat.stoat.core.model.data.STOAT_WEB_APP
|
||||||
import chat.stoat.internals.Platform
|
import chat.stoat.internals.Platform
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue