diff --git a/.github/workflows/internal-build.yml b/.github/workflows/internal-build.yml
index cc1985f2..a6601d31 100644
--- a/.github/workflows/internal-build.yml
+++ b/.github/workflows/internal-build.yml
@@ -82,6 +82,14 @@ on:
options:
- false
- true
+ enable_auth:
+ description: 'Enable Authentication'
+ required: true
+ default: 'true'
+ type: choice
+ options:
+ - false
+ - true
jobs:
set-client-id:
@@ -166,6 +174,7 @@ jobs:
TESTFLIGHT_BETA_APP_DESCRIPTION: ${{ inputs.buildName }}
ALLOW_ENV_EDIT: ${{ inputs.allow_env_edit }}
LIVENESS_DETECTION: ${{ inputs.liveness_detection }}
+ ENABLE_AUTH: ${{ inputs.enable_auth }}
TESTFLIGHT_INTERNAL_TESTERS_GROUP: ${{ inputs.internal-testers }}
APP_FLAVOR: ${{ inputs.injiFlavor }}
SERVICE_LOCATION: '.'
diff --git a/ios/Inji.xcodeproj/project.pbxproj b/ios/Inji.xcodeproj/project.pbxproj
index 4e7de376..0a3f1493 100644
--- a/ios/Inji.xcodeproj/project.pbxproj
+++ b/ios/Inji.xcodeproj/project.pbxproj
@@ -27,10 +27,10 @@
9C5E69112D0ACAC000D31852 /* VCIClient in Frameworks */ = {isa = PBXBuildFile; productRef = 9C5E69102D0ACAC000D31852 /* VCIClient */; };
9C5E69142D0ACADA00D31852 /* pixelpass in Frameworks */ = {isa = PBXBuildFile; productRef = 9C5E69132D0ACADA00D31852 /* pixelpass */; };
9C5E69172D0ACB3C00D31852 /* OpenID4VP in Frameworks */ = {isa = PBXBuildFile; productRef = 9C5E69162D0ACB3C00D31852 /* OpenID4VP */; };
- 9C5E691A2D0ACB6400D31852 /* securekeystore in Frameworks */ = {isa = PBXBuildFile; productRef = 9C5E69192D0ACB6400D31852 /* securekeystore */; };
9C5E691D2D0ACB7A00D31852 /* ios-tuvali-library in Frameworks */ = {isa = PBXBuildFile; productRef = 9C5E691C2D0ACB7A00D31852 /* ios-tuvali-library */; };
9C7CDF3E2C7CBEDE00243A9A /* RNSecureKeystoreModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C7CDF3D2C7CBEDE00243A9A /* RNSecureKeystoreModule.swift */; };
9C7CDF432C7CC13500243A9A /* RNSecureKeystoreModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 9C7CDF422C7CC13500243A9A /* RNSecureKeystoreModule.m */; };
+ 9CCAAC202D425DB90032F366 /* securekeystore in Frameworks */ = {isa = PBXBuildFile; productRef = 9CCAAC1F2D425DB90032F366 /* securekeystore */; };
B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */; };
BB2F792D24A3F905000567C9 /* Expo.plist in Resources */ = {isa = PBXBuildFile; fileRef = BB2F792C24A3F905000567C9 /* Expo.plist */; };
E86208152C0335C5007C3E24 /* RNVCIClientModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = E86208142C0335C5007C3E24 /* RNVCIClientModule.swift */; };
@@ -116,7 +116,7 @@
9C5E69112D0ACAC000D31852 /* VCIClient in Frameworks */,
96905EF65AED1B983A6B3ABC /* libPods-Inji.a in Frameworks */,
9C5E69172D0ACB3C00D31852 /* OpenID4VP in Frameworks */,
- 9C5E691A2D0ACB6400D31852 /* securekeystore in Frameworks */,
+ 9CCAAC202D425DB90032F366 /* securekeystore in Frameworks */,
9C5E69142D0ACADA00D31852 /* pixelpass in Frameworks */,
9C5E691D2D0ACB7A00D31852 /* ios-tuvali-library in Frameworks */,
);
@@ -284,8 +284,8 @@
9C5E69102D0ACAC000D31852 /* VCIClient */,
9C5E69132D0ACADA00D31852 /* pixelpass */,
9C5E69162D0ACB3C00D31852 /* OpenID4VP */,
- 9C5E69192D0ACB6400D31852 /* securekeystore */,
9C5E691C2D0ACB7A00D31852 /* ios-tuvali-library */,
+ 9CCAAC1F2D425DB90032F366 /* securekeystore */,
);
productName = Inji;
productReference = 13B07F961A680F5B00A75B9A /* Inji.app */;
@@ -317,8 +317,8 @@
9C5E690F2D0ACAC000D31852 /* XCRemoteSwiftPackageReference "inji-vci-client-ios-swift" */,
9C5E69122D0ACADA00D31852 /* XCRemoteSwiftPackageReference "pixelpass-ios-swift" */,
9C5E69152D0ACB3C00D31852 /* XCRemoteSwiftPackageReference "inji-openid4vp-ios-swift" */,
- 9C5E69182D0ACB6400D31852 /* XCRemoteSwiftPackageReference "secure-keystore-ios-swift" */,
9C5E691B2D0ACB7A00D31852 /* XCRemoteSwiftPackageReference "tuvali-ios-swift" */,
+ 9CCAAC1E2D425DB90032F366 /* XCRemoteSwiftPackageReference "secure-keystore-ios-swift" */,
);
productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */;
projectDirPath = "";
@@ -787,14 +787,6 @@
kind = branch;
};
};
- 9C5E69182D0ACB6400D31852 /* XCRemoteSwiftPackageReference "secure-keystore-ios-swift" */ = {
- isa = XCRemoteSwiftPackageReference;
- repositoryURL = "https://github.com/mosip/secure-keystore-ios-swift";
- requirement = {
- branch = "release-0.3.x";
- kind = branch;
- };
- };
9C5E691B2D0ACB7A00D31852 /* XCRemoteSwiftPackageReference "tuvali-ios-swift" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/mosip/tuvali-ios-swift/";
@@ -803,6 +795,14 @@
kind = branch;
};
};
+ 9CCAAC1E2D425DB90032F366 /* XCRemoteSwiftPackageReference "secure-keystore-ios-swift" */ = {
+ isa = XCRemoteSwiftPackageReference;
+ repositoryURL = "https://github.com/tw-mosip/secure-keystore-ios-swift";
+ requirement = {
+ branch = "injimob-biometric-bypass";
+ kind = branch;
+ };
+ };
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
@@ -821,16 +821,16 @@
package = 9C5E69152D0ACB3C00D31852 /* XCRemoteSwiftPackageReference "inji-openid4vp-ios-swift" */;
productName = OpenID4VP;
};
- 9C5E69192D0ACB6400D31852 /* securekeystore */ = {
- isa = XCSwiftPackageProductDependency;
- package = 9C5E69182D0ACB6400D31852 /* XCRemoteSwiftPackageReference "secure-keystore-ios-swift" */;
- productName = securekeystore;
- };
9C5E691C2D0ACB7A00D31852 /* ios-tuvali-library */ = {
isa = XCSwiftPackageProductDependency;
package = 9C5E691B2D0ACB7A00D31852 /* XCRemoteSwiftPackageReference "tuvali-ios-swift" */;
productName = "ios-tuvali-library";
};
+ 9CCAAC1F2D425DB90032F366 /* securekeystore */ = {
+ isa = XCSwiftPackageProductDependency;
+ package = 9CCAAC1E2D425DB90032F366 /* XCRemoteSwiftPackageReference "secure-keystore-ios-swift" */;
+ productName = securekeystore;
+ };
/* End XCSwiftPackageProductDependency section */
};
rootObject = 83CBB9F71A601CBA00E9B192 /* Project object */;
diff --git a/ios/Inji.xcworkspace/xcshareddata/swiftpm/Package.resolved b/ios/Inji.xcworkspace/xcshareddata/swiftpm/Package.resolved
index 6f7a1759..f76f974a 100644
--- a/ios/Inji.xcworkspace/xcshareddata/swiftpm/Package.resolved
+++ b/ios/Inji.xcworkspace/xcshareddata/swiftpm/Package.resolved
@@ -1,5 +1,5 @@
{
- "originHash" : "5737403c0b9f43f503dc98794e8805e76575a62d145e75f6c4c953bff4223584",
+ "originHash" : "d0ef7729783f4c216ab7451a346f71c827dd7f1af2bc67d1a14254025e270a3c",
"pins" : [
{
"identity" : "base45-swift",
@@ -58,10 +58,10 @@
{
"identity" : "secure-keystore-ios-swift",
"kind" : "remoteSourceControl",
- "location" : "https://github.com/mosip/secure-keystore-ios-swift",
+ "location" : "https://github.com/tw-mosip/secure-keystore-ios-swift",
"state" : {
- "branch" : "release-0.3.x",
- "revision" : "661bdb56de5aeb26e0230be4490635fbcfe4513e"
+ "branch" : "injimob-biometric-bypass",
+ "revision" : "19f537cc8adb01389d4ce69281d1d0991ef68fb6"
}
},
{
diff --git a/ios/Inji/Info.plist b/ios/Inji/Info.plist
index 86db36c1..c92d8460 100644
--- a/ios/Inji/Info.plist
+++ b/ios/Inji/Info.plist
@@ -48,6 +48,8 @@
CFBundleVersion
$(CURRENT_PROJECT_VERSION)
+ ENABLE_AUTH
+ true
ITSAppUsesNonExemptEncryption
LSRequiresIPhoneOS
diff --git a/ios/Podfile b/ios/Podfile
index da9b5e71..9fc5cadc 100644
--- a/ios/Podfile
+++ b/ios/Podfile
@@ -59,6 +59,15 @@ target 'Inji' do
)
post_install do |installer|
+ installer.pods_project.targets.each do |target|
+ if target.name == 'RNZipArchive'
+ target.source_build_phase.files.each do |file|
+ if file.settings && file.settings['COMPILER_FLAGS']
+ file.settings['COMPILER_FLAGS'] = ''
+ end
+ end
+ end
+ end
react_native_post_install(
installer,
config[:reactNativePath],
@@ -78,6 +87,28 @@ target 'Inji' do
end
end
end
+ plist_path = File.join(__dir__, 'Inji/Info.plist')
+
+ # Check if Info.plist exists
+ if File.exist?(plist_path)
+ require 'json'
+
+ # Read the Info.plist file
+ plist = JSON.parse(`plutil -convert json -o - "#{plist_path}"`)
+
+ # Add ENABLE_AUTH key
+ plist['ENABLE_AUTH'] = ENV['ENABLE_AUTH'] || 'true'
+
+ # Write back to Info.plist
+ File.open(plist_path, 'w') do |file|
+ file.write(JSON.pretty_generate(plist))
+ end
+
+ # Convert back to XML format
+ system("plutil -convert xml1 #{plist_path}")
+ else
+ Pod::UI.warn "Info.plist not found at #{plist_path}"
+ end
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)', '_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION']
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index c24af9d1..ef78dc9d 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -1025,6 +1025,6 @@ SPEC CHECKSUMS:
Yoga: 065f0b74dba4832d6e328238de46eb72c5de9556
ZXingObjC: fdbb269f25dd2032da343e06f10224d62f537bdb
-PODFILE CHECKSUM: 44ee7985ac0203f16a6b823b6972530b17704618
+PODFILE CHECKSUM: 5ff60e5fc9fdd83677d9f9e4936f79a10e76d86b
COCOAPODS: 1.16.2