refactoring to id.databisnis.bachot

This commit is contained in:
2026-02-20 14:01:46 +07:00
parent e5bfd1c4b0
commit 8d43893962
3932 changed files with 23073 additions and 23073 deletions

View File

@@ -6,11 +6,11 @@
* Please see LICENSE files in the repository root for full details.
*/
plugins {
id("io.element.android-compose-library")
id("id.databisnis.android.bachot-compose-library")
}
android {
namespace = "io.element.android.features.analytics.api"
namespace = "id.databisnis.android.bachot.features.analytics.api"
}
dependencies {

View File

@@ -6,8 +6,8 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.api
package id.databisnis.android.bachot.features.analytics.api
import io.element.android.libraries.architecture.SimpleFeatureEntryPoint
import id.databisnis.android.bachot.libraries.architecture.SimpleFeatureEntryPoint
fun interface AnalyticsEntryPoint : SimpleFeatureEntryPoint

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.api
package id.databisnis.android.bachot.features.analytics.api
sealed interface AnalyticsOptInEvents {
data class EnableAnalytics(val isEnabled: Boolean) : AnalyticsOptInEvents

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.api.preferences
package id.databisnis.android.bachot.features.analytics.api.preferences
import io.element.android.features.analytics.api.AnalyticsOptInEvents
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
data class AnalyticsPreferencesState(
val applicationName: String,

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.api.preferences
package id.databisnis.android.bachot.features.analytics.api.preferences
import androidx.compose.ui.tooling.preview.PreviewParameterProvider

View File

@@ -6,23 +6,23 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.api.preferences
package id.databisnis.android.bachot.features.analytics.api.preferences
import androidx.compose.foundation.layout.Column
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.tooling.preview.PreviewParameter
import io.element.android.features.analytics.api.AnalyticsOptInEvents
import io.element.android.features.analytics.api.R
import io.element.android.libraries.designsystem.components.LINK_TAG
import io.element.android.libraries.designsystem.components.list.ListItemContent
import io.element.android.libraries.designsystem.preview.ElementPreview
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
import io.element.android.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
import io.element.android.libraries.designsystem.theme.components.ListItem
import io.element.android.libraries.designsystem.theme.components.ListSupportingText
import io.element.android.libraries.designsystem.theme.components.Text
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
import id.databisnis.android.bachot.features.analytics.api.R
import id.databisnis.android.bachot.libraries.designsystem.components.LINK_TAG
import id.databisnis.android.bachot.libraries.designsystem.components.list.ListItemContent
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
import id.databisnis.android.bachot.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
import id.databisnis.android.bachot.libraries.designsystem.theme.components.ListItem
import id.databisnis.android.bachot.libraries.designsystem.theme.components.ListSupportingText
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Text
@Composable
fun AnalyticsPreferencesView(

View File

@@ -10,12 +10,12 @@ import extension.testCommonDependencies
*/
plugins {
id("io.element.android-compose-library")
id("id.databisnis.android.bachot-compose-library")
id("kotlin-parcelize")
}
android {
namespace = "io.element.android.features.analytics.impl"
namespace = "id.databisnis.android.bachot.features.analytics.impl"
}
setupDependencyInjection()

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl
package id.databisnis.android.bachot.features.analytics.impl
import android.app.Activity
import androidx.activity.compose.LocalActivity
@@ -18,10 +18,10 @@ import com.bumble.appyx.core.plugin.Plugin
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.Assisted
import dev.zacsweers.metro.AssistedInject
import io.element.android.annotations.ContributesNode
import io.element.android.appconfig.AnalyticsConfig
import io.element.android.compound.theme.ElementTheme
import io.element.android.libraries.androidutils.browser.openUrlInChromeCustomTab
import id.databisnis.android.bachot.annotations.ContributesNode
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
import id.databisnis.android.bachot.compound.theme.ElementTheme
import id.databisnis.android.bachot.libraries.androidutils.browser.openUrlInChromeCustomTab
@ContributesNode(AppScope::class)
@AssistedInject

View File

@@ -6,16 +6,16 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl
package id.databisnis.android.bachot.features.analytics.impl
import androidx.compose.runtime.Composable
import androidx.compose.runtime.rememberCoroutineScope
import dev.zacsweers.metro.Inject
import io.element.android.appconfig.AnalyticsConfig
import io.element.android.features.analytics.api.AnalyticsOptInEvents
import io.element.android.libraries.architecture.Presenter
import io.element.android.libraries.core.meta.BuildMeta
import io.element.android.services.analytics.api.AnalyticsService
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
import id.databisnis.android.bachot.libraries.architecture.Presenter
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
import id.databisnis.android.bachot.services.analytics.api.AnalyticsService
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl
package id.databisnis.android.bachot.features.analytics.impl
import io.element.android.features.analytics.api.AnalyticsOptInEvents
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
data class AnalyticsOptInState(
val applicationName: String,

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl
package id.databisnis.android.bachot.features.analytics.impl
import androidx.compose.ui.tooling.preview.PreviewParameterProvider

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl
package id.databisnis.android.bachot.features.analytics.impl
import androidx.activity.compose.BackHandler
import androidx.compose.foundation.layout.Box
@@ -25,25 +25,25 @@ import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import io.element.android.appconfig.AnalyticsConfig
import io.element.android.compound.theme.ElementTheme
import io.element.android.compound.tokens.generated.CompoundIcons
import io.element.android.features.analytics.api.AnalyticsOptInEvents
import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule
import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule
import io.element.android.libraries.designsystem.atomic.organisms.InfoListItem
import io.element.android.libraries.designsystem.atomic.organisms.InfoListOrganism
import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage
import io.element.android.libraries.designsystem.background.OnboardingBackground
import io.element.android.libraries.designsystem.components.BigIcon
import io.element.android.libraries.designsystem.components.ClickableLinkText
import io.element.android.libraries.designsystem.preview.ElementPreview
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
import io.element.android.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
import io.element.android.libraries.designsystem.theme.components.Button
import io.element.android.libraries.designsystem.theme.components.ButtonSize
import io.element.android.libraries.designsystem.theme.components.TextButton
import io.element.android.libraries.ui.strings.CommonStrings
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
import id.databisnis.android.bachot.compound.theme.ElementTheme
import id.databisnis.android.bachot.compound.tokens.generated.CompoundIcons
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
import id.databisnis.android.bachot.libraries.designsystem.atomic.molecules.ButtonColumnMolecule
import id.databisnis.android.bachot.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule
import id.databisnis.android.bachot.libraries.designsystem.atomic.organisms.InfoListItem
import id.databisnis.android.bachot.libraries.designsystem.atomic.organisms.InfoListOrganism
import id.databisnis.android.bachot.libraries.designsystem.atomic.pages.HeaderFooterPage
import id.databisnis.android.bachot.libraries.designsystem.background.OnboardingBackground
import id.databisnis.android.bachot.libraries.designsystem.components.BigIcon
import id.databisnis.android.bachot.libraries.designsystem.components.ClickableLinkText
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
import id.databisnis.android.bachot.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Button
import id.databisnis.android.bachot.libraries.designsystem.theme.components.ButtonSize
import id.databisnis.android.bachot.libraries.designsystem.theme.components.TextButton
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
import kotlinx.collections.immutable.persistentListOf
@Composable

View File

@@ -6,14 +6,14 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl
package id.databisnis.android.bachot.features.analytics.impl
import com.bumble.appyx.core.modality.BuildContext
import com.bumble.appyx.core.node.Node
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import io.element.android.features.analytics.api.AnalyticsEntryPoint
import io.element.android.libraries.architecture.createNode
import id.databisnis.android.bachot.features.analytics.api.AnalyticsEntryPoint
import id.databisnis.android.bachot.libraries.architecture.createNode
@ContributesBinding(AppScope::class)
class DefaultAnalyticsEntryPoint : AnalyticsEntryPoint {

View File

@@ -6,15 +6,15 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl.di
package id.databisnis.android.bachot.features.analytics.impl.di
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.BindingContainer
import dev.zacsweers.metro.Binds
import dev.zacsweers.metro.ContributesTo
import io.element.android.features.analytics.api.preferences.AnalyticsPreferencesState
import io.element.android.features.analytics.impl.preferences.AnalyticsPreferencesPresenter
import io.element.android.libraries.architecture.Presenter
import id.databisnis.android.bachot.features.analytics.api.preferences.AnalyticsPreferencesState
import id.databisnis.android.bachot.features.analytics.impl.preferences.AnalyticsPreferencesPresenter
import id.databisnis.android.bachot.libraries.architecture.Presenter
@ContributesTo(AppScope::class)
@BindingContainer

View File

@@ -6,18 +6,18 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl.preferences
package id.databisnis.android.bachot.features.analytics.impl.preferences
import androidx.compose.runtime.Composable
import androidx.compose.runtime.collectAsState
import androidx.compose.runtime.rememberCoroutineScope
import dev.zacsweers.metro.Inject
import io.element.android.appconfig.AnalyticsConfig
import io.element.android.features.analytics.api.AnalyticsOptInEvents
import io.element.android.features.analytics.api.preferences.AnalyticsPreferencesState
import io.element.android.libraries.architecture.Presenter
import io.element.android.libraries.core.meta.BuildMeta
import io.element.android.services.analytics.api.AnalyticsService
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
import id.databisnis.android.bachot.features.analytics.api.preferences.AnalyticsPreferencesState
import id.databisnis.android.bachot.libraries.architecture.Presenter
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
import id.databisnis.android.bachot.services.analytics.api.AnalyticsService
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch

View File

@@ -6,16 +6,16 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl
package id.databisnis.android.bachot.features.analytics.impl
import app.cash.molecule.RecompositionMode
import app.cash.molecule.moleculeFlow
import app.cash.turbine.test
import com.google.common.truth.Truth.assertThat
import io.element.android.features.analytics.api.AnalyticsOptInEvents
import io.element.android.libraries.matrix.test.core.aBuildMeta
import io.element.android.services.analytics.test.FakeAnalyticsService
import io.element.android.tests.testutils.WarmUpRule
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
import id.databisnis.android.bachot.libraries.matrix.test.core.aBuildMeta
import id.databisnis.android.bachot.services.analytics.test.FakeAnalyticsService
import id.databisnis.android.bachot.tests.testutils.WarmUpRule
import kotlinx.coroutines.flow.first
import kotlinx.coroutines.test.runTest
import org.junit.Rule

View File

@@ -6,14 +6,14 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl
package id.databisnis.android.bachot.features.analytics.impl
import androidx.arch.core.executor.testing.InstantTaskExecutorRule
import com.bumble.appyx.core.modality.BuildContext
import com.google.common.truth.Truth.assertThat
import io.element.android.libraries.matrix.test.core.aBuildMeta
import io.element.android.services.analytics.test.FakeAnalyticsService
import io.element.android.tests.testutils.node.TestParentNode
import id.databisnis.android.bachot.libraries.matrix.test.core.aBuildMeta
import id.databisnis.android.bachot.services.analytics.test.FakeAnalyticsService
import id.databisnis.android.bachot.tests.testutils.node.TestParentNode
import org.junit.Rule
import org.junit.Test

View File

@@ -6,17 +6,17 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.analytics.impl.preferences
package id.databisnis.android.bachot.features.analytics.impl.preferences
import app.cash.molecule.RecompositionMode
import app.cash.molecule.moleculeFlow
import app.cash.turbine.test
import com.google.common.truth.Truth.assertThat
import io.element.android.appconfig.AnalyticsConfig
import io.element.android.features.analytics.api.AnalyticsOptInEvents
import io.element.android.libraries.matrix.test.core.aBuildMeta
import io.element.android.services.analytics.test.FakeAnalyticsService
import io.element.android.tests.testutils.WarmUpRule
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
import id.databisnis.android.bachot.libraries.matrix.test.core.aBuildMeta
import id.databisnis.android.bachot.services.analytics.test.FakeAnalyticsService
import id.databisnis.android.bachot.tests.testutils.WarmUpRule
import kotlinx.coroutines.test.runTest
import org.junit.Rule
import org.junit.Test

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
plugins {
id("io.element.android-compose-library")
id("id.databisnis.android.bachot-compose-library")
}
android {
namespace = "io.element.android.features.announcement.api"
namespace = "id.databisnis.android.bachot.features.announcement.api"
}

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.api
package id.databisnis.android.bachot.features.announcement.api
enum class Announcement {
Space,

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.api
package id.databisnis.android.bachot.features.announcement.api
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier

View File

@@ -10,11 +10,11 @@ import extension.testCommonDependencies
*/
plugins {
id("io.element.android-compose-library")
id("id.databisnis.android.bachot-compose-library")
}
android {
namespace = "io.element.android.features.announcement.impl"
namespace = "id.databisnis.android.bachot.features.announcement.impl"
testOptions {
unitTests {

View File

@@ -6,17 +6,17 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl
package id.databisnis.android.bachot.features.announcement.impl
import androidx.compose.runtime.Composable
import androidx.compose.runtime.collectAsState
import androidx.compose.runtime.getValue
import androidx.compose.runtime.remember
import dev.zacsweers.metro.Inject
import io.element.android.features.announcement.api.Announcement
import io.element.android.features.announcement.impl.store.AnnouncementStatus
import io.element.android.features.announcement.impl.store.AnnouncementStore
import io.element.android.libraries.architecture.Presenter
import id.databisnis.android.bachot.features.announcement.api.Announcement
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
import id.databisnis.android.bachot.libraries.architecture.Presenter
import kotlinx.coroutines.flow.map
@Inject

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl
package id.databisnis.android.bachot.features.announcement.impl
data class AnnouncementState(
val showSpaceAnnouncement: Boolean,

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl
package id.databisnis.android.bachot.features.announcement.impl
import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.fadeIn
@@ -17,13 +17,13 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import io.element.android.features.announcement.api.Announcement
import io.element.android.features.announcement.api.AnnouncementService
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementState
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementView
import io.element.android.features.announcement.impl.store.AnnouncementStatus
import io.element.android.features.announcement.impl.store.AnnouncementStore
import io.element.android.libraries.architecture.Presenter
import id.databisnis.android.bachot.features.announcement.api.Announcement
import id.databisnis.android.bachot.features.announcement.api.AnnouncementService
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementState
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementView
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
import id.databisnis.android.bachot.libraries.architecture.Presenter
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.combine
import kotlinx.coroutines.flow.first

View File

@@ -6,17 +6,17 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.di
package id.databisnis.android.bachot.features.announcement.impl.di
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.BindingContainer
import dev.zacsweers.metro.Binds
import dev.zacsweers.metro.ContributesTo
import io.element.android.features.announcement.impl.AnnouncementPresenter
import io.element.android.features.announcement.impl.AnnouncementState
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementPresenter
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementState
import io.element.android.libraries.architecture.Presenter
import id.databisnis.android.bachot.features.announcement.impl.AnnouncementPresenter
import id.databisnis.android.bachot.features.announcement.impl.AnnouncementState
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementPresenter
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementState
import id.databisnis.android.bachot.libraries.architecture.Presenter
@ContributesTo(AppScope::class)
@BindingContainer

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.spaces
package id.databisnis.android.bachot.features.announcement.impl.spaces
sealed interface SpaceAnnouncementEvents {
data object Continue : SpaceAnnouncementEvents

View File

@@ -6,15 +6,15 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.spaces
package id.databisnis.android.bachot.features.announcement.impl.spaces
import androidx.compose.runtime.Composable
import androidx.compose.runtime.rememberCoroutineScope
import dev.zacsweers.metro.Inject
import io.element.android.features.announcement.api.Announcement
import io.element.android.features.announcement.impl.store.AnnouncementStatus
import io.element.android.features.announcement.impl.store.AnnouncementStore
import io.element.android.libraries.architecture.Presenter
import id.databisnis.android.bachot.features.announcement.api.Announcement
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
import id.databisnis.android.bachot.libraries.architecture.Presenter
import kotlinx.coroutines.launch
@Inject

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.spaces
package id.databisnis.android.bachot.features.announcement.impl.spaces
data class SpaceAnnouncementState(
val eventSink: (SpaceAnnouncementEvents) -> Unit

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.spaces
package id.databisnis.android.bachot.features.announcement.impl.spaces
import androidx.compose.ui.tooling.preview.PreviewParameterProvider

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.spaces
package id.databisnis.android.bachot.features.announcement.impl.spaces
import androidx.activity.compose.BackHandler
import androidx.compose.foundation.layout.Column
@@ -20,20 +20,20 @@ import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import io.element.android.compound.theme.ElementTheme
import io.element.android.compound.tokens.generated.CompoundIcons
import io.element.android.features.announcement.impl.R
import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule
import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule
import io.element.android.libraries.designsystem.atomic.organisms.InfoListItem
import io.element.android.libraries.designsystem.atomic.organisms.InfoListOrganism
import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage
import io.element.android.libraries.designsystem.components.BigIcon
import io.element.android.libraries.designsystem.preview.ElementPreview
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
import io.element.android.libraries.designsystem.theme.components.Button
import io.element.android.libraries.designsystem.theme.components.Text
import io.element.android.libraries.ui.strings.CommonStrings
import id.databisnis.android.bachot.compound.theme.ElementTheme
import id.databisnis.android.bachot.compound.tokens.generated.CompoundIcons
import id.databisnis.android.bachot.features.announcement.impl.R
import id.databisnis.android.bachot.libraries.designsystem.atomic.molecules.ButtonColumnMolecule
import id.databisnis.android.bachot.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule
import id.databisnis.android.bachot.libraries.designsystem.atomic.organisms.InfoListItem
import id.databisnis.android.bachot.libraries.designsystem.atomic.organisms.InfoListOrganism
import id.databisnis.android.bachot.libraries.designsystem.atomic.pages.HeaderFooterPage
import id.databisnis.android.bachot.libraries.designsystem.components.BigIcon
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Button
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Text
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
import kotlinx.collections.immutable.persistentListOf
/**

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.store
package id.databisnis.android.bachot.features.announcement.impl.store
enum class AnnouncementStatus {
NeverShown,

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.store
package id.databisnis.android.bachot.features.announcement.impl.store
import io.element.android.features.announcement.api.Announcement
import id.databisnis.android.bachot.features.announcement.api.Announcement
import kotlinx.coroutines.flow.Flow
interface AnnouncementStore {

View File

@@ -6,14 +6,14 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.store
package id.databisnis.android.bachot.features.announcement.impl.store
import androidx.datastore.preferences.core.edit
import androidx.datastore.preferences.core.intPreferencesKey
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import io.element.android.features.announcement.api.Announcement
import io.element.android.libraries.preferences.api.store.PreferenceDataStoreFactory
import id.databisnis.android.bachot.features.announcement.api.Announcement
import id.databisnis.android.bachot.libraries.preferences.api.store.PreferenceDataStoreFactory
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.map

View File

@@ -6,14 +6,14 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl
package id.databisnis.android.bachot.features.announcement.impl
import com.google.common.truth.Truth.assertThat
import io.element.android.features.announcement.api.Announcement
import io.element.android.features.announcement.impl.store.AnnouncementStatus
import io.element.android.features.announcement.impl.store.AnnouncementStore
import io.element.android.features.announcement.impl.store.InMemoryAnnouncementStore
import io.element.android.tests.testutils.test
import id.databisnis.android.bachot.features.announcement.api.Announcement
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
import id.databisnis.android.bachot.features.announcement.impl.store.InMemoryAnnouncementStore
import id.databisnis.android.bachot.tests.testutils.test
import kotlinx.coroutines.test.runTest
import org.junit.Test

View File

@@ -6,17 +6,17 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl
package id.databisnis.android.bachot.features.announcement.impl
import app.cash.turbine.test
import com.google.common.truth.Truth.assertThat
import io.element.android.features.announcement.api.Announcement
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementState
import io.element.android.features.announcement.impl.spaces.aSpaceAnnouncementState
import io.element.android.features.announcement.impl.store.AnnouncementStatus
import io.element.android.features.announcement.impl.store.AnnouncementStore
import io.element.android.features.announcement.impl.store.InMemoryAnnouncementStore
import io.element.android.libraries.architecture.Presenter
import id.databisnis.android.bachot.features.announcement.api.Announcement
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementState
import id.databisnis.android.bachot.features.announcement.impl.spaces.aSpaceAnnouncementState
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
import id.databisnis.android.bachot.features.announcement.impl.store.InMemoryAnnouncementStore
import id.databisnis.android.bachot.libraries.architecture.Presenter
import kotlinx.coroutines.flow.first
import kotlinx.coroutines.test.runTest
import org.junit.Test

View File

@@ -6,14 +6,14 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.spaces
package id.databisnis.android.bachot.features.announcement.impl.spaces
import com.google.common.truth.Truth.assertThat
import io.element.android.features.announcement.api.Announcement
import io.element.android.features.announcement.impl.store.AnnouncementStatus
import io.element.android.features.announcement.impl.store.AnnouncementStore
import io.element.android.features.announcement.impl.store.InMemoryAnnouncementStore
import io.element.android.tests.testutils.test
import id.databisnis.android.bachot.features.announcement.api.Announcement
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
import id.databisnis.android.bachot.features.announcement.impl.store.InMemoryAnnouncementStore
import id.databisnis.android.bachot.tests.testutils.test
import kotlinx.coroutines.flow.first
import kotlinx.coroutines.test.runTest
import org.junit.Test

View File

@@ -6,16 +6,16 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.spaces
package id.databisnis.android.bachot.features.announcement.impl.spaces
import androidx.activity.ComponentActivity
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
import androidx.compose.ui.test.junit4.createAndroidComposeRule
import androidx.test.ext.junit.runners.AndroidJUnit4
import io.element.android.libraries.ui.strings.CommonStrings
import io.element.android.tests.testutils.EventsRecorder
import io.element.android.tests.testutils.clickOn
import io.element.android.tests.testutils.pressBackKey
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
import id.databisnis.android.bachot.tests.testutils.EventsRecorder
import id.databisnis.android.bachot.tests.testutils.clickOn
import id.databisnis.android.bachot.tests.testutils.pressBackKey
import org.junit.Rule
import org.junit.Test
import org.junit.rules.TestRule

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.announcement.impl.store
package id.databisnis.android.bachot.features.announcement.impl.store
import io.element.android.features.announcement.api.Announcement
import id.databisnis.android.bachot.features.announcement.api.Announcement
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asStateFlow

View File

@@ -6,11 +6,11 @@
* Please see LICENSE files in the repository root for full details.
*/
plugins {
id("io.element.android-compose-library")
id("id.databisnis.android.bachot-compose-library")
}
android {
namespace = "io.element.android.features.announcement.test"
namespace = "id.databisnis.android.bachot.features.announcement.test"
}
dependencies {

View File

@@ -6,13 +6,13 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.rageshake.test.logs
package id.databisnis.android.bachot.features.rageshake.test.logs
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import io.element.android.features.announcement.api.Announcement
import io.element.android.features.announcement.api.AnnouncementService
import io.element.android.tests.testutils.lambda.lambdaError
import id.databisnis.android.bachot.features.announcement.api.Announcement
import id.databisnis.android.bachot.features.announcement.api.AnnouncementService
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaError
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asStateFlow

View File

@@ -7,11 +7,11 @@
*/
plugins {
id("io.element.android-library")
id("id.databisnis.android.bachot-library")
}
android {
namespace = "io.element.android.features.cachecleaner.api"
namespace = "id.databisnis.android.bachot.features.cachecleaner.api"
}
dependencies {

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.cachecleaner.api
package id.databisnis.android.bachot.features.cachecleaner.api
interface CacheCleaner {
/**

View File

@@ -10,11 +10,11 @@ import extension.testCommonDependencies
*/
plugins {
id("io.element.android-compose-library")
id("id.databisnis.android.bachot-compose-library")
}
android {
namespace = "io.element.android.features.cachecleaner.impl"
namespace = "id.databisnis.android.bachot.features.cachecleaner.impl"
}
setupDependencyInjection()

View File

@@ -6,11 +6,11 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.cachecleaner.impl
package id.databisnis.android.bachot.features.cachecleaner.impl
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesTo
import io.element.android.features.cachecleaner.api.CacheCleaner
import id.databisnis.android.bachot.features.cachecleaner.api.CacheCleaner
@ContributesTo(AppScope::class)
interface CacheCleanerBindings {

View File

@@ -6,15 +6,15 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.cachecleaner.impl
package id.databisnis.android.bachot.features.cachecleaner.impl
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import io.element.android.features.cachecleaner.api.CacheCleaner
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
import io.element.android.libraries.core.extensions.runCatchingExceptions
import io.element.android.libraries.di.CacheDirectory
import io.element.android.libraries.di.annotations.AppCoroutineScope
import id.databisnis.android.bachot.features.cachecleaner.api.CacheCleaner
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
import id.databisnis.android.bachot.libraries.di.CacheDirectory
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch
import timber.log.Timber

View File

@@ -6,10 +6,10 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.cachecleaner.impl
package id.databisnis.android.bachot.features.cachecleaner.impl
import com.google.common.truth.Truth.assertThat
import io.element.android.tests.testutils.testCoroutineDispatchers
import id.databisnis.android.bachot.tests.testutils.testCoroutineDispatchers
import kotlinx.coroutines.test.TestScope
import kotlinx.coroutines.test.runTest
import org.junit.Rule

View File

@@ -7,12 +7,12 @@
*/
plugins {
id("io.element.android-library")
id("id.databisnis.android.bachot-library")
id("kotlin-parcelize")
}
android {
namespace = "io.element.android.features.call.api"
namespace = "id.databisnis.android.bachot.features.call.api"
}
dependencies {

View File

@@ -6,12 +6,12 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.api
package id.databisnis.android.bachot.features.call.api
import android.os.Parcelable
import io.element.android.libraries.architecture.NodeInputs
import io.element.android.libraries.matrix.api.core.RoomId
import io.element.android.libraries.matrix.api.core.SessionId
import id.databisnis.android.bachot.libraries.architecture.NodeInputs
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
import kotlinx.parcelize.Parcelize
sealed interface CallType : NodeInputs, Parcelable {

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.api
package id.databisnis.android.bachot.features.call.api
import io.element.android.libraries.matrix.api.core.RoomId
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
/**
* Value for the local current call.

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.api
package id.databisnis.android.bachot.features.call.api
import kotlinx.coroutines.flow.StateFlow

View File

@@ -6,10 +6,10 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.api
package id.databisnis.android.bachot.features.call.api
import io.element.android.libraries.matrix.api.core.EventId
import io.element.android.libraries.matrix.api.core.UserId
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
/**
* Entry point for the call feature.

View File

@@ -12,13 +12,13 @@ import extension.testCommonDependencies
*/
plugins {
id("io.element.android-compose-library")
id("id.databisnis.android.bachot-compose-library")
id("kotlin-parcelize")
alias(libs.plugins.kotlin.serialization)
}
android {
namespace = "io.element.android.features.call.impl"
namespace = "id.databisnis.android.bachot.features.call.impl"
buildFeatures {
buildConfig = true

View File

@@ -34,7 +34,7 @@
android:label="@string/element_call"
android:launchMode="singleTask"
android:supportsPictureInPicture="true"
android:taskAffinity="io.element.android.features.call">
android:taskAffinity="id.databisnis.android.bachot.features.call">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
@@ -75,7 +75,7 @@
android:excludeFromRecents="true"
android:exported="false"
android:launchMode="singleTask"
android:taskAffinity="io.element.android.features.call" />
android:taskAffinity="id.databisnis.android.bachot.features.call" />
<service
android:name=".services.CallForegroundService"

View File

@@ -6,19 +6,19 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl
package id.databisnis.android.bachot.features.call.impl
import android.content.Context
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import io.element.android.features.call.api.CallType
import io.element.android.features.call.api.ElementCallEntryPoint
import io.element.android.features.call.impl.notifications.CallNotificationData
import io.element.android.features.call.impl.utils.ActiveCallManager
import io.element.android.features.call.impl.utils.IntentProvider
import io.element.android.libraries.di.annotations.ApplicationContext
import io.element.android.libraries.matrix.api.core.EventId
import io.element.android.libraries.matrix.api.core.UserId
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.api.ElementCallEntryPoint
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
import id.databisnis.android.bachot.features.call.impl.utils.ActiveCallManager
import id.databisnis.android.bachot.features.call.impl.utils.IntentProvider
import id.databisnis.android.bachot.libraries.di.annotations.ApplicationContext
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
@ContributesBinding(AppScope::class)
class DefaultElementCallEntryPoint(

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.data
package id.databisnis.android.bachot.features.call.impl.data
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable

View File

@@ -6,13 +6,13 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.di
package id.databisnis.android.bachot.features.call.impl.di
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesTo
import io.element.android.features.call.impl.receivers.DeclineCallBroadcastReceiver
import io.element.android.features.call.impl.ui.ElementCallActivity
import io.element.android.features.call.impl.ui.IncomingCallActivity
import id.databisnis.android.bachot.features.call.impl.receivers.DeclineCallBroadcastReceiver
import id.databisnis.android.bachot.features.call.impl.ui.ElementCallActivity
import id.databisnis.android.bachot.features.call.impl.ui.IncomingCallActivity
@ContributesTo(AppScope::class)
interface CallBindings {

View File

@@ -6,13 +6,13 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.notifications
package id.databisnis.android.bachot.features.call.impl.notifications
import android.os.Parcelable
import io.element.android.libraries.matrix.api.core.EventId
import io.element.android.libraries.matrix.api.core.RoomId
import io.element.android.libraries.matrix.api.core.SessionId
import io.element.android.libraries.matrix.api.core.UserId
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
import kotlinx.parcelize.Parcelize
@Parcelize

View File

@@ -5,7 +5,7 @@
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.notifications
package id.databisnis.android.bachot.features.call.impl.notifications
import android.app.Notification
import android.app.PendingIntent
@@ -17,22 +17,22 @@ import androidx.core.app.NotificationCompat
import androidx.core.app.PendingIntentCompat
import androidx.core.app.Person
import dev.zacsweers.metro.Inject
import io.element.android.appconfig.ElementCallConfig
import io.element.android.features.call.api.CallType
import io.element.android.features.call.impl.receivers.DeclineCallBroadcastReceiver
import io.element.android.features.call.impl.ui.IncomingCallActivity
import io.element.android.features.call.impl.utils.IntentProvider
import io.element.android.libraries.designsystem.components.avatar.AvatarData
import io.element.android.libraries.designsystem.components.avatar.AvatarSize
import io.element.android.libraries.designsystem.utils.CommonDrawables
import io.element.android.libraries.di.annotations.ApplicationContext
import io.element.android.libraries.matrix.api.MatrixClientProvider
import io.element.android.libraries.matrix.api.core.EventId
import io.element.android.libraries.matrix.api.core.RoomId
import io.element.android.libraries.matrix.api.core.SessionId
import io.element.android.libraries.matrix.api.core.UserId
import io.element.android.libraries.matrix.ui.media.ImageLoaderHolder
import io.element.android.libraries.push.api.notifications.NotificationBitmapLoader
import id.databisnis.android.bachot.appconfig.ElementCallConfig
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.impl.receivers.DeclineCallBroadcastReceiver
import id.databisnis.android.bachot.features.call.impl.ui.IncomingCallActivity
import id.databisnis.android.bachot.features.call.impl.utils.IntentProvider
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarData
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarSize
import id.databisnis.android.bachot.libraries.designsystem.utils.CommonDrawables
import id.databisnis.android.bachot.libraries.di.annotations.ApplicationContext
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClientProvider
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
import id.databisnis.android.bachot.libraries.matrix.ui.media.ImageLoaderHolder
import id.databisnis.android.bachot.libraries.push.api.notifications.NotificationBitmapLoader
import kotlin.time.Duration.Companion.seconds
/**

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
import io.element.android.features.call.impl.utils.PipController
import id.databisnis.android.bachot.features.call.impl.utils.PipController
sealed interface PictureInPictureEvents {
data class SetPipController(val pipController: PipController) : PictureInPictureEvents

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
@@ -15,9 +15,9 @@ import androidx.compose.runtime.remember
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.runtime.setValue
import dev.zacsweers.metro.Inject
import io.element.android.features.call.impl.utils.PipController
import io.element.android.libraries.architecture.Presenter
import io.element.android.libraries.core.log.logger.LoggerTag
import id.databisnis.android.bachot.features.call.impl.utils.PipController
import id.databisnis.android.bachot.libraries.architecture.Presenter
import id.databisnis.android.bachot.libraries.core.log.logger.LoggerTag
import kotlinx.coroutines.launch
import timber.log.Timber

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
data class PictureInPictureState(
val supportPip: Boolean,

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
fun aPictureInPictureState(
supportPip: Boolean = false,

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
import android.content.Context
import android.content.pm.PackageManager
@@ -14,8 +14,8 @@ import android.os.Build
import androidx.annotation.ChecksSdkIntAtLeast
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import io.element.android.libraries.core.bool.orFalse
import io.element.android.libraries.di.annotations.ApplicationContext
import id.databisnis.android.bachot.libraries.core.bool.orFalse
import id.databisnis.android.bachot.libraries.di.annotations.ApplicationContext
interface PipSupportProvider {
@ChecksSdkIntAtLeast(Build.VERSION_CODES.O)

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
interface PipView {
fun setPipParams()

View File

@@ -6,19 +6,19 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.receivers
package id.databisnis.android.bachot.features.call.impl.receivers
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import androidx.core.content.IntentCompat
import dev.zacsweers.metro.Inject
import io.element.android.features.call.api.CallType
import io.element.android.features.call.impl.di.CallBindings
import io.element.android.features.call.impl.notifications.CallNotificationData
import io.element.android.features.call.impl.utils.ActiveCallManager
import io.element.android.libraries.architecture.bindings
import io.element.android.libraries.di.annotations.AppCoroutineScope
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.impl.di.CallBindings
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
import id.databisnis.android.bachot.features.call.impl.utils.ActiveCallManager
import id.databisnis.android.bachot.libraries.architecture.bindings
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.services
package id.databisnis.android.bachot.features.call.impl.services
import android.Manifest
import android.app.Service
@@ -22,12 +22,12 @@ import androidx.core.app.NotificationManagerCompat
import androidx.core.app.PendingIntentCompat
import androidx.core.app.ServiceCompat
import androidx.core.content.ContextCompat
import io.element.android.features.call.impl.R
import io.element.android.features.call.impl.ui.ElementCallActivity
import io.element.android.libraries.core.extensions.runCatchingExceptions
import io.element.android.libraries.designsystem.utils.CommonDrawables
import io.element.android.libraries.push.api.notifications.ForegroundServiceType
import io.element.android.libraries.push.api.notifications.NotificationIdProvider
import id.databisnis.android.bachot.features.call.impl.R
import id.databisnis.android.bachot.features.call.impl.ui.ElementCallActivity
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
import id.databisnis.android.bachot.libraries.designsystem.utils.CommonDrawables
import id.databisnis.android.bachot.libraries.push.api.notifications.ForegroundServiceType
import id.databisnis.android.bachot.libraries.push.api.notifications.NotificationIdProvider
import timber.log.Timber
/**

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import io.element.android.features.call.impl.utils.WidgetMessageInterceptor
import id.databisnis.android.bachot.features.call.impl.utils.WidgetMessageInterceptor
sealed interface CallScreenEvents {
data object Hangup : CallScreenEvents

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
@@ -22,25 +22,25 @@ import dev.zacsweers.metro.Assisted
import dev.zacsweers.metro.AssistedFactory
import dev.zacsweers.metro.AssistedInject
import im.vector.app.features.analytics.plan.MobileScreen
import io.element.android.compound.theme.ElementTheme
import io.element.android.features.call.api.CallType
import io.element.android.features.call.impl.data.WidgetMessage
import io.element.android.features.call.impl.utils.ActiveCallManager
import io.element.android.features.call.impl.utils.CallWidgetProvider
import io.element.android.features.call.impl.utils.WidgetMessageInterceptor
import io.element.android.features.call.impl.utils.WidgetMessageSerializer
import io.element.android.libraries.architecture.AsyncData
import io.element.android.libraries.architecture.Presenter
import io.element.android.libraries.architecture.runCatchingUpdatingState
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
import io.element.android.libraries.di.annotations.AppCoroutineScope
import io.element.android.libraries.matrix.api.MatrixClientProvider
import io.element.android.libraries.matrix.api.sync.SyncState
import io.element.android.libraries.matrix.api.widget.MatrixWidgetDriver
import io.element.android.libraries.network.useragent.UserAgentProvider
import io.element.android.services.analytics.api.ScreenTracker
import io.element.android.services.appnavstate.api.AppForegroundStateService
import io.element.android.services.toolbox.api.systemclock.SystemClock
import id.databisnis.android.bachot.compound.theme.ElementTheme
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.impl.data.WidgetMessage
import id.databisnis.android.bachot.features.call.impl.utils.ActiveCallManager
import id.databisnis.android.bachot.features.call.impl.utils.CallWidgetProvider
import id.databisnis.android.bachot.features.call.impl.utils.WidgetMessageInterceptor
import id.databisnis.android.bachot.features.call.impl.utils.WidgetMessageSerializer
import id.databisnis.android.bachot.libraries.architecture.AsyncData
import id.databisnis.android.bachot.libraries.architecture.Presenter
import id.databisnis.android.bachot.libraries.architecture.runCatchingUpdatingState
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClientProvider
import id.databisnis.android.bachot.libraries.matrix.api.sync.SyncState
import id.databisnis.android.bachot.libraries.matrix.api.widget.MatrixWidgetDriver
import id.databisnis.android.bachot.libraries.network.useragent.UserAgentProvider
import id.databisnis.android.bachot.services.analytics.api.ScreenTracker
import id.databisnis.android.bachot.services.appnavstate.api.AppForegroundStateService
import id.databisnis.android.bachot.services.toolbox.api.systemclock.SystemClock
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.launchIn

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import io.element.android.libraries.architecture.AsyncData
import id.databisnis.android.bachot.libraries.architecture.AsyncData
data class CallScreenState(
val urlState: AsyncData<String>,

View File

@@ -6,10 +6,10 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
import io.element.android.libraries.architecture.AsyncData
import id.databisnis.android.bachot.libraries.architecture.AsyncData
open class CallScreenStateProvider : PreviewParameterProvider<CallScreenState> {
override val values: Sequence<CallScreenState>

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import android.annotation.SuppressLint
import android.view.ViewGroup
@@ -32,22 +32,22 @@ import androidx.compose.ui.platform.LocalInspectionMode
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.viewinterop.AndroidView
import io.element.android.features.call.impl.R
import io.element.android.features.call.impl.pip.PictureInPictureEvents
import io.element.android.features.call.impl.pip.PictureInPictureState
import io.element.android.features.call.impl.pip.aPictureInPictureState
import io.element.android.features.call.impl.utils.InvalidAudioDeviceReason
import io.element.android.features.call.impl.utils.WebViewAudioManager
import io.element.android.features.call.impl.utils.WebViewPipController
import io.element.android.features.call.impl.utils.WebViewWidgetMessageInterceptor
import io.element.android.libraries.architecture.AsyncData
import io.element.android.libraries.designsystem.components.ProgressDialog
import io.element.android.libraries.designsystem.components.dialogs.ErrorDialog
import io.element.android.libraries.designsystem.preview.ElementPreview
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
import io.element.android.libraries.designsystem.theme.components.Scaffold
import io.element.android.libraries.designsystem.theme.components.Text
import io.element.android.libraries.ui.strings.CommonStrings
import id.databisnis.android.bachot.features.call.impl.R
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPictureEvents
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPictureState
import id.databisnis.android.bachot.features.call.impl.pip.aPictureInPictureState
import id.databisnis.android.bachot.features.call.impl.utils.InvalidAudioDeviceReason
import id.databisnis.android.bachot.features.call.impl.utils.WebViewAudioManager
import id.databisnis.android.bachot.features.call.impl.utils.WebViewPipController
import id.databisnis.android.bachot.features.call.impl.utils.WebViewWidgetMessageInterceptor
import id.databisnis.android.bachot.libraries.architecture.AsyncData
import id.databisnis.android.bachot.libraries.designsystem.components.ProgressDialog
import id.databisnis.android.bachot.libraries.designsystem.components.dialogs.ErrorDialog
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Scaffold
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Text
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
import timber.log.Timber
typealias RequestPermissionCallback = (Array<String>) -> Unit

View File

@@ -6,10 +6,10 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import io.element.android.features.call.api.CallType
import io.element.android.libraries.matrix.api.core.SessionId
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
fun CallType.getSessionId(): SessionId? {
return when (this) {

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import android.Manifest
import android.app.PictureInPictureParams
@@ -34,27 +34,27 @@ import androidx.core.content.IntentCompat
import androidx.core.util.Consumer
import androidx.lifecycle.Lifecycle
import dev.zacsweers.metro.Inject
import io.element.android.compound.colors.SemanticColorsLightDark
import io.element.android.features.call.api.CallType
import io.element.android.features.call.api.CallType.ExternalUrl
import io.element.android.features.call.impl.DefaultElementCallEntryPoint
import io.element.android.features.call.impl.di.CallBindings
import io.element.android.features.call.impl.pip.PictureInPictureEvents
import io.element.android.features.call.impl.pip.PictureInPicturePresenter
import io.element.android.features.call.impl.pip.PictureInPictureState
import io.element.android.features.call.impl.pip.PipView
import io.element.android.features.call.impl.services.CallForegroundService
import io.element.android.features.call.impl.utils.CallIntentDataParser
import io.element.android.features.enterprise.api.EnterpriseService
import io.element.android.libraries.androidutils.browser.ConsoleMessageLogger
import io.element.android.libraries.architecture.Presenter
import io.element.android.libraries.architecture.bindings
import io.element.android.libraries.audio.api.AudioFocus
import io.element.android.libraries.audio.api.AudioFocusRequester
import io.element.android.libraries.core.log.logger.LoggerTag
import io.element.android.libraries.core.meta.BuildMeta
import io.element.android.libraries.designsystem.theme.ElementThemeApp
import io.element.android.libraries.preferences.api.store.AppPreferencesStore
import id.databisnis.android.bachot.compound.colors.SemanticColorsLightDark
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.api.CallType.ExternalUrl
import id.databisnis.android.bachot.features.call.impl.DefaultElementCallEntryPoint
import id.databisnis.android.bachot.features.call.impl.di.CallBindings
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPictureEvents
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPicturePresenter
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPictureState
import id.databisnis.android.bachot.features.call.impl.pip.PipView
import id.databisnis.android.bachot.features.call.impl.services.CallForegroundService
import id.databisnis.android.bachot.features.call.impl.utils.CallIntentDataParser
import id.databisnis.android.bachot.features.enterprise.api.EnterpriseService
import id.databisnis.android.bachot.libraries.androidutils.browser.ConsoleMessageLogger
import id.databisnis.android.bachot.libraries.architecture.Presenter
import id.databisnis.android.bachot.libraries.architecture.bindings
import id.databisnis.android.bachot.libraries.audio.api.AudioFocus
import id.databisnis.android.bachot.libraries.audio.api.AudioFocusRequester
import id.databisnis.android.bachot.libraries.core.log.logger.LoggerTag
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
import id.databisnis.android.bachot.libraries.designsystem.theme.ElementThemeApp
import id.databisnis.android.bachot.libraries.preferences.api.store.AppPreferencesStore
import timber.log.Timber
private val loggerTag = LoggerTag("ElementCallActivity")

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import android.os.Bundle
import android.view.WindowManager
@@ -18,19 +18,19 @@ import androidx.compose.runtime.remember
import androidx.core.content.IntentCompat
import androidx.lifecycle.lifecycleScope
import dev.zacsweers.metro.Inject
import io.element.android.compound.colors.SemanticColorsLightDark
import io.element.android.features.call.api.CallType
import io.element.android.features.call.api.ElementCallEntryPoint
import io.element.android.features.call.impl.di.CallBindings
import io.element.android.features.call.impl.notifications.CallNotificationData
import io.element.android.features.call.impl.utils.ActiveCallManager
import io.element.android.features.call.impl.utils.CallState
import io.element.android.features.enterprise.api.EnterpriseService
import io.element.android.libraries.architecture.bindings
import io.element.android.libraries.core.meta.BuildMeta
import io.element.android.libraries.designsystem.theme.ElementThemeApp
import io.element.android.libraries.di.annotations.AppCoroutineScope
import io.element.android.libraries.preferences.api.store.AppPreferencesStore
import id.databisnis.android.bachot.compound.colors.SemanticColorsLightDark
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.api.ElementCallEntryPoint
import id.databisnis.android.bachot.features.call.impl.di.CallBindings
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
import id.databisnis.android.bachot.features.call.impl.utils.ActiveCallManager
import id.databisnis.android.bachot.features.call.impl.utils.CallState
import id.databisnis.android.bachot.features.enterprise.api.EnterpriseService
import id.databisnis.android.bachot.libraries.architecture.bindings
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
import id.databisnis.android.bachot.libraries.designsystem.theme.ElementThemeApp
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
import id.databisnis.android.bachot.libraries.preferences.api.store.AppPreferencesStore
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.filter
import kotlinx.coroutines.flow.launchIn

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import androidx.compose.foundation.border
import androidx.compose.foundation.layout.Arrangement
@@ -32,24 +32,24 @@ import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
import io.element.android.compound.theme.ElementTheme
import io.element.android.compound.tokens.generated.CompoundIcons
import io.element.android.features.call.impl.R
import io.element.android.features.call.impl.notifications.CallNotificationData
import io.element.android.libraries.designsystem.background.OnboardingBackground
import io.element.android.libraries.designsystem.components.avatar.Avatar
import io.element.android.libraries.designsystem.components.avatar.AvatarData
import io.element.android.libraries.designsystem.components.avatar.AvatarSize
import io.element.android.libraries.designsystem.components.avatar.AvatarType
import io.element.android.libraries.designsystem.preview.ElementPreview
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
import io.element.android.libraries.designsystem.theme.components.Icon
import io.element.android.libraries.designsystem.theme.components.Text
import io.element.android.libraries.matrix.api.core.EventId
import io.element.android.libraries.matrix.api.core.RoomId
import io.element.android.libraries.matrix.api.core.SessionId
import io.element.android.libraries.matrix.api.core.UserId
import io.element.android.libraries.ui.strings.CommonStrings
import id.databisnis.android.bachot.compound.theme.ElementTheme
import id.databisnis.android.bachot.compound.tokens.generated.CompoundIcons
import id.databisnis.android.bachot.features.call.impl.R
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
import id.databisnis.android.bachot.libraries.designsystem.background.OnboardingBackground
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.Avatar
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarData
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarSize
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarType
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Icon
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Text
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
@Composable
internal fun IncomingCallScreen(

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.ui
package id.databisnis.android.bachot.features.call.impl.ui
import androidx.compose.runtime.Composable
import androidx.compose.ui.platform.LocalConfiguration

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import android.annotation.SuppressLint
import android.content.Context
@@ -19,22 +19,22 @@ import coil3.annotation.DelicateCoilApi
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import dev.zacsweers.metro.SingleIn
import io.element.android.appconfig.ElementCallConfig
import io.element.android.features.call.api.CallType
import io.element.android.features.call.api.CurrentCall
import io.element.android.features.call.impl.notifications.CallNotificationData
import io.element.android.features.call.impl.notifications.RingingCallNotificationCreator
import io.element.android.libraries.core.extensions.runCatchingExceptions
import io.element.android.libraries.di.annotations.AppCoroutineScope
import io.element.android.libraries.di.annotations.ApplicationContext
import io.element.android.libraries.matrix.api.MatrixClientProvider
import io.element.android.libraries.matrix.api.core.SessionId
import io.element.android.libraries.matrix.ui.media.ImageLoaderHolder
import io.element.android.libraries.push.api.notifications.ForegroundServiceType
import io.element.android.libraries.push.api.notifications.NotificationIdProvider
import io.element.android.libraries.push.api.notifications.OnMissedCallNotificationHandler
import io.element.android.services.appnavstate.api.AppForegroundStateService
import io.element.android.services.toolbox.api.systemclock.SystemClock
import id.databisnis.android.bachot.appconfig.ElementCallConfig
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.api.CurrentCall
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
import id.databisnis.android.bachot.features.call.impl.notifications.RingingCallNotificationCreator
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
import id.databisnis.android.bachot.libraries.di.annotations.ApplicationContext
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClientProvider
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
import id.databisnis.android.bachot.libraries.matrix.ui.media.ImageLoaderHolder
import id.databisnis.android.bachot.libraries.push.api.notifications.ForegroundServiceType
import id.databisnis.android.bachot.libraries.push.api.notifications.NotificationIdProvider
import id.databisnis.android.bachot.libraries.push.api.notifications.OnMissedCallNotificationHandler
import id.databisnis.android.bachot.services.appnavstate.api.AppForegroundStateService
import id.databisnis.android.bachot.services.toolbox.api.systemclock.SystemClock
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.Job

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import android.net.Uri
import androidx.core.net.toUri

View File

@@ -6,11 +6,11 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import io.element.android.libraries.matrix.api.core.RoomId
import io.element.android.libraries.matrix.api.core.SessionId
import io.element.android.libraries.matrix.api.widget.MatrixWidgetDriver
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
import id.databisnis.android.bachot.libraries.matrix.api.widget.MatrixWidgetDriver
interface CallWidgetProvider {
suspend fun getWidget(

View File

@@ -6,12 +6,12 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import io.element.android.features.call.impl.BuildConfig
import io.element.android.libraries.matrix.api.widget.CallAnalyticCredentialsProvider
import id.databisnis.android.bachot.features.call.impl.BuildConfig
import id.databisnis.android.bachot.libraries.matrix.api.widget.CallAnalyticCredentialsProvider
@ContributesBinding(AppScope::class)
class DefaultCallAnalyticCredentialsProvider : CallAnalyticCredentialsProvider {

View File

@@ -6,18 +6,18 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import io.element.android.libraries.core.extensions.runCatchingExceptions
import io.element.android.libraries.matrix.api.MatrixClientProvider
import io.element.android.libraries.matrix.api.core.RoomId
import io.element.android.libraries.matrix.api.core.SessionId
import io.element.android.libraries.matrix.api.room.isDm
import io.element.android.libraries.matrix.api.widget.CallWidgetSettingsProvider
import io.element.android.libraries.preferences.api.store.AppPreferencesStore
import io.element.android.services.appnavstate.api.ActiveRoomsHolder
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClientProvider
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
import id.databisnis.android.bachot.libraries.matrix.api.room.isDm
import id.databisnis.android.bachot.libraries.matrix.api.widget.CallWidgetSettingsProvider
import id.databisnis.android.bachot.libraries.preferences.api.store.AppPreferencesStore
import id.databisnis.android.bachot.services.appnavstate.api.ActiveRoomsHolder
import kotlinx.coroutines.flow.firstOrNull
private const val EMBEDDED_CALL_WIDGET_BASE_URL = "https://appassets.androidplatform.net/element-call/index.html"

View File

@@ -6,13 +6,13 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import dev.zacsweers.metro.AppScope
import dev.zacsweers.metro.ContributesBinding
import dev.zacsweers.metro.SingleIn
import io.element.android.features.call.api.CurrentCall
import io.element.android.features.call.api.CurrentCallService
import id.databisnis.android.bachot.features.call.api.CurrentCall
import id.databisnis.android.bachot.features.call.api.CurrentCallService
import kotlinx.coroutines.flow.MutableStateFlow
@SingleIn(AppScope::class)

View File

@@ -6,15 +6,15 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import android.app.PendingIntent
import android.content.Context
import android.content.Intent
import androidx.core.app.PendingIntentCompat
import io.element.android.features.call.api.CallType
import io.element.android.features.call.impl.DefaultElementCallEntryPoint
import io.element.android.features.call.impl.ui.ElementCallActivity
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.impl.DefaultElementCallEntryPoint
import id.databisnis.android.bachot.features.call.impl.ui.ElementCallActivity
internal object IntentProvider {
fun createIntent(context: Context, callType: CallType): Intent = Intent(context, ElementCallActivity::class.java).apply {

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
interface PipController {
suspend fun canEnterPip(): Boolean

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import android.content.Context
import android.media.AudioDeviceCallback

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import android.webkit.WebView
import kotlin.coroutines.resume

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import android.graphics.Bitmap
import android.net.http.SslError
@@ -21,7 +21,7 @@ import androidx.core.net.toUri
import androidx.webkit.WebViewAssetLoader
import androidx.webkit.WebViewCompat
import androidx.webkit.WebViewFeature
import io.element.android.features.call.impl.BuildConfig
import id.databisnis.android.bachot.features.call.impl.BuildConfig
import kotlinx.coroutines.flow.MutableSharedFlow
import timber.log.Timber

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import kotlinx.coroutines.flow.Flow

View File

@@ -6,12 +6,12 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.utils
package id.databisnis.android.bachot.features.call.impl.utils
import dev.zacsweers.metro.Inject
import io.element.android.features.call.impl.data.WidgetMessage
import io.element.android.libraries.androidutils.json.JsonProvider
import io.element.android.libraries.core.extensions.runCatchingExceptions
import id.databisnis.android.bachot.features.call.impl.data.WidgetMessage
import id.databisnis.android.bachot.libraries.androidutils.json.JsonProvider
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
@Inject
class WidgetMessageSerializer(

View File

@@ -6,21 +6,21 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call
package id.databisnis.android.bachot.features.call
import android.content.Intent
import androidx.test.platform.app.InstrumentationRegistry
import com.google.common.truth.Truth.assertThat
import io.element.android.features.call.api.CallType
import io.element.android.features.call.impl.DefaultElementCallEntryPoint
import io.element.android.features.call.impl.notifications.CallNotificationData
import io.element.android.features.call.impl.ui.ElementCallActivity
import io.element.android.features.call.utils.FakeActiveCallManager
import io.element.android.libraries.matrix.test.AN_EVENT_ID
import io.element.android.libraries.matrix.test.A_ROOM_ID
import io.element.android.libraries.matrix.test.A_SESSION_ID
import io.element.android.libraries.matrix.test.A_USER_ID_2
import io.element.android.tests.testutils.lambda.lambdaRecorder
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.impl.DefaultElementCallEntryPoint
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
import id.databisnis.android.bachot.features.call.impl.ui.ElementCallActivity
import id.databisnis.android.bachot.features.call.utils.FakeActiveCallManager
import id.databisnis.android.bachot.libraries.matrix.test.AN_EVENT_ID
import id.databisnis.android.bachot.libraries.matrix.test.A_ROOM_ID
import id.databisnis.android.bachot.libraries.matrix.test.A_SESSION_ID
import id.databisnis.android.bachot.libraries.matrix.test.A_USER_ID_2
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaRecorder
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.test.TestScope
import kotlinx.coroutines.test.advanceTimeBy

View File

@@ -6,12 +6,12 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call
package id.databisnis.android.bachot.features.call
import android.Manifest
import android.webkit.PermissionRequest
import com.google.common.truth.Truth.assertThat
import io.element.android.features.call.impl.ui.mapWebkitPermissions
import id.databisnis.android.bachot.features.call.impl.ui.mapWebkitPermissions
import org.junit.Test
class MapWebkitPermissionsTest {

View File

@@ -6,10 +6,10 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
import io.element.android.features.call.impl.utils.PipController
import io.element.android.tests.testutils.lambda.lambdaError
import id.databisnis.android.bachot.features.call.impl.utils.PipController
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaError
class FakePipController(
private val canEnterPipResult: () -> Boolean = { lambdaError() },

View File

@@ -6,7 +6,7 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
class FakePipSupportProvider(
private val isPipSupported: Boolean

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
import io.element.android.tests.testutils.lambda.lambdaError
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaError
class FakePipView(
private val setPipParamsResult: () -> Unit = { lambdaError() },

View File

@@ -6,13 +6,13 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.impl.pip
package id.databisnis.android.bachot.features.call.impl.pip
import app.cash.molecule.RecompositionMode
import app.cash.molecule.moleculeFlow
import app.cash.turbine.test
import com.google.common.truth.Truth.assertThat
import io.element.android.tests.testutils.lambda.lambdaRecorder
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaRecorder
import kotlinx.coroutines.test.runTest
import org.junit.Test

View File

@@ -6,23 +6,23 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.notifications
package id.databisnis.android.bachot.features.call.notifications
import androidx.core.graphics.drawable.IconCompat
import androidx.test.platform.app.InstrumentationRegistry
import coil3.ImageLoader
import com.google.common.truth.Truth.assertThat
import io.element.android.features.call.impl.notifications.RingingCallNotificationCreator
import io.element.android.libraries.designsystem.components.avatar.AvatarData
import io.element.android.libraries.matrix.test.AN_EVENT_ID
import io.element.android.libraries.matrix.test.A_ROOM_ID
import io.element.android.libraries.matrix.test.A_SESSION_ID
import io.element.android.libraries.matrix.test.A_USER_ID_2
import io.element.android.libraries.matrix.test.FakeMatrixClient
import io.element.android.libraries.matrix.test.FakeMatrixClientProvider
import io.element.android.libraries.matrix.ui.media.test.FakeImageLoaderHolder
import io.element.android.libraries.push.test.notifications.push.FakeNotificationBitmapLoader
import io.element.android.tests.testutils.lambda.lambdaRecorder
import id.databisnis.android.bachot.features.call.impl.notifications.RingingCallNotificationCreator
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarData
import id.databisnis.android.bachot.libraries.matrix.test.AN_EVENT_ID
import id.databisnis.android.bachot.libraries.matrix.test.A_ROOM_ID
import id.databisnis.android.bachot.libraries.matrix.test.A_SESSION_ID
import id.databisnis.android.bachot.libraries.matrix.test.A_USER_ID_2
import id.databisnis.android.bachot.libraries.matrix.test.FakeMatrixClient
import id.databisnis.android.bachot.libraries.matrix.test.FakeMatrixClientProvider
import id.databisnis.android.bachot.libraries.matrix.ui.media.test.FakeImageLoaderHolder
import id.databisnis.android.bachot.libraries.push.test.notifications.push.FakeNotificationBitmapLoader
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaRecorder
import kotlinx.coroutines.test.runTest
import org.junit.Test
import org.junit.runner.RunWith

View File

@@ -6,40 +6,40 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.ui
package id.databisnis.android.bachot.features.call.ui
import app.cash.molecule.RecompositionMode
import app.cash.molecule.moleculeFlow
import app.cash.turbine.test
import com.google.common.truth.Truth.assertThat
import im.vector.app.features.analytics.plan.MobileScreen
import io.element.android.features.call.api.CallType
import io.element.android.features.call.impl.ui.CallScreenEvents
import io.element.android.features.call.impl.ui.CallScreenNavigator
import io.element.android.features.call.impl.ui.CallScreenPresenter
import io.element.android.features.call.impl.utils.WidgetMessageSerializer
import io.element.android.features.call.utils.FakeActiveCallManager
import io.element.android.features.call.utils.FakeCallWidgetProvider
import io.element.android.features.call.utils.FakeWidgetMessageInterceptor
import io.element.android.libraries.androidutils.json.DefaultJsonProvider
import io.element.android.libraries.architecture.AsyncData
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
import io.element.android.libraries.matrix.api.sync.SyncState
import io.element.android.libraries.matrix.test.A_ROOM_ID
import io.element.android.libraries.matrix.test.A_SESSION_ID
import io.element.android.libraries.matrix.test.FakeMatrixClient
import io.element.android.libraries.matrix.test.FakeMatrixClientProvider
import io.element.android.libraries.matrix.test.sync.FakeSyncService
import io.element.android.libraries.matrix.test.widget.FakeMatrixWidgetDriver
import io.element.android.libraries.network.useragent.UserAgentProvider
import io.element.android.services.analytics.api.ScreenTracker
import io.element.android.services.analytics.test.FakeScreenTracker
import io.element.android.services.appnavstate.test.FakeAppForegroundStateService
import io.element.android.services.toolbox.api.systemclock.SystemClock
import io.element.android.tests.testutils.WarmUpRule
import io.element.android.tests.testutils.lambda.lambdaRecorder
import io.element.android.tests.testutils.lambda.value
import io.element.android.tests.testutils.testCoroutineDispatchers
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.impl.ui.CallScreenEvents
import id.databisnis.android.bachot.features.call.impl.ui.CallScreenNavigator
import id.databisnis.android.bachot.features.call.impl.ui.CallScreenPresenter
import id.databisnis.android.bachot.features.call.impl.utils.WidgetMessageSerializer
import id.databisnis.android.bachot.features.call.utils.FakeActiveCallManager
import id.databisnis.android.bachot.features.call.utils.FakeCallWidgetProvider
import id.databisnis.android.bachot.features.call.utils.FakeWidgetMessageInterceptor
import id.databisnis.android.bachot.libraries.androidutils.json.DefaultJsonProvider
import id.databisnis.android.bachot.libraries.architecture.AsyncData
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
import id.databisnis.android.bachot.libraries.matrix.api.sync.SyncState
import id.databisnis.android.bachot.libraries.matrix.test.A_ROOM_ID
import id.databisnis.android.bachot.libraries.matrix.test.A_SESSION_ID
import id.databisnis.android.bachot.libraries.matrix.test.FakeMatrixClient
import id.databisnis.android.bachot.libraries.matrix.test.FakeMatrixClientProvider
import id.databisnis.android.bachot.libraries.matrix.test.sync.FakeSyncService
import id.databisnis.android.bachot.libraries.matrix.test.widget.FakeMatrixWidgetDriver
import id.databisnis.android.bachot.libraries.network.useragent.UserAgentProvider
import id.databisnis.android.bachot.services.analytics.api.ScreenTracker
import id.databisnis.android.bachot.services.analytics.test.FakeScreenTracker
import id.databisnis.android.bachot.services.appnavstate.test.FakeAppForegroundStateService
import id.databisnis.android.bachot.services.toolbox.api.systemclock.SystemClock
import id.databisnis.android.bachot.tests.testutils.WarmUpRule
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaRecorder
import id.databisnis.android.bachot.tests.testutils.lambda.value
import id.databisnis.android.bachot.tests.testutils.testCoroutineDispatchers
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.cancelAndJoin
import kotlinx.coroutines.launch

View File

@@ -6,13 +6,13 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.ui
package id.databisnis.android.bachot.features.call.ui
import com.google.common.truth.Truth.assertThat
import io.element.android.features.call.api.CallType
import io.element.android.features.call.impl.ui.getSessionId
import io.element.android.libraries.matrix.test.A_ROOM_ID
import io.element.android.libraries.matrix.test.A_SESSION_ID
import id.databisnis.android.bachot.features.call.api.CallType
import id.databisnis.android.bachot.features.call.impl.ui.getSessionId
import id.databisnis.android.bachot.libraries.matrix.test.A_ROOM_ID
import id.databisnis.android.bachot.libraries.matrix.test.A_SESSION_ID
import org.junit.Test
class CallTypeTest {

View File

@@ -6,9 +6,9 @@
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.features.call.ui
package id.databisnis.android.bachot.features.call.ui
import io.element.android.features.call.impl.ui.CallScreenNavigator
import id.databisnis.android.bachot.features.call.impl.ui.CallScreenNavigator
class FakeCallScreenNavigator : CallScreenNavigator {
var closeCalled = false

Some files were not shown because too many files have changed in this diff Show More