From 5d15ba7396f69fc0ff3a5ffc72573a6e8dedf0a6 Mon Sep 17 00:00:00 2001 From: SirDennis Date: Tue, 16 Apr 2024 11:45:03 +0300 Subject: [PATCH 1/3] ios fixed --- .fleet/receipt.json | 19 + .gitignore | 17 + README.md | 14 + build.gradle.kts | 8 + composeApp/build.gradle.kts | 176 ++++++++ .../src/androidMain/AndroidManifest.xml | 29 ++ .../androidMain/kotlin/Platform.android.kt | 13 + .../kotlin/PlatformSpecific.android.kt | 193 +++++++++ .../org/example/project/MainActivity.kt | 52 +++ .../drawable-v24/ic_launcher_foreground.xml | 30 ++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3593 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 5339 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2636 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 3388 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4926 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 7472 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 7909 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 11873 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 10652 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 16570 bytes .../src/androidMain/res/values/strings.xml | 3 + .../src/androidMain/res/values/styles.xml | 6 + .../composeResources/drawable/CoffeeCup.png | Bin 0 -> 30240 bytes .../composeResources/drawable/camera.png | Bin 0 -> 37059 bytes .../drawable/compose-multiplatform.xml | 36 ++ .../composeResources/drawable/framea.png | Bin 0 -> 1271 bytes .../composeResources/drawable/frameb.png | Bin 0 -> 886 bytes .../composeResources/drawable/id-card.png | Bin 0 -> 20803 bytes .../composeResources/drawable/id.png | Bin 0 -> 2972 bytes .../composeResources/drawable/imagee.png | Bin 0 -> 50438 bytes .../composeResources/drawable/img.png | Bin 0 -> 5051 bytes .../composeResources/drawable/photos.png | Bin 0 -> 6114 bytes composeApp/src/commonMain/kotlin/App.kt | 30 ++ composeApp/src/commonMain/kotlin/Greeting.kt | 7 + composeApp/src/commonMain/kotlin/Platform.kt | 5 + .../src/commonMain/kotlin/PlatformSpecific.kt | 8 + .../commonMain/kotlin/about/AboutComponent.kt | 11 + .../commonMain/kotlin/about/AboutContent.kt | 303 +++++++++++++ .../kotlin/about/DefaultAboutComponent.kt | 21 + .../src/commonMain/kotlin/buy/BuyComponent.kt | 9 + .../src/commonMain/kotlin/buy/BuyContent.kt | 215 ++++++++++ .../kotlin/buy/DefautBuyComponent.kt | 18 + .../src/commonMain/kotlin/di/AppModule.kt | 18 + .../src/commonMain/kotlin/di/NetworkModule.kt | 11 + .../kotlin/home/DefaultHomeComponent.kt | 15 + .../commonMain/kotlin/home/HomeComponent.kt | 9 + .../src/commonMain/kotlin/home/HomeContent.kt | 300 +++++++++++++ .../DefaultNotificationComponent.kt | 20 + .../notifications/NotificationComponent.kt | 12 + .../notifications/NotificationContent.kt | 55 +++ .../DefaultRootBottomComponent.kt | 149 +++++++ .../rootBottomStack/RootBottomComponent.kt | 26 ++ .../rootBottomStack/RootBottomScreen.kt | 120 ++++++ .../src/commonMain/kotlin/theme/Colors.kt | 40 ++ .../src/commonMain/kotlin/theme/Shapes.kt | 12 + .../src/commonMain/kotlin/theme/Theme.kt | 57 +++ .../src/iosMain/kotlin/MainViewController.kt | 39 ++ composeApp/src/iosMain/kotlin/Platform.ios.kt | 7 + .../src/iosMain/kotlin/PlatformSpecific.kt | 16 + gradle.properties | 22 + gradle/libs.versions.toml | 130 ++++++ gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 63375 bytes gradle/wrapper/gradle-wrapper.properties | 7 + gradlew | 248 +++++++++++ gradlew.bat | 92 ++++ iosApp/Configuration/Config.xcconfig | 3 + iosApp/iosApp.xcodeproj/project.pbxproj | 398 ++++++++++++++++++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../AccentColor.colorset/Contents.json | 11 + .../AppIcon.appiconset/Contents.json | 14 + .../AppIcon.appiconset/app-icon-1024.png | Bin 0 -> 67285 bytes iosApp/iosApp/Assets.xcassets/Contents.json | 6 + iosApp/iosApp/ContentView.swift | 46 ++ iosApp/iosApp/Info.plist | 50 +++ .../Preview Assets.xcassets/Contents.json | 6 + iosApp/iosApp/iOSApp.swift | 26 ++ settings.gradle.kts | 25 ++ 80 files changed, 3401 insertions(+) create mode 100644 .fleet/receipt.json create mode 100644 .gitignore create mode 100644 README.md create mode 100644 build.gradle.kts create mode 100644 composeApp/build.gradle.kts create mode 100644 composeApp/src/androidMain/AndroidManifest.xml create mode 100644 composeApp/src/androidMain/kotlin/Platform.android.kt create mode 100644 composeApp/src/androidMain/kotlin/PlatformSpecific.android.kt create mode 100644 composeApp/src/androidMain/kotlin/org/example/project/MainActivity.kt create mode 100644 composeApp/src/androidMain/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 composeApp/src/androidMain/res/drawable/ic_launcher_background.xml create mode 100644 composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher.png create mode 100644 composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher_round.png create mode 100644 composeApp/src/androidMain/res/mipmap-mdpi/ic_launcher.png create mode 100644 composeApp/src/androidMain/res/mipmap-mdpi/ic_launcher_round.png create mode 100644 composeApp/src/androidMain/res/mipmap-xhdpi/ic_launcher.png create mode 100644 composeApp/src/androidMain/res/mipmap-xhdpi/ic_launcher_round.png create mode 100644 composeApp/src/androidMain/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 composeApp/src/androidMain/res/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 composeApp/src/androidMain/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 composeApp/src/androidMain/res/mipmap-xxxhdpi/ic_launcher_round.png create mode 100644 composeApp/src/androidMain/res/values/strings.xml create mode 100644 composeApp/src/androidMain/res/values/styles.xml create mode 100644 composeApp/src/commonMain/composeResources/drawable/CoffeeCup.png create mode 100644 composeApp/src/commonMain/composeResources/drawable/camera.png create mode 100644 composeApp/src/commonMain/composeResources/drawable/compose-multiplatform.xml create mode 100644 composeApp/src/commonMain/composeResources/drawable/framea.png create mode 100644 composeApp/src/commonMain/composeResources/drawable/frameb.png create mode 100644 composeApp/src/commonMain/composeResources/drawable/id-card.png create mode 100644 composeApp/src/commonMain/composeResources/drawable/id.png create mode 100644 composeApp/src/commonMain/composeResources/drawable/imagee.png create mode 100644 composeApp/src/commonMain/composeResources/drawable/img.png create mode 100644 composeApp/src/commonMain/composeResources/drawable/photos.png create mode 100644 composeApp/src/commonMain/kotlin/App.kt create mode 100644 composeApp/src/commonMain/kotlin/Greeting.kt create mode 100644 composeApp/src/commonMain/kotlin/Platform.kt create mode 100644 composeApp/src/commonMain/kotlin/PlatformSpecific.kt create mode 100644 composeApp/src/commonMain/kotlin/about/AboutComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/about/AboutContent.kt create mode 100644 composeApp/src/commonMain/kotlin/about/DefaultAboutComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/buy/BuyComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/buy/BuyContent.kt create mode 100644 composeApp/src/commonMain/kotlin/buy/DefautBuyComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/di/AppModule.kt create mode 100644 composeApp/src/commonMain/kotlin/di/NetworkModule.kt create mode 100644 composeApp/src/commonMain/kotlin/home/DefaultHomeComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/home/HomeComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/home/HomeContent.kt create mode 100644 composeApp/src/commonMain/kotlin/notifications/DefaultNotificationComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/notifications/NotificationComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/notifications/NotificationContent.kt create mode 100644 composeApp/src/commonMain/kotlin/rootBottomStack/DefaultRootBottomComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/rootBottomStack/RootBottomComponent.kt create mode 100644 composeApp/src/commonMain/kotlin/rootBottomStack/RootBottomScreen.kt create mode 100644 composeApp/src/commonMain/kotlin/theme/Colors.kt create mode 100644 composeApp/src/commonMain/kotlin/theme/Shapes.kt create mode 100644 composeApp/src/commonMain/kotlin/theme/Theme.kt create mode 100644 composeApp/src/iosMain/kotlin/MainViewController.kt create mode 100644 composeApp/src/iosMain/kotlin/Platform.ios.kt create mode 100644 composeApp/src/iosMain/kotlin/PlatformSpecific.kt create mode 100644 gradle.properties create mode 100644 gradle/libs.versions.toml create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100755 gradlew create mode 100644 gradlew.bat create mode 100644 iosApp/Configuration/Config.xcconfig create mode 100644 iosApp/iosApp.xcodeproj/project.pbxproj create mode 100644 iosApp/iosApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 iosApp/iosApp/Assets.xcassets/AccentColor.colorset/Contents.json create mode 100644 iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/app-icon-1024.png create mode 100644 iosApp/iosApp/Assets.xcassets/Contents.json create mode 100644 iosApp/iosApp/ContentView.swift create mode 100644 iosApp/iosApp/Info.plist create mode 100644 iosApp/iosApp/Preview Content/Preview Assets.xcassets/Contents.json create mode 100644 iosApp/iosApp/iOSApp.swift create mode 100644 settings.gradle.kts diff --git a/.fleet/receipt.json b/.fleet/receipt.json new file mode 100644 index 0000000..11a2883 --- /dev/null +++ b/.fleet/receipt.json @@ -0,0 +1,19 @@ +// Project generated by Kotlin Multiplatform Wizard +{ + "spec": { + "template_id": "kmt", + "targets": { + "android": { + "ui": [ + "compose" + ] + }, + "ios": { + "ui": [ + "compose" + ] + } + } + }, + "timestamp": "2024-04-15T08:24:49.936562548Z" +} \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..33e4c75 --- /dev/null +++ b/.gitignore @@ -0,0 +1,17 @@ +*.iml +.gradle +**/build/ +xcuserdata +!src/**/build/ +local.properties +.idea +.DS_Store +captures +.externalNativeBuild +.cxx +*.xcodeproj/* +!*.xcodeproj/project.pbxproj +!*.xcodeproj/xcshareddata/ +!*.xcodeproj/project.xcworkspace/ +!*.xcworkspace/contents.xcworkspacedata +**/xcshareddata/WorkspaceSettings.xcsettings diff --git a/README.md b/README.md new file mode 100644 index 0000000..1ba257b --- /dev/null +++ b/README.md @@ -0,0 +1,14 @@ +This is a Kotlin Multiplatform project targeting Android, iOS. + +* `/composeApp` is for code that will be shared across your Compose Multiplatform applications. + It contains several subfolders: + - `commonMain` is for code that’s common for all targets. + - Other folders are for Kotlin code that will be compiled for only the platform indicated in the folder name. + For example, if you want to use Apple’s CoreCrypto for the iOS part of your Kotlin app, + `iosMain` would be the right folder for such calls. + +* `/iosApp` contains iOS applications. Even if you’re sharing your UI with Compose Multiplatform, + you need this entry point for your iOS app. This is also where you should add SwiftUI code for your project. + + +Learn more about [Kotlin Multiplatform](https://www.jetbrains.com/help/kotlin-multiplatform-dev/get-started.html)… \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..52cf9fa --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,8 @@ +plugins { + // this is necessary to avoid the plugins to be loaded multiple times + // in each subproject's classloader + alias(libs.plugins.androidApplication) apply false + alias(libs.plugins.androidLibrary) apply false + alias(libs.plugins.jetbrainsCompose) apply false + alias(libs.plugins.kotlinMultiplatform) apply false +} \ No newline at end of file diff --git a/composeApp/build.gradle.kts b/composeApp/build.gradle.kts new file mode 100644 index 0000000..f58ac49 --- /dev/null +++ b/composeApp/build.gradle.kts @@ -0,0 +1,176 @@ +plugins { + alias(libs.plugins.kotlinMultiplatform) + alias(libs.plugins.androidApplication) + alias(libs.plugins.jetbrainsCompose) + id("com.arkivanov.parcelize.darwin") version "0.2.2" + id("kotlin-parcelize") + id("app.cash.sqldelight") version "2.0.0" + kotlin("plugin.serialization") version "1.9.20" +} + +kotlin { + androidTarget { + compilations.all { + kotlinOptions { + jvmTarget = "17" + } + } + } + + listOf( + iosX64(), + iosArm64(), + iosSimulatorArm64() + ).forEach { iosTarget -> + iosTarget.binaries.framework { + baseName = "ComposeApp" + isStatic = true + export(libs.decompose) + + export(libs.essenty.lifecycle) + + // Optional, only if you need state preservation on Darwin (Apple) targets + export(libs.essenty.stateKeeper) + + // Optional, only if you need state preservation on Darwin (Apple) targets + export(libs.parcelizeDarwin.runtime) + } + } + + sourceSets { + + androidMain.dependencies { + implementation(libs.compose.ui.tooling.preview) + implementation(libs.androidx.activity.compose) + implementation(libs.androidx.appcompat.appcompat) + + // Ktor + implementation(libs.ktor.clientAndroid) + + // SqlDelight + implementation(libs.sqlDelight.androidDriver) + + // Koin + implementation(libs.koin.android) + + implementation("com.google.android.gms:play-services-auth:21.0.0") + + implementation("com.google.android.gms:play-services-auth-api-phone:18.0.2") + + implementation("androidx.biometric:biometric:1.2.0-alpha05") + //Firebase + implementation ("com.google.firebase:firebase-bom:32.1.1") + implementation (libs.analytics.firebase) + implementation (libs.crashlytics.firebase) + implementation("com.googlecode.libphonenumber:libphonenumber:8.2.0") + // This dependency is downloaded from the Google’s Maven repository. + // So, make sure you also include that repository in your project's build.gradle file. + implementation("com.google.android.play:app-update:2.1.0") + + // For Kotlin users also import the Kotlin extensions library for Play In-App Update: + implementation("com.google.android.play:app-update-ktx:2.1.0") + + api ("com.github.atwa:filepicker:1.0.7") + + } + commonMain.dependencies { + implementation(compose.runtime) + implementation(compose.foundation) + implementation(compose.material) + implementation(compose.ui) + implementation(compose.components.resources) + implementation(compose.components.uiToolingPreview) + implementation(compose.material3) + @OptIn(org.jetbrains.compose.ExperimentalComposeLibrary::class) + implementation(compose.materialIconsExtended) + + implementation(libs.decompose) + implementation(libs.decompose.jetbrains) + api(libs.essenty.lifecycle) + api(libs.essenty.stateKeeper) + + api(libs.ktor.clientCore) + api(libs.ktor.serializationKotlinxJson) + api(libs.ktor.clientContentNegotiation) + api(libs.ktor.clientLogging) + + // Logback for ktor logging + implementation(libs.logbackClassic) + + //sqldelight + api(libs.sqlDelight.coroutinesExtensions) + api(libs.sqlDelight.primitiveAdapters) + + //Koin + api(libs.koin.core) + api(libs.koin.test) + +// // KotlinX Serialization Json + implementation(libs.jetbrains.kotlinx.kotlinxSerializationJson) +// +// // Coroutines + implementation(libs.jetbrains.kotlinx.kotlinxCoroutinesCore) +// +// // MVIKotlin + api(libs.mvikotlin) + api(libs.mviKotlin.mvikotlinMain) + api(libs.mviKotlin.mvikotlinExtensionsCoroutines) +// // settings + implementation(libs.russhwolf.settings.core) + implementation(libs.russhwolf.settings.serialization) + //insets + implementation("com.moriatsushi.insetsx:insetsx:0.1.0-alpha10") + } + + iosMain.dependencies { + //ios dependencies + // Ktor + implementation(libs.ktor.clientDarwin) + + // SqlDelight + implementation(libs.sqlDelight.nativeDriver) + + api(libs.decompose) + + api(libs.essenty.lifecycle) + //Modified + api(libs.parcelizeDarwin.runtime) + + } + } +} + +android { + namespace = "org.example.project" + compileSdk = libs.versions.android.compileSdk.get().toInt() + + sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml") + sourceSets["main"].res.srcDirs("src/androidMain/res") + sourceSets["main"].resources.srcDirs("src/commonMain/resources") + + defaultConfig { + applicationId = "org.example.project" + minSdk = libs.versions.android.minSdk.get().toInt() + targetSdk = libs.versions.android.targetSdk.get().toInt() + versionCode = 1 + versionName = "1.0" + } + packaging { + resources { + excludes += "/META-INF/{AL2.0,LGPL2.1}" + } + } + buildTypes { + getByName("release") { + isMinifyEnabled = false + } + } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } + dependencies { + debugImplementation(libs.compose.ui.tooling) + } +} + diff --git a/composeApp/src/androidMain/AndroidManifest.xml b/composeApp/src/androidMain/AndroidManifest.xml new file mode 100644 index 0000000..6b0f60b --- /dev/null +++ b/composeApp/src/androidMain/AndroidManifest.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + diff --git a/composeApp/src/androidMain/kotlin/Platform.android.kt b/composeApp/src/androidMain/kotlin/Platform.android.kt new file mode 100644 index 0000000..9428cd8 --- /dev/null +++ b/composeApp/src/androidMain/kotlin/Platform.android.kt @@ -0,0 +1,13 @@ +import android.os.Build +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import rootBottomStack.RootBottomComponent + +class AndroidPlatform : Platform { + override val name: String = "Android ${Build.VERSION.SDK_INT}" +} + +@Composable +fun MainView(component: RootBottomComponent, modifier: Modifier = Modifier) = App(component, modifier) + +actual fun getPlatform(): Platform = AndroidPlatform() \ No newline at end of file diff --git a/composeApp/src/androidMain/kotlin/PlatformSpecific.android.kt b/composeApp/src/androidMain/kotlin/PlatformSpecific.android.kt new file mode 100644 index 0000000..ef1ee35 --- /dev/null +++ b/composeApp/src/androidMain/kotlin/PlatformSpecific.android.kt @@ -0,0 +1,193 @@ +import androidx.compose.ui.graphics.ImageBitmap + +import android.Manifest +import android.app.Activity +import android.content.Context +import android.content.Intent +import android.content.pm.PackageManager +import android.graphics.Bitmap +import android.graphics.BitmapFactory +import android.net.Uri +import android.os.Build +import android.provider.DocumentsContract +import android.provider.OpenableColumns +import androidx.activity.result.contract.ActivityResultContracts +import androidx.annotation.RequiresApi +import androidx.appcompat.app.AppCompatActivity +import androidx.compose.ui.graphics.asImageBitmap +import androidx.core.app.ActivityCompat +import androidx.core.content.ContextCompat +import com.atwa.filepicker.core.FilePicker +import java.io.File +import java.io.IOException + +actual open class PlatformSpecific(private val context: Context) : AppCompatActivity() { + private val PICK_FILE_REQUEST_CODE = 123 + private val currentActivity: AppCompatActivity = (context as AppCompatActivity) + private val filePicker = FilePicker.getInstance(currentActivity) + private val PICK_IMAGE_REQUEST_CODE = 123 + private val CAMERA_PERMISSION_REQUEST_CODE = 123 + val filePickerLauncher = + currentActivity.registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> + handleFileSelectionResult(result.resultCode, result.data?.data) + } + + //Todo api modifications + //Modified to support android version below and above 13 + @RequiresApi(Build.VERSION_CODES.TIRAMISU) + actual fun loadFiles(callback: (ImageBitmap?) -> Unit) { + if (ContextCompat.checkSelfPermission( + currentActivity, + if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.Q) { + Manifest.permission.READ_EXTERNAL_STORAGE + } else { + Manifest.permission.READ_MEDIA_IMAGES + } + ) == PackageManager.PERMISSION_GRANTED + ) { + loadDeviceFiles(callback) + } else { + ActivityCompat.requestPermissions( + currentActivity, + if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.Q) { + arrayOf(Manifest.permission.READ_EXTERNAL_STORAGE) + } else { + arrayOf(Manifest.permission.READ_MEDIA_IMAGES) + }, + PICK_FILE_REQUEST_CODE + ) + } + } + + actual fun loadImages(callback: (ImageBitmap?) -> Unit) { + if (ContextCompat.checkSelfPermission( + currentActivity, + Manifest.permission.CAMERA + ) == PackageManager.PERMISSION_GRANTED + ) { + // Permission is already granted, proceed with capturing the image + captureImage(callback) + } else { + // Request camera permission + ActivityCompat.requestPermissions( + currentActivity, + arrayOf(Manifest.permission.CAMERA), + CAMERA_PERMISSION_REQUEST_CODE + ) + } + } + + fun openImagePicker() { + val intent = Intent(Intent.ACTION_OPEN_DOCUMENT) + intent.addCategory(Intent.CATEGORY_OPENABLE) + intent.type = "image/*" // Set the MIME type to allow only image files + + currentActivity.startActivityForResult(intent, PICK_IMAGE_REQUEST_CODE) + } + + @Deprecated("Deprecated in Java") + override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { + super.onActivityResult(requestCode, resultCode, data) + + if (requestCode == PICK_IMAGE_REQUEST_CODE && resultCode == Activity.RESULT_OK) { + // Handle the selected image URI + val selectedImageUri: Uri? = data?.data + selectedImageUri?.let { uri -> + // Convert URI to Bitmap + val bitmap: Bitmap? = uriToBitmap(uri) + + if (bitmap != null) { + // Do something with the bitmap + + } + } + } + } + + private fun uriToBitmap(uri: Uri): Bitmap? { + return try { + val inputStream = currentActivity.contentResolver.openInputStream(uri) + BitmapFactory.decodeStream(inputStream) + } catch (e: IOException) { + e.printStackTrace() + null + } + } + + private fun captureImage(callback: (ImageBitmap?) -> Unit) { + filePicker.captureCameraImage { meta -> + val name: String? = meta?.name + val sizeKb: Int? = meta?.sizeKb + val file: File? = meta?.file + val bitmap: Bitmap? = meta?.bitmap + val bitmapimage: ImageBitmap? = meta?.bitmap?.asImageBitmap() + + println("Picked Image:::$bitmap") + + // Invoke the callback with the captured image details + callback(bitmapimage) + } + } + + private fun loadDeviceFiles(callback: (ImageBitmap?) -> Unit) { + filePicker.pickImage() { meta -> + val name: String? = meta?.name + val sizeKb: Int? = meta?.sizeKb + val file: File? = meta?.file + val bitmapimage: ImageBitmap? = meta?.bitmap?.asImageBitmap() + callback(bitmapimage) + } + } + + + @RequiresApi(Build.VERSION_CODES.O) + fun openFile(pickerInitialUri: Uri) { + val intent = Intent(Intent.ACTION_OPEN_DOCUMENT).apply { + addCategory(Intent.CATEGORY_OPENABLE) + type = "application/pdf" + putExtra(DocumentsContract.EXTRA_INITIAL_URI, pickerInitialUri) + } + + filePickerLauncher.launch(intent) + } + + private fun pickPdf() { + filePicker.pickPdf() { meta -> + val name: String? = meta?.name + val sizeKb: Int? = meta?.sizeKb + val file: File? = meta?.file + println("Loaded File name:::::" + name) + } + } + + private fun getFileName(uri: Uri): String { + contentResolver.query(uri, null, null, null, null)?.use { cursor -> + val nameIndex = cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME) + cursor.moveToFirst() + return cursor.getString(nameIndex) + } + return "" + } + + private fun handleFileSelectionResult(resultCode: Int, selectedFileUri: Uri?) { + if (resultCode == Activity.RESULT_OK) { + selectedFileUri?.let { uri -> + // Get the file name from the URI + val fileName = getFileName(uri) + + // Print or use the file name as needed + println("Selected file name: $fileName") + } + } else { + println("Error opening or user canceled") + } + } + + actual fun launchDialer(phoneNumber: String) { + val intent = Intent(Intent.ACTION_DIAL, Uri.parse("tel:$phoneNumber")) + intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK + context.startActivity(intent) + + } + +} \ No newline at end of file diff --git a/composeApp/src/androidMain/kotlin/org/example/project/MainActivity.kt b/composeApp/src/androidMain/kotlin/org/example/project/MainActivity.kt new file mode 100644 index 0000000..1be7840 --- /dev/null +++ b/composeApp/src/androidMain/kotlin/org/example/project/MainActivity.kt @@ -0,0 +1,52 @@ +package org.example.project + +import MainView +import PlatformSpecific +import android.os.Bundle +import androidx.activity.compose.setContent +import androidx.appcompat.app.AppCompatActivity +import androidx.compose.runtime.Composable +import androidx.compose.ui.tooling.preview.Preview +import com.arkivanov.decompose.defaultComponentContext +import di.initKoin +import org.koin.android.ext.koin.androidContext +import org.koin.core.context.stopKoin +import org.koin.core.error.KoinAppAlreadyStartedException +import rootBottomStack.DefaultRootBottomComponent + +class MainActivity : AppCompatActivity() { + private var platform: PlatformSpecific? = null + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + platform =PlatformSpecific(this) + val root = DefaultRootBottomComponent( + componentContext = defaultComponentContext(), + ) + try { + val koinApplication = initKoin( + // add to build configuration, false in prod + enableNetworkLogs = true, + platform = platform + ) + println("Koin app Started::;::::") + koinApplication.androidContext(applicationContext) + } catch (e: KoinAppAlreadyStartedException) { + println("Koin app Failed::;::::") + e.printStackTrace() + } + setContent { + MainView(root) + } + } + + override fun onDestroy() { + stopKoin() + super.onDestroy() + } +} + +@Preview +@Composable +fun AppAndroidPreview() { + // App() +} \ No newline at end of file diff --git a/composeApp/src/androidMain/res/drawable-v24/ic_launcher_foreground.xml b/composeApp/src/androidMain/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 0000000..2b068d1 --- /dev/null +++ b/composeApp/src/androidMain/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/composeApp/src/androidMain/res/drawable/ic_launcher_background.xml b/composeApp/src/androidMain/res/drawable/ic_launcher_background.xml new file mode 100644 index 0000000..07d5da9 --- /dev/null +++ b/composeApp/src/androidMain/res/drawable/ic_launcher_background.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher.xml b/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..eca70cf --- /dev/null +++ b/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher_round.xml b/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000..eca70cf --- /dev/null +++ b/composeApp/src/androidMain/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher.png b/composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..a571e60098c92c2baca8a5df62f2929cbff01b52 GIT binary patch literal 3593 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 P00000NkvXXu0mjfP=x?Y literal 0 HcmV?d00001 diff --git a/composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher_round.png b/composeApp/src/androidMain/res/mipmap-hdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..61da551c5594a1f9d26193983d2cd69189014603 GIT binary patch literal 5339 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 literal 0 HcmV?d00001 diff --git a/composeApp/src/androidMain/res/mipmap-xxhdpi/ic_launcher_round.png b/composeApp/src/androidMain/res/mipmap-xxhdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..b216f2d313cc673d8b8c4da591c174ebed52795c GIT binary patch literal 11873 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 literal 0 HcmV?d00001 diff --git a/composeApp/src/androidMain/res/values/strings.xml b/composeApp/src/androidMain/res/values/strings.xml new file mode 100644 index 0000000..d8c6aef --- /dev/null +++ b/composeApp/src/androidMain/res/values/strings.xml @@ -0,0 +1,3 @@ + + DecomposeApp + \ No newline at end of file diff --git a/composeApp/src/androidMain/res/values/styles.xml b/composeApp/src/androidMain/res/values/styles.xml new file mode 100644 index 0000000..c1f9831 --- /dev/null +++ b/composeApp/src/androidMain/res/values/styles.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/composeApp/src/commonMain/composeResources/drawable/CoffeeCup.png b/composeApp/src/commonMain/composeResources/drawable/CoffeeCup.png new file mode 100644 index 0000000000000000000000000000000000000000..4a8d2852f0a2a9838f86d5589635c9087f29fe9a GIT binary patch literal 30240 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 + + + + + + + diff --git a/composeApp/src/commonMain/composeResources/drawable/framea.png b/composeApp/src/commonMain/composeResources/drawable/framea.png new file mode 100644 index 0000000000000000000000000000000000000000..a53429374dbaa34835418f40c6a788c67bd0b2d3 GIT binary patch literal 1271 zcmV2lu~GK|Kaa51TkS0r+D}5xx#ygF`JU6? z`Tg$w9SM054u^ZpX7gdH_AD)a&JjrD8Jre$Tt^vA&NvKRKdX83eH#P0=g)<#g&=6U=77v%=bKsI?+M=Fych56vV<>}8amSf-ZuQ|dwp zW^aJ?^8|+B{iJGKF$uC=H%eHripOTNwMrZmRC6eK*wvXR()6NCV6C*crcRUzBzT`h z_B)4Fc!#;st59Yq;M}$oRq`$rnE(r3MuCi9_!Pct7qn|@?PhE}@G|OlJ&s~wLIETq zi=y=3`Z29N8kmOr?1#8>+tk&sF>>l{Bx8!UAyX*+ zJ1h6OPh4gp*{2$k0u~))Iq5E#^ zt`-=jpwQgVbpZ99Jvu%5X^x2hwkWMNuC(^L_9tMJf&?@2b8let!w0qNcqAlNUmyL6 zRLc*-CO|f#}NjIF$_v;RIHm!J;XmCbr<7jBjFp+#P9GWv>)8M}) z3fXLJ~+CCj62#{@rIHgx7cUVB5hyvULXvW!0ZZx!@O{p!=o}YN5@@ zW|MnU=8gD7;`G!;CjRn{3-CaB!L)B~D7C7BfqH z^NH2viWZt_21lp}p!DE`w)T0h3FZtpbsR_O(RcUZOxnwjdfZehE6pq0N2ZYG#d02d zsX1dA8vq|R(m~^qypFvX9>_+{Go(uo)(D6R%r+R+3W=FRy hlA|pLg?x@~{{@^)%(qkdC7%EQ002ovPDHLkV1fWtW?}#U literal 0 HcmV?d00001 diff --git a/composeApp/src/commonMain/composeResources/drawable/frameb.png b/composeApp/src/commonMain/composeResources/drawable/frameb.png new file mode 100644 index 0000000000000000000000000000000000000000..58e6cebe3e62ddd5fe3576a819dbff3726c614d0 GIT binary patch literal 886 zcmV-+1Bv{JP)rMgvF$-`Vsou{@ZecJ33@De@uH_9f~^P7 zji3ilwpyz~B@r!#YA{k_l9~@^;wCg9iRtc3vJ3q|$nKlB;lH!<=4EFj)IdBQAGg_T zQ*=0<&1QY{?SUAgk|eFr_ewgQe(H2O1OK}~s%9jiv$8DTphF)TLnxEU+#=x*DorRW zn1uSsql@ItAv6aTK0(4mr3SflAeBm8Ca=D3qFBbq8j{K6bg7}p!`g&Jm!j4f?_ua z6ARV|IUJ5&i8lo;983?VI+=EwX;=i-O3sxBVG&61m_+gW69%)xPV_t8&d*hyGjR1D z6i+7%5@o?z2p}2Vs%m$5REWS10c^c`hTq{(MZ5Rx6w-+pY^^RB#jxP;iznDzUZ`mA z9=!nBu3-KCb#$FN2lezMj9^G`=1&5N$TxJH7%yvYRS&^CGL7)dCA1&ur>79a&aWR( z+y|f+Lor-S+;S+S=ujX zXC~oPd(h_X&3RZPLIrn?oX5eji->J*Aok@0(%wFZMu=d=t-?1o2Zy^88wyPgu9gm@&=oZ}Kazi~iiP+bV`1I&b!K?Mg zP+EIWyH}&JTw2=~TyORT*Bcfbg$``3ZD{Z5-`h2`ZMXLvH}Xe5_lm^jsb&`bYKC4y z12R=rp2H$gU1F65FToUN~ z@+SqsT;V3eHJA_o?&eI!JaQ&ZcE;fWmN ze1~)zLgV1D^ec)oTuv+_)$%J`rPqqdgIfPiSnHNW@@~tULM^S^ztC|i7)4g}#Q*>R M07*qoM6N<$g2m#L&j0`b literal 0 HcmV?d00001 diff --git a/composeApp/src/commonMain/composeResources/drawable/id-card.png b/composeApp/src/commonMain/composeResources/drawable/id-card.png new file mode 100644 index 0000000000000000000000000000000000000000..eeac70359d55bab7e1388620e43332056344d8f1 GIT binary patch literal 20803 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 BJUjpZ literal 0 HcmV?d00001 diff --git a/composeApp/src/commonMain/composeResources/drawable/id.png b/composeApp/src/commonMain/composeResources/drawable/id.png new file mode 100644 index 0000000000000000000000000000000000000000..6931491a0ac4a3dfea74c983934cb185b60a772d GIT binary patch literal 2972 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

H}XbF6CoJ=mj6B;pDOP;Xc>K%27 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 X;ZIZ*p+usw00000NkvXXu0mjfiH}v2 literal 0 HcmV?d00001 diff --git a/composeApp/src/commonMain/composeResources/drawable/img.png b/composeApp/src/commonMain/composeResources/drawable/img.png new file mode 100644 index 0000000000000000000000000000000000000000..519993e21044b31ca3efe66d721cf5faf021a368 GIT binary patch literal 5051 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 RzApd(002ovPDHLkV1k`$sn`Gj literal 0 HcmV?d00001 diff --git a/composeApp/src/commonMain/composeResources/drawable/photos.png b/composeApp/src/commonMain/composeResources/drawable/photos.png new file mode 100644 index 0000000000000000000000000000000000000000..2bd0017568d8e18dd3ac61d8e7d5aec5dfaaf40a GIT binary patch literal 6114 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 literal 0 HcmV?d00001 diff --git a/composeApp/src/commonMain/kotlin/App.kt b/composeApp/src/commonMain/kotlin/App.kt new file mode 100644 index 0000000..e1e0e2f --- /dev/null +++ b/composeApp/src/commonMain/kotlin/App.kt @@ -0,0 +1,30 @@ +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.material3.Scaffold +import androidx.compose.runtime.* +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import org.jetbrains.compose.ui.tooling.preview.Preview +import rootBottomStack.RootBottomComponent +import rootBottomStack.RootBottomScreen +import theme.ComposeExperimentalTheme + +@Composable +@Preview +fun App(component: RootBottomComponent, modifier: Modifier = Modifier) { + ComposeExperimentalTheme(content = { + Scaffold() { paddingFromPrent -> + Column( + Modifier + .padding(paddingFromPrent) + .fillMaxWidth(), + horizontalAlignment = Alignment.CenterHorizontally + ) { + + RootBottomScreen(component, modifier) + + } + } + }) +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/Greeting.kt b/composeApp/src/commonMain/kotlin/Greeting.kt new file mode 100644 index 0000000..887d835 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/Greeting.kt @@ -0,0 +1,7 @@ +class Greeting { + private val platform = getPlatform() + + fun greet(): String { + return "Hello, ${platform.name}!" + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/Platform.kt b/composeApp/src/commonMain/kotlin/Platform.kt new file mode 100644 index 0000000..87ca3ff --- /dev/null +++ b/composeApp/src/commonMain/kotlin/Platform.kt @@ -0,0 +1,5 @@ +interface Platform { + val name: String +} + +expect fun getPlatform(): Platform \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/PlatformSpecific.kt b/composeApp/src/commonMain/kotlin/PlatformSpecific.kt new file mode 100644 index 0000000..4f940dd --- /dev/null +++ b/composeApp/src/commonMain/kotlin/PlatformSpecific.kt @@ -0,0 +1,8 @@ +import androidx.compose.ui.graphics.ImageBitmap + +expect open class PlatformSpecific{ + fun loadFiles(callback: (ImageBitmap?) -> Unit) + fun loadImages(callback: (ImageBitmap?) -> Unit) + fun launchDialer(phoneNumber: String) + +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/about/AboutComponent.kt b/composeApp/src/commonMain/kotlin/about/AboutComponent.kt new file mode 100644 index 0000000..6884d58 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/about/AboutComponent.kt @@ -0,0 +1,11 @@ +package about + +import PlatformSpecific + + +interface AboutComponent { + val loadFiles: PlatformSpecific + + fun onUpdateGreetingText() + fun onBackClicked() +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/about/AboutContent.kt b/composeApp/src/commonMain/kotlin/about/AboutContent.kt new file mode 100644 index 0000000..f47ae88 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/about/AboutContent.kt @@ -0,0 +1,303 @@ +package about + +import androidx.compose.foundation.Image +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.wrapContentHeight +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Scaffold +import androidx.compose.material3.Text +import androidx.compose.material3.TopAppBar +import androidx.compose.runtime.Composable +import androidx.compose.runtime.MutableState +import androidx.compose.runtime.mutableStateOf +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.drawBehind +import androidx.compose.ui.graphics.ImageBitmap +import androidx.compose.ui.graphics.PathEffect +import androidx.compose.ui.graphics.drawscope.Stroke +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import decomposeapp.composeapp.generated.resources.Res +import decomposeapp.composeapp.generated.resources.camera +import decomposeapp.composeapp.generated.resources.id_card +import org.jetbrains.compose.resources.ExperimentalResourceApi +import org.jetbrains.compose.resources.painterResource + +@OptIn(ExperimentalResourceApi::class, ExperimentalMaterial3Api::class) +@Composable +fun MessageContent( + component: AboutComponent, + modifier: Modifier = Modifier, +) { + val mutableBitmapState: MutableState = mutableStateOf(null) + val mutableFrontIdBitmapState: MutableState = mutableStateOf(null) + val mutableBackIdBitmapState: MutableState = mutableStateOf(null) + val stroke = Stroke( + width = 2f, + pathEffect = PathEffect.dashPathEffect(floatArrayOf(10f, 10f), 0f) + ) + val color = MaterialTheme.colorScheme.onBackground + Scaffold( + modifier = Modifier.fillMaxSize(), + topBar = { + TopAppBar(title = { Text(text = "About", + fontSize = 15.sp) }) + } + ) { innerPadding -> + LazyColumn(modifier = Modifier.padding(start = 16.dp, end = 16.dp)) { + item { + Spacer(modifier = Modifier.padding(innerPadding)) + } + item { + Text( + text = "Upload these documents", + fontSize = 12.sp, + style = MaterialTheme.typography.titleLarge, + modifier = Modifier.padding(top = 10.dp) + ) + Box( + Modifier + .fillMaxWidth() + .padding(top = 16.dp) + .wrapContentHeight() + .clickable { + component.loadFiles.loadImages { image -> + println("Loaded camera image + " + image) + mutableBitmapState.value = image + } + } + .drawBehind { + drawRoundRect(color = color, style = stroke) + } + ) { + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier + .fillMaxWidth(0.5f) + .padding(start = 5.dp) + ) { + Text( + text = "Take Passport Photo", + fontSize = 10.sp, + color = MaterialTheme.colorScheme.primary + ) + Text( + text = "Please take a photo for verification", + fontSize = 10.sp, + style = MaterialTheme.typography.bodySmall + ) + } + if (mutableBitmapState.value == null) { + Image( + painter = painterResource(Res.drawable.camera), + contentDescription = "Take photo", + contentScale = ContentScale.FillBounds, + modifier = Modifier + .size(60.dp) + .padding(end = 10.dp) + .clickable { + component.loadFiles.loadImages { image -> + println("Loaded camera image + " + image) + mutableBitmapState.value = image + } + } + ) + } else { + mutableBitmapState.value?.let { image -> + Image( + bitmap = image, + contentDescription = null, + modifier = Modifier + .size(150.dp) + .padding(1.dp), + alignment = Alignment.CenterEnd + ) + } + } + } + } + Box( + Modifier + .fillMaxWidth() + .padding(top = 16.dp) + .wrapContentHeight() + .clickable { + component.loadFiles.loadFiles { image -> + println("Loaded camera image + " + image) + mutableFrontIdBitmapState.value = image + } + } + .drawBehind { + drawRoundRect(color = color, style = stroke) + } + ) { + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier + .fillMaxWidth(0.5f) + .padding(start = 5.dp) + ) { + Text( + text = "Front Side of your", + fontSize = 10.sp, + color = MaterialTheme.colorScheme.primary + ) + Text( + text = "National ID/Passport", + fontSize = 10.sp, + color = MaterialTheme.colorScheme.primary + ) + Text( + text = "Upload front side", + fontSize = 10.sp + ) + Text( + text = "A front picture of your National ID/Passport", + fontSize = 10.sp, + style =MaterialTheme.typography.bodySmall + ) + + } + if (mutableFrontIdBitmapState.value == null) { + Image( + painter = painterResource(Res.drawable.id_card), + contentDescription = "Take photo", + contentScale = ContentScale.FillBounds, + modifier = Modifier + .padding(end = 10.dp) + .size(70.dp) + .clickable { + component.loadFiles.loadFiles { image -> + println("Loaded camera image + " + image) + mutableFrontIdBitmapState.value = image + } + } + ) + } else { + mutableFrontIdBitmapState.value.let { image -> + if (image != null) { + Image( + bitmap = image, + contentDescription = null, + modifier = Modifier + .size(150.dp) + .padding(1.dp), + alignment = Alignment.CenterEnd + ) + } + } + } + } + } + Box( + Modifier + .fillMaxWidth() + .padding(top = 16.dp) + .wrapContentHeight() + .clickable { + component.loadFiles.loadFiles { image -> + println("Loaded camera image + " + image) + mutableBackIdBitmapState.value = image + } + } + .drawBehind { + drawRoundRect(color = color, style = stroke) + } + ) { + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column( + modifier = Modifier + .fillMaxWidth(0.5f) + .padding(start = 5.dp) + ) { + Text( + text = "Back Side of your", + fontSize = 10.sp, + color = MaterialTheme.colorScheme.primary + ) + Text( + text = "National ID/Passport", + fontSize = 10.sp, + color = MaterialTheme.colorScheme.primary + ) + Text( + text = "Upload back side", + fontSize = 10.sp + ) + Text( + text = "A back picture of your National ID/Passport", + fontSize = 10.sp, + style =MaterialTheme.typography.bodySmall + ) + + } + if (mutableBackIdBitmapState.value == null) { + Image( + painter = painterResource(Res.drawable.id_card), + contentDescription = "Take photo", + contentScale = ContentScale.FillBounds, + modifier = Modifier + .padding(end = 10.dp) + .size(70.dp) + .clickable { + component.loadFiles.loadFiles { image -> + println("Loaded camera image + " + image) + mutableBackIdBitmapState.value = image + } + } + ) + } else { + mutableBackIdBitmapState.value.let { image -> + if (image != null) { + Image( + bitmap = image, + contentDescription = null, + modifier = Modifier + .size(150.dp) + .padding(1.dp), + alignment = Alignment.CenterEnd + ) + } + + } + + } + } + } + } + item { + Row(modifier = Modifier.padding(top = 20.dp, bottom = 20.dp)) { + + } + } + + } + } +} + + diff --git a/composeApp/src/commonMain/kotlin/about/DefaultAboutComponent.kt b/composeApp/src/commonMain/kotlin/about/DefaultAboutComponent.kt new file mode 100644 index 0000000..5541cb8 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/about/DefaultAboutComponent.kt @@ -0,0 +1,21 @@ +package about + +import PlatformSpecific +import com.arkivanov.decompose.ComponentContext +import org.koin.core.component.KoinComponent +import org.koin.core.component.inject + +class DefaultAboutComponent( + componentContext: ComponentContext, + private val onShowWelcome: () -> Unit, + +) : AboutComponent, ComponentContext by componentContext, KoinComponent { + override val loadFiles: PlatformSpecific by inject() + override fun onUpdateGreetingText() { + TODO("Not yet implemented") + } + + override fun onBackClicked() { + TODO("Not yet implemented") + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/buy/BuyComponent.kt b/composeApp/src/commonMain/kotlin/buy/BuyComponent.kt new file mode 100644 index 0000000..682abf3 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/buy/BuyComponent.kt @@ -0,0 +1,9 @@ +package buy + +interface BuyComponent { + + fun onUpdateGreetingText() + fun onBackClicked() + + +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/buy/BuyContent.kt b/composeApp/src/commonMain/kotlin/buy/BuyContent.kt new file mode 100644 index 0000000..4454f82 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/buy/BuyContent.kt @@ -0,0 +1,215 @@ +package buy + +import androidx.compose.foundation.Image +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.material3.ElevatedCard +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.FilledTonalButton +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Scaffold +import androidx.compose.material3.Text +import androidx.compose.material3.TopAppBar +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import decomposeapp.composeapp.generated.resources.CoffeeCup +import decomposeapp.composeapp.generated.resources.Res +import decomposeapp.composeapp.generated.resources.framea +import decomposeapp.composeapp.generated.resources.frameb +import org.jetbrains.compose.resources.ExperimentalResourceApi +import org.jetbrains.compose.resources.painterResource + +@OptIn(ExperimentalMaterial3Api::class, ExperimentalResourceApi::class) +@Composable +fun FeedsContent( + component: BuyComponent, + modifier: Modifier = Modifier +) { + Scaffold(topBar = { + TopAppBar(title = { + Text( + text = "Buy", + fontSize = 15.sp + ) + }) + }) { innerPadding -> + Column( + Modifier + .padding(innerPadding) + ) { + LazyColumn(modifier = Modifier.padding(start = 16.dp, end = 16.dp)) { + item { + Row( + modifier = Modifier + .padding(top = 10.dp) + .fillParentMaxHeight(0.3f), + horizontalArrangement = Arrangement.Center, + ) { + ElevatedCardExample() + } + Text( + text = "Cappucino", + style = MaterialTheme.typography.titleMedium, + modifier = Modifier.padding(top = 10.dp) + ) + Text( + text = "with Chocolate", + style = MaterialTheme.typography.titleMedium, + ) + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Row() { + Text(text = "4.8 (230)", + style = MaterialTheme.typography.titleSmall) + } + Row(horizontalArrangement = Arrangement.spacedBy(10.dp)) { + Image( + painter = painterResource(Res.drawable.framea), + contentDescription = "profile Picture", + contentScale = ContentScale.Fit, + modifier = Modifier.size(50.dp) + ) + Image( + painter = painterResource(Res.drawable.frameb), + contentDescription = "profile Picture", + contentScale = ContentScale.Fit, + modifier = Modifier.size(50.dp) + ) + } + } + Text( + text = "Description", + modifier = Modifier.padding(top = 10.dp) + ) + Text( + text = "A cappuccino is an approximately 150 ml (5 oz) beverage, with 25 ml of espresso coffee and 85ml of fresh milk the fo.. Read More", + fontSize = 12.sp, + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier.padding(top = 10.dp) + ) + Text( + text = "Size", + fontSize = 12.sp, + style = MaterialTheme.typography.labelMedium, + modifier = Modifier.padding(top = 10.dp) + ) + Column( + modifier = Modifier + .fillMaxWidth() + .padding(top = 10.dp), + ) { + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween + ) { + FilledTonalButtonExample( + onClick = {}, + label = "S" + ) + FilledTonalButtonExample( + onClick = {}, + label = "M" + ) + FilledTonalButtonExample( + onClick = {}, + label = "L" + ) + + } + Row( + modifier = Modifier + .fillMaxWidth() + .padding(top = 10.dp), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Column() { + Text( + text = "Price" + ) + Text( + text = "$4.53" + ) + } + Column() { + Text( + text = "Price" + ) + Text( + text = "$10.53" + ) + } + Column() { + Text( + text = "Price" + ) + Text( + text = "$20.53" + ) + } + } + Row( + modifier = Modifier.fillMaxWidth() + .padding(top = 10.dp), + horizontalArrangement = Arrangement.Center + ) { + FilledTonalButtonExample( + onClick = {}, + label = " Buy Now " + ) + + } + } + } + item { + Spacer(modifier = Modifier.padding(bottom = 100.dp)) + } + } + } + } +} + +@OptIn(ExperimentalResourceApi::class) +@Composable +fun ElevatedCardExample() { + ElevatedCard() { + Column() { + Box( + modifier = Modifier.fillMaxSize() + ) { + Image( + painter = painterResource(Res.drawable.CoffeeCup), + contentDescription = null, + contentScale = ContentScale.FillWidth, + modifier = Modifier.fillMaxSize() + ) + + } + } + } +} + +@Composable +fun FilledTonalButtonExample( + onClick: () -> Unit, + label: String +) { + FilledTonalButton(onClick = { onClick() }) { + Text(text = label) + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/buy/DefautBuyComponent.kt b/composeApp/src/commonMain/kotlin/buy/DefautBuyComponent.kt new file mode 100644 index 0000000..a698420 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/buy/DefautBuyComponent.kt @@ -0,0 +1,18 @@ +package buy + +import com.arkivanov.decompose.ComponentContext + +class DefautBuyComponent( + componentContext: ComponentContext, + private val onShowWelcome: () -> Unit, +) : BuyComponent, ComponentContext by componentContext { + + + override fun onUpdateGreetingText() { + TODO("Not yet implemented") + } + + override fun onBackClicked() { + TODO("Not yet implemented") + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/di/AppModule.kt b/composeApp/src/commonMain/kotlin/di/AppModule.kt new file mode 100644 index 0000000..f973407 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/di/AppModule.kt @@ -0,0 +1,18 @@ +package di + +import PlatformSpecific +import org.koin.core.context.startKoin +import org.koin.dsl.KoinAppDeclaration +import org.koin.dsl.module + + +fun initKoin(enableNetworkLogs: Boolean = false, platform: PlatformSpecific?, appDeclaration: KoinAppDeclaration = {}) = startKoin { + appDeclaration() + modules( + networkModule(enableNetworkLogs,platform), + module { + factory { platform } + single { platform } + } + ) +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/di/NetworkModule.kt b/composeApp/src/commonMain/kotlin/di/NetworkModule.kt new file mode 100644 index 0000000..f263154 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/di/NetworkModule.kt @@ -0,0 +1,11 @@ +package di +import org.koin.core.module.Module +import org.koin.dsl.module +import PlatformSpecific + +val networkModule: (enableLogging: Boolean, platform: PlatformSpecific?) -> Module get() = { enableLogging, platform -> + module { + single { enableLogging } + single { platform } + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/home/DefaultHomeComponent.kt b/composeApp/src/commonMain/kotlin/home/DefaultHomeComponent.kt new file mode 100644 index 0000000..6e5d665 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/home/DefaultHomeComponent.kt @@ -0,0 +1,15 @@ +package home + +import com.arkivanov.decompose.ComponentContext + + +class DefaultHomeComponent( + private val componentContext: ComponentContext, + private val onFinished: () -> Unit, +) : HomeComponent, ComponentContext by componentContext { + override fun onUpdateGreetingText() { + } + override fun onBackClicked() { + onFinished() + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/home/HomeComponent.kt b/composeApp/src/commonMain/kotlin/home/HomeComponent.kt new file mode 100644 index 0000000..b8138aa --- /dev/null +++ b/composeApp/src/commonMain/kotlin/home/HomeComponent.kt @@ -0,0 +1,9 @@ +package home + +interface HomeComponent { + + fun onUpdateGreetingText() + fun onBackClicked() + + +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/home/HomeContent.kt b/composeApp/src/commonMain/kotlin/home/HomeContent.kt new file mode 100644 index 0000000..a1b94b6 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/home/HomeContent.kt @@ -0,0 +1,300 @@ +package home + +import androidx.compose.foundation.ExperimentalFoundationApi +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxHeight +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.width +import androidx.compose.foundation.lazy.LazyRow +import androidx.compose.foundation.lazy.staggeredgrid.LazyVerticalStaggeredGrid +import androidx.compose.foundation.lazy.staggeredgrid.StaggeredGridCells +import androidx.compose.foundation.pager.rememberPagerState +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.outlined.Search +import androidx.compose.material.icons.outlined.Tune +import androidx.compose.material3.ButtonDefaults +import androidx.compose.material3.Card +import androidx.compose.material3.ElevatedButton +import androidx.compose.material3.ElevatedCard +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.FilledTonalButton +import androidx.compose.material3.Icon +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Scaffold +import androidx.compose.material3.Text +import androidx.compose.material3.TopAppBar +import androidx.compose.material3.TopAppBarDefaults +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.unit.dp +import decomposeapp.composeapp.generated.resources.CoffeeCup +import decomposeapp.composeapp.generated.resources.Res +import decomposeapp.composeapp.generated.resources.imagee +import decomposeapp.composeapp.generated.resources.img +import org.jetbrains.compose.resources.ExperimentalResourceApi +import org.jetbrains.compose.resources.painterResource +import theme.buttonColor + +@OptIn( + ExperimentalResourceApi::class, ExperimentalFoundationApi::class, + ExperimentalMaterial3Api::class +) +@Composable +fun WelcomeContent( + component: HomeComponent, + modifier: Modifier = Modifier +) { + val pagerState = rememberPagerState(pageCount = { + 10 + }) + Scaffold( + modifier = Modifier + .fillMaxSize(), + topBar = { + TopAppBar( + title = { + Row(modifier = Modifier.background(color = MaterialTheme.colorScheme.primary)) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(start = 16.dp, end = 16.dp, top = 10.dp), + horizontalArrangement = Arrangement.SpaceBetween, + ) { + Column() { + Text( + text = "Location", + style = MaterialTheme.typography.labelSmall, + color = MaterialTheme.colorScheme.onSecondaryContainer + ) + Text( + text = "Dennis", + style = MaterialTheme.typography.titleSmall, + color = MaterialTheme.colorScheme.onSecondaryContainer + ) + } + //open file picker and set profile picture + + + Image( + painter = painterResource(Res.drawable.img), + contentDescription = "profile Picture", + modifier = Modifier + .width(44.dp) + .height(44.dp) + ) + } + } + + }, + colors = TopAppBarDefaults.topAppBarColors(containerColor = MaterialTheme.colorScheme.primary) + ) + }, + + ) { innePadding -> + Column( + modifier = Modifier + .fillMaxWidth() + .padding() + ) { + Column(modifier = Modifier.padding(innePadding)) { + Box() { + Column( + modifier = Modifier + .background(color = MaterialTheme.colorScheme.primary) + .fillMaxHeight(0.3f) + ) { + Card( + modifier = Modifier + .fillMaxWidth() + .padding(top = 28.dp, start = 16.dp, end = 16.dp) + ) { + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween, + verticalAlignment = Alignment.CenterVertically + ) { + Box( + modifier = Modifier.padding( + top = 17.dp, + bottom = 17.dp, + start = 16.dp + ) + ) { + Row() { + Icon( + Icons.Outlined.Search, + contentDescription = "Search" + ) + Text( + modifier = Modifier.padding(start = 1.dp), + text = "Search Coffee", + style = MaterialTheme.typography.bodySmall + ) + } + } + Icon( + Icons.Outlined.Tune, + contentDescription = "filter", + modifier = Modifier + .size(40.dp) + .background( + color = MaterialTheme.colorScheme.tertiary, + shape = RoundedCornerShape(14.dp) + ), + tint = MaterialTheme.colorScheme.onSecondaryContainer + ) + } + } + } + Row( + modifier = Modifier + .fillMaxWidth() + .fillMaxHeight(0.41f) + .padding(top = 110.dp, start = 16.dp, end = 16.dp), + horizontalArrangement = Arrangement.Center + ) { + Card( + modifier = Modifier + .fillMaxWidth() + .fillMaxHeight(), + shape = RoundedCornerShape(16.dp), + ) { + Box( + modifier = Modifier.fillMaxSize(), + contentAlignment = Alignment.Center + ) { + + Image( + painter = painterResource(Res.drawable.imagee), + contentDescription = null, + contentScale = ContentScale.Crop, + modifier = Modifier + .matchParentSize() + ) + Column() { + Row( + modifier = Modifier + .padding(start = 16.dp) + ) { + ElevatedButtonExample() + } + + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.Start, + verticalAlignment = Alignment.CenterVertically + ) { + Text( + text = "Buy one get one FREE", + style = MaterialTheme.typography.titleLarge, + color = MaterialTheme.colorScheme.onSecondaryContainer, + modifier = Modifier + .fillMaxWidth(0.5f) + .padding(start = 16.dp), + ) + } + } + } + } + } + } + Column() { + LazyRow( + modifier = Modifier + .padding(top = 20.dp, start = 16.dp, end = 16.dp) + ) { + items(5) { + FilledTonalButton { } + Spacer(modifier = Modifier.padding(start = 5.dp)) + } + } + LazyVerticalStaggeredGrid( + columns = StaggeredGridCells.Fixed(2), + verticalItemSpacing = 10.dp, + horizontalArrangement = Arrangement.spacedBy(24.dp), + content = { + items(10) { + ProductsCard() + } + }, + modifier = Modifier + .fillMaxSize() + .padding(top = 20.dp, start = 16.dp, end = 16.dp) + ) + } + } + } + } +} + +@Composable +fun FilledTonalButton(onClick: () -> Unit) { + FilledTonalButton(onClick = { onClick() }) { + Text("Cappuccino", + style = MaterialTheme.typography.labelLarge) + } +} + +@OptIn(ExperimentalResourceApi::class) +@Composable +fun ProductsCard() { + ElevatedCard() { + Column() { + Box( + modifier = Modifier.fillMaxSize() + ) { + Image( + painter = painterResource(Res.drawable.CoffeeCup), + contentDescription = null, + contentScale = ContentScale.FillWidth, + modifier = Modifier.fillMaxSize() + ) + Column() { + Text( + text = "6.5", + modifier = Modifier.padding(start = 12.dp), + color = MaterialTheme.colorScheme.onSecondaryContainer, + style = MaterialTheme.typography.labelMedium + ) + } + } + Column(modifier = Modifier.padding(top = 12.dp, start = 12.dp)) { + Text(text = "Cappucino", + style = MaterialTheme.typography.bodyMedium) + Text(text = "with Chocolate", + style = MaterialTheme.typography.bodyMedium) + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween + ) { + Text(text = "$ 4.53", + style = MaterialTheme.typography.labelLarge) + } + } + } + + } +} + +@Composable +fun ElevatedButtonExample() { + ElevatedButton(modifier = Modifier + .height(35.dp), + colors = ButtonDefaults.buttonColors(containerColor = buttonColor), + onClick = { }) { + Text("Promo") + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/notifications/DefaultNotificationComponent.kt b/composeApp/src/commonMain/kotlin/notifications/DefaultNotificationComponent.kt new file mode 100644 index 0000000..13d32ae --- /dev/null +++ b/composeApp/src/commonMain/kotlin/notifications/DefaultNotificationComponent.kt @@ -0,0 +1,20 @@ +package notifications + +import PlatformSpecific +import com.arkivanov.decompose.ComponentContext +import org.koin.core.component.KoinComponent +import org.koin.core.component.inject + + +class DefaultNotificationComponent( + componentContext: ComponentContext, + private val onShowWelcome: () -> Unit, +) : NotificationComponent, ComponentContext by componentContext, KoinComponent { + override val platformSpecific: PlatformSpecific by inject() + override fun onUpdateGreetingText() { + TODO("Not yet implemented") + } + override fun onBackClicked() { + TODO("Not yet implemented") + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/notifications/NotificationComponent.kt b/composeApp/src/commonMain/kotlin/notifications/NotificationComponent.kt new file mode 100644 index 0000000..bccd331 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/notifications/NotificationComponent.kt @@ -0,0 +1,12 @@ +package notifications + +import PlatformSpecific + + +interface NotificationComponent { + val platformSpecific: PlatformSpecific + fun onUpdateGreetingText() + fun onBackClicked() + + +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/notifications/NotificationContent.kt b/composeApp/src/commonMain/kotlin/notifications/NotificationContent.kt new file mode 100644 index 0000000..2d7460c --- /dev/null +++ b/composeApp/src/commonMain/kotlin/notifications/NotificationContent.kt @@ -0,0 +1,55 @@ +package notifications + +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Call +import androidx.compose.material3.ElevatedButton +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.Icon +import androidx.compose.material3.Scaffold +import androidx.compose.material3.Text +import androidx.compose.material3.TopAppBar +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun NotificationContent(component: NotificationComponent, modifier: Modifier = Modifier) { + Scaffold(topBar = { + TopAppBar(title = { Text(text = "Notify", fontSize = 15.sp) }) + }) { paddingValues -> + Column( + modifier = Modifier.padding(paddingValues) + .fillMaxSize() + ) { + Column(modifier = Modifier.padding(start = 16.dp, end = 16.dp, top = 16.dp)) { + ElevatedButton(modifier = Modifier + .fillMaxWidth(), onClick = { + component.platformSpecific.launchDialer("+2547897567") + + }) { + Row( + modifier = Modifier.fillMaxWidth(), + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + Icons.Default.Call, + contentDescription = "Call Icon", + tint = Color.Green, + modifier = Modifier.padding(1.dp) + ) + Text(text = "Call") + } + } + } + } + } +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/rootBottomStack/DefaultRootBottomComponent.kt b/composeApp/src/commonMain/kotlin/rootBottomStack/DefaultRootBottomComponent.kt new file mode 100644 index 0000000..c27ead8 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/rootBottomStack/DefaultRootBottomComponent.kt @@ -0,0 +1,149 @@ +package rootBottomStack + +import about.AboutComponent +import about.DefaultAboutComponent +import buy.BuyComponent +import buy.DefautBuyComponent +import com.arkivanov.decompose.ComponentContext +import com.arkivanov.decompose.router.stack.ChildStack +import com.arkivanov.decompose.router.stack.StackNavigation +import com.arkivanov.decompose.router.stack.active +import com.arkivanov.decompose.router.stack.bringToFront +import com.arkivanov.decompose.router.stack.childStack +import com.arkivanov.decompose.value.Value +import com.arkivanov.essenty.lifecycle.Lifecycle +import com.arkivanov.essenty.parcelable.Parcelable +import com.arkivanov.essenty.parcelable.Parcelize +import home.DefaultHomeComponent +import home.HomeComponent +import kotlinx.serialization.Serializable +import notifications.DefaultNotificationComponent +import notifications.NotificationComponent + + +class DefaultRootBottomComponent( + componentContext: ComponentContext + +) : RootBottomComponent, ComponentContext by componentContext { + private val navigationBottomStackNavigation = StackNavigation() + + private val _childStackBottom = + childStack( + source = navigationBottomStackNavigation, + initialConfiguration = ConfigBottom.Welcome, + handleBackButton = true, + childFactory = ::createChildBottom, + key = "authStack" + ) + + override val childStackBottom: Value> = + _childStackBottom + + + private fun createChildBottom( + config: ConfigBottom, + componentContext: ComponentContext + ): RootBottomComponent.ChildBottom = + when (config) { + + is ConfigBottom.Welcome -> RootBottomComponent.ChildBottom.WelcomeChild( + welcomeComponent(componentContext) + ) + + is ConfigBottom.Feeds -> RootBottomComponent.ChildBottom.FeedsChild( + feedsComponent(componentContext) + ) + + is ConfigBottom.Message -> RootBottomComponent.ChildBottom.MessageChild( + messageComponent(componentContext) + ) + + is ConfigBottom.Notification -> RootBottomComponent.ChildBottom.NotificationsChild( + notificationComponent(componentContext) + ) + } + + + private fun welcomeComponent(componentContext: ComponentContext): HomeComponent = + DefaultHomeComponent( + componentContext = componentContext, + onFinished = { + + } + + ) + + private fun feedsComponent(componentContext: ComponentContext): BuyComponent = + DefautBuyComponent( + componentContext = componentContext, + onShowWelcome = { + + } + + ) + + private fun messageComponent(componentContext: ComponentContext): AboutComponent = + DefaultAboutComponent( + componentContext = componentContext, + onShowWelcome = { + + } + + ) + + private fun notificationComponent(componentContext: ComponentContext): NotificationComponent = + DefaultNotificationComponent( + componentContext = componentContext, + onShowWelcome = { + + } + + ) + + override fun openHome() { + navigationBottomStackNavigation.bringToFront(ConfigBottom.Welcome) + } + + override fun openFeeds() { + navigationBottomStackNavigation.bringToFront(ConfigBottom.Feeds) + } + + override fun openMessage() { + navigationBottomStackNavigation.bringToFront(ConfigBottom.Message) + } + + override fun openNotifications() { + navigationBottomStackNavigation.bringToFront(ConfigBottom.Notification) + } + + + private sealed class ConfigBottom : Parcelable { + @Serializable + data object Welcome : ConfigBottom() + + @Serializable + data object Feeds : ConfigBottom() + + @Serializable + data object Message : ConfigBottom() + + @Serializable + data object Notification : ConfigBottom() + + } + + init { + lifecycle.subscribe(object : Lifecycle.Callbacks { + override fun onResume() { + when (childStackBottom.active.configuration) { + is ConfigBottom.Message -> { + super.onResume() + } + + } + } + }) + + } + +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/rootBottomStack/RootBottomComponent.kt b/composeApp/src/commonMain/kotlin/rootBottomStack/RootBottomComponent.kt new file mode 100644 index 0000000..a913b44 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/rootBottomStack/RootBottomComponent.kt @@ -0,0 +1,26 @@ +package rootBottomStack + +import com.arkivanov.decompose.router.stack.ChildStack +import com.arkivanov.decompose.value.Value +import buy.BuyComponent +import about.AboutComponent +import notifications.NotificationComponent +import home.HomeComponent + + +interface RootBottomComponent { + val childStackBottom: Value> + fun openHome() + fun openFeeds() + fun openMessage() + fun openNotifications() + + sealed class ChildBottom { + class WelcomeChild(val component: HomeComponent) : ChildBottom() + class FeedsChild(val component: BuyComponent) : ChildBottom() + class MessageChild(val component: AboutComponent) : ChildBottom() + class NotificationsChild(val component: NotificationComponent) : ChildBottom() + } + + +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/rootBottomStack/RootBottomScreen.kt b/composeApp/src/commonMain/kotlin/rootBottomStack/RootBottomScreen.kt new file mode 100644 index 0000000..c186630 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/rootBottomStack/RootBottomScreen.kt @@ -0,0 +1,120 @@ +package rootBottomStack + +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.outlined.Badge +import androidx.compose.material.icons.outlined.Home +import androidx.compose.material.icons.outlined.Notifications +import androidx.compose.material.icons.outlined.ShoppingCart +import androidx.compose.material3.BottomAppBar +import androidx.compose.material3.Icon +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.NavigationBarItem +import androidx.compose.material3.NavigationBarItemDefaults +import androidx.compose.material3.Scaffold +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableIntStateOf +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Modifier +import androidx.compose.ui.text.font.FontWeight +import com.arkivanov.decompose.extensions.compose.jetbrains.stack.Children +import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.fade +import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.plus +import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.scale +import com.arkivanov.decompose.extensions.compose.jetbrains.stack.animation.stackAnimation +import buy.FeedsContent +import about.MessageContent +import notifications.NotificationContent +import home.WelcomeContent + +data class ScreensBottom(val name: String, val openScreen: () -> Unit, val isSelected: Boolean) + +@Composable +fun RootBottomScreen(component: RootBottomComponent, modifier: Modifier = Modifier) { + var selectedItem by remember { mutableIntStateOf(0) } + val screens by remember { + mutableStateOf( + listOf( + ScreensBottom("Home", component::openHome, false), + ScreensBottom("Buy", component::openFeeds, false), + ScreensBottom("About", component::openMessage, false), + ScreensBottom("Notify", component::openNotifications, false) + ) + ) + } + Scaffold( + bottomBar = { + BottomAppBar( + modifier = Modifier.fillMaxWidth(), + actions = { + screens.forEachIndexed { index, screensBottom -> + NavigationBarItem( + icon = { + when (screensBottom.name) { + "Home" -> Icon(Icons.Outlined.Home, contentDescription = null) + "Buy" -> Icon( + Icons.Outlined.ShoppingCart, + contentDescription = null + ) + + "About" -> Icon( + Icons.Outlined.Badge, + contentDescription = null + ) + + "Notify" -> Icon( + Icons.Outlined.Notifications, + contentDescription = null + ) + } + }, + label = { + Text( + text = screensBottom.name, + style = MaterialTheme.typography.labelLarge, + fontWeight = FontWeight.Light + ) + }, + selected = selectedItem == index, + onClick = { + selectedItem = index + screensBottom.openScreen() + }, + colors = NavigationBarItemDefaults.colors(selectedIconColor = MaterialTheme.colorScheme.primary) + ) + } + } + ) + + }, + content = { innerpadding -> + Column(modifier = Modifier.padding(innerpadding)) { + Children( + stack = component.childStackBottom, + modifier = modifier, + animation = stackAnimation(fade() + scale()), + ) { + when (val child = it.instance) { + is RootBottomComponent.ChildBottom.WelcomeChild -> WelcomeContent(component = child.component) + is RootBottomComponent.ChildBottom.FeedsChild -> FeedsContent(component = child.component) + is RootBottomComponent.ChildBottom.MessageChild -> MessageContent( + component = child.component, + modifier + ) + + is RootBottomComponent.ChildBottom.NotificationsChild -> NotificationContent( + component = child.component + ) + } + } + } + }) + + +} \ No newline at end of file diff --git a/composeApp/src/commonMain/kotlin/theme/Colors.kt b/composeApp/src/commonMain/kotlin/theme/Colors.kt new file mode 100644 index 0000000..72968aa --- /dev/null +++ b/composeApp/src/commonMain/kotlin/theme/Colors.kt @@ -0,0 +1,40 @@ + +package theme + +import androidx.compose.ui.graphics.Color + +val PrimaryColor = Color(0xff214E78) +val PrimaryLightColor = PrimaryColor.copy(alpha = 0.75f) + +val SecondaryColor = Color(0xff7C93BE) +val SecondaryLightColor = SecondaryColor.copy(alpha = 0.75f) + +val PrimaryTextColor = Color(0xffffffff) +val SecondaryTextColor = Color(0xff000000) +val customBackGround = Color(0xff262626) +val SurfaceDark = Color(0xFF161616) +val SurfaceLight = Color(0xffFFFFFFFF) + +val BackgroundLightColor = Color(0xffF1F0F5) + +val BackgroundDarkColor = Color(0xff010100) + +val ErrorColor = Color(0xFFFF8989) +val OnErrorColor = Color(0xFF000000) + +val iconColor = Color(0xFFC67C4E) + val buttonColor = Color(0xffED5151) + +const val SessionColor = 0xFfBA4949 +const val ShortBreakColor = 0xFf38858A +const val LongBreakColor = 0xFf397097 + +const val Red = 0xFFFF0000 +const val Orange = 0xFFFFA500 +const val Blue = 0xFF0000FF +const val Green = 0xFF00FF00 + +const val LightGreen = 0xFF90EE90 +const val Yellow = 0xFFFFFF00 +const val LightBlue = 0xFFADD8E6 +const val Pink = 0xFFFFC0CB diff --git a/composeApp/src/commonMain/kotlin/theme/Shapes.kt b/composeApp/src/commonMain/kotlin/theme/Shapes.kt new file mode 100644 index 0000000..802264f --- /dev/null +++ b/composeApp/src/commonMain/kotlin/theme/Shapes.kt @@ -0,0 +1,12 @@ + +package theme + +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.Shapes +import androidx.compose.ui.unit.dp + +internal val Shapes = Shapes( + small = RoundedCornerShape(4.dp), + medium = RoundedCornerShape(8.dp), + large = RoundedCornerShape(12.dp), +) diff --git a/composeApp/src/commonMain/kotlin/theme/Theme.kt b/composeApp/src/commonMain/kotlin/theme/Theme.kt new file mode 100644 index 0000000..588ed24 --- /dev/null +++ b/composeApp/src/commonMain/kotlin/theme/Theme.kt @@ -0,0 +1,57 @@ + +package theme + +import androidx.compose.foundation.isSystemInDarkTheme +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.darkColorScheme +import androidx.compose.material3.lightColorScheme +import androidx.compose.runtime.Composable +import androidx.compose.ui.graphics.Color + +private val LightColors = lightColorScheme( + primary = customBackGround, + onPrimary = PrimaryTextColor, + secondary = SecondaryColor, + onSecondary = SecondaryTextColor, + tertiary = iconColor, + onTertiary = PrimaryTextColor, + background = BackgroundLightColor, + onBackground = Color.Black, + surface = SurfaceLight, + onSurface = Color.Black, + surfaceVariant = SurfaceLight, + onSurfaceVariant = Color.Black, + secondaryContainer = PrimaryColor, + onSecondaryContainer = Color.White, + error = ErrorColor, + onError = OnErrorColor, +) + +private val DarkColors = darkColorScheme( + primary = customBackGround, + onPrimary = PrimaryTextColor, + secondary = SecondaryLightColor, + onSecondary = SecondaryTextColor, + tertiary = iconColor, + onTertiary = PrimaryTextColor, + background = BackgroundDarkColor, + onBackground = Color.White, + surface = SurfaceDark, + onSurface = Color.White, + surfaceVariant = SurfaceDark, + onSurfaceVariant = Color.White, + secondaryContainer = PrimaryColor, + onSecondaryContainer = Color.White, + error = ErrorColor, + onError = OnErrorColor, +) + +@Composable +internal fun ComposeExperimentalTheme(useDarkTheme: Boolean = isSystemInDarkTheme(), content: @Composable () -> Unit) { + val autoColors = if (useDarkTheme)LightColors else LightColors + MaterialTheme( + colorScheme = autoColors, + shapes = Shapes, + content = content, + ) +} diff --git a/composeApp/src/iosMain/kotlin/MainViewController.kt b/composeApp/src/iosMain/kotlin/MainViewController.kt new file mode 100644 index 0000000..4f05df5 --- /dev/null +++ b/composeApp/src/iosMain/kotlin/MainViewController.kt @@ -0,0 +1,39 @@ +import androidx.compose.runtime.CompositionLocalProvider +import androidx.compose.runtime.InternalComposeApi +import androidx.compose.ui.ExperimentalComposeUiApi +import androidx.compose.ui.platform.LocalDensity +import androidx.compose.ui.platform.LocalSafeArea +import androidx.compose.ui.platform.PlatformInsets +import androidx.compose.ui.unit.dp +import com.arkivanov.decompose.DefaultComponentContext +import com.arkivanov.essenty.lifecycle.LifecycleRegistry +import com.moriatsushi.insetsx.WindowInsetsUIViewController +import di.initKoin +import platform.UIKit.UIViewController +import rootBottomStack.DefaultRootBottomComponent +import theme.ComposeExperimentalTheme + +@OptIn(ExperimentalComposeUiApi::class, InternalComposeApi::class) +@Suppress("unused", "FunctionName") +fun MainViewController( + lifecycle: LifecycleRegistry, + topSafeArea: Float, + bottomSafeArea: Float, +): UIViewController { + val defaultComponentCtx = DefaultComponentContext(lifecycle = lifecycle) + val root = DefaultRootBottomComponent( + componentContext = defaultComponentCtx + ) + initKoin(enableNetworkLogs = true, platform = PlatformSpecific()) + return WindowInsetsUIViewController { + val density = LocalDensity.current + val topSafeAreaDp = with(density) { topSafeArea.toDp() } + val bottomSafeAreaDp = with(density) { bottomSafeArea.toDp() } + val safeArea = PlatformInsets(top = topSafeAreaDp + 10.dp, bottom = bottomSafeAreaDp) + CompositionLocalProvider(LocalSafeArea provides safeArea) { + ComposeExperimentalTheme { + App(root) + } + } + } +} \ No newline at end of file diff --git a/composeApp/src/iosMain/kotlin/Platform.ios.kt b/composeApp/src/iosMain/kotlin/Platform.ios.kt new file mode 100644 index 0000000..5cef987 --- /dev/null +++ b/composeApp/src/iosMain/kotlin/Platform.ios.kt @@ -0,0 +1,7 @@ +import platform.UIKit.UIDevice + +class IOSPlatform: Platform { + override val name: String = UIDevice.currentDevice.systemName() + " " + UIDevice.currentDevice.systemVersion +} + +actual fun getPlatform(): Platform = IOSPlatform() \ No newline at end of file diff --git a/composeApp/src/iosMain/kotlin/PlatformSpecific.kt b/composeApp/src/iosMain/kotlin/PlatformSpecific.kt new file mode 100644 index 0000000..c1976e0 --- /dev/null +++ b/composeApp/src/iosMain/kotlin/PlatformSpecific.kt @@ -0,0 +1,16 @@ +import androidx.compose.ui.graphics.ImageBitmap + +actual open class PlatformSpecific{ + actual fun loadFiles(callback: (ImageBitmap?) -> Unit) { + //convert an image to a Imagebitmap equivalent in swift + } + + actual fun loadImages(callback: (ImageBitmap?) -> Unit) { + } + + actual fun launchDialer(phoneNumber: String) { + + //swift launch dialer implementation + } + +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..b54e073 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,22 @@ +kotlin.code.style=official + +#Gradle +org.gradle.jvmargs=-Xmx2048M -Dfile.encoding=UTF-8 -Dkotlin.daemon.jvm.options\="-Xmx2048M" + + +#Android +android.nonTransitiveRClass=true +android.useAndroidX=true + +#MPP +kotlin.mpp.androidSourceSetLayoutVersion=2 +kotlin.mpp.enableCInteropCommonization=true + +#Development +development=true + +#Versions +kotlin.version=1.9.20 +agp.version=8.1.1 +compose.version=1.5.10 +sqldelight.version=2.0.0 \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 0000000..53192f5 --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,130 @@ +[versions] +agp = "8.1.1" +android-compileSdk = "34" +android-minSdk = "24" +android-targetSdk = "34" +androidx-activityCompose = "1.8.2" +androidx-constraintlayout = "2.1.4" +androidx-core-ktx = "1.12.0" +androidx-espresso-core = "3.5.1" +androidx-material = "1.11.0" +androidx-test-junit = "1.1.5" +compose = "1.5.10" +compose-plugin = "1.6.0" +junit = "4.13.2" +kotlin = "1.9.20" +serialization = "1.6.2" +moko = "0.23.0" +moko-graphics = "0.9.0" +mviKotlin = "3.2.1" +logbackClassic = "1.2.11" +sqlDelight = "2.0.0" +koin = "3.5.0" +ktor = "2.3.7" +decompose = "2.1.3" +essenty = "1.2.0" +parcelizeDarwin = "0.2.2" +jetbrainsCompose = "1.5.10" +jetbrainsKotlinxCoroutines = "1.8.0" +jetbrainsBinaryCompatibilityValidator = "0.13.2" +androidxCore = "1.12.0" +androidxAppcompat = "1.6.1" +androidxLifecycle = "2.7.0" +androidxActivity = "1.8.2" +androidxFragment = "1.6.2" +androidxTestCore = "1.5.0" +extensionJetbrains = "2.0.0-compose-experimental-alpha-02" +russhwolf = "1.1.0" +gms = "4.4.0" +analytics = "21.3.0" +crashlytics = "18.3.2" + + +[libraries] +kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" } +kotlin-test-junit = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" } +junit = { group = "junit", name = "junit", version.ref = "junit" } +androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "androidx-core-ktx" } +androidx-test-junit = { group = "androidx.test.ext", name = "junit", version.ref = "androidx-test-junit" } +androidx-espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "androidx-espresso-core" } +androidx-material = { group = "com.google.android.material", name = "material", version.ref = "androidx-material" } +androidx-constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "androidx-constraintlayout" } +androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "androidx-activityCompose" } +compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "compose" } +compose-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview", version.ref = "compose" } + +analytics-firebase = {group = "com.google.firebase", name = "firebase-analytics-ktx", version.ref = "analytics"} +crashlytics-firebase = {group = "com.google.firebase", name = "firebase-crashlytics-ktx", version.ref = "crashlytics"} + +gms-google-services = {group = "com.google.gms", name = "google-services", version.ref = "gms"} + +russhwolf-settings-core = {group = "com.russhwolf", name = "multiplatform-settings", version.ref = "russhwolf" } +russhwolf-settings-serialization = {group = "com.russhwolf", name = "multiplatform-settings-serialization", version.ref = "russhwolf" } + + +#Koin +koin-android = { group = "io.insert-koin", name = "koin-android", version.ref = "koin" } +koin-core = { group = "io.insert-koin", name = "koin-core", version.ref = "koin" } +koin-test = { group = "io.insert-koin", name = "koin-test", version.ref = "koin" } + + +#Decompose +mvikotlin = { group = "com.arkivanov.mvikotlin", name = "mvikotlin", version.ref = "mviKotlin" } +mviKotlin-mvikotlinMain = { group = "com.arkivanov.mvikotlin", name = "mvikotlin-main", version.ref = "mviKotlin" } +mviKotlin-mvikotlinExtensionsCoroutines = { group = "com.arkivanov.mvikotlin", name = "mvikotlin-extensions-coroutines", version.ref = "mviKotlin" } +decompose = { group = "com.arkivanov.decompose", name = "decompose", version.ref = "decompose" } +decompose-jetbrains = { group = "com.arkivanov.decompose", name = "extensions-compose-jetbrains", version.ref = "extensionJetbrains" } +essenty-lifecycle = { group = "com.arkivanov.essenty", name = "lifecycle", version.ref = "essenty" } +essenty-stateKeeper = { group = "com.arkivanov.essenty", name = "state-keeper", version.ref = "essenty" } +essenty-instanceKeeper = { group = "com.arkivanov.essenty", name = "instance-keeper", version.ref = "essenty" } +essenty-backHandler = { group = "com.arkivanov.essenty", name = "back-handler", version.ref = "essenty" } +parcelizeDarwin-gradlePlug = { group = "com.arkivanov.parcelize.darwin", name = "gradle-plugin", version.ref = "parcelizeDarwin" } +parcelizeDarwin-runtime = { group = "com.arkivanov.parcelize.darwin", name = "runtime", version.ref = "parcelizeDarwin" } +#Ktor +ktor-ClientCore = {group = "io.ktor", name = "ktor-client-core", version.ref = "ktor" } +ktor-SerializationKotlinxJson = {group = "io.ktor", name = "ktor-serialization-kotlinx-json", version.ref = "ktor" } +ktor-ClientContentNegotiation = {group = "io.ktor", name = "ktor-client-content-negotiation", version.ref = "ktor" } +ktor-ClientLogging = {group = "io.ktor", name = "ktor-client-logging", version.ref = "ktor" } +ktor-ClientAndroid = {group = "io.ktor", name = "ktor-client-android", version.ref = "ktor" } +ktor-ClientDarwin = {group = "io.ktor", name = "ktor-client-darwin", version.ref = "ktor" } +#ktor-ClientJava = {group = "io.ktor", name = "ktor-client-java", version.ref = "ktor" } +#ktor-ClientJs = {group = "io.ktor", name = "ktor-client-js", version.ref = "ktor" } + +#Ktor logback +logbackClassic = { group = "ch.qos.logback", name = "logback-classic", version.ref = "logbackClassic" } + +#Sql +sqlDelight-gradlePlugin = {group = "app.cash.sqldelight", name = "gradle-plugin", version.ref = "sqlDelight" } +sqlDelight-androidDriver = {group = "app.cash.sqldelight", name = "android-driver", version.ref = "sqlDelight" } +sqlDelight-sqliteDriver = {group = "app.cash.sqldelight", name = "sqlite-driver", version.ref = "sqlDelight" } +sqlDelight-nativeDriver = {group = "app.cash.sqldelight", name = "native-driver", version.ref = "sqlDelight" } +sqlDelight-sqljsDriver = {group = "app.cash.sqldelight", name = "sqljs-driver", version.ref = "sqlDelight" } +sqlDelight-coroutinesExtensions = {group = "app.cash.sqldelight", name = "coroutines-extensions", version.ref = "sqlDelight" } +sqlDelight-primitiveAdapters = {group = "app.cash.sqldelight", name = "primitive-adapters", version.ref = "sqlDelight" } + + +androidx-core-coreKtx = { group = "androidx.core", name = "core-ktx", version.ref = "androidxCore" } +androidx-appcompat-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "androidxAppcompat" } +androidx-lifecycle-lifecycleCommonJava8 = { group = "androidx.lifecycle", name = "lifecycle-common-java8", version.ref = "androidxLifecycle" } +androidx-activity-activityKtx = { group = "androidx.activity", name = "activity-ktx", version.ref = "androidxActivity" } +androidx-activity-activityCompose = { group = "androidx.activity", name = "activity-compose", version.ref = "androidxActivity" } +androidx-fragment-fragmentKtx = { group = "androidx.fragment", name = "fragment-ktx", version.ref = "androidxFragment" } +androidx-test-core = { group = "androidx.test", name = "core", version.ref = "androidxTestCore" } + + + +jetbrains-compose-composeGradlePlug = { group = "org.jetbrains.compose", name = "compose-gradle-plugin", version.ref = "jetbrainsCompose" } +jetbrains-kotlinx-binaryCompatibilityValidator = { group = "org.jetbrains.kotlinx", name = "binary-compatibility-validator", version.ref = "jetbrainsBinaryCompatibilityValidator" } +jetbrains-kotlinx-kotlinxCoroutinesCore = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-core", version.ref = "jetbrainsKotlinxCoroutines" } +jetbrains-kotlinx-kotlinxSerializationJson = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "serialization" } +jetbrains-kotlinx-kotlinxCoroutinesSwing = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-swing", version.ref = "jetbrainsKotlinxCoroutines" } + + + + + +[plugins] +androidApplication = { id = "com.android.application", version.ref = "agp" } +androidLibrary = { id = "com.android.library", version.ref = "agp" } +jetbrainsCompose = { id = "org.jetbrains.compose", version.ref = "compose-plugin" } +kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..033e24c4cdf41af1ab109bc7f253b2b887023340 GIT binary patch literal 63375 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≫L+crb^Bz zc+Nw%zgpZ6>!A3%lau!Pw6`Y#WPVBtAfKSsqwYDWQK-~ zz(mx=nJ6-8t`YXB{6gaZ%G}Dmn&o500Y}2Rd?e&@=hBEmB1C=$OMBfxX__2c2O4K2#(0ksclP$SHp*8jq-1&(<6(#=6&H`Nlc2RVC4->r6U}sTY<1? zn@tv7XwUs-c>Lcmrm5AE0jHI5={WgHIow6cX=UK)>602(=arbuAPZ37;{HTJSIO%9EL`Et5%J7$u_NaC(55x zH^qX^H}*RPDx)^c46x>js=%&?y?=iFs^#_rUl@*MgLD92E5y4B7#EDe9yyn*f-|pQ zi>(!bIg6zY5fLSn@;$*sN|D2A{}we*7+2(4&EhUV%Qqo5=uuN^xt_hll7=`*mJq6s zCWUB|s$)AuS&=)T&_$w>QXHqCWB&ndQ$y4-9fezybZb0bYD^zeuZ>WZF{rc>c4s`` zgKdppTB|o>L1I1hAbnW%H%EkFt%yWC|0~+o7mIyFCTyb?@*Ho)eu(x`PuO8pLikN> z6YeI`V?AUWD(~3=8>}a6nZTu~#QCK(H0+4!ql3yS`>JX;j4+YkeG$ZTm33~PLa3L} zksw7@%e-mBM*cGfz$tS4LC^SYVdBLsR}nAprwg8h2~+Cv*W0%izK+WPVK}^SsL5R_ zpA}~G?VNhJhqx2he2;2$>7>DUB$wN9_-adL@TqVLe=*F8Vsw-yho@#mTD6*2WAr6B zjtLUh`E(;#p0-&$FVw(r$hn+5^Z~9J0}k;j$jL1;?2GN9s?}LASm?*Rvo@?E+(}F& z+=&M-n`5EIz%%F^e)nnWjkQUdG|W^~O|YeY4Fz}>qH2juEere}vN$oJN~9_Th^&b{ z%IBbET*E8%C@jLTxV~h#mxoRrJCF{!CJOghjuKOyl_!Jr?@4Upo7u>fTGtfm|CH2v z&9F+>;6aFbYXLj3{yZ~Yn1J2%!)A3~j2$`jOy{XavW@t)g}}KUVjCWG0OUc7aBc=2 zR3^u=dT47=5SmT{K1aGaVZkOx|24T-J0O$b9dfB25J|7yb6frwS6wZ1^y%EWOm}S< zc1SdYhfsdLG*FB-;!QLV3D!d~hnXTGVQVck9x%=B(Kk8c3y%f0nR95_TbY;l=obSl zEE@fp0|8Q$b3(+DXh?d0FEloGhO0#11CLQT5qtEckBLe-VN-I>9ys}PVK0r;0!jIG zH_q$;a`3Xv9P_V2ekV1SMzd#SKo<1~Dq2?M{(V;AwhH_2x@mN$=|=cG0<3o^j_0OF z7|WJ-f2G=7sA4NVGU2X5`o*D2T7(MbmZ2(oipooE{R?9!{WxX!%ofhsrPAxoIk!Kr z>I$a{Zq=%KaLrDCIL^gmA3z{2z%Wkr)b$QHcNUA^QwydWMJmxymO0QS22?mo%4(Md zgME(zE}ub--3*wGjV`3eBMCQG-@Gel1NKZDGuqobN|mAt0{@ZC9goI|BSmGBTUZ(`Xt z^e2LiMg?6E?G*yw(~K8lO(c4)RY7UWxrXzW^iCg-P41dUiE(i+gDmmAoB?XOB}+Ln z_}rApiR$sqNaT4frw69Wh4W?v(27IlK$Toy<1o)GeF+sGzYVeJ`F)3`&2WDi^_v67 zg;@ehwl3=t+}(DJtOYO!s`jHyo-}t@X|U*9^sIfaZfh;YLqEFmZ^E;$_XK}%eq;>0 zl?+}*kh)5jGA}3daJ*v1knbW0GusR1+_xD`MFPZc3qqYMXd>6*5?%O5pC7UVs!E-` zuMHc6igdeFQ`plm+3HhP)+3I&?5bt|V8;#1epCsKnz0%7m9AyBmz06r90n~9o;K30 z=fo|*`Qq%dG#23bVV9Jar*zRcV~6fat9_w;x-quAwv@BkX0{9e@y0NB(>l3#>82H6 z^US2<`=M@6zX=Pz>kb8Yt4wmeEo%TZ=?h+KP2e3U9?^Nm+OTx5+mVGDvgFee%}~~M zK+uHmj44TVs}!A}0W-A92LWE%2=wIma(>jYx;eVB*%a>^WqC7IVN9{o?iw{e4c=CG zC#i=cRJZ#v3 zF^9V+7u?W=xCY%2dvV_0dCP%5)SH*Xm|c#rXhwEl*^{Ar{NVoK*H6f5qCSy`+|85e zjGaKqB)p7zKNKI)iWe6A9qkl=rTjs@W1Crh(3G57qdT0w2ig^{*xerzm&U>YY{+fZbkQ#;^<$JniUifmAuEd^_M(&?sTrd(a*cD! zF*;`m80MrZ^> zaF{}rDhEFLeH#`~rM`o903FLO?qw#_Wyb5}13|0agjSTVkSI6Uls)xAFZifu@N~PM zQ%o?$k)jbY0u|45WTLAirUg3Zi1E&=G#LnSa89F3t3>R?RPcmkF}EL-R!OF_r1ZN` z?x-uHH+4FEy>KrOD-$KHg3$-Xl{Cf0;UD4*@eb~G{CK-DXe3xpEEls?SCj^p z$Uix(-j|9f^{z0iUKXcZQen}*`Vhqq$T?^)Ab2i|joV;V-qw5reCqbh(8N)c%!aB< zVs+l#_)*qH_iSZ_32E~}>=wUO$G_~k0h@ch`a6Wa zsk;<)^y=)cPpHt@%~bwLBy;>TNrTf50BAHUOtt#9JRq1ro{w80^sm-~fT>a$QC;<| zZIN%&Uq>8`Js_E((_1sewXz3VlX|-n8XCfScO`eL|H&2|BPZhDn}UAf_6s}|!XpmUr90v|nCutzMjb9|&}#Y7fj_)$alC zM~~D6!dYxhQof{R;-Vp>XCh1AL@d-+)KOI&5uKupy8PryjMhTpCZnSIQ9^Aq+7=Mb zCYCRvm4;H=Q8nZWkiWdGspC_Wvggg|7N`iED~Eap)Th$~wsxc(>(KI>{i#-~Dd8iQ zzonqc9DW1w4a*}k`;rxykUk+~N)|*I?@0901R`xy zN{20p@Ls<%`1G1Bx87Vm6Z#CA`QR(x@t8Wc?tpaunyV^A*-9K9@P>hAWW9Ev)E$gb z<(t?Te6GcJX2&0% z403pe>e)>m-^qlJU^kYIH)AutgOnq!J>FoMXhA-aEx-((7|(*snUyxa+5$wx8FNxS zKuVAVWArlK#kDzEM zqR?&aXIdyvxq~wF?iYPho*(h?k zD(SBpRDZ}z$A})*Qh!9&pZZRyNixD!8)B5{SK$PkVET(yd<8kImQ3ILe%jhx8Ga-1 zE}^k+Eo^?c4Y-t2_qXiVwW6i9o2qosBDj%DRPNT*UXI0=D9q{jB*22t4HHcd$T&Xi zT=Vte*Gz2E^qg%b7ev04Z&(;=I4IUtVJkg<`N6i7tjUn-lPE(Y4HPyJKcSjFnEzCH zPO(w%LmJ_=D~}PyfA91H4gCaf-qur3_KK}}>#9A}c5w@N;-#cHph=x}^mQ3`oo`Y$ope#)H9(kQK zGyt<7eNPuSAs$S%O>2ElZ{qtDIHJ!_THqTwcc-xfv<@1>IJ;YTv@!g-zDKBKAH<

Zet1e^8c}8fE97XH}+lF{qbF<`Y%dU|I!~Y`ZrVfKX82i z)(%!Tcf~eE^%2_`{WBPGPU@1NB5SCXe1sAI<4&n1IwO{&S$ThWn37heGOSW%nW7*L zxh0WK!E7zh%6yF-7%~l@I~b`2=*$;RYbi(I#zp$gL_d39U4A)KuB( zcS0bt48&%G_I~( zL(}w&2NA6#$=|g)J+-?ehHflD^lr77ngdz=dszFI;?~ZxeJv=gsm?4$$6#V==H{fa zqO!EkT>1-OQSJoX)cN}XsB;shvrHRwTH(I2^Ah4|rizn!V7T7fLh~Z<`Q+?zEMVxh z$=-x^RR*PlhkV_8mshTvs+zmZWY&Jk{9LX0Nx|+NAEq-^+Rh|ZlinVZ=e8=`WQt;e@= zPU}^1cG*O;G7l{Y#nl znp`y%CO_SC7gk0i0gY&phM04Y)~vU0!3$V$2T+h(1ZS+cCgc zaC?3M;B48^faGo>h~--#FNFauH?0BJJ6_nG5qOlr>k~%DCSJaOfl%KWHusw>tGrTxAhlEVDxc8R2C-)LCt&$Rt9IKor=ml7jirX@?WW+M z^I{b}MD5r$s>^^sN@&g`cXD~S_u09xo;{;noKZatIuzqd zW1e7oTl9>g8opPBT(p+&fo0F#!c{NFYYpIZ6u8hOB{F#{nP)@})X20$3iJtG$cO zJ$Oxl_qH{sL5d?=D$2M4C3Ajc;GN0(B-HVT;@pJ-LvIrN%|SY?t}g!J>ufQrR%hoY z!nr$tq~N%)9}^tEip93XW=MQ1@XovSvn`PTqXeT9@_7hGv4%LK1M**Q%UKi|(v@1_ zKGe*@+1%Y4v&`;5vUL`C&{tc+_7HFs7*OtjY8@Gg`C4O&#An{0xOvgNSehTHS~_1V z=daxCMzI5b_ydM5$z zZl`a{mM}i@x;=QyaqJY&{Q^R*^1Yzq!dHH~UwCCga+Us~2wk59ArIYtSw9}tEmjbo z5!JA=`=HP*Ae~Z4Pf7sC^A3@Wfa0Ax!8@H_&?WVe*)9B2y!8#nBrP!t1fqhI9jNMd zM_5I)M5z6Ss5t*f$Eh{aH&HBeh310Q~tRl3wCEcZ>WCEq%3tnoHE)eD=)XFQ7NVG5kM zaUtbnq2LQomJSWK)>Zz1GBCIHL#2E>T8INWuN4O$fFOKe$L|msB3yTUlXES68nXRX zP6n*zB+kXqqkpQ3OaMc9GqepmV?Ny!T)R@DLd`|p5ToEvBn(~aZ%+0q&vK1)w4v0* zgW44F2ixZj0!oB~^3k|vni)wBh$F|xQN>~jNf-wFstgiAgB!=lWzM&7&&OYS=C{ce zRJw|)PDQ@3koZfm`RQ$^_hEN$GuTIwoTQIDb?W&wEo@c75$dW(ER6q)qhF`{#7UTuPH&)w`F!w z0EKs}=33m}_(cIkA2rBWvApydi0HSOgc>6tu&+hmRSB%)s`v_NujJNhKLS3r6hv~- z)Hm@?PU{zd0Tga)cJWb2_!!9p3sP%Z zAFT|jy;k>4X)E>4fh^6=SxV5w6oo`mus&nWo*gJL zZH{SR!x)V)y=Qc7WEv-xLR zhD4OcBwjW5r+}pays`o)i$rcJb2MHLGPmeOmt5XJDg@(O3PCbxdDn{6qqb09X44T zh6I|s=lM6Nr#cGaA5-eq*T=LQ6SlRq*`~`b+dVi5^>el1p;#si6}kK}>w;1 z6B1dz{q_;PY{>DBQ+v@1pfXTd5a*^H9U*;qdj@XBF}MoSSQxVXeUpEM5Z0909&8$pRfR|B(t0ox&xl8{8mUNd#(zWONW{oycv$VjP1>q;jU@ z@+8E~fjz*I54OFFaQ{A5jn1w>r;l!NRlI(8q3*%&+tM?lov_G3wB`<}bQ>1=&xUht zmti5VZzV1Cx006Yzt|%Vwid>QPX8Nfa8|sue7^un@C+!3h!?-YK>lSfNIHh|0kL8v zbv_BklQ4HOqje|@Fyxn%IvL$N&?m(KN;%`I$N|muStjSsgG;gP4Smgz$2u(mG;DXP zf~uQ z212x^l6!MW>V@ORUGSFLAAjz3i5zO$=UmD_zhIk2OXUz^LkDLWjla*PW?l;`LLos> z7FBvCr)#)XBByDm(=n%{D>BcUq>0GOV9`i-(ZSI;RH1rdrAJ--f0uuAQ4odl z_^$^U_)0BBJwl@6R#&ZtJN+@a(4~@oYF)yG+G#3=)ll8O#Zv3SjV#zSXTW3h9kqn* z@AHL=vf~KMas}6{+u=}QFumr-!c=(BFP_dwvrdehzTyqco)m@xRc=6b#Dy+KD*-Bq zK=y*1VAPJ;d(b?$2cz{CUeG(0`k9_BIuUki@iRS5lp3=1#g)A5??1@|p=LOE|FNd; z-?5MLKd-5>yQ7n__5W^3C!_`hP(o%_E3BKEmo1h=H(7;{6$XRRW6{u+=oQX<((xAJ zNRY`Egtn#B1EBGHLy^eM5y}Jy0h!GAGhb7gZJoZI-9WuSRw)GVQAAcKd4Qm)pH`^3 zq6EIM}Q zxZGx%aLnNP1an=;o8p9+U^>_Bi`e23E^X|}MB&IkS+R``plrRzTE%ncmfvEW#AHJ~ znmJ`x&ez6eT21aLnoI`%pYYj zzQ?f^ob&Il;>6Fe>HPhAtTZa*B*!;;foxS%NGYmg!#X%)RBFe-acahHs3nkV61(E= zhekiPp1d@ACtA=cntbjuv+r-Zd`+lwKFdqZuYba_ey`&H<Psu;Tzwt;-LQxvv<_D5;ik7 zwETZe`+voUhk%$s2-7Rqfl`Ti_{(fydI(DAHKr<66;rYa6p8AD+NEc@Fd@%m`tiK% z=Mebzrtp=*Q%a}2UdK4J&5#tCN5PX>W=(9rUEXZ8yjRu+7)mFpKh{6;n%!bI(qA9kfyOtstGtOl zX!@*O0fly*L4k##fsm&V0j9Lj<_vu1)i?!#xTB7@2H&)$Kzt@r(GH=xRZlIimTDd_o(%9xO388LwC#;vQ?7OvRU_s< zDS@6@g}VnvQ+tn(C#sx0`J^T4WvFxYI17;uPs-Ub{R`J-NTdtBGl+Q>e81Z3#tDUr ztnVc*p{o|RNnMYts4pdw=P!uJkF@8~h)oV4dXu5F7-j0AW|=mt!QhP&ZV!!82*c7t zuOm>B*2gFtq;A8ynZ~Ms?!gEi5<{R_8tRN%aGM!saR4LJQ|?9w>Ff_61(+|ol_vL4 z-+N>fushRbkB4(e{{SQ}>6@m}s1L!-#20N&h%srA=L50?W9skMF9NGfQ5wU*+0<@> zLww8%f+E0Rc81H3e_5^DB@Dn~TWYk}3tqhO{7GDY;K7b*WIJ-tXnYM@z4rn(LGi?z z8%$wivs)fC#FiJh?(SbH-1bgdmHw&--rn7zBWe1xAhDdv#IRB@DGy}}zS%M0(F_3_ zLb-pWsdJ@xXE;=tpRAw?yj(Gz=i$;bsh&o2XN%24b6+?_gJDBeY zws3PE2u!#Cec>aFMk#ECxDlAs;|M7@LT8)Y4(`M}N6IQ{0YtcA*8e42!n^>`0$LFU zUCq2IR2(L`f++=85M;}~*E($nE&j;p{l%xchiTau*tB9bI= zn~Ygd@<+9DrXxoGPq}@vI1Q3iEfKRleuy*)_$+hg?+GOgf1r?d@Or42|s|D>XMa;ebr1uiTNUq@heusd6%WwJqyCCv!L*qou9l!B22H$bQ z)<)IA>Yo77S;|`fqBk!_PhLJEQb0wd1Z|`pCF;hol!34iQYtqu3K=$QxLW7(HFx~v>`vVRr zyqk^B4~!3F8t8Q_D|GLRrAbbQDf??D&Jd|mgw*t1YCd)CM2$76#Cqj1bD*vADwavp zS<`n@gLU4pwCqNPsIfHKl{5}gu9t-o+O< z??!fMqMrt$s}02pdBbOScUrc1T*{*-ideR6(1q4@oC6mxg8v8Y^h^^hfx6| z|Mld6Ax1CuSlmSJmHwdOix?$8emihK#&8&}u8m!#T1+c5u!H)>QW<7&R$eih)xkov zHvvEIJHbkt+2KQ<-bMR;2SYX?8SI=_<-J!GD5@P2FJ}K z5u82YFotCJF(dUeJFRX_3u8%iIYbRS??A?;iVO?84c}4Du9&jG<#urlZ_Unrcg8dR z!5I3%9F*`qwk#joKG_Q%5_xpU7|jm4h0+l$p;g%Tr>i74#3QnMXdz|1l2MQN$yw|5 zThMw15BxjWf2{KM)XtZ+e#N)ihlkxPe=5ymT9>@Ym%_LF}o z1XhCP`3E1A{iVoHA#|O|&5=w;=j*Qf`;{mBAK3={y-YS$`!0UmtrvzHBfR*s{z<0m zW>4C=%N98hZlUhwAl1X`rR)oL0&A`gv5X79??p_==g*n4$$8o5g9V<)F^u7v0Vv^n z1sp8{W@g6eWv2;A31Rhf5j?KJhITYfXWZsl^`7z`CFtnFrHUWiD?$pwU6|PQjs|7RA0o9ARk^9$f`u3&C|#Z3iYdh<0R`l2`)6+ z6tiDj@xO;Q5PDTYSxsx6n>bj+$JK8IPJ=U5#dIOS-zwyK?+t^V`zChdW|jpZuReE_ z)e~ywgFe!0q|jzsBn&(H*N`%AKpR@qM^|@qFai0};6mG_TvXjJ`;qZ{lGDZHScZk( z>pO+%icp)SaPJUwtIPo1BvGyP8E@~w2y}=^PnFJ$iHod^JH%j1>nXl<3f!nY9K$e` zq-?XYl)K`u*cVXM=`ym{N?z=dHQNR23M8uA-(vsA$6(xn+#B-yY!CB2@`Uz({}}w+ z0sni*39>rMC!Ay|1B@;al%T&xE(wCf+`3w>N)*LxZZZYi{5sqiVWgbNd>W*X?V}C- zjQ4F7e_uCUOHbtewQkq?m$*#@ZvWbu{4i$`aeKM8tc^ zL5!GL8gX}c+qNUtUIcps1S)%Gsx*MQLlQeoZz2y2OQb(A73Jc3`LmlQf0N{RTt;wa`6h|ljX1V7UugML=W5-STDbeWTiEMjPQ$({hn_s&NDXzs6?PLySp$?L`0ilH3vCUO{JS0Dp`z;Ry$6}R@1NdY7rxccbm$+;ApSe=2q!0 z()3$vYN0S$Cs)#-OBs{_2uFf}L4h$;7^2w20=l%5r9ui&pTEgg4U!FoCqyA6r2 zC5s72l}i*9y|KTjDE5gVlYe4I2gGZD)e`Py2gq7cK4at{bT~DSbQQ4Z4sl)kqXbbr zqvXtSqMrDdT2qt-%-HMoqeFEMsv~u)-NJ%Z*ipSJUm$)EJ+we|4*-Mi900K{K|e0; z1_j{X5)a%$+vM7;3j>skgrji92K1*Ip{SfM)=ob^E374JaF!C(cZ$R_E>Wv+?Iy9M z?@`#XDy#=z%3d9&)M=F8Xq5Zif%ldIT#wrlw(D_qOKo4wD(fyDHM5(wm1%7hy6euJ z%Edg!>Egs;ZC6%ktLFtyN0VvxN?*4C=*tOEw`{KQvS7;c514!FP98Nf#d#)+Y-wsl zP3N^-Pnk*{o(3~m=3DX$b76Clu=jMf9E?c^cbUk_h;zMF&EiVz*4I(rFoaHK7#5h0 zW7CQx+xhp}Ev+jw;SQ6P$QHINCxeF8_VX=F3&BWUd(|PVViKJl@-sYiUp@xLS2NuF z8W3JgUSQ&lUp@2E(7MG`sh4X!LQFa6;lInWqx}f#Q z4xhgK1%}b(Z*rZn=W{wBOe7YQ@1l|jQ|9ELiXx+}aZ(>{c7Ltv4d>PJf7f+qjRU8i%XZZFJkj&6D^s;!>`u%OwLa*V5Js9Y$b-mc!t@{C415$K38iVu zP7!{3Ff%i_e!^LzJWhBgQo=j5k<<($$b&%%Xm_f8RFC_(97&nk83KOy@I4k?(k<(6 zthO$3yl&0x!Pz#!79bv^?^85K5e7uS$ zJ33yka2VzOGUhQXeD{;?%?NTYmN3{b0|AMtr(@bCx+c=F)&_>PXgAG}4gwi>g82n> zL3DlhdL|*^WTmn;XPo62HhH-e*XIPSTF_h{#u=NY8$BUW=5@PD{P5n~g5XDg?Fzvb_u ziK&CJqod4srfY2T?+4x@)g9%3%*(Q2%YdCA3yM{s=+QD0&IM`8k8N&-6%iIL3kon> z0>p3BUe!lrz&_ZX2FiP%MeuQY-xVV%K?=bGPOM&XM0XRd7or< zy}jn_eEzuQ>t2fM9ict#ZNxD7HUycsq76IavfoNl$G1|t*qpUSX;YgpmJrr_8yOJ2 z(AwL;Ugi{gJ29@!G-mD82Z)46T`E+s86Qw|YSPO*OoooraA!8x_jQXYq5vUw!5f_x zubF$}lHjIWxFar8)tTg8z-FEz)a=xa`xL~^)jIdezZsg4%ePL$^`VN#c!c6`NHQ9QU zkC^<0f|Ksp45+YoX!Sv>+57q}Rwk*2)f{j8`d8Ctz^S~me>RSakEvxUa^Pd~qe#fb zN7rnAQc4u$*Y9p~li!Itp#iU=*D4>dvJ{Z~}kqAOBcL8ln3YjR{Sp!O`s=5yM zWRNP#;2K#+?I&?ZSLu)^z-|*$C}=0yi7&~vZE$s``IE^PY|dj^HcWI$9ZRm>3w(u` z-1%;;MJbzHFNd^!Ob!^PLO-xhhj@XrI81Y)x4@FdsI( za`o4Gy(`T$P?PB?s>o+eIOtuirMykbuAi65Y_UN1(?jTCy@J8Px`%;bcNmPm#Fr!= z5V!YViFJ!FBfEq>nJFk0^RAV1(7w+X`HRgP;nJHJdMa!}&vvduCMoslwHTes_I76|h>;(-9lbfGnt zoZomakOt759AuTX4b$)G8TzJ&m*BV8!vMs9#=e0tWa z%)84R=3?tfh72~=Rc;fXwj+x z+25xapYK@2@;}6)@8IL+F6iuJ_B{&A-0=U=U6WMbY>~ykVFp$XkH)f**b>TE5)shN z39E2L@JPCSl!?pkvFeh@6dCv9oE}|{GbbVM!XIgByN#md&tXy@>QscU0#z!I&X4;d z&B&ZA4lbrHJ!x4lCN4KC-)u#gT^cE{Xnhu`0RXVKn|j$vz8m}v^%*cQ{(h%FW8_8a zFM{$PirSI8@#*xg2T){A+EKX(eTC66Fb})w{vg%Vw)hvV-$tttI^V5wvU?a{(G}{G z@ob7Urk1@hDN&C$N!Nio9YrkiUC{5qA`KH*7CriaB;2~2Od>2l=WytBRl#~j`EYsj}jqK2xD*3 ztEUiPZzEJC??#Tj^?f)=sRXOJ_>5aO(|V#Yqro05p6)F$j5*wYr1zz|T4qz$0K(5! zr`6Pqd+)%a9Xq3aNKrY9843)O56F%=j_Yy_;|w8l&RU1+B4;pP*O_}X8!qD?IMiyT zLXBOOPg<*BZtT4LJ7DfyghK|_*mMP7a1>zS{8>?}#_XXaLoUBAz(Wi>$Q!L;oQ&cL z6O|T6%Dxq3E35$0g5areq9$2+R(911!Z9=wRPq-pju7DnN9LAfOu3%&onnfx^Px5( zT2^sU>Y)88F5#ATiVoS$jzC-M`vY8!{8#9O#3c&{7J1lo-rcNK7rlF0Zt*AKE(WN* z*o?Tv?Sdz<1v6gfCok8MG6Pzecx9?C zrQG5j^2{V556Hj=xTiU-seOCr2ni@b<&!j>GyHbv!&uBbHjH-U5Ai-UuXx0lcz$D7%=! z&zXD#Jqzro@R=hy8bv>D_CaOdqo6)vFjZldma5D+R;-)y1NGOFYqEr?h zd_mTwQ@K2veZTxh1aaV4F;YnaWA~|<8$p}-eFHashbWW6Dzj=3L=j-C5Ta`w-=QTw zA*k9!Ua~-?eC{Jc)xa;PzkUJ#$NfGJOfbiV^1au;`_Y8|{eJ(~W9pP9q?gLl5E6|e{xkT@s|Ac;yk01+twk_3nuk|lRu{7-zOjLAGe!)j?g+@-;wC_=NPIhk(W zfEpQrdRy z^Q$YBs%>$=So>PAMkrm%yc28YPi%&%=c!<}a=)sVCM51j+x#<2wz?2l&UGHhOv-iu z64x*^E1$55$wZou`E=qjP1MYz0xErcpMiNYM4+Qnb+V4MbM;*7vM_Yp^uXUuf`}-* z_2CnbQ);j5;Rz?7q)@cGmwE^P>4_u9;K|BFlOz_|c^1n~%>!uO#nA?5o4A>XLO{X2 z=8M%*n=IdnXQ}^+`DXRKM;3juVrXdgv79;E=ovQa^?d7wuw~nbu%%lsjUugE8HJ9zvZIM^nWvjLc-HKc2 zbj{paA}ub~4N4Vw5oY{wyop9SqPbWRq=i@Tbce`r?6e`?`iOoOF;~pRyJlKcIJf~G z)=BF$B>YF9>qV#dK^Ie#{0X(QPnOuu((_-u?(mxB7c9;LSS-DYJ8Wm4gz1&DPQ8;0 z=Wao(zb1RHXjwbu_Zv<=9njK28sS}WssjOL!3-E5>d17Lfnq0V$+IU84N z-4i$~!$V-%Ik;`Z3MOqYZdiZ^3nqqzIjLE+zpfQC+LlomQu-uNCStj%MsH(hsimN# z%l4vpJBs_2t7C)x@6*-k_2v0FOk<1nIRO3F{E?2DnS}w> z#%9Oa{`RB5FL5pKLkg59#x~)&I7GzfhiVC@LVFSmxZuiRUPVW*&2ToCGST0K`kRK) z02#c8W{o)w1|*YmjGSUO?`}ukX*rHIqGtFH#!5d1Jd}&%4Kc~Vz`S7_M;wtM|6PgI zNb-Dy-GI%dr3G3J?_yBX#NevuYzZgzZ!vN>$-aWOGXqX!3qzCIOzvA5PLC6GLIo|8 zQP^c)?NS29hPmk5WEP>cHV!6>u-2rR!tit#F6`_;%4{q^6){_CHGhvAs=1X8Fok+l zt&mk>{4ARXVvE-{^tCO?inl{)o}8(48az1o=+Y^r*AIe%0|{D_5_e>nUu`S%zR6|1 zu0$ov7c`pQEKr0sIIdm7hm{4K_s0V%M-_Mh;^A0*=$V9G1&lzvN9(98PEo=Zh$`Vj zXh?fZ;9$d!6sJRSjTkOhb7@jgSV^2MOgU^s2Z|w*e*@;4h?A8?;v8JaLPCoKP_1l- z=Jp0PYDf(d2Z`;O7mb6(_X_~z0O2yq?H`^c=h|8%gfywg#}wIyv&_uW{-e8e)YmGR zI0NNSDoJWa%0ztGzkwl>IYW*DesPRY?oH+ow^(>(47XUm^F`fAa0B~ja-ae$e>4-A z64lb_;|W0ppKI+ zxu2VLZzv4?Mr~mi?WlS-1L4a^5k+qb5#C)ktAYGUE1H?Vbg9qsRDHAvwJUN=w~AuT zUXYioFg2Dx-W)}w9VdFK#vpjoSc!WcvRZ_;TgHu;LSY*i7K_>Px{%C4-IL?6q?Qa_ zL7l=EEo|@X&$gX;fYP02qJF~LN9?E-OL2G(Fo4hW)G{`qnW zTIuc+-1VJvKgph0jAc(LzM);Pg$MPln?U|ek{_5nNJHfm-Y#ec+n#Yf_e>XfbLbN)eqHEDr0#?<;TskL5-0JGv|Ut{=$Xk8hlwbaMXdcI3GL zY-hykR{zX9liy$Z2F3!z346uu%9@-y6Gda`X2*ixlD_P@<}K?AoV?(%lM%* z(xNk=|A()443aGj)-~IDf3J+UA2p2lh6ei^pG*HL#SiThnIr5WZDXebI)F7X zGmP-3bH$i$+(IwqgbM7h%G5oJ@4{Z~qZ#Zs*k7eXJIqg;@0kAGV|b=F#hZs)2BYu1 zr8sj#Zd+Iu^G}|@-dR5S*U-;DqzkX3V0@q-k8&VHW?h0b0?tJ-Atqmg^J8iF7DP6k z)W{g?5~F*$5x?6W)3YKcrNu8%%(DglnzMx5rsU{#AD+WPpRBf``*<8F-x75D$$13U zcaNXYC0|;r&(F@!+E=%+;bFKwKAB$?6R%E_QG5Yn5xX#h+zeI-=mdXD5+D+lEuM`M ze+*G!zX^xbnA?~LnPI=D2`825Ax8rM()i*{G0gcV5MATV?<7mh+HDA7-f6nc@95st zzC_si${|&=$MUj@nLxl_HwEXb2PDH+V?vg zA^DJ%dn069O9TNK-jV}cQKh|$L4&Uh`?(z$}#d+{X zm&=KTJ$+KvLZv-1GaHJm{>v=zXW%NSDr8$0kSQx(DQ)6S?%sWSHUazXSEg_g3agt2@0nyD?A?B%9NYr(~CYX^&U#B4XwCg{%YMYo%e68HVJ7`9KR`mE*Wl7&5t71*R3F>*&hVIaZXaI;2a$?;{Ew{e3Hr1* zbf$&Fyhnrq7^hNC+0#%}n^U2{ma&eS)7cWH$bA@)m59rXlh96piJu@lcKl<>+!1#s zW#6L5Ov%lS(?d66-(n`A%UuiIqs|J|Ulq0RYq-m&RR0>wfA1?<34tI?MBI#a8lY{m z{F2m|A@=`DpZpwdIH#4)9$#H3zr4kn2OX!UE=r8FEUFAwq6VB?DJ8h59z$GXud$#+ zjneIq8uSi&rnG0IR8}UEn5OcZC?@-;$&Ry9hG{-1ta`8aAcOe1|82R7EH`$Qd3sf* zbrOk@G%H7R`j;hOosRVIP_2_-TuyB@rdj?(+k-qQwnhV3niH+CMl>ELX(;X3VzZVJ ztRais0C^L*lmaE(nmhvep+peCqr!#|F?iVagZcL>NKvMS_=*Yl%*OASDl3(mMOY9! z=_J$@nWpA-@><43m4olSQV8(PwhsO@+7#qs@0*1fDj70^UfQ(ORV0N?H{ceLX4<43 zEn)3CGoF&b{t2hbIz;Og+$+WiGf+x5mdWASEWIA*HQ9K9a?-Pf9f1gO6LanVTls)t z^f6_SD|>2Kx8mdQuiJwc_SmZOZP|wD7(_ti#0u=io|w~gq*Odv>@8JBblRCzMKK_4 zM-uO0Ud9>VD>J;zZzueo#+jbS7k#?W%`AF1@ZPI&q%}beZ|ThISf-ly)}HsCS~b^g zktgqOZ@~}1h&x50UQD~!xsW-$K~whDQNntLW=$oZDClUJeSr2$r3}94Wk1>co3beS zoY-7t{rGv|6T?5PNkY zj*XjF()ybvnVz5=BFnLO=+1*jG>E7F%&vm6up*QgyNcJJPD|pHoZ!H6?o3Eig0>-! zt^i-H@bJ;^!$6ZSH}@quF#RO)j>7A5kq4e+7gK=@g;POXcGV28Zv$jybL1J`g@wC# z_DW1ck}3+n@h2LFQhwVfaV@D+-kff4celZC0;0ef?pA#*PPd8Kk8sO1wza&BHQFblVU8P1=-qScHff^^fR zycH!hlHQs7iejITpc4UaBxzqTJ}Z#^lk{W(cr`qtW~Ap;HvuUf#MxgEG?tEU+B?G% znub0I(s@XvI(lva}$Z7<}Qg=rWd5n)}rX{nb+Aw;}?l9LZI-`N-*hts=c6XgjfJs ztp>-686v6ug{glEZ}K=jVG|N1WSWrU*&ue|4Q|O@;s0#L5P*U%Vx;)w7S0ZmLuvwA z@zs2Kut)n1K7qaywO#TbBR`Q~%mdr`V)D`|gN0!07C1!r3{+!PYf9*;h?;dE@#z(k z;o`g~<>P|Sy$ldHTUR3v=_X0Iw6F>3GllrFXVW?gU0q6|ocjd!glA)#f0G7i20ly>qxRljgfO2)RVpvmg#BSrN)GbGsrIb}9 z1t+r;Q>?MGLk#LI5*vR*C8?McB|=AoAjuDk&Pn`KQo z`!|mi{Cz@BGJ!TwMUUTkKXKNtS#OVNxfFI_Gfq3Kpw0`2AsJv9PZPq9x?~kNNR9BR zw#2jp%;FJNoOzW>tE#zskPICp>XSs?|B0E%DaJH)rtLA}$Y>?P+vEOvr#8=pylh zch;H3J`RE1{97O+1(1msdshZx$it^VfM$`-Gw>%NN`K|Tr$0}U`J?EBgR%bg=;et0 z_en)!x`~3so^V9-jffh3G*8Iy6sUq=uFq%=OkYvHaL~#3jHtr4sGM?&uY&U8N1G}QTMdqBM)#oLTLdKYOdOY%{5#Tgy$7QA! zWQmP!Wny$3YEm#Lt8TA^CUlTa{Cpp=x<{9W$A9fyKD0ApHfl__Dz4!HVVt(kseNzV z5Fb`|7Mo>YDTJ>g;7_MOpRi?kl>n(ydAf7~`Y6wBVEaxqK;l;}6x8(SD7}Tdhe2SR zncsdn&`eI}u}@^~_9(0^r!^wuKTKbs-MYjXy#-_#?F=@T*vUG@p4X+l^SgwF>TM}d zr2Ree{TP5x@ZtVcWd3++o|1`BCFK(ja-QP?zj6=ZOq)xf$CfSv{v;jCcNt4{r8f+m zz#dP|-~weHla%rsyYhB_&LHkwuj83RuCO0p;wyXsxW5o6{)zFAC~2%&NL? z=mA}szjHKsVSSnH#hM|C%;r0D$7)T`HQ1K5vZGOyUbgXjxD%4xbs$DAEz)-;iO?3& zXcyU*Z8zm?pP}w&9ot_5I;x#jIn^Joi5jBDOBP1)+p@G1U)pL6;SIO>Nhw?9St2UN zMedM(m(T6bNcPPD`%|9dvXAB&IS=W4?*7-tqldqALH=*UapL!4`2TM_{`W&pm*{?| z0DcsaTdGA%RN={Ikvaa&6p=Ux5ycM){F1OgOh(^Yk-T}a5zHH|=%Jk)S^vv9dY~`x zG+!=lsDjp!D}7o94RSQ-o_g#^CnBJlJ@?saH&+j0P+o=eKqrIApyR7ttQu*0 z1f;xPyH2--)F9uP2#Mw}OQhOFqXF#)W#BAxGP8?an<=JBiokg;21gKG_G8X!&Hv;7 zP9Vpzm#@;^-lf=6POs>UrGm-F>-! zm;3qp!Uw?VuXW~*Fw@LC)M%cvbe9!F(Oa^Y6~mb=8%$lg=?a0KcGtC$5y?`L5}*-j z7KcU8WT>2PpKx<58`m((l9^aYa3uP{PMb)nvu zgt;ia9=ZofxkrW7TfSrQf4(2juZRBgcE1m;WF{v1Fbm}zqsK^>sj=yN(x}v9#_{+C zR4r7abT2cS%Wz$RVt!wp;9U7FEW&>T>YAjpIm6ZSM4Q<{Gy+aN`Vb2_#Q5g@62uR_>II@eiHaay+JU$J=#>DY9jX*2A=&y8G%b zIY6gcJ@q)uWU^mSK$Q}?#Arq;HfChnkAOZ6^002J>fjPyPGz^D5p}o;h2VLNTI{HGg!obo3K!*I~a7)p-2Z3hCV_hnY?|6i`29b zoszLpkmch$mJeupLbt4_u-<3k;VivU+ww)a^ekoIRj4IW4S z{z%4_dfc&HAtm(o`d{CZ^AAIE5XCMvwQSlkzx3cLi?`4q8;iFTzuBAddTSWjfcZp* zn{@Am!pl&fv#k|kj86e$2%NK1G4kU=E~z9L^`@%2<%Dx%1TKk_hb-K>tq8A9bCDfW z@;Dc3KqLafkhN6414^46Hl8Tcv1+$q_sYjj%oHz)bsoGLEY1)ia5p=#eii(5AM|TW zA8=;pt?+U~>`|J(B85BKE0cB4n> zWrgZ)Rbu}^A=_oz65LfebZ(1xMjcj_g~eeoj74-Ex@v-q9`Q{J;M!mITVEfk6cn!u zn;Mj8C&3^8Kn%<`Di^~Y%Z$0pb`Q3TA}$TiOnRd`P1XM=>5)JN9tyf4O_z}-cN|i> zwpp9g`n%~CEa!;)nW@WUkF&<|wcWqfL35A}<`YRxV~$IpHnPQs2?+Fg3)wOHqqAA* zPv<6F6s)c^o%@YqS%P{tB%(Lxm`hsKv-Hb}MM3=U|HFgh8R-|-K(3m(eU$L@sg=uW zB$vAK`@>E`iM_rSo;Cr*?&wss@UXi19B9*0m3t3q^<)>L%4j(F85Ql$i^;{3UIP0c z*BFId*_mb>SC)d#(WM1%I}YiKoleKqQswkdhRt9%_dAnDaKM4IEJ|QK&BnQ@D;i-ame%MR5XbAfE0K1pcxt z{B5_&OhL2cx9@Sso@u2T56tE0KC`f4IXd_R3ymMZ%-!e^d}v`J?XC{nv1mAbaNJX| zXau+s`-`vAuf+&yi2bsd5%xdqyi&9o;h&fcO+W|XsKRFOD+pQw-p^pnwwYGu=hF7& z{cZj$O5I)4B1-dEuG*tU7wgYxNEhqAxH?p4Y1Naiu8Lt>FD%AxJ811`W5bveUp%*e z9H+S}!nLI;j$<*Dn~I*_H`zM^j;!rYf!Xf#X;UJW<0gic?y>NoFw}lBB6f#rl%t?k zm~}eCw{NR_%aosL*t$bmlf$u|U2hJ*_rTcTwgoi_N=wDhpimYnf5j!bj0lQ*Go`F& z6Wg+xRv55a(|?sCjOIshTEgM}2`dN-yV>)Wf$J58>lNVhjRagGZw?U9#2p!B5C3~Nc%S>p`H4PK z7vX@|Uo^*F4GXiFnMf4gwHB;Uk8X4TaLX4A>B&L?mw4&`XBnLCBrK2FYJLrA{*))0 z$*~X?2^Q0KS?Yp##T#ohH1B)y4P+rR7Ut^7(kCwS8QqgjP!aJ89dbv^XBbLhTO|=A z|3FNkH1{2Nh*j{p-58N=KA#6ZS}Ir&QWV0CU)a~{P%yhd-!ehF&~gkMh&Slo9gAT+ zM_&3ms;1Um8Uy0S|0r{{8xCB&Tg{@xotF!nU=YOpug~QlZRKR{DHGDuk(l{)d$1VD zj)3zgPeP%wb@6%$zYbD;Uhvy4(D|u{Q_R=fC+9z#sJ|I<$&j$|kkJiY?AY$ik9_|% z?Z;gOQG5I%{2{-*)Bk|Tia8n>TbrmjnK+8u*_cS%*;%>R|K|?urtIdgTM{&}Yn1;| zk`xq*Bn5HP5a`ANv`B$IKaqA4e-XC`sRn3Z{h!hN0=?x(kTP+fE1}-<3eL+QDFXN- z1JmcDt0|7lZN8sh^=$e;P*8;^33pN>?S7C0BqS)ow4{6ODm~%3018M6P^b~(Gos!k z2AYScAdQf36C)D`w&p}V89Lh1s88Dw@zd27Rv0iE7k#|U4jWDqoUP;-He5cd4V7Ql)4S+t>u9W;R-8#aee-Ct1{fPD+jv&zV(L&k z)!65@R->DB?K6Aml57?psj5r;%w9Vc3?zzGs&kTA>J9CmtMp^Wm#1a@cCG!L46h-j z8ZUL4#HSfW;2DHyGD|cXHNARk*{ql-J2W`9DMxzI0V*($9{tr|O3c;^)V4jwp^RvW z2wzIi`B8cYISb;V5lK}@xtm3NB;88)Kn}2fCH(WRH1l@3XaO7{R*Lc7{ZN1m+#&diI7_qzE z?BS+v<)xVMwt{IJ4yS2Q4(77II<>kqm$Jc3yWL42^gG6^Idg+y3)q$-(m2>E49-fV zyvsCzJ5EM4hyz1r#cOh5vgrzNGCBS}(Bupe`v6z{e z)cP*a8VCbRuhPp%BUwIRvj-$`3vrbp;V3wmAUt{?F z0OO?Mw`AS?y@>w%(pBO=0lohnxFWx`>Hs}V$j{XI2?}BtlvIl7!ZMZukDF7 z^6Rq2H*36KHxJ1xWm5uTy@%7;N0+|<>Up>MmxKhb;WbH1+=S94nOS-qN(IKDIw-yr zi`Ll^h%+%k`Yw?o3Z|ObJWtfO|AvPOc96m5AIw;4;USG|6jQKr#QP}+BLy*5%pnG2 zyN@VMHkD`(66oJ!GvsiA`UP;0kTmUST4|P>jTRfbf&Wii8~a`wMwVZoJ@waA{(t(V zwoc9l*4F>YUM8!aE1{?%{P4IM=;NUF|8YkmG0^Y_jTJtKClDV3D3~P7NSm7BO^r7& zWn!YrNc-ryEvhN$$!P%l$Y_P$s8E>cdAe3=@!Igo^0diL6`y}enr`+mQD;RC?w zb8}gXT!aC`%rdxx2_!`Qps&&w4i0F95>;6;NQ-ys;?j#Gt~HXzG^6j=Pv{3l1x{0( z4~&GNUEbH=9_^f@%o&BADqxb54EAq=8rKA~4~A!iDp9%eFHeA1L!Bb8Lz#kF(p#)X zn`CglEJ(+tr=h4bIIHlLkxP>exGw~{Oe3@L^zA)|Vx~2yNuPKtF^cV6X^5lw8hU*b zK-w6x4l&YWVB%0SmN{O|!`Sh6H45!7}oYPOc+a#a|n3f%G@eO)N>W!C|!FNXV3taFdpEK*A1TFGcRK zV$>xN%??ii7jx5D69O>W6O`$M)iQU7o!TPG*+>v6{TWI@p)Yg$;8+WyE9DVBMB=vnONSQ6k1v z;u&C4wZ_C`J-M0MV&MpOHuVWbq)2LZGR0&@A!4fZwTM^i;GaN?xA%0)q*g(F0PIB( zwGrCC#}vtILC_irDXI5{vuVO-(`&lf2Q4MvmXuU8G0+oVvzZp0Y)zf}Co0D+mUEZz zgwR+5y!d(V>s1} zji+mrd_6KG;$@Le2Ic&am6O+Rk1+QS?urB4$FQNyg2%9t%!*S5Ts{8j*&(H1+W;0~ z$frd%jJjlV;>bXD7!a-&!n52H^6Yp}2h3&v=}xyi>EXXZDtOIq@@&ljEJG{D`7Bjr zaibxip6B6Mf3t#-*Tn7p z96yx1Qv-&r3)4vg`)V~f8>>1_?E4&$bR~uR;$Nz=@U(-vyap|Jx zZ;6Ed+b#GXN+gN@ICTHx{=c@J|97TIPWs(_kjEIwZFHfc!rl8Ep-ZALBEZEr3^R-( z7ER1YXOgZ)&_=`WeHfWsWyzzF&a;AwTqzg~m1lOEJ0Su=C2<{pjK;{d#;E zr2~LgXN?ol2ua5Y*1)`(be0tpiFpKbRG+IK(`N?mIgdd9&e6vxzqxzaa`e7zKa3D_ zHi+c1`|720|dn(z4Qos^e7sn(PU%NYLv$&!|4kEse%DK;YAD06@XO3!EpKpz!^*?(?-Ip zC_Zlb(-_as+-D?0Ag9`|4?)bN)5o(J=&udAY|YgV(YuK9k=E>0z`$dSaL(wmxd!1f zME&3wwv@#{dgeMlZ4}GL!I`VZxtdQY$lmauCN_|mGXqEEj@i~du$|>5UvLjsbq!{; z@jEf;21iC1jFEmIPE^4gykHQzCMLj=2Ek4&FvlpqTlS(0YT%*W<>XgH$4ww`D`aihBGkPM(&EG};Cl&wzg8!jL z`rkqPzvH(0Kd{2n=?Bt8aAU&0IyiA+V-qnXVId^qG!SWZ7%_f&i!D{R#7Jo$%tICxY%j)ebORE>3H_c|to}c#HX;HAC?~B;2mmQrMp2;8T zmzde!k7BYg^Z1r|DUvSD3@{6S<1kndb%Qt%GA# z+sB2&F5L`R&fLRdAlpU_pVsJsYDEz{^ zKGaAz#%W+MPGT+D$+xowMY0=ipM)0p?zym&Aoi)qL(pO_weO(k?s|ELHl^W zviJiFUXRL&?`;3_;mvc02A@sbsW9}#{anvGafZ#ST;}za?XS3}ZG3B4m(SW{>w}Fh z)T5Yi*``Tstmi9SHXmuWSND@cj}qtY!`tuD29Dpu+-D3$h<5FY>jE>YJvqBmhw?oll`x7Ono(}R~P zle_eBwYy0Rr7kmf_SEt_gn4)AO-r`}^Z5Y%Rm8)K-?X>rvDL+QT?#)QwDsQ2c$tc* z&#hbgkL6}GnBDH;+lREM6MGIskRa@r>5Iq(ll2IepuhW86w@14=E{6$cz*cBDQ)CT>}v-DLM-v8)xaPBnmGBKM63RgDGqh!<*j90tSE4|G^+r@#-7g2 zs8KE8eZPZhQuN>wBU%8CmkE9LH1%O;-*ty0&K~01>F3XB>6sAm*m3535)9T&Fz}A4 zwGjZYVea@Fesd=Rv?ROE#q=}yfvQEP8*4zoEw4@^Qvw54utUfaR1T6gLmq?c9sON> z>Np6|0hdP_VURy81;`8{ZYS)EpU9-3;huFq)N3r{yP1ZBCHH7=b?Ig6OFK~%!GwtQ z3`RLKe8O&%^V`x=J4%^Oqg4ZN9rW`UQN^rslcr_Utzd-@u-Sm{rphS-y}{k41)Y4E zfzu}IC=J0JmRCV6a3E38nWl1G495grsDDc^H0Fn%^E0FZ=CSHB4iG<6jW1dY`2gUr zF>nB!y@2%rouAUe9m0VQIg$KtA~k^(f{C*Af_tOl=>vz>$>7qh+fPrSD0YVUnTt)? z;@1E0a*#AT{?oUs#bol@SPm0U5g<`AEF^=b-~&4Er)MsNnPsLb^;fL2kwp|$dwiE3 zNc5VDOQ%Q8j*d5vY##)PGXx51s8`0}2_X9u&r(k?s7|AgtW0LYbtlh!KJ;C9QZuz< zq>??uxAI1YP|JpN$+{X=97Cdu^mkwlB={`aUp+Uyu1P139=t%pSVKo7ZGi_v(0z>l zHLGxV%0w&#xvev)KCQ{7GC$nc3H?1VOsYGgjTK;Px(;o0`lerxB<+EJX9G9f8b+)VJdm(Ia)xjD&5ZL45Np?9 zB%oU;z05XN7zt{Q!#R~gcV^5~Y^gn+Lbad7C{UDX2Nznj8e{)TLH|zEc|{a#idm@z z6(zon+{a>FopmQsCXIs*4-dLGgTc)iOhO3r=l?imNUR-pWl!ktO0r_a0Nqo@bu8MzyjSq9zkqPe*`Sxz75rZ zr9X%(=PVqCRB=zfX+_u&*k4#s1k4OV11YgkCrlr6V;vz<{99HKC@qQ+H8xv5)sc63 z69;U4O&{fb5(fN``jJH#3=GHsV56@{d@7`VhA$K^;GU+R-V%%cnmjYs?>c5^6Ugv} zn<}L&i;2`zzW@(kxf$$gVH@7nh}2%G%ciQ_B?r{13?Q@=Q+6msQGtnyY%Gkjeor?g z7F*tMqLdhcq+LCCo^D;CtOACCBhXgK-M&w{*dcUdmtv@XFTofmmpcWKtCn^`#?oZC zUOm52 z7sK$hR|Vh6y&pfIUK&!`8HH*>12$nWA)Ynp+XwOj=jNLD z{QA4gezbe>wiP?`jJO;c&EId;=2u80s_r97;TX!6@*(<%WL+^bmxheMB3pKx0OpH^ zPs}knV+jpJ4TaD@r^V`mTsjf`7!z^H}eHQ#Rp z72(>Dm#QO!ZYR*O@yHic`3*T^t7jc=d`Jz6Lk@Y-bL%cOp_~=#xzIJl?`{Qu;$uC~NkePE+7wSW_FM`&V{gFN zl;lq@;FtAsl!h;tnOvj z#gYx!q$5MdZ0Jxjy=t*q)HFeeyI-vgaGdh1QNhqGRy8qS)|6S0QK7Gj9R?Co{Knh> za>xkQZ0}bBx!9@EUxRBYGm25^G}&j-`0VWX04E|J!kJ8^WoZ(jbhU_twFwWIH32fv zi=pg~(b#ajW=`)Vikwwe39lpML?|sY$?*6*kYBxku_<=#$gfTqQ_F!9F0=OkHnzBo zEwR!H_h|MNjuG$Tj6zaaouO}HYWCF8vN4C%EX-%Iu%ho;q$G#ErnafhXR*4J2Rp5* zhsi0;wlSwE*inVFO>{(8?N~82zijpt+9Y_-^>xnE%T*zk9gi|j7b@s<5{|qEquUD( zS;-%RySZOCOEh*>!kvbsQ265* z>X8*_Wy&~FB@aDHz%glyiAujXq-|2kDUjFTn9Rafsl+XNyFP%PG|l&ZGWBcEXxy=9 zeDn2PIoVuL$gX0RgVK1O$x3%pOzS7x^U5Pi;mtT)%cY;&e&M7GLM}zP+IPbqLt=^5 z7qLfri8myf;~2psc@^cA6mG&{C%e_(M$$!wC^5p^T1QzrS%I?(U{qcd+oJJkQxe10 zON{Q*?iz%F4MbEsoEc+x3E?&2wVR^v3|Q0lDaMvgS7mNjI{2w! z9|~=!83T%GW*iaChSS!`Xd^beFp9N4%K+k*j#jFumk}U?=WKL_kJAltxnxp~+lZzT zp@&&kSPTg3oSGos`rVBhK0|4NdHM_hnKuw1#0JV{gi_dKDJLB+ix~~HpU9%jD)@YY zOK)L7kgbLyN2%Dx#fuY}8swh4ACk7%BpP-n5(RhDq{gEHP*Fo4IviX{C49|B5h~SC zFr`=0)=h2^F5UpCAgt?R5u{6VvpUf#*nC zCQ`$!|C;L2lpjlG?(>T$(_$O3_YNNbPT~(?!j3aD8k=yu^ogw4bkjvgF|3BOq(hB& zG;^cPXmcUP$ox8zElCJ-zMbK9q^8{rri#8Cek5Ydr0YT-KTh@J z6^AcB9ejew8BY5kzZUZX(7Po==eW<(;uV~E7(BY5c0^xr`cuRwn)47bN?zOb!0?cw z#v}R$z66&m#+AHfo@(^V2#S~bhoUkkTArg+6w>JzZ52r96^({1W!?>4$h0l|-jDfj z>7(<+%67#(A|4hZ3>Y;hd&S?}F;`Vtqz|pK&B>NJ=Faci;gkf-+GmfQR8^zo_vul2 zB!)kfu4Dq_g)8TBBo52*sB6F`qa&JCR=_A$QWgX_K}fZm{Cb2#1q`^S3+WaS>sS#@ z-4k*G=#?z6d_e7JJ+Z8^(t0tNdL{K5F;2nfQbXgld}a(X)Gr;WojOy`^?es~AClT$ z5^lD{WJek0!p-QEH5E7n6DKQ0%_ZBZ=|jfV_MM{VmL8y-Wd|>OmeemP=C@xI@@M~1 zW2S*im@Rc=O>V886_UJ@oh1!2H$Ku&U*Hh_oxd{32)vf1$cRiepv28ricM;}#p!+k zaK{z1I=9Y%3m4|Pj*BD*Fn5Vh?O@oD^1UcjyeNh0fbhh~V6xb#4njlGW8OehUe!MnoR(wn#nsoyL1m!Rov)Nv4~&JEVl7L z#^qYdTpNI#u`N0UbVMiDmD>g2VQcG3>4D6gErgddZnSQTs){BExxRJRB?bIxTdZa z;!S8FHJPPiIDQ*FAUiWSYnjILFjDvxvSC zk z=j4Kx@Pg~&2Z?cmMDa;)#xVeorJrxDBqy{+`kG+ZPQqC@#ku-c3ucU+69$#q_*se` z-H#PFW^>-C0>++|6r=<$Z8)ZFaK=ZjwsNYXqRpl9G|yme@Eld5B-*I69Nx_TResHi z!5nm+>6zaJYQO#%D{~o-oOJ;q`fa5}l!8G*U-E$OM&7@dqciBCWtd}|SrDXz$TB($&m*=Epuolu2k`KUwO7maP3P0ok zmF57lSh0Ba@&sO1iZ5^+3s8{B8t|M;Pg&O+{tZJCiLWd6H@{b~9{CLF9s3Kn zt5)Rs9ejne?o{%f>B$Dl%X7fd~KY)I|(pxUeHj;gNsK6;ZR>`ciu;GxvhDUt!+31Knss2U(%ts8K z18)8;<2ax9RG?!|Lwdt^i5L^&O788roKmVAB)=EdK~HqR2Q=)H_VW}xY=95MP_Ov< zPEz3%DRK}+(aUBwsr83H8>`H^v~|A_t}0vPmRwKPt1{|qOY|PZu}j9+{ZhF&-H_TB zU9xWLpNTc`enI|)h9jQeqf5RfGLFk_vfX`40iMpd%KZF!lKbZTdBw$<^G6nuS+$fT zrbK)xo&;buPJcpOZ=x>n+bRXVFDs(23Xr=rDE&!)pVXZ;;A07NXGl_0m`{Z)DQIu$ zFDvY4xu-ifTe_$|n2B83eI;KUg6pVbw+N!nyLj~wnRi{4mNy{WDV)G1!6$y=+x6U{ z%4_9=Q^L!x_gAYp?J3+u5hA5cO8aHeI=6AC8^S{mzhqCBvBLYEutUC(X0>hKg|AvN zvkmJCQNA45_KjW{aEcyrBppcO6G0zTy%v1&@~+2!n?kA9?>0>AjFN|JdCnHQ8$hEU zw#mwGifHppLP?89LMb(Y3Li9iCPx7W%ek}2FgD2YSzjsR4Xj<=zN{Yo@7s7(k%mP4 znT2p&4EQ@q_chd-E z78uvD*C@oba`U3W2Iw`M#`5C8jOHv8^Li<|j^SI>>>`77Dp71Vtz=J?4Zck4SdRbd zfF}C_>Y(#)r@y!Q0`tMlG#b9>5`fAI$B&tWJfbGlYW$J4V+-s=HH!`+;1XeL@USdx zR0$G&&XBf9lQtkH5)p=U!8J!1{oc4E!N-~Abxl6E;;=3-hMYZ+44?u}zabmCE)yB?*_w91m$n1Yskp&@ z;kxeJX-#ioX^{elyLu~gzx|_KxLpX62MF%Axq3$!Z_P`pBWR?zP8OI`PV~6Aa0Oi0 zv_Ot1m&plf-ZF{e(z(Ms3*S5q$e|j;gOwGrmWsCHfLi(h8y?gc$(2H{884C1FvHQQ12tX=qFUsK~zM!W=K>;zaRsu4Xmcc@8nSs!vK+{ z?}bq}-m&p5jRSam67n>yG9ez=I^|J1O;Np8s=P~9MXYLxD+cFQK7PhG=bkjo{Naae zjp3NWWrlFWDb3Z5D07Q|WjZ=wOQ=aKA%en=O@hL$QCKpIXNZE=InFk|Fhq-&H!6&X z*MVy8=hL7Aw&pQjHrFf27C%3B<>FX{@fOLNhUoxL4*@nY}&M3G*T-p67a zo}~_&yGOB)#vbU|Q3FA8S^X)c-yBlmN(_%}`7Ha3uWFe?>9f=3hlO{^gv~$p`v?vk z_P*r43|(S{%ihs;)YH|jAMpP=-Ms7Ne75_YZZiL3CHVjSU`X1|?Ehh&gA=Xn7W7d@ zf8bM9Y>lG!`PWFDDA9G;x*{1Eh^55u66*9D+-4^dYZ{xXP@?sQLVrY%(azM;C^4FuN7CQ%$!3sr1JL=!Be& zuOZL^bLp$Qo2rL=WDzQIls%s!Go z{s}Q0b#+#8bKga|01t%^9Z=wEsevvXM_{$dCR97ed3@1kX)mtSS!JN^rtqKOj}p~> zfpCI@DX*DqcB6ZnBcl~}sGO~1s$AtfkX6fy3N8*ebvZc*KBW;dA=)?#BE&}-or74i zZUt5;{FBPnkZD8YUXDsx&2LvSziAlec3oc>&Lf1Doc3g?H9{OO_$M4B0qTat0UsWP zTlxUeQ3B;oJ%en4n?zQB6*Fb#wH7`$SQN5GI|=DnJKiYm{?-?#-H;#sIjz7kQ4&VW zN9d1(1$_W~S=<%qDD!mwRytas=eqX^iW}YSx3;wJ#)Xp_`Qk1DFiXac$-3;jQbCif zLA-T_s~5yP@Q@W>pXKl^gipQ>gp@HlBB>WDVpW199;V%?N1`U$ovLE;NI2?|_q2~5 zlg>xT9NADWkv5-*FjS~nP^7$k!N2z?dr!)&l0+4xDK7=-6Rkd$+_^`{bVx!5LgC#N z-dv-k@OlYCEvBfcr1*RsNwcV?QT0bm(q-IyJJ$hm2~mq{6zIn!D20k5)fe(+iM6DJ ze-w_*F|c%@)HREgpRrl@W5;_J5vB4c?UW8~%o0)(A4`%-yNk1(H z5CGuzH(uHQ`&j+IRmTOKoJ?#Ct$+1grR|IitpDGt!~ZdqSJ?cOtw-R=EQ+q4UvclH zdX=xlK-fhQKoKCPBoFAZ*(~11O6-tXo>i0w!T$u{lg!#itEUX3V{$S*naW!C@%rll zS{L(1t%xz(*B`{1NL!*aMc<~fE=g;gXi&Gb$HpD!P)8?JzfN;4F&wv(5HH<=c>>)n z({271)xREH89=C(5YKL{mmJJ_d>qHz;;gTvTlgM*vz9@YTTYZ#%_2A zS0G-t9oMQEpvfv(UjfQ8T$vAHi)zOj3>D*{xSRiu3acc=7cvLyD?_ZObdu$5@b*!y zaZ#u?7uF}SrHVQa=sTOhGW{6WUlq#RhPPm^GsRH#qlX8{Kq-i~98l;eq>KdCnWyKl zUu&UWBqu#Tt9jQ97U4}3)&(p2-eCLznXMEm!>i^EMpeVzPg%p;?@O;dJBQQY(vV;d z3v+-3oTPC!2LTUAx^S2t{v;S_h(EZ^0_dS5g^F*m{TEIy^Qal~%mu3h7*o`jWOH}i ztv8M)3X3a*+ry_KkYXYE4dB0?M|t}#Tp+(}6CQ zBbq;xhoHj}b@j-@koDB#XcCY~>_x&Y;i%MH|3tF^X2h{36UCVfQ-;oEA+4ZkJ`^Qi zQf^8}6eFO$Z+Dj-F1wkG##tTx>FjR2oOXFmbKFj6K3+=kePQ<4d7%z5R5cOB;zO6| zm9^m#U4lcA;7t&*=q|a-!`!)}SgYXT#i8hnxtx@kaoBF$QAS-hT7N5kH^l zB^i+})V>L;9_0Qqf-dyF%ky8Mp-dp#%!Nls3vCt}q3QLM3M-(Zs1k}1bqQ9PVU)U` ztE=?;^6=x}_VD%N@${>qhpkU*)AuUBu_cqYiY&@;O$HV*z@~#Tzh?#=CK`=KwBv+o zh%zu%0xPKYtyC)DaQ zpDW}*86g%>BH3IcWMq`g$j()0kWE(qkIL8A&A0mf&+BzxpKF}=`#jG% z&*wa!&pGFLs5_b#QTZE4Bp+})qzyPQ7B4Z7Y*&?0PSX&|FIR;WBP1|coF9ZeP*$9w z!6aJ_3%Sh=HY3FAt8V144|yfu}IAyYHr1OYKIZ51F>_uY^%N#!k~eU53at-_E-Gh?ahmM5y* z+BTIbeH;%v1}Cjo{8d%UeSMWg(nphxEU`sL< zQR~LrTq>Da(FqSP2%&^1ZL#DTo5Sbl9;&57tQ-@U&I#lj)aNSkcfEJwQD!33?anVU z?pw2q7WtMvfji493`rSFnyp7{w87cW`ak=UEYlk5PCB1K6UDVKXyozOChH4yHh~Q< zv>yvKw6WLfi!PZUx60JZcTNM7jo{ww9b8Q+S7C3WA5&llSwdwh$=Q(*(f3ofqcz=nwOmOy z(J!K=*wNoRU*${{Mbwapi9pTB(&VVKefqd-qrUb9*Eyr2E@oZ9Cgf}Mc;QP<0D)R4 zz=!*^VIG4T*7Xl=sJxrWv9hW^eJ%qYp5(d0?E6LZzJ}=7E+1{?GQA;z+!^VBD81}O z0kJ^dKy&WMw+1+aGVYY-v@i28@Gm+sX5=@U%F=Z?W)oar}2~Rc&F|+3A)n-U2GF10+QdxDb^iA@7eL$c7yhBtL z>lABrh^qy9XZ${E1}Ss5!N4;ig0-pUh6@|RPCHOWvgG{|l}2enRgJftsN%D|ck0YO zuAQd2aMPSyGuJ~jm)aY=+p~mGudw4erwE%P^)5f<*$$2C-4^I=e8-}7##ZQ!8!Tep z+Z_!}CAI~sry$|XK$ktXaxP*x<_ijCPp`2=6sNLZU<@9Sz-rz7^BCE9yh0jV4(I!Z zxmA4d;>B-!vD}Xp*&*N%`b^e&R;D97WS}{~{O-EtXeZNfdf51tw!WR6Noo4hjHPv5 z?heYYRSBPjMc}tFEU^|U8a1CxxK%)WTcn9P%`wR^I$QSeMn6=w>Z9OoVvcrl`zYlZ z2y`mAu0bV(Scc>G_EmIo_4 zm*~h`mxYZC&+U>C5G1FZH5L^U>Cq-9UDRQa35jz&NBj*0{uJKfZs5=Fn@&)Xh6aX(H3w9m9BGLePqVotxTeSPh5-mc7$# z-80t6yB0$Nx<54ohdO*QL7m_(&+#*=eoNiYDB4rE4Cag@qfyZS};Fx;Vf1;oync2k z9v#-w?d6R& zOI`CCS_d=tf3|?g3Z}b6-_Rdg3y~enQhmgkni0Cvf9m6%Ft8r;NC5|b%t&?lkl*4{ z8Ui^;Ds^gq6ti(1xB7y_$zA!i-M~#!!tl$ErTR>P~>T=Yky)8(uvPbvLmB=UfoD zrfl}8<1OQrm?8#j1!?s*T>AoectQl&m!o&*^JcIW`_&bk3tN}k^0rjl=HL$z*uIYt z?7l?^Dqr?q1210Sp$xoAy!&{2^{^Anl460 zI&7urrc&|Y{rjv04VOl{y7c82N6xzg5ueYmQ(q(zC3w_C#x*~%yf5j7MI{W`tsoxzA*PrmK)cTskU| zf2C}Bq$>S$-1JgIh0aW@LxI|-8(OGuD#^M01ghh}&#ObO>tZgSw_LW`zdf&IN$YO# z)|X_9m#JwLW5pErZB3ScggKcNzxA9(hyKkK9I#pR&79&*+SV_eu={00{HF=Bb+AEe znaSof+r1jZ!EL5XgqXWkckaFSSyEk}o!%p8XsD}O>borZ6x%X2b&q!s&1-O(>`kZ$ zB2l^5Cx9xQx9)PXN1xPM)@+LxACH_iZ8zGc(>wnFS_O|@hKsxpMjXOzLEa7OvSlM&&G9ioQw9~RsD4F zK7Q+_&|Q6{eZ^8Rx@pKL`le6kH+(fLc{=V&{b%I5=n}VHV4)X_2Y!pYxgC8wU)yP! zPF3t$?(jsC>Ge=&{kmPGUEETpaw(QTAl)m#{qR3_aq9!wK%6XHfV4C>Y^>Z|%ns7j z{Ja?^IA{+@;kR#IjHxkar%3$eJT4?xNBKUVmoO z`A8Zo-{~_;vcikZ(p}EZzU4kO6WPqkMyE{VvS?;44Z@lj zz^fKX9UL!8Wc(9VgI?P4*zpis8dzl};I>yr1>dtXU=FTAlx}Eht4-*7RACL^AflGh zyZb1hTf(~CkMo%#Q%NMgM9tE2D+)joqbtHYA89Ql1nqVTt+MxZ^*FRd&n5YlIi!8m z>$Ysd!l{+C)y;Wa(ZV-=<+NZKV;v4mt}v2m>`v$-$3b;GsLxf= zd~f(rmfpl``{0aVwN7y!>eGyJFP`L+TxHjHTOS{K^$L2`@6(Rli`{EFwpH@R%eZ6g zwf7rc43Yk!=k;{ z-Rn%~B3amGr}}SxfE$vS8FIPL=Qt57$|R#sSoFgdNUT?fYOYjPl%ZBFpi=jq=DWby7Zxm@y;B<89!9= zbgEH*Uy)~iq5kJLX$+ps$kV`#6jW#|9BGz^`ivNeid(wVbk4jl)VBpW&~;eXNi{#` zwx?{DXR~*sqQcFhY0XCfQ4-*2aN1BGX>$_swtKEqnd>j6vcZ!#0)pXRi?<{!P?tGw z2x_`RD$W)qD{?z}VDPt?+)8*rqLWFIPQ(9-VbBdf{7ff?w9CZ{sIi_gnuC$I0(+P8 zms9XB%}VQ>>pve##}jog6+cD?v~n4Pa9Vmc zg#K$|+`adO=B7`uj35Y}6EZ z{dY`x@w8;R-7zrsr1O_~Jvl*|o-x%jF=Rr1C}GXP^|IYN`1sqmG-oI@R#%X66c#5W z$$tQB)sqwiVm;Y^`Dw3mo|firP{*HsOQJre5%Dm^H@we0FN88VWJ0dja?_U38z73f zrCV!b3qNP0kM#%9T!W5`ynGcg%BL28FW1J-J1_S`BJGCaReQ!am(2%qZ3lLgzq|ns z!!fF@`0=*z)J2BwZ*hO|Yu^cI_nF$9l-Pb3jE7=P8gZ#!xiuZ7-cSa`gb`6mxGTgg z-DLdID?M!Z%+hHB#{?&0$GFRpf+_}q<_wbzX6K?w;%6szz1RbySDSr2r^h_qi$khs zXdZ9A0!_Bf)TR2-^-K~q`FQ!#1x(U4VbV%AA@Ei{%cA(EwC{XfjRi?`&9rav5;Q5% zO1`Rn@OA_ZB@N*mC#)?d3P!}Eh;=NgpIKsy{(yr`hv=aouwt@r&P&}Z3DNWo9ro30 zX52~(aTV$*HHlgB66-4GQru!_AZ|)V*I5X=WG)`N@U&D>e@@C#V@JwEL*L`7#$yes z62C^5%Qniaow2$3HrAc7U{qzpb&FA*xLI1JSWR@`RF=JCcvTI)%dH7;sWInt9JLu# z|Ao|Q?K)cDg_JKsym=joo5gR80wtv01N`um1nQ@Ms0Y*bVzxL34} zo?gizp?`=Y{*W>^Hy2%Jl)y?A+&7s1UVHFixuIy~sawXjcDCL`129cK7|ZQS0u;A} zTJC#WNmqkIrnHpAhHVcM(U^vJA~dl@jf_bs*3?i+=&vuC?Aiy_pcB~=1syDni4 zw+FLuz>F773u#$;NUQ9WDtUPY@+rA3WBhQdKFKOyzkA(URa7;4tW>3jQIfi8v0h3g zJC_HVDXS#>DWb|&se7FHnr=q&l#xg9o02}}u=b-R>@sw={Z zHF*?t2FmhqZ=|qa>x=A!*$S+0T zhO*D*M?NTf-eX`eO)9TIQu{7Dm77Acnj4b1jI9@c*ZL8wL%8kLEhd$KM8=Y!fbN@9 zC7B5#y>JM1n5M)!&im==EgHs2j+xCZG~+~QWCi?s!QyFo2kqx{%jE2n3^N*Ayz6Lp zhg5g^3# z+5FoJ@$u@9WJgPKpUWEd4}4AK9TJKU8W%ms!d0p%OIOX+bY+55zl!vIaz$XFI9Ep+ z;bL_}7PDI2Y`Ng*XY(65 zh0%`@Lve%fc;)N4_g12bNrt6gH=N#OHtxO`$lpWlw=Z6MF+E@;>GkZ#lAZTn`aHwf z&I1|aV#b_VHMIgBN*RzU9i@Z@m}0i>o?({&%fpEfaOpFeaJ7V37;m0?kzd}}Lk@9$ zL}8TEo7WZAcRi%zFZxkr6<0k#X-;lTD`Oc~cDb@olwgWCewvk{GJ}hCXbF!AdiLpd z|Cck$ZTKI?Ack{34Lva7+k=H8K2HTZiurox6F+>dy+@R9T^awxj590D$|kXUg+Ygc z(f)jlRwN(4z$#%PnOVc;#Fv{nAi{#UcXPNcmP#5O{zh_*`=q^JCeia{sN4zHjk2*y zqUVh{Ya{j>SPmP^i#Qfcq_MTqo8g52Fi^F zKBc$$HVI!xFx*4Y9l+nt)$AoZORD}%5I10oI3kx`-N30QueiwIw#0VV2E*Fb-nKW% z=+r^hos`Y-7~{cA1FVbK$_=~*z53+Q8KGjg;>ztg((H12%QTf4OYU8y)C}h5yo#$% z&Q$`vMM*g?ZcatAn2j!hFv8KuN(dw)T*}sF#THDHxo8xC^?vJ zc`U6bVo~hOr6I!8*GTZ<^D~;unKjK=!IR|GB4E>Mcvt*2GK);93jIDd<(nNjHO z4Hi@2^%Uyx=^Z~5eZ!5rO5%4H|eFoNjD#+Kcu%_57zZb4Z@Ak#X6txD^{U3wBl^r+W- zLorkK;uc;NgTj7dGxHQS+@T*T>Q*j4^Ll$ejQqWrwcHyG9y%Mk%m8nBVG5hvSaYm5 zJN^#-Q46kZG)@T8n2^QCjxIwxUVi%s>EY`E?#@_(A~njFrTiDq;8v|W-1jT|ROlNI zU$h|YoD4PVTE^&NC6_m{EAFBVqsM`P*`-AcDGWQygURzM32Xeq2xng~XQsYeTZ5v$ zQLaa2M_Iplw}4eL6fLPu`6`PYcVMysO>`{8CB~glD=TX7?JZcHfHNmykBM?QD)#D) zGp>R*<^D?WhFQKRc^}22l6F=D2RPrxaX2ZF!b1X0XF*d4%=!sbNcS1q2WOUE(7e4$ z^L8f;F)__d3>&KQFE8%$I4h^y5FYBfB&fWzn71_OSrPe-DHV{O#Q;GP z+Tw!J?eVjX19RKH?*hKQWQt8r7B#lYX8xoSHFGCW-*DSQ4EM4M3Mw%gkSYNK18@(e zfzMF}WWaCyS@1y%-~Xg0ry~tkQkUmKuI5lGAua{{vn22V!2T()AU5FpKh@Nv)s^Js zv~@VuUG;=CnLmQR{PeUBQf2;lAV!vG>^Z0N zL88rrjL-*J!43;7C=w9xhcw`yjRKq7o4L9=0SmR9PA-nX12@#h(iIu-0N_xm2OV)( zU_raT0y>$wm^oMi2|U3N;OhF9uy}`<-xVka#DV*l{O0yHzi9vUxa1Qtpi$buR*8cU zd4~lS1pT$L^!0=6qUKOpM+XPsy{f7W#1bjrEwaeN!Ik9(zySIT^pEHvHgJUneFN4) zk=k|$55(g8slmS|@+*4fr2urd3LwjIIZA**g+%l(SZNn4HwQ}y6o`vw>2&mR1X+&q zDa1Af0B;4rAMZMOlHbAqK|R_xuwJ7ANARtFE({-P2o{tJJR<>2KVp)ZK-M;)ejx zd*E~Mka<{OL7%CAhk4n|1qg?97-I!l0rOinjVi#arbgg4bi5;nY5oFL`UWtPk5&L#grSxv zE3!}=1px!ZTLT90aYc^s`~{VojjJml&<`@e41dFP+XU6D0AOkbn2rlI3>^LcqauG& zc$m3Z{!u8LvUrm^fT{qX5yD9{?r(CCiUdck%!T`KIZd2oQJz1joB&M(Teg_>;yS<2-5>BWfSPpG`Rt{!j6>kqMAvl^zk0JUEfy$HVJMkxP-GkwZuxL62me2#pj_5*ZIU zP~#C^OZLfl$HO)v;~~c&JHivn|1I9H5y_CDkt0JLLGKm(4*KLVhJ2jh2#vJuM6`b& zE==-lvME^Oj022xF&IV*? '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..6689b85 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,92 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/iosApp/Configuration/Config.xcconfig b/iosApp/Configuration/Config.xcconfig new file mode 100644 index 0000000..2e659a0 --- /dev/null +++ b/iosApp/Configuration/Config.xcconfig @@ -0,0 +1,3 @@ +TEAM_ID= +BUNDLE_ID=org.example.project.DecomposeApp +APP_NAME=DecomposeApp \ No newline at end of file diff --git a/iosApp/iosApp.xcodeproj/project.pbxproj b/iosApp/iosApp.xcodeproj/project.pbxproj new file mode 100644 index 0000000..48dc62d --- /dev/null +++ b/iosApp/iosApp.xcodeproj/project.pbxproj @@ -0,0 +1,398 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 058557BB273AAA24004C7B11 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 058557BA273AAA24004C7B11 /* Assets.xcassets */; }; + 058557D9273AAEEB004C7B11 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 058557D8273AAEEB004C7B11 /* Preview Assets.xcassets */; }; + 2152FB042600AC8F00CF470E /* iOSApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2152FB032600AC8F00CF470E /* iOSApp.swift */; }; + 7555FF83242A565900829871 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7555FF82242A565900829871 /* ContentView.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 058557BA273AAA24004C7B11 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 058557D8273AAEEB004C7B11 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; + 2152FB032600AC8F00CF470E /* iOSApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = iOSApp.swift; sourceTree = ""; }; + 7555FF7B242A565900829871 /* DecomposeApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DecomposeApp.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 7555FF82242A565900829871 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = ""; }; + 7555FF8C242A565B00829871 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + AB3632DC29227652001CCB65 /* Config.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Config.xcconfig; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + B92378962B6B1156000C7307 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 058557D7273AAEEB004C7B11 /* Preview Content */ = { + isa = PBXGroup; + children = ( + 058557D8273AAEEB004C7B11 /* Preview Assets.xcassets */, + ); + path = "Preview Content"; + sourceTree = ""; + }; + 42799AB246E5F90AF97AA0EF /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; + 7555FF72242A565900829871 = { + isa = PBXGroup; + children = ( + AB1DB47929225F7C00F7AF9C /* Configuration */, + 7555FF7D242A565900829871 /* iosApp */, + 7555FF7C242A565900829871 /* Products */, + 42799AB246E5F90AF97AA0EF /* Frameworks */, + ); + sourceTree = ""; + }; + 7555FF7C242A565900829871 /* Products */ = { + isa = PBXGroup; + children = ( + 7555FF7B242A565900829871 /* DecomposeApp.app */, + ); + name = Products; + sourceTree = ""; + }; + 7555FF7D242A565900829871 /* iosApp */ = { + isa = PBXGroup; + children = ( + 058557BA273AAA24004C7B11 /* Assets.xcassets */, + 7555FF82242A565900829871 /* ContentView.swift */, + 7555FF8C242A565B00829871 /* Info.plist */, + 2152FB032600AC8F00CF470E /* iOSApp.swift */, + 058557D7273AAEEB004C7B11 /* Preview Content */, + ); + path = iosApp; + sourceTree = ""; + }; + AB1DB47929225F7C00F7AF9C /* Configuration */ = { + isa = PBXGroup; + children = ( + AB3632DC29227652001CCB65 /* Config.xcconfig */, + ); + path = Configuration; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 7555FF7A242A565900829871 /* iosApp */ = { + isa = PBXNativeTarget; + buildConfigurationList = 7555FFA5242A565B00829871 /* Build configuration list for PBXNativeTarget "iosApp" */; + buildPhases = ( + F36B1CEB2AD83DDC00CB74D5 /* Compile Kotlin Framework */, + 7555FF77242A565900829871 /* Sources */, + B92378962B6B1156000C7307 /* Frameworks */, + 7555FF79242A565900829871 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = iosApp; + packageProductDependencies = ( + ); + productName = iosApp; + productReference = 7555FF7B242A565900829871 /* DecomposeApp.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 7555FF73242A565900829871 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1130; + LastUpgradeCheck = 1130; + ORGANIZATIONNAME = orgName; + TargetAttributes = { + 7555FF7A242A565900829871 = { + CreatedOnToolsVersion = 11.3.1; + }; + }; + }; + buildConfigurationList = 7555FF76242A565900829871 /* Build configuration list for PBXProject "iosApp" */; + compatibilityVersion = "Xcode 12.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 7555FF72242A565900829871; + packageReferences = ( + ); + productRefGroup = 7555FF7C242A565900829871 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 7555FF7A242A565900829871 /* iosApp */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 7555FF79242A565900829871 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 058557D9273AAEEB004C7B11 /* Preview Assets.xcassets in Resources */, + 058557BB273AAA24004C7B11 /* Assets.xcassets in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + F36B1CEB2AD83DDC00CB74D5 /* Compile Kotlin Framework */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "Compile Kotlin Framework"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "if [ \"YES\" = \"$OVERRIDE_KOTLIN_BUILD_IDE_SUPPORTED\" ]; then\n echo \"Skipping Gradle build task invocation due to OVERRIDE_KOTLIN_BUILD_IDE_SUPPORTED environment variable set to \\\"YES\\\"\"\n exit 0\nfi\ncd \"$SRCROOT/..\"\n./gradlew :composeApp:embedAndSignAppleFrameworkForXcode\n"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 7555FF77242A565900829871 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2152FB042600AC8F00CF470E /* iOSApp.swift in Sources */, + 7555FF83242A565900829871 /* ContentView.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 7555FFA3242A565B00829871 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AB3632DC29227652001CCB65 /* Config.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 15.3; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 7555FFA4242A565B00829871 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AB3632DC29227652001CCB65 /* Config.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 15.3; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 7555FFA6242A565B00829871 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_ASSET_PATHS = "\"iosApp/Preview Content\""; + DEVELOPMENT_TEAM = 9Z5F72MRRD; + ENABLE_PREVIEWS = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(SRCROOT)/../shared/build/xcode-frameworks/$(CONFIGURATION)/$(SDK_NAME)\n$(SRCROOT)/../composeApp/build/xcode-frameworks/$(CONFIGURATION)/$(SDK_NAME)", + ); + INFOPLIST_FILE = iosApp/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 15.3; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + OTHER_LDFLAGS = ( + "$(inherited)", + "-framework", + composeApp, + ); + PRODUCT_BUNDLE_IDENTIFIER = "${BUNDLE_ID}${TEAM_ID}"; + PRODUCT_NAME = "${APP_NAME}"; + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 7555FFA7242A565B00829871 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_ASSET_PATHS = "\"iosApp/Preview Content\""; + DEVELOPMENT_TEAM = "${TEAM_ID}"; + ENABLE_PREVIEWS = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(SRCROOT)/../shared/build/xcode-frameworks/$(CONFIGURATION)/$(SDK_NAME)\n$(SRCROOT)/../composeApp/build/xcode-frameworks/$(CONFIGURATION)/$(SDK_NAME)", + ); + INFOPLIST_FILE = iosApp/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 15.3; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + OTHER_LDFLAGS = ( + "$(inherited)", + "-framework", + composeApp, + ); + PRODUCT_BUNDLE_IDENTIFIER = "${BUNDLE_ID}${TEAM_ID}"; + PRODUCT_NAME = "${APP_NAME}"; + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 7555FF76242A565900829871 /* Build configuration list for PBXProject "iosApp" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 7555FFA3242A565B00829871 /* Debug */, + 7555FFA4242A565B00829871 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 7555FFA5242A565B00829871 /* Build configuration list for PBXNativeTarget "iosApp" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 7555FFA6242A565B00829871 /* Debug */, + 7555FFA7242A565B00829871 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 7555FF73242A565900829871 /* Project object */; +} diff --git a/iosApp/iosApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/iosApp/iosApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/iosApp/iosApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/iosApp/iosApp/Assets.xcassets/AccentColor.colorset/Contents.json b/iosApp/iosApp/Assets.xcassets/AccentColor.colorset/Contents.json new file mode 100644 index 0000000..ee7e3ca --- /dev/null +++ b/iosApp/iosApp/Assets.xcassets/AccentColor.colorset/Contents.json @@ -0,0 +1,11 @@ +{ + "colors" : [ + { + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} \ No newline at end of file diff --git a/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/Contents.json b/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..8edf56e --- /dev/null +++ b/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,14 @@ +{ + "images" : [ + { + "filename" : "app-icon-1024.png", + "idiom" : "universal", + "platform" : "ios", + "size" : "1024x1024" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/app-icon-1024.png b/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/app-icon-1024.png new file mode 100644 index 0000000000000000000000000000000000000000..53fc536fb9ac5c1dbb27c7e1da13db3760070a11 GIT binary patch literal 67285 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 BXNCX( literal 0 HcmV?d00001 diff --git a/iosApp/iosApp/Assets.xcassets/Contents.json b/iosApp/iosApp/Assets.xcassets/Contents.json new file mode 100644 index 0000000..4aa7c53 --- /dev/null +++ b/iosApp/iosApp/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} \ No newline at end of file diff --git a/iosApp/iosApp/ContentView.swift b/iosApp/iosApp/ContentView.swift new file mode 100644 index 0000000..4647c9f --- /dev/null +++ b/iosApp/iosApp/ContentView.swift @@ -0,0 +1,46 @@ +import UIKit +import SwiftUI +import ComposeApp + +struct ComposeView: UIViewControllerRepresentable { + + private let lifecycle: LifecycleRegistry + private let topSafeArea: Float + private let bottomSafeArea: Float + + init(lifecycle: LifecycleRegistry, topSafeArea: Float, bottomSafeArea: Float) { + self.lifecycle = lifecycle + self.topSafeArea = topSafeArea + self.bottomSafeArea = bottomSafeArea + } + + func makeUIViewController(context: Context) -> UIViewController { + MainViewControllerKt.MainViewController( + lifecycle: lifecycle, + topSafeArea: topSafeArea, + bottomSafeArea: bottomSafeArea + ) + } + func updateUIViewController(_ uiViewController: UIViewController, context: Context) {} +} + +struct ContentView: View { + private let lifecycle: LifecycleRegistry + private let topSafeArea: Float + private let bottomSafeArea: Float + + init(lifecycle: LifecycleRegistry, topSafeArea: Float, bottomSafeArea: Float) { + self.lifecycle = lifecycle + self.topSafeArea = topSafeArea + self.bottomSafeArea = bottomSafeArea + } + var body: some View { + ComposeView( lifecycle: lifecycle, + topSafeArea: topSafeArea, + bottomSafeArea: bottomSafeArea) + .ignoresSafeArea(.keyboard) // Compose has own keyboard handler + } +} + + + diff --git a/iosApp/iosApp/Info.plist b/iosApp/iosApp/Info.plist new file mode 100644 index 0000000..412e378 --- /dev/null +++ b/iosApp/iosApp/Info.plist @@ -0,0 +1,50 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSRequiresIPhoneOS + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSceneManifest + + UIApplicationSupportsMultipleScenes + + + UILaunchScreen + + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/iosApp/iosApp/Preview Content/Preview Assets.xcassets/Contents.json b/iosApp/iosApp/Preview Content/Preview Assets.xcassets/Contents.json new file mode 100644 index 0000000..4aa7c53 --- /dev/null +++ b/iosApp/iosApp/Preview Content/Preview Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} \ No newline at end of file diff --git a/iosApp/iosApp/iOSApp.swift b/iosApp/iosApp/iOSApp.swift new file mode 100644 index 0000000..746155c --- /dev/null +++ b/iosApp/iosApp/iOSApp.swift @@ -0,0 +1,26 @@ +import SwiftUI +import ComposeApp + + +@main +struct iOSApp: App { + private var lifecycle = LifecycleRegistryKt.LifecycleRegistry() + + var body: some Scene { + WindowGroup { + GeometryReader { geo in + ContentView( + lifecycle:lifecycle, + topSafeArea: Float(geo.safeAreaInsets.top), + bottomSafeArea: Float(geo.safeAreaInsets.bottom) + ) + .ignoresSafeArea() + .onTapGesture { + // Hide keyboard on tap outside of TextField + UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil) + } + } + + } + } +} diff --git a/settings.gradle.kts b/settings.gradle.kts new file mode 100644 index 0000000..968cc8d --- /dev/null +++ b/settings.gradle.kts @@ -0,0 +1,25 @@ +rootProject.name = "DecomposeApp" +enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS") + +pluginManagement { + repositories { + maven("https://maven.pkg.jetbrains.space/public/p/compose/dev") + google() + gradlePluginPortal() + mavenCentral() + maven { url = uri("https://jitpack.io") } + mavenLocal() + } +} + +dependencyResolutionManagement { + repositories { + google() + mavenCentral() + maven("https://maven.pkg.jetbrains.space/public/p/compose/dev") + maven { url = uri("https://jitpack.io") } + mavenLocal() + } +} + +include(":composeApp") \ No newline at end of file From 1bb48509cffb3892031c8f3c36d40a0b0f194d24 Mon Sep 17 00:00:00 2001 From: SirDennis Date: Tue, 16 Apr 2024 14:00:20 +0300 Subject: [PATCH 2/3] updated --- composeApp/build.gradle.kts | 8 ++++++-- .../rootBottomStack/DefaultRootBottomComponent.kt | 7 +++---- gradle.properties | 4 ++-- gradle/libs.versions.toml | 12 ++++++------ 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/composeApp/build.gradle.kts b/composeApp/build.gradle.kts index f58ac49..9b78622 100644 --- a/composeApp/build.gradle.kts +++ b/composeApp/build.gradle.kts @@ -2,10 +2,10 @@ plugins { alias(libs.plugins.kotlinMultiplatform) alias(libs.plugins.androidApplication) alias(libs.plugins.jetbrainsCompose) - id("com.arkivanov.parcelize.darwin") version "0.2.2" + id("com.arkivanov.parcelize.darwin") version "0.2.3" id("kotlin-parcelize") id("app.cash.sqldelight") version "2.0.0" - kotlin("plugin.serialization") version "1.9.20" + kotlin("plugin.serialization") version "1.9.21" } kotlin { @@ -34,6 +34,7 @@ kotlin { // Optional, only if you need state preservation on Darwin (Apple) targets export(libs.parcelizeDarwin.runtime) + } } @@ -120,6 +121,7 @@ kotlin { implementation(libs.russhwolf.settings.serialization) //insets implementation("com.moriatsushi.insetsx:insetsx:0.1.0-alpha10") + } iosMain.dependencies { @@ -136,6 +138,8 @@ kotlin { //Modified api(libs.parcelizeDarwin.runtime) + + } } } diff --git a/composeApp/src/commonMain/kotlin/rootBottomStack/DefaultRootBottomComponent.kt b/composeApp/src/commonMain/kotlin/rootBottomStack/DefaultRootBottomComponent.kt index c27ead8..de9cb58 100644 --- a/composeApp/src/commonMain/kotlin/rootBottomStack/DefaultRootBottomComponent.kt +++ b/composeApp/src/commonMain/kotlin/rootBottomStack/DefaultRootBottomComponent.kt @@ -12,8 +12,6 @@ import com.arkivanov.decompose.router.stack.bringToFront import com.arkivanov.decompose.router.stack.childStack import com.arkivanov.decompose.value.Value import com.arkivanov.essenty.lifecycle.Lifecycle -import com.arkivanov.essenty.parcelable.Parcelable -import com.arkivanov.essenty.parcelable.Parcelize import home.DefaultHomeComponent import home.HomeComponent import kotlinx.serialization.Serializable @@ -30,6 +28,7 @@ class DefaultRootBottomComponent( private val _childStackBottom = childStack( source = navigationBottomStackNavigation, + serializer = ConfigBottom.serializer(), initialConfiguration = ConfigBottom.Welcome, handleBackButton = true, childFactory = ::createChildBottom, @@ -116,8 +115,8 @@ class DefaultRootBottomComponent( navigationBottomStackNavigation.bringToFront(ConfigBottom.Notification) } - - private sealed class ConfigBottom : Parcelable { + @Serializable + private sealed class ConfigBottom { @Serializable data object Welcome : ConfigBottom() diff --git a/gradle.properties b/gradle.properties index b54e073..fba9de1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,7 +16,7 @@ kotlin.mpp.enableCInteropCommonization=true development=true #Versions -kotlin.version=1.9.20 +kotlin.version=1.9.21 agp.version=8.1.1 -compose.version=1.5.10 +compose.version=1.5.11 sqldelight.version=2.0.0 \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 53192f5..cfc3ed2 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -9,11 +9,11 @@ androidx-core-ktx = "1.12.0" androidx-espresso-core = "3.5.1" androidx-material = "1.11.0" androidx-test-junit = "1.1.5" -compose = "1.5.10" +compose = "1.5.11" compose-plugin = "1.6.0" junit = "4.13.2" -kotlin = "1.9.20" -serialization = "1.6.2" +kotlin = "1.9.21" +serialization = "1.6.0" moko = "0.23.0" moko-graphics = "0.9.0" mviKotlin = "3.2.1" @@ -21,9 +21,9 @@ logbackClassic = "1.2.11" sqlDelight = "2.0.0" koin = "3.5.0" ktor = "2.3.7" -decompose = "2.1.3" -essenty = "1.2.0" -parcelizeDarwin = "0.2.2" +decompose = "2.2.2" +essenty = "1.3.0" +parcelizeDarwin = "0.2.3" jetbrainsCompose = "1.5.10" jetbrainsKotlinxCoroutines = "1.8.0" jetbrainsBinaryCompatibilityValidator = "0.13.2" From 218203178c70e007aa9a20c0bc03aef18eb2f452 Mon Sep 17 00:00:00 2001 From: SirDennis Date: Tue, 16 Apr 2024 14:05:28 +0300 Subject: [PATCH 3/3] update --- gradle.properties | 1 + 1 file changed, 1 insertion(+) diff --git a/gradle.properties b/gradle.properties index b54e073..25698c8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,6 +16,7 @@ kotlin.mpp.enableCInteropCommonization=true development=true #Versions +#//To update kotlin.version=1.9.20 agp.version=8.1.1 compose.version=1.5.10