~repos /only-bible-app

#kotlin#android#ios

git clone https://pyrossh.dev/repos/only-bible-app.git
Discussions: https://groups.google.com/g/rust-embed-devs

The only bible app you will ever need. No ads. No in-app purchases. No distractions.


742bd1c6 pyrossh

1 year ago
update pkgName
Files changed (26) hide show
  1. .idea/compiler.xml +1 -1
  2. .idea/gradle.xml +1 -1
  3. .idea/misc.xml +2 -1
  4. composeApp/build.gradle.kts +25 -5
  5. composeApp/src/androidMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/MainActivity.kt +1 -1
  6. composeApp/src/androidMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/Platform.android.kt +3 -3
  7. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/App.kt +1 -1
  8. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/AppHost.kt +1 -1
  9. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/AppTheme.kt +1 -1
  10. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/AppViewModel.kt +4 -4
  11. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/ChapterScreen.kt +7 -7
  12. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/Platform.kt +2 -2
  13. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/BibleSelector.kt +4 -7
  14. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/ChapterSelector.kt +6 -6
  15. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/EmbeddedSearchBar.kt +2 -2
  16. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/TextSettingsBottomSheet.kt +4 -4
  17. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/VerseHeading.kt +2 -9
  18. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/VerseText.kt +10 -10
  19. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/domain/Verse.kt +1 -1
  20. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/theme/Color.kt +0 -0
  21. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/theme/Theme.kt +0 -0
  22. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/theme/Type.kt +0 -0
  23. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/utils/Navigation.kt +2 -2
  24. composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/utils/Swipe.kt +0 -0
  25. composeApp/src/iosMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/MainViewController.kt +1 -2
  26. composeApp/src/iosMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/Platform.ios.kt +2 -2
.idea/compiler.xml CHANGED
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <project version="4">
3
3
  <component name="CompilerConfiguration">
4
- <bytecodeTargetLevel target="17" />
4
+ <bytecodeTargetLevel target="19" />
5
5
  </component>
6
6
  </project>
.idea/gradle.xml CHANGED
@@ -9,7 +9,7 @@
9
9
  <option name="modules">
10
10
  <set>
11
11
  <option value="$PROJECT_DIR$" />
12
- <option value="$PROJECT_DIR$/app" />
12
+ <option value="$PROJECT_DIR$/composeApp" />
13
13
  </set>
14
14
  </option>
15
15
  <option name="resolveExternalAnnotations" value="false" />
.idea/misc.xml CHANGED
@@ -1,6 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
1
2
  <project version="4">
2
3
  <component name="ExternalStorageConfigurationManager" enabled="true" />
3
- <component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
4
+ <component name="ProjectRootManager" version="2" languageLevel="JDK_19" default="true" project-jdk-name="corretto-19" project-jdk-type="JavaSDK">
4
5
  <output url="file://$PROJECT_DIR$/build/classes" />
5
6
  </component>
6
7
  <component name="ProjectType">
composeApp/build.gradle.kts CHANGED
@@ -3,6 +3,12 @@ import org.jetbrains.kotlin.gradle.dsl.JvmTarget
3
3
  import com.codingfeline.buildkonfig.compiler.FieldSpec.Type
4
4
  import com.codingfeline.buildkonfig.gradle.BuildKonfigExtension
5
5
  import org.jetbrains.kotlin.konan.properties.Properties
6
+ import java.io.FileInputStream
7
+
8
+ val keystorePropertiesFile = rootProject.file("keystore.properties")
9
+ val keystoreProperties = Properties()
10
+ keystoreProperties.load(FileInputStream(keystorePropertiesFile))
11
+ val pkgName = "dev.pyrossh.only_bible_app" //"dev.pyrossh.onlyBible"
6
12
 
7
13
  plugins {
8
14
  alias(libs.plugins.kotlinMultiplatform)
@@ -72,7 +78,7 @@ kotlin {
72
78
  }
73
79
 
74
80
  android {
75
- namespace = "example.one"
81
+ namespace = pkgName
76
82
  compileSdk = 34
77
83
 
78
84
  sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
@@ -80,7 +86,7 @@ android {
80
86
  sourceSets["main"].resources.srcDirs("src/commonMain/resources")
81
87
 
82
88
  defaultConfig {
83
- applicationId = "example.one"
89
+ applicationId = pkgName
84
90
  minSdk = 31
85
91
  targetSdk = 34
86
92
  versionCode = 1
@@ -91,9 +97,23 @@ android {
91
97
  excludes += "/META-INF/{AL2.0,LGPL2.1}"
92
98
  }
93
99
  }
100
+ signingConfigs {
101
+ create("release") {
102
+ keyAlias = keystoreProperties["keyAlias"] as String
103
+ keyPassword = keystoreProperties["keyPassword"] as String
104
+ storeFile = file(keystoreProperties["storeFile"] as String)
105
+ storePassword = keystoreProperties["storePassword"] as String
106
+ }
107
+ }
94
108
  buildTypes {
109
+ release {
95
- getByName("release") {
110
+ signingConfig = signingConfigs.getByName("release")
96
- isMinifyEnabled = false
111
+ isMinifyEnabled = true
112
+ isShrinkResources = true
113
+ proguardFiles(
114
+ getDefaultProguardFile("proguard-android-optimize.txt"),
115
+ "proguard-rules.pro"
116
+ )
97
117
  }
98
118
  }
99
119
  compileOptions {
@@ -110,7 +130,7 @@ android {
110
130
 
111
131
  @Suppress("TooGenericExceptionCaught")
112
132
  configure<BuildKonfigExtension> {
113
- packageName = "example.one.config"
133
+ packageName = "${pkgName}.config"
114
134
  val props = Properties().apply {
115
135
  load(file("../local.properties").inputStream())
116
136
  }
composeApp/src/androidMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/MainActivity.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
 
3
3
  import android.os.Bundle
4
4
  import androidx.activity.ComponentActivity
composeApp/src/androidMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/Platform.android.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
 
3
3
  import android.view.SoundEffectConstants
4
4
  import androidx.compose.runtime.Composable
@@ -6,11 +6,11 @@ import androidx.compose.ui.platform.LocalConfiguration
6
6
  import androidx.compose.ui.platform.LocalView
7
7
  import androidx.compose.ui.unit.Dp
8
8
  import androidx.compose.ui.unit.dp
9
- import example.one.domain.Verse
9
+ import dev.pyrossh.only_bible_app.domain.Verse
10
10
  import com.microsoft.cognitiveservices.speech.SpeechConfig
11
11
  import com.microsoft.cognitiveservices.speech.SpeechSynthesisEventArgs
12
12
  import com.microsoft.cognitiveservices.speech.SpeechSynthesizer
13
- import example.one.config.BuildKonfig
13
+ import dev.pyrossh.only_bible_app.config.BuildKonfig
14
14
 
15
15
  @Composable
16
16
  actual fun getScreenWidth(): Dp = LocalConfiguration.current.screenWidthDp.dp
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/App.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
 
3
3
  import androidx.compose.runtime.Composable
4
4
  import androidx.lifecycle.viewmodel.compose.viewModel
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/AppHost.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
 
3
3
  import androidx.compose.animation.EnterTransition
4
4
  import androidx.compose.animation.ExitTransition
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/AppTheme.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
  import androidx.compose.foundation.isSystemInDarkTheme
3
3
  import androidx.compose.material3.MaterialTheme
4
4
  import androidx.compose.runtime.Composable
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/AppViewModel.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
  import androidx.compose.runtime.getValue
3
3
  import androidx.compose.runtime.mutableIntStateOf
4
4
  import androidx.compose.runtime.mutableStateOf
@@ -6,9 +6,9 @@ import androidx.compose.runtime.setValue
6
6
  import androidx.lifecycle.ViewModel
7
7
  import androidx.lifecycle.viewModelScope
8
8
  import com.russhwolf.settings.Settings
9
- import example.one.domain.Bible
9
+ import dev.pyrossh.only_bible_app.domain.Bible
10
- import example.one.domain.Verse
10
+ import dev.pyrossh.only_bible_app.domain.Verse
11
- import example.one.domain.bibles
11
+ import dev.pyrossh.only_bible_app.domain.bibles
12
12
  import example1.composeapp.generated.resources.Res
13
13
  import kotlinx.coroutines.Dispatchers
14
14
  import kotlinx.coroutines.FlowPreview
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/ChapterScreen.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
  import androidx.compose.animation.AnimatedContentTransitionScope
3
3
  import androidx.compose.foundation.layout.Arrangement
4
4
  import androidx.compose.foundation.layout.Column
@@ -36,12 +36,12 @@ import androidx.compose.ui.text.TextStyle
36
36
  import androidx.compose.ui.text.font.FontWeight
37
37
  import androidx.compose.ui.unit.dp
38
38
  import androidx.compose.ui.unit.sp
39
- import example.one.composables.BibleSelector
39
+ import dev.pyrossh.only_bible_app.composables.BibleSelector
40
- import example.one.composables.ChapterSelector
40
+ import dev.pyrossh.only_bible_app.composables.ChapterSelector
41
- import example.one.composables.EmbeddedSearchBar
41
+ import dev.pyrossh.only_bible_app.composables.EmbeddedSearchBar
42
- import example.one.composables.TextSettingsBottomSheet
42
+ import dev.pyrossh.only_bible_app.composables.TextSettingsBottomSheet
43
- import example.one.composables.VerseHeading
43
+ import dev.pyrossh.only_bible_app.composables.VerseHeading
44
- import example.one.composables.VerseText
44
+ import dev.pyrossh.only_bible_app.composables.VerseText
45
45
  import kotlinx.coroutines.Dispatchers
46
46
  import kotlinx.coroutines.IO
47
47
  import kotlinx.coroutines.launch
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/Platform.kt RENAMED
@@ -1,8 +1,8 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
 
3
3
  import androidx.compose.runtime.Composable
4
4
  import androidx.compose.ui.unit.Dp
5
- import example.one.domain.Verse
5
+ import dev.pyrossh.only_bible_app.domain.Verse
6
6
 
7
7
 
8
8
  @Composable
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/BibleSelector.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one.composables
1
+ package dev.pyrossh.only_bible_app.composables
2
2
 
3
3
  import androidx.compose.foundation.clickable
4
4
  import androidx.compose.foundation.layout.fillMaxWidth
@@ -10,18 +10,15 @@ import androidx.compose.foundation.lazy.rememberLazyListState
10
10
  import androidx.compose.foundation.shape.RoundedCornerShape
11
11
  import androidx.compose.material3.Card
12
12
  import androidx.compose.material3.ListItem
13
- import androidx.compose.material3.ListItemDefaults
14
- import androidx.compose.material3.MaterialTheme
15
13
  import androidx.compose.material3.Text
16
14
  import androidx.compose.runtime.Composable
17
15
  import androidx.compose.ui.Modifier
18
16
  import androidx.compose.ui.text.font.FontWeight
19
17
  import androidx.compose.ui.unit.dp
20
18
  import androidx.compose.ui.window.Dialog
21
- import example.one.domain.Bible
19
+ import dev.pyrossh.only_bible_app.domain.Bible
22
- import example.one.domain.bibles
20
+ import dev.pyrossh.only_bible_app.domain.bibles
23
- import example.one.getScreenHeight
21
+ import dev.pyrossh.only_bible_app.getScreenHeight
24
- import example.one.playClickSound
25
22
 
26
23
  @Composable
27
24
  fun BibleSelector(
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/ChapterSelector.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one.composables
1
+ package dev.pyrossh.only_bible_app.composables
2
2
 
3
3
  import androidx.compose.foundation.clickable
4
4
  import androidx.compose.foundation.layout.Arrangement
@@ -33,11 +33,11 @@ import androidx.compose.ui.Modifier
33
33
  import androidx.compose.ui.text.font.FontWeight
34
34
  import androidx.compose.ui.unit.dp
35
35
  import androidx.compose.ui.window.Dialog
36
- import example.one.ChapterScreenProps
36
+ import dev.pyrossh.only_bible_app.ChapterScreenProps
37
- import example.one.domain.Bible
37
+ import dev.pyrossh.only_bible_app.domain.Bible
38
- import example.one.domain.chapterSizes
38
+ import dev.pyrossh.only_bible_app.domain.chapterSizes
39
- import example.one.domain.engTitles
39
+ import dev.pyrossh.only_bible_app.domain.engTitles
40
- import example.one.getScreenHeight
40
+ import dev.pyrossh.only_bible_app.getScreenHeight
41
41
  import utils.LocalNavController
42
42
 
43
43
  @OptIn(ExperimentalMaterial3Api::class)
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/EmbeddedSearchBar.kt RENAMED
@@ -1,6 +1,6 @@
1
- package example.one.composables
1
+ package dev.pyrossh.only_bible_app.composables
2
2
 
3
- import example.one.AppViewModel
3
+ import dev.pyrossh.only_bible_app.AppViewModel
4
4
  import androidx.compose.foundation.layout.Spacer
5
5
  import androidx.compose.foundation.layout.fillMaxSize
6
6
  import androidx.compose.foundation.layout.navigationBarsPadding
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/TextSettingsBottomSheet.kt RENAMED
@@ -1,8 +1,8 @@
1
- package example.one.composables
1
+ package dev.pyrossh.only_bible_app.composables
2
2
 
3
- import example.one.AppViewModel
3
+ import dev.pyrossh.only_bible_app.AppViewModel
4
- import example.one.FontType
4
+ import dev.pyrossh.only_bible_app.FontType
5
- import example.one.ThemeType
5
+ import dev.pyrossh.only_bible_app.ThemeType
6
6
  import androidx.compose.foundation.BorderStroke
7
7
  import androidx.compose.foundation.background
8
8
  import androidx.compose.foundation.layout.Arrangement
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/VerseHeading.kt RENAMED
@@ -1,22 +1,15 @@
1
- package example.one.composables
1
+ package dev.pyrossh.only_bible_app.composables
2
2
 
3
3
  import androidx.compose.foundation.layout.padding
4
4
  import androidx.compose.material3.MaterialTheme
5
5
  import androidx.compose.material3.Text
6
6
  import androidx.compose.runtime.Composable
7
7
  import androidx.compose.ui.Modifier
8
- import androidx.compose.ui.graphics.Color
9
- import androidx.compose.ui.text.AnnotatedString
10
- import androidx.compose.ui.text.LinkAnnotation
11
- import androidx.compose.ui.text.SpanStyle
12
- import androidx.compose.ui.text.TextLinkStyles
13
8
  import androidx.compose.ui.text.TextStyle
14
- import androidx.compose.ui.text.font.FontStyle
15
9
  import androidx.compose.ui.text.font.FontWeight
16
10
  import androidx.compose.ui.unit.dp
17
11
  import androidx.compose.ui.unit.sp
18
- import example.one.ChapterScreenProps
19
- import example.one.FontType
12
+ import dev.pyrossh.only_bible_app.FontType
20
13
  import utils.LocalNavController
21
14
 
22
15
  @Composable
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/composables/VerseText.kt RENAMED
@@ -1,8 +1,8 @@
1
- package example.one.composables
1
+ package dev.pyrossh.only_bible_app.composables
2
2
 
3
- import example.one.AppViewModel
3
+ import dev.pyrossh.only_bible_app.AppViewModel
4
- import example.one.ChapterScreenProps
4
+ import dev.pyrossh.only_bible_app.ChapterScreenProps
5
- import example.one.FontType
5
+ import dev.pyrossh.only_bible_app.FontType
6
6
  import androidx.compose.foundation.border
7
7
  import androidx.compose.foundation.clickable
8
8
  import androidx.compose.foundation.interaction.MutableInteractionSource
@@ -49,15 +49,15 @@ import androidx.compose.ui.unit.IntOffset
49
49
  import androidx.compose.ui.unit.dp
50
50
  import androidx.compose.ui.unit.sp
51
51
  import androidx.compose.ui.window.Popup
52
- import example.one.SpeechService
52
+ import dev.pyrossh.only_bible_app.SpeechService
53
- import example.one.darkHighlights
53
+ import dev.pyrossh.only_bible_app.darkHighlights
54
- import example.one.domain.Verse
54
+ import dev.pyrossh.only_bible_app.domain.Verse
55
- import example.one.isLightTheme
55
+ import dev.pyrossh.only_bible_app.isLightTheme
56
56
  import kotlinx.coroutines.Dispatchers
57
57
  import kotlinx.coroutines.IO
58
58
  import kotlinx.coroutines.launch
59
- import example.one.lightHighlights
59
+ import dev.pyrossh.only_bible_app.lightHighlights
60
- import example.one.shareVerses
60
+ import dev.pyrossh.only_bible_app.shareVerses
61
61
  import utils.LocalNavController
62
62
 
63
63
  @Composable
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/domain/Verse.kt RENAMED
@@ -1,4 +1,4 @@
1
- package example.one.domain
1
+ package dev.pyrossh.only_bible_app.domain
2
2
 
3
3
  import kotlinx.serialization.Serializable
4
4
 
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/theme/Color.kt RENAMED
File without changes
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/theme/Theme.kt RENAMED
File without changes
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/theme/Type.kt RENAMED
File without changes
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/utils/Navigation.kt RENAMED
@@ -2,8 +2,8 @@ package utils
2
2
 
3
3
  import androidx.compose.runtime.compositionLocalOf
4
4
  import androidx.navigation.NavController
5
- import example.one.domain.BOOKS_COUNT
5
+ import dev.pyrossh.only_bible_app.domain.BOOKS_COUNT
6
- import example.one.domain.chapterSizes
6
+ import dev.pyrossh.only_bible_app.domain.chapterSizes
7
7
 
8
8
  val LocalNavController = compositionLocalOf<NavController> { error("No NavController found!") }
9
9
 
composeApp/src/commonMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/utils/Swipe.kt RENAMED
File without changes
composeApp/src/iosMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/MainViewController.kt RENAMED
@@ -1,6 +1,5 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
 
3
- import androidx.compose.material.Text
4
3
  import androidx.compose.ui.window.ComposeUIViewController
5
4
  import com.russhwolf.settings.NSUserDefaultsSettings
6
5
 
composeApp/src/iosMain/kotlin/{example/one → dev/pyrossh/only_bible_app}/Platform.ios.kt RENAMED
@@ -1,11 +1,11 @@
1
- package example.one
1
+ package dev.pyrossh.only_bible_app
2
2
 
3
3
  import androidx.compose.runtime.Composable
4
4
  import androidx.compose.ui.ExperimentalComposeUiApi
5
5
  import androidx.compose.ui.platform.LocalWindowInfo
6
6
  import androidx.compose.ui.unit.Dp
7
7
  import androidx.compose.ui.unit.dp
8
- import example.one.domain.Verse
8
+ import dev.pyrossh.only_bible_app.domain.Verse
9
9
  import platform.UIKit.UIScreen
10
10
  //import platform.AVKit.Audio
11
11