@regulaforensics/face-sdk 8.4.1399-rc → 8.4.1403-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/Package.swift +27 -0
  2. package/README.md +3 -0
  3. package/android/CDVFaceSDK.kt +4 -3
  4. package/android/build.gradle.kts +37 -0
  5. package/android/cordova.gradle.kts +17 -0
  6. package/android/src/main/kotlin/com/regula/plugin/{facesdk → face/sdk}/Config.kt +1 -1
  7. package/android/src/main/kotlin/com/regula/plugin/{facesdk → face/sdk}/Implementation.kt +2 -2
  8. package/android/src/main/kotlin/com/regula/plugin/{facesdk → face/sdk}/JSONConstructor.kt +4 -4
  9. package/android/src/main/kotlin/com/regula/plugin/{facesdk → face/sdk}/RNFaceApiModule.kt +1 -1
  10. package/android/src/main/kotlin/com/regula/plugin/{facesdk → face/sdk}/Utils.kt +2 -2
  11. package/app.plugin.js +10 -7
  12. package/examples/capacitor/README.md +2 -0
  13. package/examples/capacitor/android/app/build.gradle +1 -10
  14. package/examples/capacitor/android/app/src/main/AndroidManifest.xml +9 -0
  15. package/examples/capacitor/android/app/src/main/res/xml/file_paths.xml +5 -0
  16. package/examples/capacitor/android/build.gradle +12 -3
  17. package/examples/capacitor/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  18. package/examples/capacitor/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  19. package/examples/capacitor/android/gradle.properties +4 -0
  20. package/examples/capacitor/android/gradlew +4 -7
  21. package/examples/capacitor/android/gradlew.bat +82 -94
  22. package/examples/capacitor/android/variables.gradle +13 -9
  23. package/examples/capacitor/capacitor.config.json +15 -0
  24. package/examples/capacitor/index.tsx +15 -23
  25. package/examples/capacitor/ios/App/App/AppDelegate.swift +5 -40
  26. package/examples/capacitor/ios/App/App/Info.plist +18 -2
  27. package/examples/capacitor/ios/App/App/SceneDelegate.swift +23 -0
  28. package/examples/capacitor/ios/App/App.xcodeproj/project.pbxproj +25 -85
  29. package/examples/capacitor/ios/App/CapApp-SPM/Sources/CapApp-SPM/CapApp-SPM.swift +1 -0
  30. package/examples/capacitor/package-lock.json +1075 -1935
  31. package/examples/capacitor/package.json +14 -19
  32. package/examples/capacitor/scripts/android.sh +5 -8
  33. package/examples/capacitor/scripts/ios.sh +5 -7
  34. package/examples/capacitor/scripts/setup.sh +2 -6
  35. package/examples/capacitor/src/main.css +5 -1
  36. package/examples/capacitor/vite.config.ts +0 -12
  37. package/examples/ionic/README.md +2 -0
  38. package/examples/ionic/config.xml +1 -1
  39. package/examples/ionic/index.tsx +8 -3
  40. package/examples/ionic/package-lock.json +6445 -12138
  41. package/examples/ionic/package.json +23 -27
  42. package/examples/ionic/scripts/android.sh +0 -2
  43. package/examples/ionic/scripts/ios.sh +0 -2
  44. package/examples/ionic/scripts/setup.sh +0 -2
  45. package/examples/ionic/tsconfig.json +0 -1
  46. package/examples/react_native/README.md +2 -0
  47. package/examples/react_native/app.config.ts +0 -1
  48. package/examples/react_native/package.json +19 -17
  49. package/examples/react_native/scripts/android.sh +8 -6
  50. package/examples/react_native/scripts/ios.sh +7 -5
  51. package/examples/react_native/scripts/setup.sh +7 -4
  52. package/ios/CDVFaceSDK.swift +6 -1
  53. package/ios/Decoder.swift +1 -1
  54. package/ios/Implementation.swift +4 -4
  55. package/ios/RNFaceSDK.swift +2 -2
  56. package/package.json +1 -1
  57. package/plugin.xml +11 -11
  58. package/react-native-face-sdk.podspec +14 -0
  59. package/test/package-lock.json +1 -1
  60. package/www/capacitor/internal/cordova.js +2 -2
  61. package/www/cordova.js +2 -2
  62. package/RNFaceSDK.podspec +0 -21
  63. package/android/build.gradle +0 -36
  64. package/android/cordova.gradle +0 -18
  65. package/examples/capacitor/android/app/capacitor.build.gradle +0 -21
  66. package/examples/capacitor/android/capacitor.settings.gradle +0 -12
  67. package/examples/capacitor/ionic.config.json +0 -7
  68. package/examples/capacitor/ios/App/App/Base.lproj/Main.storyboard +0 -19
  69. package/examples/capacitor/ios/App/App.xcworkspace/contents.xcworkspacedata +0 -10
  70. package/examples/capacitor/ios/App/App.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  71. package/examples/capacitor/ios/App/Podfile +0 -31
  72. package/examples/capacitor/ios/App/Podfile.lock +0 -57
  73. package/examples/react_native/package-lock.json +0 -8908
  74. package/examples/react_native/vendor/image-size-metro-compat/index.cjs +0 -16
  75. package/examples/react_native/vendor/image-size-metro-compat/package.json +0 -8
package/Package.swift ADDED
@@ -0,0 +1,27 @@
1
+ // swift-tools-version: 5.9
2
+
3
+ import PackageDescription
4
+
5
+ let package = Package(
6
+ name: "@regulaforensics/face-sdk",
7
+ platforms: [.iOS(.v15)],
8
+ products: [.library(name: "@regulaforensics/face-sdk", targets: ["@regulaforensics/face-sdk"])],
9
+ dependencies: [
10
+ .package(url: "https://github.com/apache/cordova-ios.git", branch: "master"),
11
+ .package(
12
+ url: "https://github.com/regulaforensics/FaceSDK-Swift-Package",
13
+ exact: "8.4.4983-rc"
14
+ )
15
+ ],
16
+ targets: [
17
+ .target(
18
+ name: "@regulaforensics/face-sdk",
19
+ dependencies: [
20
+ .product(name: "Cordova", package: "cordova-ios"),
21
+ .product(name: "FaceSDK", package: "FaceSDK-Swift-Package")
22
+ ],
23
+ path: "ios",
24
+ exclude: ["RNFaceSDK.swift", "RNFaceSDK.m"]
25
+ )
26
+ ]
27
+ )
package/README.md CHANGED
@@ -1,7 +1,10 @@
1
1
  # Regula Face SDK plugin
2
+
2
3
  Face SDK is a framework that is used for face matching, recognition and liveness detection.
3
4
  This plugin makes possible to use it with react-native, cordova and capacitor applications.
4
5
 
6
+ Requires iOS 15+ & Android 7.0+ (API 24)
7
+
5
8
  ## Demo applications
6
9
  In the [examples](examples/) folder you can find 3 demo applications:
7
10
  * [React-native](examples/react_native)
@@ -1,4 +1,4 @@
1
- package com.regula.plugin.facesdk
1
+ package com.regula.plugin.face.sdk
2
2
 
3
3
  import android.app.Activity
4
4
  import android.content.Context
@@ -21,9 +21,10 @@ fun sendEvent(callbackId: String, data: Any? = "") {
21
21
  val pluginResult = when (data) {
22
22
  is Int -> PluginResult(PluginResult.Status.OK, data)
23
23
  is Boolean -> PluginResult(PluginResult.Status.OK, data)
24
+ is Throwable -> PluginResult(PluginResult.Status.ERROR, data.message)
24
25
  else -> PluginResult(PluginResult.Status.OK, data.toSendable() as String?)
25
26
  }
26
- pluginResult.keepCallback = true
27
+ pluginResult.keepCallback = data !is Throwable
27
28
  binding.webView.sendPluginResult(pluginResult, eventCallbackIds[callbackId] ?: callbackId)
28
29
  }
29
30
 
@@ -45,7 +46,7 @@ class CDVFaceSDK : CordovaPlugin() {
45
46
  methodCall(method) { data: Any? -> sendEvent(callbackContext.callbackId, data) }
46
47
  } catch (error: Throwable) {
47
48
  Log.e("REGULA", "Caught an exception in \"$method\" function:", error)
48
- sendEvent(callbackContext.callbackId, "Unexpected error, check logs for details")
49
+ sendEvent(callbackContext.callbackId, Throwable("Unexpected error, check logs for details"))
49
50
  }
50
51
  return true
51
52
  }
@@ -0,0 +1,37 @@
1
+ import com.android.build.api.dsl.LibraryExtension
2
+
3
+ plugins {
4
+ id("com.android.library")
5
+ }
6
+
7
+ // AGP 9+ may already provide built-in Kotlin.
8
+ if (extensions.findByName("kotlin") == null) {
9
+ apply(plugin = "kotlin-android")
10
+ }
11
+
12
+ extensions.configure<LibraryExtension> {
13
+ namespace = "com.regula.plugin.face.sdk"
14
+ compileSdk = 36
15
+
16
+ defaultConfig {
17
+ minSdk = 24
18
+ }
19
+ }
20
+
21
+ rootProject.allprojects {
22
+ repositories {
23
+ maven { url = uri("https://maven.regulaforensics.com/RegulaDocumentReader") }
24
+ maven { url = uri("https://maven.regulaforensics.com/RegulaDocumentReader/Beta") }
25
+ maven { url = uri("https://maven.regulaforensics.com/RegulaDocumentReader/Nightly") }
26
+ maven { url = uri("https://maven.regulaforensics.com/RegulaDocumentReader/Stage") }
27
+ }
28
+ }
29
+
30
+ dependencies {
31
+ //noinspection GradleDynamicVersion
32
+ implementation("com.facebook.react:react-native:+")
33
+ //noinspection GradleDependency
34
+ implementation("com.regula.face:api:8.4.5408") {
35
+ isTransitive = true
36
+ }
37
+ }
@@ -0,0 +1,17 @@
1
+ extensions.getByName("android").withGroovyBuilder {
2
+ "aaptOptions" { "noCompress"("Regula/faceSdkResource.dat") }
3
+ }
4
+
5
+ repositories {
6
+ maven { url = uri("https://maven.regulaforensics.com/RegulaDocumentReader") }
7
+ maven { url = uri("https://maven.regulaforensics.com/RegulaDocumentReader/Beta") }
8
+ maven { url = uri("https://maven.regulaforensics.com/RegulaDocumentReader/Nightly") }
9
+ maven { url = uri("https://maven.regulaforensics.com/RegulaDocumentReader/Stage") }
10
+ }
11
+
12
+ dependencies {
13
+ //noinspection GradleDependency
14
+ add("implementation", "com.regula.face:api:8.4.5408") {
15
+ isTransitive = true
16
+ }
17
+ }
@@ -1,6 +1,6 @@
1
1
  @file:Suppress("EnumValuesSoftDeprecate")
2
2
 
3
- package com.regula.plugin.facesdk
3
+ package com.regula.plugin.face.sdk
4
4
 
5
5
  import com.regula.facesdk.configuration.Customization
6
6
  import com.regula.facesdk.configuration.EnrollmentConfiguration
@@ -1,4 +1,4 @@
1
- package com.regula.plugin.facesdk
1
+ package com.regula.plugin.face.sdk
2
2
 
3
3
  import android.annotation.SuppressLint
4
4
  import com.regula.common.LocalizationCallbacks
@@ -25,7 +25,7 @@ import com.regula.facesdk.model.results.person.PageableItemList
25
25
  import com.regula.facesdk.model.results.person.Person
26
26
  import com.regula.facesdk.model.results.person.PersonGroup
27
27
  import com.regula.facesdk.model.results.person.SearchPerson
28
- import com.regula.plugin.facesdk.Convert.toBase64
28
+ import com.regula.plugin.face.sdk.Convert.toBase64
29
29
  import org.json.JSONArray
30
30
  import org.json.JSONObject
31
31
 
@@ -1,6 +1,6 @@
1
1
  @file:Suppress("EnumValuesSoftDeprecate", "unused")
2
2
 
3
- package com.regula.plugin.facesdk
3
+ package com.regula.plugin.face.sdk
4
4
 
5
5
  import android.annotation.SuppressLint
6
6
  import android.graphics.Bitmap
@@ -75,9 +75,9 @@ import com.regula.facesdk.request.MatchFacesRequest
75
75
  import com.regula.facesdk.request.person.EditGroupPersonsRequest
76
76
  import com.regula.facesdk.request.person.ImageUpload
77
77
  import com.regula.facesdk.request.person.SearchPersonRequest
78
- import com.regula.plugin.facesdk.Convert.toBase64
79
- import com.regula.plugin.facesdk.Convert.toBitmap
80
- import com.regula.plugin.facesdk.Convert.toByteArray
78
+ import com.regula.plugin.face.sdk.Convert.toBase64
79
+ import com.regula.plugin.face.sdk.Convert.toBitmap
80
+ import com.regula.plugin.face.sdk.Convert.toByteArray
81
81
  import org.json.JSONArray
82
82
  import org.json.JSONObject
83
83
  import java.lang.Double
@@ -1,4 +1,4 @@
1
- package com.regula.plugin.facesdk
1
+ package com.regula.plugin.face.sdk
2
2
 
3
3
  import android.app.Activity
4
4
  import android.content.Context
@@ -1,6 +1,6 @@
1
1
  @file:Suppress("UNCHECKED_CAST", "EnumValuesSoftDeprecate", "UseKtx")
2
2
 
3
- package com.regula.plugin.facesdk
3
+ package com.regula.plugin.face.sdk
4
4
 
5
5
  import android.annotation.SuppressLint
6
6
  import android.content.Context
@@ -18,7 +18,7 @@ import com.regula.facesdk.enums.CustomizationFont
18
18
  import com.regula.facesdk.enums.ImageType
19
19
  import com.regula.facesdk.enums.InitErrorCode
20
20
  import com.regula.facesdk.enums.OutputImageCropAspectRatio
21
- import com.regula.plugin.facesdk.Convert.toDrawable
21
+ import com.regula.plugin.face.sdk.Convert.toDrawable
22
22
  import org.json.JSONArray
23
23
  import org.json.JSONObject
24
24
  import java.io.ByteArrayOutputStream
package/app.plugin.js CHANGED
@@ -1,12 +1,15 @@
1
- const { createRequire } = require('module'); // passing vulnerability checks
2
- const { withPodfile } = createRequire(process.cwd() + '/package.json')('@expo/config-plugins');
1
+ module.exports = function withRegulaPodSources(config) {
2
+ const { createRequire } = require('module');
3
+ const { join } = require('path');
4
+ const projectRoot = config._internal?.projectRoot ?? process.cwd();
5
+ const appRequire = createRequire(join(projectRoot, 'package.json'));
6
+ const { withPodfile } = appRequire('expo/config-plugins');
3
7
 
4
- const SOURCES = [
5
- 'https://github.com/CocoaPods/Specs.git',
6
- 'https://github.com/regulaforensics/podspecs.git',
7
- ];
8
+ const SOURCES = [
9
+ 'https://github.com/CocoaPods/Specs.git',
10
+ 'https://github.com/regulaforensics/podspecs.git',
11
+ ];
8
12
 
9
- module.exports = function withRegulaPodSources(config) {
10
13
  return withPodfile(config, (config) => {
11
14
  let podfile = config.modResults.contents;
12
15
 
@@ -1,5 +1,7 @@
1
1
  # Regula Face SDK Capacitor demo application
2
2
 
3
+ Requires Node.js 22+, Xcode 26+, Android Studio with JDK 21+ and Android SDK 37.
4
+
3
5
  ## How to build demo application
4
6
  1. Download or the clone current repository using the command `git clone https://github.com/regulaforensics/npm-face-sdk.git`.
5
7
 
@@ -18,7 +18,7 @@ android {
18
18
  buildTypes {
19
19
  release {
20
20
  minifyEnabled false
21
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
21
+ proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
22
22
  }
23
23
  }
24
24
  }
@@ -39,12 +39,3 @@ dependencies {
39
39
  }
40
40
 
41
41
  apply from: 'capacitor.build.gradle'
42
-
43
- try {
44
- def servicesJSON = file('google-services.json')
45
- if (servicesJSON.text) {
46
- apply plugin: 'com.google.gms.google-services'
47
- }
48
- } catch(Exception e) {
49
- logger.info("google-services.json not found, google-services plugin not applied. Push Notifications won't work")
50
- }
@@ -19,6 +19,15 @@
19
19
  <category android:name="android.intent.category.LAUNCHER" />
20
20
  </intent-filter>
21
21
  </activity>
22
+ <provider
23
+ android:name="androidx.core.content.FileProvider"
24
+ android:authorities="${applicationId}.fileprovider"
25
+ android:exported="false"
26
+ android:grantUriPermissions="true">
27
+ <meta-data
28
+ android:name="android.support.FILE_PROVIDER_PATHS"
29
+ android:resource="@xml/file_paths" />
30
+ </provider>
22
31
  </application>
23
32
 
24
33
  <uses-permission android:name="android.permission.INTERNET" />
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <paths xmlns:android="http://schemas.android.com/apk/res/android">
3
+ <external-files-path name="images" path="Pictures/" />
4
+ <cache-path name="cache_images" path="." />
5
+ </paths>
@@ -7,9 +7,8 @@ buildscript {
7
7
  mavenCentral()
8
8
  }
9
9
  dependencies {
10
- classpath 'com.android.tools.build:gradle:8.13.0'
11
- classpath 'com.google.gms:google-services:4.4.4'
12
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:2.2.20"
10
+ classpath 'com.android.tools.build:gradle:9.4.0'
11
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:2.4.20"
13
12
 
14
13
  // NOTE: Do not place your application dependencies here; they belong
15
14
  // in the individual module build.gradle files
@@ -28,3 +27,13 @@ allprojects {
28
27
  task clean(type: Delete) {
29
28
  delete rootProject.buildDir
30
29
  }
30
+
31
+ // Use the JDK running Gradle, while keeping Capacitor's Java 21 bytecode target.
32
+ subprojects {
33
+ afterEvaluate {
34
+ if (plugins.hasPlugin('org.jetbrains.kotlin.android')) {
35
+ kotlin.jvmToolchain(JavaVersion.current().majorVersion.toInteger())
36
+ kotlin.compilerOptions.jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_21)
37
+ }
38
+ }
39
+ }
@@ -1,6 +1,6 @@
1
1
  distributionBase=GRADLE_USER_HOME
2
2
  distributionPath=wrapper/dists
3
- distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-all.zip
3
+ distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.1-bin.zip
4
4
  networkTimeout=10000
5
5
  validateDistributionUrl=true
6
6
  zipStoreBase=GRADLE_USER_HOME
@@ -20,3 +20,7 @@ org.gradle.jvmargs=-Xmx1536m
20
20
  # Android operating system, and which are packaged with your app's APK
21
21
  # https://developer.android.com/topic/libraries/support-library/androidx-rn
22
22
  android.useAndroidX=true
23
+
24
+ # Required by Capacitor and its generated Cordova plugin module on AGP 9.
25
+ android.newDsl=false
26
+ android.builtInKotlin=false
@@ -1,7 +1,7 @@
1
1
  #!/bin/sh
2
2
 
3
3
  #
4
- # Copyright © 2015-2021 the original authors.
4
+ # Copyright © 2015 the original authors.
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
7
7
  # you may not use this file except in compliance with the License.
@@ -20,7 +20,7 @@
20
20
 
21
21
  ##############################################################################
22
22
  #
23
- # Gradle start up script for POSIX generated by Gradle.
23
+ # gradlew start up script for POSIX generated by Gradle.
24
24
  #
25
25
  # Important for running:
26
26
  #
@@ -29,7 +29,7 @@
29
29
  # bash, then to run this script, type that shell name before the whole
30
30
  # command line, like:
31
31
  #
32
- # ksh Gradle
32
+ # ksh gradlew
33
33
  #
34
34
  # Busybox and similar reduced shells will NOT work, because this script
35
35
  # requires all of these POSIX shell features:
@@ -57,7 +57,7 @@
57
57
  # Darwin, MinGW, and NonStop.
58
58
  #
59
59
  # (3) This script is generated from the Groovy template
60
- # https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
60
+ # https://github.com/gradle/gradle/blob/3d91ce3b8caaf77ad09f381f43615b715b53f72c/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
61
61
  # within the Gradle project.
62
62
  #
63
63
  # You can find Gradle at https://github.com/gradle/gradle/.
@@ -114,7 +114,6 @@ case "$( uname )" in #(
114
114
  NONSTOP* ) nonstop=true ;;
115
115
  esac
116
116
 
117
- CLASSPATH="\\\"\\\""
118
117
 
119
118
 
120
119
  # Determine the Java command to use to start the JVM.
@@ -172,7 +171,6 @@ fi
172
171
  # For Cygwin or MSYS, switch paths to Windows format before running java
173
172
  if "$cygwin" || "$msys" ; then
174
173
  APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
175
- CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
176
174
 
177
175
  JAVACMD=$( cygpath --unix "$JAVACMD" )
178
176
 
@@ -212,7 +210,6 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
212
210
 
213
211
  set -- \
214
212
  "-Dorg.gradle.appname=$APP_BASE_NAME" \
215
- -classpath "$CLASSPATH" \
216
213
  -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
217
214
  "$@"
218
215
 
@@ -1,94 +1,82 @@
1
- @rem
2
- @rem Copyright 2015 the original author or authors.
3
- @rem
4
- @rem Licensed under the Apache License, Version 2.0 (the "License");
5
- @rem you may not use this file except in compliance with the License.
6
- @rem You may obtain a copy of the License at
7
- @rem
8
- @rem https://www.apache.org/licenses/LICENSE-2.0
9
- @rem
10
- @rem Unless required by applicable law or agreed to in writing, software
11
- @rem distributed under the License is distributed on an "AS IS" BASIS,
12
- @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- @rem See the License for the specific language governing permissions and
14
- @rem limitations under the License.
15
- @rem
16
- @rem SPDX-License-Identifier: Apache-2.0
17
- @rem
18
-
19
- @if "%DEBUG%"=="" @echo off
20
- @rem ##########################################################################
21
- @rem
22
- @rem Gradle startup script for Windows
23
- @rem
24
- @rem ##########################################################################
25
-
26
- @rem Set local scope for the variables with windows NT shell
27
- if "%OS%"=="Windows_NT" setlocal
28
-
29
- set DIRNAME=%~dp0
30
- if "%DIRNAME%"=="" set DIRNAME=.
31
- @rem This is normally unused
32
- set APP_BASE_NAME=%~n0
33
- set APP_HOME=%DIRNAME%
34
-
35
- @rem Resolve any "." and ".." in APP_HOME to make it shorter.
36
- for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
37
-
38
- @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
39
- set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
40
-
41
- @rem Find java.exe
42
- if defined JAVA_HOME goto findJavaFromJavaHome
43
-
44
- set JAVA_EXE=java.exe
45
- %JAVA_EXE% -version >NUL 2>&1
46
- if %ERRORLEVEL% equ 0 goto execute
47
-
48
- echo. 1>&2
49
- echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
50
- echo. 1>&2
51
- echo Please set the JAVA_HOME variable in your environment to match the 1>&2
52
- echo location of your Java installation. 1>&2
53
-
54
- goto fail
55
-
56
- :findJavaFromJavaHome
57
- set JAVA_HOME=%JAVA_HOME:"=%
58
- set JAVA_EXE=%JAVA_HOME%/bin/java.exe
59
-
60
- if exist "%JAVA_EXE%" goto execute
61
-
62
- echo. 1>&2
63
- echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
64
- echo. 1>&2
65
- echo Please set the JAVA_HOME variable in your environment to match the 1>&2
66
- echo location of your Java installation. 1>&2
67
-
68
- goto fail
69
-
70
- :execute
71
- @rem Setup the command line
72
-
73
- set CLASSPATH=
74
-
75
-
76
- @rem Execute Gradle
77
- "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
78
-
79
- :end
80
- @rem End local scope for the variables with windows NT shell
81
- if %ERRORLEVEL% equ 0 goto mainEnd
82
-
83
- :fail
84
- rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
85
- rem the _cmd.exe /c_ return code!
86
- set EXIT_CODE=%ERRORLEVEL%
87
- if %EXIT_CODE% equ 0 set EXIT_CODE=1
88
- if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
89
- exit /b %EXIT_CODE%
90
-
91
- :mainEnd
92
- if "%OS%"=="Windows_NT" endlocal
93
-
94
- :omega
1
+ @rem
2
+ @rem Copyright 2015 the original author or authors.
3
+ @rem
4
+ @rem Licensed under the Apache License, Version 2.0 (the "License");
5
+ @rem you may not use this file except in compliance with the License.
6
+ @rem You may obtain a copy of the License at
7
+ @rem
8
+ @rem https://www.apache.org/licenses/LICENSE-2.0
9
+ @rem
10
+ @rem Unless required by applicable law or agreed to in writing, software
11
+ @rem distributed under the License is distributed on an "AS IS" BASIS,
12
+ @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ @rem See the License for the specific language governing permissions and
14
+ @rem limitations under the License.
15
+ @rem
16
+ @rem SPDX-License-Identifier: Apache-2.0
17
+ @rem
18
+
19
+ @if "%DEBUG%"=="" @echo off
20
+ @rem ##########################################################################
21
+ @rem
22
+ @rem gradlew startup script for Windows
23
+ @rem
24
+ @rem ##########################################################################
25
+
26
+ @rem Set local scope for the variables, and ensure extensions are enabled
27
+ setlocal EnableExtensions
28
+
29
+ set DIRNAME=%~dp0
30
+ if "%DIRNAME%"=="" set DIRNAME=.
31
+ @rem This is normally unused
32
+ set APP_BASE_NAME=%~n0
33
+ set APP_HOME=%DIRNAME%
34
+
35
+ @rem Resolve any "." and ".." in APP_HOME to make it shorter.
36
+ for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
37
+
38
+ @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
39
+ set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
40
+
41
+ @rem Find java.exe
42
+ if defined JAVA_HOME goto findJavaFromJavaHome
43
+
44
+ set JAVA_EXE=java.exe
45
+ %JAVA_EXE% -version >NUL 2>&1
46
+ if %ERRORLEVEL% equ 0 goto execute
47
+
48
+ echo. 1>&2
49
+ echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
50
+ echo. 1>&2
51
+ echo Please set the JAVA_HOME variable in your environment to match the 1>&2
52
+ echo location of your Java installation. 1>&2
53
+
54
+ "%COMSPEC%" /c exit 1
55
+
56
+ :findJavaFromJavaHome
57
+ set JAVA_HOME=%JAVA_HOME:"=%
58
+ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
59
+
60
+ if exist "%JAVA_EXE%" goto execute
61
+
62
+ echo. 1>&2
63
+ echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
64
+ echo. 1>&2
65
+ echo Please set the JAVA_HOME variable in your environment to match the 1>&2
66
+ echo location of your Java installation. 1>&2
67
+
68
+ "%COMSPEC%" /c exit 1
69
+
70
+ :execute
71
+ @rem Setup the command line
72
+
73
+
74
+
75
+ @rem Execute gradlew
76
+ @rem endlocal doesn't take effect until after the line is parsed and variables are expanded
77
+ @rem which allows us to clear the local environment before executing the java command
78
+ endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel
79
+
80
+ :exitWithErrorLevel
81
+ @rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts
82
+ "%COMSPEC%" /c exit %ERRORLEVEL%
@@ -1,16 +1,20 @@
1
1
  ext {
2
+ kotlin_version = '2.4.20'
3
+ androidxCoreKTXVersion = '1.19.0'
4
+ androidxExifInterfaceVersion = '1.4.2'
5
+ androidxMaterialVersion = '1.14.0'
2
6
  minSdkVersion = 26
3
- compileSdkVersion = 36
4
- targetSdkVersion = 36
5
- androidxActivityVersion = '1.11.0'
6
- androidxAppCompatVersion = '1.7.1'
7
+ compileSdkVersion = 37
8
+ targetSdkVersion = 37
9
+ androidxActivityVersion = '1.13.0'
10
+ androidxAppCompatVersion = '1.8.0'
7
11
  androidxCoordinatorLayoutVersion = '1.3.0'
8
- androidxCoreVersion = '1.17.0'
9
- androidxFragmentVersion = '1.8.9'
12
+ androidxCoreVersion = '1.19.0'
13
+ androidxFragmentVersion = '1.9.0'
10
14
  coreSplashScreenVersion = '1.2.0'
11
- androidxWebkitVersion = '1.14.0'
15
+ androidxWebkitVersion = '1.17.0'
12
16
  junitVersion = '4.13.2'
13
17
  androidxJunitVersion = '1.3.0'
14
18
  androidxEspressoCoreVersion = '3.7.0'
15
- cordovaAndroidVersion = '14.0.1'
16
- }
19
+ cordovaAndroidVersion = '15.1.0'
20
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "appId": "com.regula.example.face.capacitor",
3
+ "appName": "Face",
4
+ "webDir": "www",
5
+ "cordova": {
6
+ "preferences": {
7
+ "GradlePluginKotlinVersion": "2.4.20"
8
+ }
9
+ },
10
+ "plugins": {
11
+ "SystemBars": {
12
+ "insetsHandling": "disable"
13
+ }
14
+ }
15
+ }