diff --git a/ballerine-android-sdk/.gitignore b/ballerine-android-sdk/.gitignore
deleted file mode 100644
index 42afabf..0000000
--- a/ballerine-android-sdk/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/build
\ No newline at end of file
diff --git a/ballerine-android-sdk/build.gradle.kts b/ballerine-android-sdk/build.gradle.kts
deleted file mode 100644
index 9d3403b..0000000
--- a/ballerine-android-sdk/build.gradle.kts
+++ /dev/null
@@ -1,79 +0,0 @@
-plugins {
- id("com.android.library")
- id("org.jetbrains.kotlin.android")
- id("maven-publish")
-}
-
-android {
- compileSdk = 32
-
- defaultConfig {
- minSdk = 23
- targetSdk = 32
-
- testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
- consumerProguardFiles("consumer-rules.pro")
- }
-
- buildTypes {
- release {
- isMinifyEnabled = false
- proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"),
- "proguard-rules.pro")
- }
- }
- buildFeatures {
- compose = true
- }
-
- composeOptions {
- kotlinCompilerExtensionVersion = "1.1.1"
- }
- compileOptions {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
- }
- kotlinOptions {
- jvmTarget = "1.8"
- }
-}
-
-dependencies {
-
- val compose_version = "1.1.1"
-
- implementation("androidx.core:core-ktx:1.8.0")
-
- implementation ("androidx.activity:activity-compose:1.5.1")
- implementation ("androidx.compose.ui:ui:$compose_version")
- implementation ("androidx.compose.material:material:$compose_version")
- implementation ("androidx.compose.ui:ui-tooling-preview:$compose_version")
- androidTestImplementation ("androidx.compose.ui:ui-test-junit4:$compose_version")
- debugImplementation ("androidx.compose.ui:ui-tooling:$compose_version")
-
- //Permission handling
- implementation("com.google.accompanist:accompanist-permissions:0.26.0-alpha")
- // CameraX core library using the camera2 implementation
- val camerax_version = "1.2.0-alpha04"
- // The following line is optional, as the core library is included indirectly by camera-camera2
- implementation("androidx.camera:camera-core:${camerax_version}")
- implementation("androidx.camera:camera-camera2:${camerax_version}")
- // If you want to additionally use the CameraX Lifecycle library
- implementation("androidx.camera:camera-lifecycle:${camerax_version}")
- // If you want to additionally use the CameraX VideoCapture library
- implementation("androidx.camera:camera-video:${camerax_version}")
- // If you want to additionally use the CameraX View class
- implementation("androidx.camera:camera-view:${camerax_version}")
- // If you want to additionally add CameraX ML Kit Vision Integration
- implementation("androidx.camera:camera-mlkit-vision:${camerax_version}")
- // If you want to additionally use the CameraX Extensions library
- implementation("androidx.camera:camera-extensions:${camerax_version}")
-}
-
-afterEvaluate {
- publishing {
- publications {
-
- }
- }
-}
\ No newline at end of file
diff --git a/ballerine-android-sdk/consumer-rules.pro b/ballerine-android-sdk/consumer-rules.pro
deleted file mode 100644
index e69de29..0000000
diff --git a/ballerine-android-sdk/proguard-rules.pro b/ballerine-android-sdk/proguard-rules.pro
deleted file mode 100644
index 481bb43..0000000
--- a/ballerine-android-sdk/proguard-rules.pro
+++ /dev/null
@@ -1,21 +0,0 @@
-# Add project specific ProGuard rules here.
-# You can control the set of applied configuration files using the
-# proguardFiles setting in build.gradle.
-#
-# For more details, see
-# http://developer.android.com/guide/developing/tools/proguard.html
-
-# If your project uses WebView with JS, uncomment the following
-# and specify the fully qualified class name to the JavaScript interface
-# class:
-#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
-# public *;
-#}
-
-# Uncomment this to preserve the line number information for
-# debugging stack traces.
-#-keepattributes SourceFile,LineNumberTable
-
-# If you keep the line number information, uncomment this to
-# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
diff --git a/ballerine-android-sdk/src/androidTest/java/io/ballerine/kmp/android_webview/ExampleInstrumentedTest.kt b/ballerine-android-sdk/src/androidTest/java/io/ballerine/kmp/android_webview/ExampleInstrumentedTest.kt
deleted file mode 100644
index 6a33d5c..0000000
--- a/ballerine-android-sdk/src/androidTest/java/io/ballerine/kmp/android_webview/ExampleInstrumentedTest.kt
+++ /dev/null
@@ -1,24 +0,0 @@
-package io.ballerine.kmp.android_webview
-
-import androidx.test.platform.app.InstrumentationRegistry
-import androidx.test.ext.junit.runners.AndroidJUnit4
-
-import org.junit.Test
-import org.junit.runner.RunWith
-
-import org.junit.Assert.*
-
-/**
- * Instrumented test, which will execute on an Android device.
- *
- * See [testing documentation](http://d.android.com/tools/testing).
- */
-@RunWith(AndroidJUnit4::class)
-class ExampleInstrumentedTest {
- @Test
- fun useAppContext() {
- // Context of the app under test.
- val appContext = InstrumentationRegistry.getInstrumentation().targetContext
- assertEquals("io.ballerine.kmp.android_webview.test", appContext.packageName)
- }
-}
\ No newline at end of file
diff --git a/ballerine-android-sdk/src/main/AndroidManifest.xml b/ballerine-android-sdk/src/main/AndroidManifest.xml
deleted file mode 100644
index b609f07..0000000
--- a/ballerine-android-sdk/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/ballerine-android-sdk/src/main/java/io/ballerine/kmp/android_webview/BallerineKYCFlowWebView.kt b/ballerine-android-sdk/src/main/java/io/ballerine/kmp/android_webview/BallerineKYCFlowWebView.kt
deleted file mode 100644
index 32164f3..0000000
--- a/ballerine-android-sdk/src/main/java/io/ballerine/kmp/android_webview/BallerineKYCFlowWebView.kt
+++ /dev/null
@@ -1,188 +0,0 @@
-package io.ballerine.kmp.android_webview
-
-import android.Manifest
-import android.annotation.SuppressLint
-import android.content.Context
-import android.content.pm.PackageManager
-import android.net.Uri
-import android.util.Log
-import android.view.ViewGroup
-import android.webkit.*
-import android.widget.Toast
-import androidx.activity.compose.rememberLauncherForActivityResult
-import androidx.activity.result.contract.ActivityResultContracts
-import androidx.compose.foundation.layout.fillMaxSize
-import androidx.compose.runtime.*
-import androidx.compose.ui.Modifier
-import androidx.compose.ui.platform.LocalContext
-import androidx.compose.ui.viewinterop.AndroidView
-import androidx.core.content.ContextCompat
-import java.io.File
-import java.util.concurrent.ExecutorService
-
-/**
- * Custom Web view which handles the Web KYC verification flow
- *
- * @param1 - outputFileDirectory is the location of where the images are saved
- * @param2 - cameraExecutorService
- * @param3 - url is the base app url
- * @param4 - onVerificationComplete - returns the Callback function with the VerificationResult object
- */
-@SuppressLint("SetJavaScriptEnabled")
-@Composable
-fun BallerineKYCFlowWebView(
- outputFileDirectory: File,
- cameraExecutorService: ExecutorService,
- url: String,
- onVerificationComplete: (VerificationResult) -> Unit,
-) {
-
- var isOpenFrontCamera by remember {
- mutableStateOf(false)
- }
- var filePathCallback: ValueCallback>? by remember {
- mutableStateOf(null)
- }
- var showMediaPicker by remember {
- mutableStateOf(false)
- }
- var isCameraPermissionAvailable by remember {
- mutableStateOf(false)
- }
- val context = LocalContext.current
-
- /**
- * Checks if camera permission is granted by the user
- */
- val launcher = rememberLauncherForActivityResult(
- ActivityResultContracts.RequestPermission()
- ) { isGranted: Boolean ->
- if (isGranted) {
- // Permission Accepted
- isCameraPermissionAvailable = true
- showMediaPicker = true
- } else {
- // Permission Denied
- permissionRequiredToast(context = context)
- }
- }
-
-
- /**
- * Checks if camera permission is already available
- */
- when (PackageManager.PERMISSION_GRANTED) {
- ContextCompat.checkSelfPermission(
- context,
- Manifest.permission.CAMERA
- ) -> {
- isCameraPermissionAvailable = true
- }
- }
-
- if (showMediaPicker) {
- CameraView(
- isOpenFrontCamera = isOpenFrontCamera,
- outputDirectory = outputFileDirectory,
- executor = cameraExecutorService,
- onImageCaptured = { uri ->
- filePathCallback?.onReceiveValue(arrayOf(uri))
- filePathCallback = null
- showMediaPicker = false
- }
- ) { Log.e("CameraView", "View error:", it) }
- }
-
- val webViewChromeClient = object : WebChromeClient() {
-
- override fun onShowFileChooser(
- webView: WebView?,
- filePathCb: ValueCallback>?,
- fileChooserParams: FileChooserParams?,
- ): Boolean {
-
- if (filePathCallback != null) {
- filePathCallback!!.onReceiveValue(null)
- }
- filePathCallback = filePathCb
-
- //If camera permission is available open the camera preview else launch the camera permission request
- if (isCameraPermissionAvailable) {
- showMediaPicker = true
- } else {
- launcher.launch(Manifest.permission.CAMERA)
- }
-
- return true
- }
-
- override fun onConsoleMessage(consoleMessage: ConsoleMessage?): Boolean {
- Log.e("onConsoleMessage", " ---> ${consoleMessage?.message()}")
- return super.onConsoleMessage(consoleMessage)
- }
- }
-
- val webViewClient = object : WebViewClient() {
-
- override fun doUpdateVisitedHistory(view: WebView?, url: String, isReload: Boolean) {
- Log.d("doUpdateVisitedHistory", "url -> $url")
-
- // Parse url query params
- val uri = Uri.parse(url)
-
- uri.getQueryParameter("close").let { paramValue ->
-
- if (paramValue == "true") {
-
- // Handle result once web KYC flow is complete
-
- val isSync = uri.getBooleanQueryParameter("sync", false)
- val status = uri.getQueryParameter("status")
- val idvResult = uri.getQueryParameter("idvResult")
- val code = uri.getQueryParameter("code")
-
- onVerificationComplete(
- VerificationResult(isSync, status, idvResult, code)
- )
- }
- }
-
- // Sets camera to front facing while capturing selfie
- isOpenFrontCamera = url.contains("selfie") == true
-
- super.doUpdateVisitedHistory(view, url, isReload)
- }
- }
-
- /**
- * Set the Display parameters to display the view in your Android app screen
- */
- AndroidView(
- modifier = Modifier.fillMaxSize(),
- factory = { context ->
- WebView(context).apply {
- layoutParams = ViewGroup.LayoutParams(
- ViewGroup.LayoutParams.MATCH_PARENT,
- ViewGroup.LayoutParams.MATCH_PARENT
- )
- this.webViewClient = webViewClient
- this.webChromeClient = webViewChromeClient
- this.settings.apply {
- javaScriptEnabled = true
- domStorageEnabled = true
- allowFileAccess = true
- allowContentAccess = true
- }
- loadUrl(url)
- }
- })
-}
-
-// Function to generate a Toast
-private fun permissionRequiredToast(context: Context) {
- Toast.makeText(
- context,
- context.getString(R.string.camera_permission_mandatory),
- Toast.LENGTH_LONG
- ).show()
-}
\ No newline at end of file
diff --git a/ballerine-android-sdk/src/main/java/io/ballerine/kmp/android_webview/CameraView.kt b/ballerine-android-sdk/src/main/java/io/ballerine/kmp/android_webview/CameraView.kt
deleted file mode 100644
index 6a650b9..0000000
--- a/ballerine-android-sdk/src/main/java/io/ballerine/kmp/android_webview/CameraView.kt
+++ /dev/null
@@ -1,138 +0,0 @@
-package io.ballerine.kmp.android_webview
-
-import android.content.Context
-import android.graphics.drawable.Icon
-import android.net.Uri
-import android.util.Log
-import androidx.camera.core.CameraSelector
-import androidx.camera.core.ImageCapture
-import androidx.camera.core.ImageCaptureException
-import androidx.camera.core.Preview
-import androidx.camera.lifecycle.ProcessCameraProvider
-import androidx.camera.view.PreviewView
-import androidx.compose.foundation.layout.Box
-import androidx.compose.foundation.layout.fillMaxSize
-import androidx.compose.foundation.layout.padding
-import androidx.compose.material.Icon
-import androidx.compose.material.IconButton
-import androidx.compose.runtime.Composable
-import androidx.compose.runtime.LaunchedEffect
-import androidx.compose.runtime.remember
-import androidx.compose.ui.Alignment
-import androidx.compose.ui.Modifier
-import androidx.compose.ui.graphics.Color
-import androidx.compose.ui.platform.LocalContext
-import androidx.compose.ui.platform.LocalLifecycleOwner
-import androidx.compose.ui.res.painterResource
-import androidx.compose.ui.res.stringResource
-import androidx.compose.ui.unit.dp
-import androidx.compose.ui.viewinterop.AndroidView
-import androidx.core.content.ContextCompat
-import java.io.File
-import java.text.SimpleDateFormat
-import java.util.*
-import java.util.concurrent.Executor
-import kotlin.coroutines.resume
-import kotlin.coroutines.suspendCoroutine
-
-@Composable
-fun CameraView(
- isOpenFrontCamera: Boolean,
- outputDirectory: File,
- executor: Executor,
- onImageCaptured: (Uri) -> Unit,
- onError: (ImageCaptureException) -> Unit
-) {
- val lensFacing: Int =
- if (isOpenFrontCamera) CameraSelector.LENS_FACING_FRONT else CameraSelector.LENS_FACING_BACK
- val context = LocalContext.current
- val lifecycleOwner = LocalLifecycleOwner.current
-
- val preview = Preview.Builder().build()
- val previewView = remember { PreviewView(context) }
- val imageCapture: ImageCapture = remember { ImageCapture.Builder().build() }
- val cameraSelector = CameraSelector.Builder()
- .requireLensFacing(lensFacing)
- .build()
-
- LaunchedEffect(lensFacing) {
- val cameraProvider = context.getCameraProvider()
- cameraProvider.unbindAll()
- cameraProvider.bindToLifecycle(
- lifecycleOwner,
- cameraSelector,
- preview,
- imageCapture
- )
-
- preview.setSurfaceProvider(previewView.surfaceProvider)
- }
-
- //Screen
- Box(contentAlignment = Alignment.BottomCenter, modifier = Modifier.fillMaxSize()) {
- AndroidView({ previewView }, modifier = Modifier.fillMaxSize())
-
- IconButton(
- modifier = Modifier.padding(bottom = 20.dp),
- onClick = {
- Log.d("takePhoto", "ON CLICK")
- takePhoto(
- imageCapture = imageCapture,
- outputDirectory = outputDirectory,
- executor = executor,
- onImageCaptured = onImageCaptured,
- onError = onError
- )
- },
- content = {
- Icon(
- painter = painterResource(id = R.drawable.ic_baseline_camera_24),
- contentDescription = stringResource(R.string.take_picture),
- tint = Color.White,
- modifier = Modifier
- .fillMaxSize(0.2f)
- )
- }
- )
- }
-}
-
-private fun takePhoto(
- imageCapture: ImageCapture,
- outputDirectory: File,
- executor: Executor,
- onImageCaptured: (Uri) -> Unit,
- onError: (ImageCaptureException) -> Unit
-) {
-
- val photoFile = File(
- outputDirectory,
- SimpleDateFormat(
- "yyyy-MM-dd-HH-mm-ss-SSS",
- Locale.US
- ).format(System.currentTimeMillis()) + ".jpg"
- )
-
- val outputOptions = ImageCapture.OutputFileOptions.Builder(photoFile).build()
-
- imageCapture.takePicture(outputOptions, executor, object : ImageCapture.OnImageSavedCallback {
- override fun onError(exception: ImageCaptureException) {
- Log.e("onError", "Take photo error:", exception)
- onError(exception)
- }
-
- override fun onImageSaved(outputFileResults: ImageCapture.OutputFileResults) {
- val savedUri = Uri.fromFile(photoFile)
- onImageCaptured(savedUri)
- }
- })
-}
-
-private suspend fun Context.getCameraProvider(): ProcessCameraProvider =
- suspendCoroutine { continuation ->
- ProcessCameraProvider.getInstance(this).also { cameraProvider ->
- cameraProvider.addListener({
- continuation.resume(cameraProvider.get())
- }, ContextCompat.getMainExecutor(this))
- }
- }
\ No newline at end of file
diff --git a/ballerine-android-sdk/src/main/java/io/ballerine/kmp/android_webview/VerificationResult.kt b/ballerine-android-sdk/src/main/java/io/ballerine/kmp/android_webview/VerificationResult.kt
deleted file mode 100644
index 3f98a2a..0000000
--- a/ballerine-android-sdk/src/main/java/io/ballerine/kmp/android_webview/VerificationResult.kt
+++ /dev/null
@@ -1,11 +0,0 @@
-package io.ballerine.kmp.android_webview
-
-import androidx.annotation.Keep
-
-@Keep
-data class VerificationResult(
- val isSync: Boolean,
- val status: String?,
- val idvResult: String?,
- val code: String?,
-)
diff --git a/ballerine-android-sdk/src/main/res/drawable/ic_baseline_camera_24.xml b/ballerine-android-sdk/src/main/res/drawable/ic_baseline_camera_24.xml
deleted file mode 100644
index b92a6e2..0000000
--- a/ballerine-android-sdk/src/main/res/drawable/ic_baseline_camera_24.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
diff --git a/ballerine-android-sdk/src/main/res/values/strings.xml b/ballerine-android-sdk/src/main/res/values/strings.xml
deleted file mode 100644
index a50c194..0000000
--- a/ballerine-android-sdk/src/main/res/values/strings.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
- Take picture
- Allow camera access to continue
- Camera access permission is mandatory
-
\ No newline at end of file
diff --git a/ballerine-android-sdk/src/test/java/io/ballerine/kmp/android_webview/ExampleUnitTest.kt b/ballerine-android-sdk/src/test/java/io/ballerine/kmp/android_webview/ExampleUnitTest.kt
deleted file mode 100644
index b27f67e..0000000
--- a/ballerine-android-sdk/src/test/java/io/ballerine/kmp/android_webview/ExampleUnitTest.kt
+++ /dev/null
@@ -1,17 +0,0 @@
-package io.ballerine.kmp.android_webview
-
-import org.junit.Test
-
-import org.junit.Assert.*
-
-/**
- * Example local unit test, which will execute on the development machine (host).
- *
- * See [testing documentation](http://d.android.com/tools/testing).
- */
-class ExampleUnitTest {
- @Test
- fun addition_isCorrect() {
- assertEquals(4, 2 + 2)
- }
-}
\ No newline at end of file
diff --git a/iosApp/Podfile.lock b/iosApp/Podfile.lock
index 876aade..89c2580 100644
--- a/iosApp/Podfile.lock
+++ b/iosApp/Podfile.lock
@@ -9,8 +9,8 @@ EXTERNAL SOURCES:
:path: "../shared"
SPEC CHECKSUMS:
- shared: 07cac7993e4f05eda6b76f3a213b070947c3b79f
+ shared: 7b4d6aa8aa7ada5f9dae3229e2524d316cb9f063
PODFILE CHECKSUM: f282da88f39e69507b0a255187c8a6b644477756
-COCOAPODS: 1.11.2
+COCOAPODS: 1.11.3
diff --git a/iosApp/Pods/Local Podspecs/shared.podspec.json b/iosApp/Pods/Local Podspecs/shared.podspec.json
index 2253dab..2e951fb 100644
--- a/iosApp/Pods/Local Podspecs/shared.podspec.json
+++ b/iosApp/Pods/Local Podspecs/shared.podspec.json
@@ -3,13 +3,15 @@
"version": "1.0",
"homepage": "Link to the Shared Module homepage",
"source": {
- "http": ""
+ "git": "Not Published",
+ "tag": "Cocoapods/shared/1.0"
},
"authors": "",
"license": "",
"summary": "Some description for the Shared Module",
"vendored_frameworks": "build/cocoapods/framework/shared.framework",
"libraries": "c++",
+ "module_name": "shared_umbrella",
"platforms": {
"ios": "14.1"
},
@@ -22,7 +24,7 @@
"name": "Build shared",
"execution_position": "before_compile",
"shell_path": "/bin/sh",
- "script": " if [ \"YES\" = \"$COCOAPODS_SKIP_KOTLIN_BUILD\" ]; then\n echo \"Skipping Gradle build task invocation due to COCOAPODS_SKIP_KOTLIN_BUILD environment variable set to \"YES\"\"\n exit 0\n fi\n set -ev\n REPO_ROOT=\"$PODS_TARGET_SRCROOT\"\n \"$REPO_ROOT/../gradlew\" -p \"$REPO_ROOT\" $KOTLIN_PROJECT_PATH:syncFramework -Pkotlin.native.cocoapods.platform=$PLATFORM_NAME -Pkotlin.native.cocoapods.archs=\"$ARCHS\" -Pkotlin.native.cocoapods.configuration=\"$CONFIGURATION\"\n"
+ "script": " if [ \"YES\" = \"$COCOAPODS_SKIP_KOTLIN_BUILD\" ]; then\n echo \"Skipping Gradle build task invocation due to COCOAPODS_SKIP_KOTLIN_BUILD environment variable set to \"YES\"\"\n exit 0\n fi\n set -ev\n REPO_ROOT=\"$PODS_TARGET_SRCROOT\"\n \"$REPO_ROOT/../gradlew\" -p \"$REPO_ROOT\" $KOTLIN_PROJECT_PATH:syncFramework -Pkotlin.native.cocoapods.platform=$PLATFORM_NAME -Pkotlin.native.cocoapods.archs=\"$ARCHS\" -Pkotlin.native.cocoapods.configuration=$CONFIGURATION\n"
}
]
}
diff --git a/iosApp/Pods/Manifest.lock b/iosApp/Pods/Manifest.lock
index 876aade..89c2580 100644
--- a/iosApp/Pods/Manifest.lock
+++ b/iosApp/Pods/Manifest.lock
@@ -9,8 +9,8 @@ EXTERNAL SOURCES:
:path: "../shared"
SPEC CHECKSUMS:
- shared: 07cac7993e4f05eda6b76f3a213b070947c3b79f
+ shared: 7b4d6aa8aa7ada5f9dae3229e2524d316cb9f063
PODFILE CHECKSUM: f282da88f39e69507b0a255187c8a6b644477756
-COCOAPODS: 1.11.2
+COCOAPODS: 1.11.3
diff --git a/iosApp/Pods/Pods.xcodeproj/project.pbxproj b/iosApp/Pods/Pods.xcodeproj/project.pbxproj
index a2f8029..124d1e8 100644
--- a/iosApp/Pods/Pods.xcodeproj/project.pbxproj
+++ b/iosApp/Pods/Pods.xcodeproj/project.pbxproj
@@ -9,9 +9,9 @@
/* Begin PBXAggregateTarget section */
8777C9F6889E59EFFD631D80AEE9048B /* shared */ = {
isa = PBXAggregateTarget;
- buildConfigurationList = 4A85E56EFB3170251B1CB14EB8485EF5 /* Build configuration list for PBXAggregateTarget "shared" */;
+ buildConfigurationList = 9FAF69EFFAE27522789F3CA719BA83DE /* Build configuration list for PBXAggregateTarget "shared" */;
buildPhases = (
- 179B9B8F4A300C109F0453B82420AE1B /* [CP-User] Build shared */,
+ 4552119A071AC6BAB7327E6434237EC3 /* [CP-User] Build shared */,
);
dependencies = (
);
@@ -241,7 +241,7 @@
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
- 179B9B8F4A300C109F0453B82420AE1B /* [CP-User] Build shared */ = {
+ 4552119A071AC6BAB7327E6434237EC3 /* [CP-User] Build shared */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
@@ -249,7 +249,7 @@
name = "[CP-User] Build shared";
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = " if [ \"YES\" = \"$COCOAPODS_SKIP_KOTLIN_BUILD\" ]; then\n echo \"Skipping Gradle build task invocation due to COCOAPODS_SKIP_KOTLIN_BUILD environment variable set to \"YES\"\"\n exit 0\n fi\n set -ev\n REPO_ROOT=\"$PODS_TARGET_SRCROOT\"\n \"$REPO_ROOT/../gradlew\" -p \"$REPO_ROOT\" $KOTLIN_PROJECT_PATH:syncFramework -Pkotlin.native.cocoapods.platform=$PLATFORM_NAME -Pkotlin.native.cocoapods.archs=\"$ARCHS\" -Pkotlin.native.cocoapods.configuration=\"$CONFIGURATION\"\n";
+ shellScript = " if [ \"YES\" = \"$COCOAPODS_SKIP_KOTLIN_BUILD\" ]; then\n echo \"Skipping Gradle build task invocation due to COCOAPODS_SKIP_KOTLIN_BUILD environment variable set to \"YES\"\"\n exit 0\n fi\n set -ev\n REPO_ROOT=\"$PODS_TARGET_SRCROOT\"\n \"$REPO_ROOT/../gradlew\" -p \"$REPO_ROOT\" $KOTLIN_PROJECT_PATH:syncFramework -Pkotlin.native.cocoapods.platform=$PLATFORM_NAME -Pkotlin.native.cocoapods.archs=\"$ARCHS\" -Pkotlin.native.cocoapods.configuration=$CONFIGURATION\n";
};
/* End PBXShellScriptBuildPhase section */
@@ -312,9 +312,9 @@
};
name = Release;
};
- 3066F7A489148C939EF53B3A8E6B8340 /* Debug */ = {
+ 1B6EAB28480B60AB33A8B63338687E30 /* Release */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 95B09EA82E7AF9ACCCCAF3E55C859116 /* shared.debug.xcconfig */;
+ baseConfigurationReference = 35548E3BD8DA30925E8FE97E67B84868 /* shared.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
@@ -326,8 +326,9 @@
);
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
+ VALIDATE_PRODUCT = YES;
};
- name = Debug;
+ name = Release;
};
593F10BFFA94DAC7D6E17FB8A7F32D72 /* Release */ = {
isa = XCBuildConfiguration;
@@ -494,9 +495,9 @@
};
name = Debug;
};
- CB19B582990BFAF5DB94DC6DB89853A9 /* Release */ = {
+ F80DE7EBDDFC80B4D52BCACF2249C6B6 /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 35548E3BD8DA30925E8FE97E67B84868 /* shared.release.xcconfig */;
+ baseConfigurationReference = 95B09EA82E7AF9ACCCCAF3E55C859116 /* shared.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
@@ -508,9 +509,8 @@
);
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
- VALIDATE_PRODUCT = YES;
};
- name = Release;
+ name = Debug;
};
/* End XCBuildConfiguration section */
@@ -524,20 +524,20 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
- 4A85E56EFB3170251B1CB14EB8485EF5 /* Build configuration list for PBXAggregateTarget "shared" */ = {
+ 9F1E85ECB672A0CC96333A6C6DF60EE6 /* Build configuration list for PBXNativeTarget "Pods-iosApp" */ = {
isa = XCConfigurationList;
buildConfigurations = (
- 3066F7A489148C939EF53B3A8E6B8340 /* Debug */,
- CB19B582990BFAF5DB94DC6DB89853A9 /* Release */,
+ AF088B6CD92A52AC4DCB62DEEC871231 /* Debug */,
+ 02DDCCED053337F381DEBAFDEC6F354F /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
- 9F1E85ECB672A0CC96333A6C6DF60EE6 /* Build configuration list for PBXNativeTarget "Pods-iosApp" */ = {
+ 9FAF69EFFAE27522789F3CA719BA83DE /* Build configuration list for PBXAggregateTarget "shared" */ = {
isa = XCConfigurationList;
buildConfigurations = (
- AF088B6CD92A52AC4DCB62DEEC871231 /* Debug */,
- 02DDCCED053337F381DEBAFDEC6F354F /* Release */,
+ F80DE7EBDDFC80B4D52BCACF2249C6B6 /* Debug */,
+ 1B6EAB28480B60AB33A8B63338687E30 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
diff --git a/iosApp/Pods/Pods.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/Pods-iosApp.xcscheme b/iosApp/Pods/Pods.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/Pods-iosApp.xcscheme
new file mode 100644
index 0000000..5163bf6
--- /dev/null
+++ b/iosApp/Pods/Pods.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/Pods-iosApp.xcscheme
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/iosApp/Pods/Pods.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/shared.xcscheme b/iosApp/Pods/Pods.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/shared.xcscheme
new file mode 100644
index 0000000..a901214
--- /dev/null
+++ b/iosApp/Pods/Pods.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/shared.xcscheme
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/iosApp/Pods/Pods.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/xcschememanagement.plist b/iosApp/Pods/Pods.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/xcschememanagement.plist
new file mode 100644
index 0000000..7dce8f0
--- /dev/null
+++ b/iosApp/Pods/Pods.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -0,0 +1,21 @@
+
+
+
+
+ SchemeUserState
+
+ Pods-iosApp.xcscheme
+
+ isShown
+
+
+ shared.xcscheme
+
+ isShown
+
+
+
+ SuppressBuildableAutocreation
+
+
+
diff --git a/iosApp/iosApp.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/xcschememanagement.plist b/iosApp/iosApp.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/xcschememanagement.plist
new file mode 100644
index 0000000..ca1c48c
--- /dev/null
+++ b/iosApp/iosApp.xcodeproj/xcuserdata/mcgaps.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -0,0 +1,14 @@
+
+
+
+
+ SchemeUserState
+
+ iosApp.xcscheme_^#shared#^_
+
+ orderHint
+ 2
+
+
+
+
diff --git a/iosApp/iosApp.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/iosApp/iosApp.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000..18d9810
--- /dev/null
+++ b/iosApp/iosApp.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/iosApp/iosApp.xcworkspace/xcuserdata/mcgaps.xcuserdatad/UserInterfaceState.xcuserstate b/iosApp/iosApp.xcworkspace/xcuserdata/mcgaps.xcuserdatad/UserInterfaceState.xcuserstate
new file mode 100644
index 0000000..495f0c0
Binary files /dev/null and b/iosApp/iosApp.xcworkspace/xcuserdata/mcgaps.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/shared/shared.podspec b/shared/shared.podspec
index 8b89b9a..84e76f1 100644
--- a/shared/shared.podspec
+++ b/shared/shared.podspec
@@ -2,20 +2,24 @@ Pod::Spec.new do |spec|
spec.name = 'shared'
spec.version = '1.0'
spec.homepage = 'Link to the Shared Module homepage'
- spec.source = { :http=> ''}
+ spec.source = { :git => "Not Published", :tag => "Cocoapods/#{spec.name}/#{spec.version}" }
spec.authors = ''
spec.license = ''
spec.summary = 'Some description for the Shared Module'
- spec.vendored_frameworks = 'build/cocoapods/framework/shared.framework'
- spec.libraries = 'c++'
+
+ spec.vendored_frameworks = "build/cocoapods/framework/shared.framework"
+ spec.libraries = "c++"
+ spec.module_name = "#{spec.name}_umbrella"
+
spec.ios.deployment_target = '14.1'
+
-
+
spec.pod_target_xcconfig = {
'KOTLIN_PROJECT_PATH' => ':shared',
'PRODUCT_MODULE_NAME' => 'shared',
}
-
+
spec.script_phases = [
{
:name => 'Build shared',
@@ -31,9 +35,8 @@ Pod::Spec.new do |spec|
"$REPO_ROOT/../gradlew" -p "$REPO_ROOT" $KOTLIN_PROJECT_PATH:syncFramework \
-Pkotlin.native.cocoapods.platform=$PLATFORM_NAME \
-Pkotlin.native.cocoapods.archs="$ARCHS" \
- -Pkotlin.native.cocoapods.configuration="$CONFIGURATION"
+ -Pkotlin.native.cocoapods.configuration=$CONFIGURATION
SCRIPT
}
]
-
end
\ No newline at end of file