From fd57002dc5e1b97fbfa0f234df3f1b684f8db890 Mon Sep 17 00:00:00 2001 From: Javokhir Date: Tue, 29 Apr 2025 11:55:08 +0500 Subject: [PATCH] 2.3.9 --- .gitignore | 13 +- CHANGELOG.md | 4 + MyIdSample.xcodeproj/project.pbxproj | 813 ------------------ .../xcshareddata/IDEWorkspaceChecks.plist | 8 - .../xcschemes/MyIdSample.xcscheme | 99 --- .../contents.xcworkspacedata | 10 - .../xcshareddata/IDEWorkspaceChecks.plist | 8 - MyIdSample/.DS_Store | Bin 6148 -> 0 bytes MyIdSample/Assets.xcassets/.DS_Store | Bin 6148 -> 0 bytes MyIdSample/Base.lproj/LaunchScreen.storyboard | 25 - MyIdSample/Base.lproj/Main.storyboard | 33 - MyIdSample/Info.plist | 25 - MyIdSample/ObjC/StartViewController.h | 14 - MyIdSample/ObjC/StartViewController.m | 60 -- MyIdSample/Swift/.DS_Store | Bin 6148 -> 0 bytes MyIdSample/Swift/AppDelegate.swift | 24 - MyIdSample/Swift/SceneDelegate.swift | 33 - MyIdSample/Swift/ViewController.swift | 194 ----- Podfile | 18 - Podfile.lock | 16 - myid-ios-parent.xcodeproj/project.pbxproj | 394 +++++++++ .../contents.xcworkspacedata | 0 .../AccentColor.colorset/Contents.json | 0 .../AppIcon.appiconset/100.png | Bin 0 -> 1081 bytes .../AppIcon.appiconset/1024.png | Bin 0 -> 30894 bytes .../AppIcon.appiconset/114.png | Bin 0 -> 1237 bytes .../AppIcon.appiconset/120.png | Bin 0 -> 1390 bytes .../AppIcon.appiconset/144.png | Bin 0 -> 1742 bytes .../AppIcon.appiconset/152.png | Bin 0 -> 1766 bytes .../AppIcon.appiconset/167.png | Bin 0 -> 1998 bytes .../AppIcon.appiconset/180.png | Bin 0 -> 2327 bytes .../Assets.xcassets/AppIcon.appiconset/20.png | Bin 0 -> 205 bytes .../Assets.xcassets/AppIcon.appiconset/29.png | Bin 0 -> 286 bytes .../Assets.xcassets/AppIcon.appiconset/40.png | Bin 0 -> 388 bytes .../Assets.xcassets/AppIcon.appiconset/50.png | Bin 0 -> 518 bytes .../Assets.xcassets/AppIcon.appiconset/57.png | Bin 0 -> 541 bytes .../Assets.xcassets/AppIcon.appiconset/58.png | Bin 0 -> 537 bytes .../Assets.xcassets/AppIcon.appiconset/60.png | Bin 0 -> 590 bytes .../Assets.xcassets/AppIcon.appiconset/72.png | Bin 0 -> 684 bytes .../Assets.xcassets/AppIcon.appiconset/76.png | Bin 0 -> 786 bytes .../Assets.xcassets/AppIcon.appiconset/80.png | Bin 0 -> 859 bytes .../Assets.xcassets/AppIcon.appiconset/87.png | Bin 0 -> 1013 bytes .../AppIcon.appiconset/Contents.json | 65 ++ .../Assets.xcassets/Contents.json | 0 myid-ios-parent/ContentView.swift | 109 +++ .../Preview Assets.xcassets/Contents.json | 6 + myid-ios-parent/ViewModel.swift | 66 ++ myid-ios-parent/myid_ios_parentApp.swift | 14 + 48 files changed, 666 insertions(+), 1385 deletions(-) delete mode 100644 MyIdSample.xcodeproj/project.pbxproj delete mode 100644 MyIdSample.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 MyIdSample.xcodeproj/xcshareddata/xcschemes/MyIdSample.xcscheme delete mode 100644 MyIdSample.xcworkspace/contents.xcworkspacedata delete mode 100644 MyIdSample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 MyIdSample/.DS_Store delete mode 100644 MyIdSample/Assets.xcassets/.DS_Store delete mode 100644 MyIdSample/Base.lproj/LaunchScreen.storyboard delete mode 100644 MyIdSample/Base.lproj/Main.storyboard delete mode 100644 MyIdSample/Info.plist delete mode 100644 MyIdSample/ObjC/StartViewController.h delete mode 100644 MyIdSample/ObjC/StartViewController.m delete mode 100644 MyIdSample/Swift/.DS_Store delete mode 100644 MyIdSample/Swift/AppDelegate.swift delete mode 100644 MyIdSample/Swift/SceneDelegate.swift delete mode 100644 MyIdSample/Swift/ViewController.swift delete mode 100644 Podfile delete mode 100644 Podfile.lock create mode 100644 myid-ios-parent.xcodeproj/project.pbxproj rename {MyIdSample.xcodeproj => myid-ios-parent.xcodeproj}/project.xcworkspace/contents.xcworkspacedata (100%) rename {MyIdSample => myid-ios-parent}/Assets.xcassets/AccentColor.colorset/Contents.json (100%) create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/100.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/1024.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/114.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/120.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/144.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/152.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/167.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/180.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/20.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/29.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/40.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/50.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/57.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/58.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/60.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/72.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/76.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/80.png create mode 100644 myid-ios-parent/Assets.xcassets/AppIcon.appiconset/87.png rename {MyIdSample => myid-ios-parent}/Assets.xcassets/AppIcon.appiconset/Contents.json (51%) rename {MyIdSample => myid-ios-parent}/Assets.xcassets/Contents.json (100%) create mode 100644 myid-ios-parent/ContentView.swift create mode 100644 myid-ios-parent/Preview Content/Preview Assets.xcassets/Contents.json create mode 100644 myid-ios-parent/ViewModel.swift create mode 100644 myid-ios-parent/myid_ios_parentApp.swift diff --git a/.gitignore b/.gitignore index ba1ff08..a5c1eae 100644 --- a/.gitignore +++ b/.gitignore @@ -37,9 +37,9 @@ playground.xcworkspace # Swift Package Manager # # Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. -# Packages/ -# Package.pins -# Package.resolved +Packages/ +Package.pins +Package.resolved # *.xcodeproj # # Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata @@ -54,7 +54,7 @@ playground.xcworkspace # you should judge for yourself, the pros and cons are mentioned at: # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control # -# Pods/ +Pods/ # # Add this line if you want to avoid checking in source code from the Xcode workspace # *.xcworkspace @@ -87,4 +87,7 @@ fastlane/test_output # After new code Injection tools there's a generated folder /iOSInjectionProject # https://github.com/johnno1962/injectionforxcode -iOSInjectionProject/ \ No newline at end of file +iOSInjectionProject/ + +# MacOS +.DS_Store \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 148897c..7a639e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # CHANGELOG +## [2.3.9] - 29 Apr, 2025 + +- 🔨 Updated several enum values for better clarity + ## [2.3.8] - 25 Apr, 2025 - 🔥 Improved overall performance and stability diff --git a/MyIdSample.xcodeproj/project.pbxproj b/MyIdSample.xcodeproj/project.pbxproj deleted file mode 100644 index 0b91bb2..0000000 --- a/MyIdSample.xcodeproj/project.pbxproj +++ /dev/null @@ -1,813 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 55; - objects = { - -/* Begin PBXBuildFile section */ - 4A0C1B0271B1A8BAF3B2EFEF /* Pods_MyIdSample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D2ABB1AECB56DAC1FB3888A8 /* Pods_MyIdSample.framework */; }; - 6DD231C7C89B2B5662F00170 /* Pods_MyIdSample_MyIdSampleUITests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0584B25B2F961E34B28B8037 /* Pods_MyIdSample_MyIdSampleUITests.framework */; }; - 7E2F858C28F7186800290C6E /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2F858B28F7186800290C6E /* AppDelegate.swift */; }; - 7E2F858E28F7186800290C6E /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2F858D28F7186800290C6E /* SceneDelegate.swift */; }; - 7E2F859028F7186800290C6E /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2F858F28F7186800290C6E /* ViewController.swift */; }; - 7E2F859328F7186800290C6E /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7E2F859128F7186800290C6E /* Main.storyboard */; }; - 7E2F859528F7186900290C6E /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7E2F859428F7186900290C6E /* Assets.xcassets */; }; - 7E2F859828F7186900290C6E /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7E2F859628F7186900290C6E /* LaunchScreen.storyboard */; }; - 7E2F85A328F7186A00290C6E /* MyIdSampleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2F85A228F7186A00290C6E /* MyIdSampleTests.swift */; }; - 7E2F85AD28F7186A00290C6E /* MyIdSampleUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2F85AC28F7186A00290C6E /* MyIdSampleUITests.swift */; }; - 7E2F85AF28F7186A00290C6E /* MyIdSampleUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2F85AE28F7186A00290C6E /* MyIdSampleUITestsLaunchTests.swift */; }; - 7E3FCB122A43B5BC00255A9C /* ImageSaver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E3FCB112A43B5BC00255A9C /* ImageSaver.swift */; }; - 7E6924E328F73CE6009565F7 /* StartViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E6924E228F73CE6009565F7 /* StartViewController.m */; }; - C6EDC8ED0F24CF391C421A1A /* Pods_MyIdSampleTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6A8AFA09F817C996454C7E56 /* Pods_MyIdSampleTests.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 7E2F859F28F7186A00290C6E /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7E2F858028F7186800290C6E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 7E2F858728F7186800290C6E; - remoteInfo = MyIdSample; - }; - 7E2F85A928F7186A00290C6E /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7E2F858028F7186800290C6E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 7E2F858728F7186800290C6E; - remoteInfo = MyIdSample; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 7E72E5392A9883AD00152C1F /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 0584B25B2F961E34B28B8037 /* Pods_MyIdSample_MyIdSampleUITests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MyIdSample_MyIdSampleUITests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3749E526FB91A5B40C1F4A14 /* Pods-MyIdSampleTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MyIdSampleTests.release.xcconfig"; path = "Target Support Files/Pods-MyIdSampleTests/Pods-MyIdSampleTests.release.xcconfig"; sourceTree = ""; }; - 4DB1B60DE92CE8FF0B0B660B /* Pods-MyIdSample-MyIdSampleUITests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MyIdSample-MyIdSampleUITests.debug.xcconfig"; path = "Target Support Files/Pods-MyIdSample-MyIdSampleUITests/Pods-MyIdSample-MyIdSampleUITests.debug.xcconfig"; sourceTree = ""; }; - 5FED4B5FF06CA02D7380B4F6 /* Pods-MyIdSample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MyIdSample.release.xcconfig"; path = "Target Support Files/Pods-MyIdSample/Pods-MyIdSample.release.xcconfig"; sourceTree = ""; }; - 6778206B4335C1A61CF0B30F /* Pods-MyIdSampleTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MyIdSampleTests.debug.xcconfig"; path = "Target Support Files/Pods-MyIdSampleTests/Pods-MyIdSampleTests.debug.xcconfig"; sourceTree = ""; }; - 6A8AFA09F817C996454C7E56 /* Pods_MyIdSampleTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MyIdSampleTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 7E2F858828F7186800290C6E /* MyIdSample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MyIdSample.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 7E2F858B28F7186800290C6E /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 7E2F858D28F7186800290C6E /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = ""; }; - 7E2F858F28F7186800290C6E /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; - 7E2F859228F7186800290C6E /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 7E2F859428F7186900290C6E /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 7E2F859728F7186900290C6E /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - 7E2F859928F7186900290C6E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 7E2F859E28F7186A00290C6E /* MyIdSampleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MyIdSampleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 7E2F85A228F7186A00290C6E /* MyIdSampleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MyIdSampleTests.swift; sourceTree = ""; }; - 7E2F85A828F7186A00290C6E /* MyIdSampleUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MyIdSampleUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 7E2F85AC28F7186A00290C6E /* MyIdSampleUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MyIdSampleUITests.swift; sourceTree = ""; }; - 7E2F85AE28F7186A00290C6E /* MyIdSampleUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MyIdSampleUITestsLaunchTests.swift; sourceTree = ""; }; - 7E3FCB112A43B5BC00255A9C /* ImageSaver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageSaver.swift; sourceTree = ""; }; - 7E6924E028F73CDD009565F7 /* MyIdSample-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "MyIdSample-Bridging-Header.h"; sourceTree = ""; }; - 7E6924E128F73CE4009565F7 /* StartViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StartViewController.h; sourceTree = ""; }; - 7E6924E228F73CE6009565F7 /* StartViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StartViewController.m; sourceTree = ""; }; - B087814E61624E7CFF3C815B /* Pods-MyIdSample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MyIdSample.debug.xcconfig"; path = "Target Support Files/Pods-MyIdSample/Pods-MyIdSample.debug.xcconfig"; sourceTree = ""; }; - D2ABB1AECB56DAC1FB3888A8 /* Pods_MyIdSample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MyIdSample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - F6C0106D3DB6855BEC00FE4D /* Pods-MyIdSample-MyIdSampleUITests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MyIdSample-MyIdSampleUITests.release.xcconfig"; path = "Target Support Files/Pods-MyIdSample-MyIdSampleUITests/Pods-MyIdSample-MyIdSampleUITests.release.xcconfig"; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 7E2F858528F7186800290C6E /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 4A0C1B0271B1A8BAF3B2EFEF /* Pods_MyIdSample.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7E2F859B28F7186A00290C6E /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - C6EDC8ED0F24CF391C421A1A /* Pods_MyIdSampleTests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7E2F85A528F7186A00290C6E /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 6DD231C7C89B2B5662F00170 /* Pods_MyIdSample_MyIdSampleUITests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 0C1C95B507A993AD65DEE004 /* Pods */ = { - isa = PBXGroup; - children = ( - B087814E61624E7CFF3C815B /* Pods-MyIdSample.debug.xcconfig */, - 5FED4B5FF06CA02D7380B4F6 /* Pods-MyIdSample.release.xcconfig */, - 4DB1B60DE92CE8FF0B0B660B /* Pods-MyIdSample-MyIdSampleUITests.debug.xcconfig */, - F6C0106D3DB6855BEC00FE4D /* Pods-MyIdSample-MyIdSampleUITests.release.xcconfig */, - 6778206B4335C1A61CF0B30F /* Pods-MyIdSampleTests.debug.xcconfig */, - 3749E526FB91A5B40C1F4A14 /* Pods-MyIdSampleTests.release.xcconfig */, - ); - path = Pods; - sourceTree = ""; - }; - 7E2F857F28F7186800290C6E = { - isa = PBXGroup; - children = ( - 7E2F858A28F7186800290C6E /* MyIdSample */, - 7E2F85A128F7186A00290C6E /* MyIdSampleTests */, - 7E2F85AB28F7186A00290C6E /* MyIdSampleUITests */, - 7E2F858928F7186800290C6E /* Products */, - 0C1C95B507A993AD65DEE004 /* Pods */, - 7E6924E028F73CDD009565F7 /* MyIdSample-Bridging-Header.h */, - 921C89C354748A1E6176061F /* Frameworks */, - ); - sourceTree = ""; - }; - 7E2F858928F7186800290C6E /* Products */ = { - isa = PBXGroup; - children = ( - 7E2F858828F7186800290C6E /* MyIdSample.app */, - 7E2F859E28F7186A00290C6E /* MyIdSampleTests.xctest */, - 7E2F85A828F7186A00290C6E /* MyIdSampleUITests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - 7E2F858A28F7186800290C6E /* MyIdSample */ = { - isa = PBXGroup; - children = ( - 7E6924E528F73D30009565F7 /* ObjC */, - 7E6924E428F73D23009565F7 /* Swift */, - 7E2F859128F7186800290C6E /* Main.storyboard */, - 7E2F859428F7186900290C6E /* Assets.xcassets */, - 7E2F859628F7186900290C6E /* LaunchScreen.storyboard */, - 7E2F859928F7186900290C6E /* Info.plist */, - ); - path = MyIdSample; - sourceTree = ""; - }; - 7E2F85A128F7186A00290C6E /* MyIdSampleTests */ = { - isa = PBXGroup; - children = ( - 7E2F85A228F7186A00290C6E /* MyIdSampleTests.swift */, - ); - path = MyIdSampleTests; - sourceTree = ""; - }; - 7E2F85AB28F7186A00290C6E /* MyIdSampleUITests */ = { - isa = PBXGroup; - children = ( - 7E2F85AC28F7186A00290C6E /* MyIdSampleUITests.swift */, - 7E2F85AE28F7186A00290C6E /* MyIdSampleUITestsLaunchTests.swift */, - ); - path = MyIdSampleUITests; - sourceTree = ""; - }; - 7E6924E428F73D23009565F7 /* Swift */ = { - isa = PBXGroup; - children = ( - 7E2F858B28F7186800290C6E /* AppDelegate.swift */, - 7E2F858D28F7186800290C6E /* SceneDelegate.swift */, - 7E2F858F28F7186800290C6E /* ViewController.swift */, - 7E3FCB112A43B5BC00255A9C /* ImageSaver.swift */, - ); - path = Swift; - sourceTree = ""; - }; - 7E6924E528F73D30009565F7 /* ObjC */ = { - isa = PBXGroup; - children = ( - 7E6924E128F73CE4009565F7 /* StartViewController.h */, - 7E6924E228F73CE6009565F7 /* StartViewController.m */, - ); - path = ObjC; - sourceTree = ""; - }; - 921C89C354748A1E6176061F /* Frameworks */ = { - isa = PBXGroup; - children = ( - D2ABB1AECB56DAC1FB3888A8 /* Pods_MyIdSample.framework */, - 0584B25B2F961E34B28B8037 /* Pods_MyIdSample_MyIdSampleUITests.framework */, - 6A8AFA09F817C996454C7E56 /* Pods_MyIdSampleTests.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 7E2F858728F7186800290C6E /* MyIdSample */ = { - isa = PBXNativeTarget; - buildConfigurationList = 7E2F85B228F7186A00290C6E /* Build configuration list for PBXNativeTarget "MyIdSample" */; - buildPhases = ( - 2DFD6017CB4A2C531A446287 /* [CP] Check Pods Manifest.lock */, - 7E2F858428F7186800290C6E /* Sources */, - 7E2F858528F7186800290C6E /* Frameworks */, - 7E2F858628F7186800290C6E /* Resources */, - 7E72E5392A9883AD00152C1F /* Embed Frameworks */, - 00E65D69E2AE48B14E91CF41 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = MyIdSample; - productName = MyIdSample; - productReference = 7E2F858828F7186800290C6E /* MyIdSample.app */; - productType = "com.apple.product-type.application"; - }; - 7E2F859D28F7186A00290C6E /* MyIdSampleTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 7E2F85B528F7186A00290C6E /* Build configuration list for PBXNativeTarget "MyIdSampleTests" */; - buildPhases = ( - 64CC484CD6A4933808E429C7 /* [CP] Check Pods Manifest.lock */, - 7E2F859A28F7186A00290C6E /* Sources */, - 7E2F859B28F7186A00290C6E /* Frameworks */, - 7E2F859C28F7186A00290C6E /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 7E2F85A028F7186A00290C6E /* PBXTargetDependency */, - ); - name = MyIdSampleTests; - productName = MyIdSampleTests; - productReference = 7E2F859E28F7186A00290C6E /* MyIdSampleTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - 7E2F85A728F7186A00290C6E /* MyIdSampleUITests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 7E2F85B828F7186A00290C6E /* Build configuration list for PBXNativeTarget "MyIdSampleUITests" */; - buildPhases = ( - 70E3FB52F73FA2356B9D2593 /* [CP] Check Pods Manifest.lock */, - 7E2F85A428F7186A00290C6E /* Sources */, - 7E2F85A528F7186A00290C6E /* Frameworks */, - 7E2F85A628F7186A00290C6E /* Resources */, - DD1186AEEE8050679BEC36C9 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 7E2F85AA28F7186A00290C6E /* PBXTargetDependency */, - ); - name = MyIdSampleUITests; - productName = MyIdSampleUITests; - productReference = 7E2F85A828F7186A00290C6E /* MyIdSampleUITests.xctest */; - productType = "com.apple.product-type.bundle.ui-testing"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 7E2F858028F7186800290C6E /* Project object */ = { - isa = PBXProject; - attributes = { - BuildIndependentTargetsInParallel = 1; - LastSwiftUpdateCheck = 1340; - LastUpgradeCheck = 1340; - TargetAttributes = { - 7E2F858728F7186800290C6E = { - CreatedOnToolsVersion = 13.4.1; - LastSwiftMigration = 1400; - }; - 7E2F859D28F7186A00290C6E = { - CreatedOnToolsVersion = 13.4.1; - TestTargetID = 7E2F858728F7186800290C6E; - }; - 7E2F85A728F7186A00290C6E = { - CreatedOnToolsVersion = 13.4.1; - TestTargetID = 7E2F858728F7186800290C6E; - }; - }; - }; - buildConfigurationList = 7E2F858328F7186800290C6E /* Build configuration list for PBXProject "MyIdSample" */; - compatibilityVersion = "Xcode 13.0"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 7E2F857F28F7186800290C6E; - productRefGroup = 7E2F858928F7186800290C6E /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 7E2F858728F7186800290C6E /* MyIdSample */, - 7E2F859D28F7186A00290C6E /* MyIdSampleTests */, - 7E2F85A728F7186A00290C6E /* MyIdSampleUITests */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 7E2F858628F7186800290C6E /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7E2F859828F7186900290C6E /* LaunchScreen.storyboard in Resources */, - 7E2F859528F7186900290C6E /* Assets.xcassets in Resources */, - 7E2F859328F7186800290C6E /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7E2F859C28F7186A00290C6E /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7E2F85A628F7186A00290C6E /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 00E65D69E2AE48B14E91CF41 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MyIdSample/Pods-MyIdSample-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MyIdSample/Pods-MyIdSample-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MyIdSample/Pods-MyIdSample-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 2DFD6017CB4A2C531A446287 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-MyIdSample-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 64CC484CD6A4933808E429C7 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-MyIdSampleTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 70E3FB52F73FA2356B9D2593 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-MyIdSample-MyIdSampleUITests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - DD1186AEEE8050679BEC36C9 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MyIdSample-MyIdSampleUITests/Pods-MyIdSample-MyIdSampleUITests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MyIdSample-MyIdSampleUITests/Pods-MyIdSample-MyIdSampleUITests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MyIdSample-MyIdSampleUITests/Pods-MyIdSample-MyIdSampleUITests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 7E2F858428F7186800290C6E /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7E2F859028F7186800290C6E /* ViewController.swift in Sources */, - 7E6924E328F73CE6009565F7 /* StartViewController.m in Sources */, - 7E3FCB122A43B5BC00255A9C /* ImageSaver.swift in Sources */, - 7E2F858C28F7186800290C6E /* AppDelegate.swift in Sources */, - 7E2F858E28F7186800290C6E /* SceneDelegate.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7E2F859A28F7186A00290C6E /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7E2F85A328F7186A00290C6E /* MyIdSampleTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7E2F85A428F7186A00290C6E /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7E2F85AD28F7186A00290C6E /* MyIdSampleUITests.swift in Sources */, - 7E2F85AF28F7186A00290C6E /* MyIdSampleUITestsLaunchTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 7E2F85A028F7186A00290C6E /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 7E2F858728F7186800290C6E /* MyIdSample */; - targetProxy = 7E2F859F28F7186A00290C6E /* PBXContainerItemProxy */; - }; - 7E2F85AA28F7186A00290C6E /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 7E2F858728F7186800290C6E /* MyIdSample */; - targetProxy = 7E2F85A928F7186A00290C6E /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 7E2F859128F7186800290C6E /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 7E2F859228F7186800290C6E /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 7E2F859628F7186900290C6E /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 7E2F859728F7186900290C6E /* Base */, - ); - name = LaunchScreen.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 7E2F85B028F7186A00290C6E /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; - 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; - 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.5; - 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; - }; - 7E2F85B128F7186A00290C6E /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++17"; - 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.5; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 7E2F85B328F7186A00290C6E /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = B087814E61624E7CFF3C815B /* Pods-MyIdSample.debug.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = S46NMW9Y9P; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = MyIdSample/Info.plist; - INFOPLIST_KEY_NSCameraUsageDescription = YOUR_TEXT; - INFOPLIST_KEY_NSPhotoLibraryUsageDescription = YOUR_TEXT; - INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; - INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen; - INFOPLIST_KEY_UIMainStoryboardFile = Main; - INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait; - INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0.3; - PRODUCT_BUNDLE_IDENTIFIER = uz.myid.ios.sample; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_OBJC_BRIDGING_HEADER = "MyIdSample-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 7E2F85B428F7186A00290C6E /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 5FED4B5FF06CA02D7380B4F6 /* Pods-MyIdSample.release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = S46NMW9Y9P; - GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = MyIdSample/Info.plist; - INFOPLIST_KEY_NSCameraUsageDescription = YOUR_TEXT; - INFOPLIST_KEY_NSPhotoLibraryUsageDescription = YOUR_TEXT; - INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; - INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen; - INFOPLIST_KEY_UIMainStoryboardFile = Main; - INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait; - INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0.3; - PRODUCT_BUNDLE_IDENTIFIER = uz.myid.ios.sample; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_EMIT_LOC_STRINGS = YES; - SWIFT_OBJC_BRIDGING_HEADER = "MyIdSample-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; - 7E2F85B628F7186A00290C6E /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6778206B4335C1A61CF0B30F /* Pods-MyIdSampleTests.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 15.5; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = uz.MyIdSampleTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_EMIT_LOC_STRINGS = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/MyIdSample.app/MyIdSample"; - }; - name = Debug; - }; - 7E2F85B728F7186A00290C6E /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 3749E526FB91A5B40C1F4A14 /* Pods-MyIdSampleTests.release.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 15.5; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = uz.MyIdSampleTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_EMIT_LOC_STRINGS = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/MyIdSample.app/MyIdSample"; - }; - name = Release; - }; - 7E2F85B928F7186A00290C6E /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 4DB1B60DE92CE8FF0B0B660B /* Pods-MyIdSample-MyIdSampleUITests.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - GENERATE_INFOPLIST_FILE = YES; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = uz.MyIdSampleUITests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_EMIT_LOC_STRINGS = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_TARGET_NAME = MyIdSample; - }; - name = Debug; - }; - 7E2F85BA28F7186A00290C6E /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = F6C0106D3DB6855BEC00FE4D /* Pods-MyIdSample-MyIdSampleUITests.release.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - GENERATE_INFOPLIST_FILE = YES; - MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = uz.MyIdSampleUITests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_EMIT_LOC_STRINGS = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_TARGET_NAME = MyIdSample; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 7E2F858328F7186800290C6E /* Build configuration list for PBXProject "MyIdSample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7E2F85B028F7186A00290C6E /* Debug */, - 7E2F85B128F7186A00290C6E /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 7E2F85B228F7186A00290C6E /* Build configuration list for PBXNativeTarget "MyIdSample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7E2F85B328F7186A00290C6E /* Debug */, - 7E2F85B428F7186A00290C6E /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 7E2F85B528F7186A00290C6E /* Build configuration list for PBXNativeTarget "MyIdSampleTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7E2F85B628F7186A00290C6E /* Debug */, - 7E2F85B728F7186A00290C6E /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 7E2F85B828F7186A00290C6E /* Build configuration list for PBXNativeTarget "MyIdSampleUITests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7E2F85B928F7186A00290C6E /* Debug */, - 7E2F85BA28F7186A00290C6E /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 7E2F858028F7186800290C6E /* Project object */; -} diff --git a/MyIdSample.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/MyIdSample.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d9810..0000000 --- a/MyIdSample.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/MyIdSample.xcodeproj/xcshareddata/xcschemes/MyIdSample.xcscheme b/MyIdSample.xcodeproj/xcshareddata/xcschemes/MyIdSample.xcscheme deleted file mode 100644 index 99df6e6..0000000 --- a/MyIdSample.xcodeproj/xcshareddata/xcschemes/MyIdSample.xcscheme +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MyIdSample.xcworkspace/contents.xcworkspacedata b/MyIdSample.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index bbda0dc..0000000 --- a/MyIdSample.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - diff --git a/MyIdSample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/MyIdSample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d9810..0000000 --- a/MyIdSample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/MyIdSample/.DS_Store b/MyIdSample/.DS_Store deleted file mode 100644 index 33ab271e3bf2022e3212f42ad84b516be656fc49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHKF>ljA6n@vHsnZIG5J;Vn1tU>N(*Q**sT*bxMlb+M?K-qBjxUNGj1)!63_qb0 z;twFPFfw&yWQBnr!h3g@a8^L!|mJkie10i7**`yoqDZe zH@0q#MkVX=wHtRIwqHiwn7<*baD%}eM#MRV6L^aQZAE!6w}0fbx|`L;)#7*gm#Oh} zKj&BE9o-`x8vm8sk0Tx*;Os;(RV-pCeb)LSiZhyw1IB@W>HvKoY;1&0g=2~0(}A5h z0w5M}S_F>iEI}MwVN>B)B4#j{q#{ZxQ%4LY={Rqzx~9UhL`esx4j)WCnW+;B6Hmwc z+oBv;Q=;jO1IB^81IzNVO#A=6)6f5TlDRSt7zh3<2Uwxywj5lN+FNH9M|-V}Z4Vm- q)r}S5T30SB3_Dk@R++G^bOJ)51#u1+E%KNG_lr`mpp@4Pd(bw?gd-%-{ zF{Kq61VNbzvtM?0C)@AalF1TL7~W6&L_H#k;EbI;G#iY^+1IRN5grWkj5#golnTn= zZht`m-n&B@&;-{NHTQ2pCy41@F6a)U%WT#kO^UoUVh?R{^CC^hSusXVbo=uB^nUy{ zXqP|zQGR*d{O$aIrvvaVah(g#Irv^m|Hk?oIPZRJo7d#~_*(PbYR$a(;@UQM15f7a z<_fq1u0T@()NHnBU(s7vz!h)>Y6bZH5W^W0!%9(J9cbhT0PG?xhI{$80>&HwCWe(F zBCw#TKuryH#0Z*>cx>|$!%9)pDagurj;$Q*gc4+R#ABIGAyM?!6>tSs71+^kkL&;0 z_vioBB=5NbuE4)iAav7FIs_%Ft!w1C*2eG)I2+Ha6zde+NGZl#F2zT1F~noO0Val( RA|f#V5D*!>aRq)=flvF - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MyIdSample/Base.lproj/Main.storyboard b/MyIdSample/Base.lproj/Main.storyboard deleted file mode 100644 index 96f9830..0000000 --- a/MyIdSample/Base.lproj/Main.storyboard +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MyIdSample/Info.plist b/MyIdSample/Info.plist deleted file mode 100644 index dd3c9af..0000000 --- a/MyIdSample/Info.plist +++ /dev/null @@ -1,25 +0,0 @@ - - - - - UIApplicationSceneManifest - - UIApplicationSupportsMultipleScenes - - UISceneConfigurations - - UIWindowSceneSessionRoleApplication - - - UISceneConfigurationName - Default Configuration - UISceneDelegateClassName - $(PRODUCT_MODULE_NAME).SceneDelegate - UISceneStoryboardFile - Main - - - - - - diff --git a/MyIdSample/ObjC/StartViewController.h b/MyIdSample/ObjC/StartViewController.h deleted file mode 100644 index 164b656..0000000 --- a/MyIdSample/ObjC/StartViewController.h +++ /dev/null @@ -1,14 +0,0 @@ -// -// StartViewController.h -// MyIdSample -// - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface StartViewController : UIViewController - -@end - -NS_ASSUME_NONNULL_END diff --git a/MyIdSample/ObjC/StartViewController.m b/MyIdSample/ObjC/StartViewController.m deleted file mode 100644 index fafc48d..0000000 --- a/MyIdSample/ObjC/StartViewController.m +++ /dev/null @@ -1,60 +0,0 @@ -// -// StartViewController.m -// MyIdSample - -#import "StartViewController.h" -@import MyIdSDK; - -@interface StartViewController () - -@end - -@implementation StartViewController - -- (void)viewDidLoad { - [super viewDidLoad]; - // Do any additional setup after loading the view. -} - -- (IBAction)startMyId { - MyIdOrganizationDetails *organizationDetails = [[MyIdOrganizationDetails alloc] init]; - organizationDetails.phoneNumber = @"4242"; - - MyIdAppearance *appearance = [[MyIdAppearance alloc] init]; - appearance.primaryColor = [UIColor systemBlueColor]; - - MyIdConfig *config = [[MyIdConfig alloc] init]; - config.clientId = @""; - config.passportData = @""; - config.dateOfBirth = @""; - config.externalId = @""; - config.buildMode = MyIdBuildModePRODUCTION; - config.entryType = MyIdEntryTypeAUTH; - config.residency = MyIdResidencyRESIDENT; - config.locale = MyIdLocaleUZ; - config.cameraShape = MyIdCameraShapeCIRCLE; - config.organizationDetails = organizationDetails; - config.appearance = appearance; - config.withPhoto = false; - - [MyIdClient startWithConfig:config withDelegate:self]; -} - -#pragma mark MyIdClientDelegate - -- (void)onSuccessWithResult:(MyIdResult *)result { - NSLog(@"%@", result.code); - NSLog(@"%@", result.comparisonValue); - NSLog(@"%@", result.image); -} - -- (void)onErrorWithException:(MyIdException *)exception { - NSLog(@"%@", exception.code); - NSLog(@"%@", exception.message); -} - -- (void)onUserExited { - NSLog(@"user exited"); -} - -@end diff --git a/MyIdSample/Swift/.DS_Store b/MyIdSample/Swift/.DS_Store deleted file mode 100644 index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0 Bool { - return true - } - - func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration { - return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role) - } - - func application(_ application: UIApplication, didDiscardSceneSessions sceneSessions: Set) { - } -} - diff --git a/MyIdSample/Swift/SceneDelegate.swift b/MyIdSample/Swift/SceneDelegate.swift deleted file mode 100644 index 3376e2b..0000000 --- a/MyIdSample/Swift/SceneDelegate.swift +++ /dev/null @@ -1,33 +0,0 @@ -// -// SceneDelegate.swift -// MyIdSample -// -// Created by Javokhir Savriev on 12/10/22. -// - -import UIKit - -class SceneDelegate: UIResponder, UIWindowSceneDelegate { - - var window: UIWindow? - - func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { - guard let _ = (scene as? UIWindowScene) else { return } - } - - func sceneDidDisconnect(_ scene: UIScene) { - } - - func sceneDidBecomeActive(_ scene: UIScene) { - } - - func sceneWillResignActive(_ scene: UIScene) { - } - - func sceneWillEnterForeground(_ scene: UIScene) { - } - - func sceneDidEnterBackground(_ scene: UIScene) { - } -} - diff --git a/MyIdSample/Swift/ViewController.swift b/MyIdSample/Swift/ViewController.swift deleted file mode 100644 index 373e54e..0000000 --- a/MyIdSample/Swift/ViewController.swift +++ /dev/null @@ -1,194 +0,0 @@ -// -// ViewController.swift -// MyIdSample -// -// Created by Javokhir Savriev on 12/10/22. -// - -import UIKit -import MyIdSDK - -class ViewController: UIViewController { - - private let clientIdTextField: UITextField = { - let textField = UITextField() - textField.placeholder = "Client ID" - textField.borderStyle = .roundedRect - textField.translatesAutoresizingMaskIntoConstraints = false - return textField - }() - - private let passportTextField: UITextField = { - let textField = UITextField() - textField.placeholder = "Passport data" - textField.borderStyle = .roundedRect - textField.translatesAutoresizingMaskIntoConstraints = false - return textField - }() - - private let dobTextField: UITextField = { - let textField = UITextField() - textField.placeholder = "Date of birth" - textField.borderStyle = .roundedRect - textField.translatesAutoresizingMaskIntoConstraints = false - return textField - }() - - private let textResult: UILabel = { - let label = UILabel() - label.font = .systemFont(ofSize: 16) - label.textAlignment = .center - label.numberOfLines = 0 - label.lineBreakMode = .byTruncatingTail - label.translatesAutoresizingMaskIntoConstraints = false - return label - }() - - private let imageResult: UIImageView = { - let imageView = UIImageView() - imageView.heightAnchor.constraint(equalToConstant: 200).isActive = true - imageView.contentMode = .scaleAspectFit - imageView.translatesAutoresizingMaskIntoConstraints = false - return imageView - }() - - private var buildType: MyIdBuildMode = .PRODUCTION - - private var faceImage: UIImage? = nil - - override func viewDidLoad() { - super.viewDidLoad() - setupViews() - } - - func loadPayload() throws -> Data { - let payloadURL = Bundle.main.url(forResource: "payload", withExtension: "json")! - let payloadData = try Data(contentsOf: payloadURL) - return payloadData - } - - @objc func buildTypeControlChanged(sender: UISegmentedControl) { - if sender.selectedSegmentIndex == 1 { - buildType = .DEBUG - } else { - buildType = .PRODUCTION - } - } - - @objc func scanButtonPressed(sender: UIButton) { - startMyId() - } - - @objc func saveButtonPressed(sender: UIButton) { - saveImage() - } - - private func startMyId() { - let config = MyIdConfig() - config.clientId = "client_id" - config.clientHash = "client_hash" - config.clientHashId = "client_hash_id" - config.passportData = self.passportTextField.text ?? "" - config.dateOfBirth = self.dobTextField.text ?? "" - config.buildMode = self.buildType - - MyIdClient.start(withConfig: config, withDelegate: self) - } - - private func saveImage() { - guard let image = faceImage else { return } - - ImageSaver().writeToPhotoAlbum(image: image) - } -} - -extension ViewController: MyIdClientDelegate { - - func onSuccess(result: MyIdResult) { - textResult.text = "\(String(describing: result.code))" - imageResult.image = result.image - - faceImage = result.image - } - - func onError(exception: MyIdException) { - textResult.text = "\(String(describing: exception.message)) - \(String(describing: exception.code))" - } - - func onUserExited() { - textResult.text = "User exited" - } -} - -extension ViewController { - - private func setupViews() { - let margins = view.layoutMarginsGuide - - let scrollView = UIScrollView() - scrollView.translatesAutoresizingMaskIntoConstraints = false - - let buildTypeControl = UISegmentedControl(items: ["PROD", "DEV"]) - buildTypeControl.addTarget(self, action: #selector(buildTypeControlChanged), for: .valueChanged) - buildTypeControl.selectedSegmentIndex = 0 - buildTypeControl.translatesAutoresizingMaskIntoConstraints = false - - let scanButton = UIButton() - scanButton.translatesAutoresizingMaskIntoConstraints = false - scanButton.setTitle("Scan Face Data", for: .normal) - scanButton.setTitleColor(.blue, for: .normal) - scanButton.addTarget(self, action: #selector(scanButtonPressed), for: .touchUpInside) - - let saveButton = UIButton() - saveButton.translatesAutoresizingMaskIntoConstraints = false - saveButton.setTitle("Save Image", for: .normal) - saveButton.setTitleColor(.red, for: .normal) - saveButton.addTarget(self, action: #selector(saveButtonPressed), for: .touchUpInside - - let stackView = UIStackView() - stackView.axis = .vertical - stackView.alignment = .leading - stackView.spacing = 16 - stackView.translatesAutoresizingMaskIntoConstraints = false - stackView.addArrangedSubview(clientIdTextField) - stackView.addArrangedSubview(passportTextField) - stackView.addArrangedSubview(dobTextField) - stackView.addArrangedSubview(scanButton) - stackView.addArrangedSubview(saveButton) - stackView.addArrangedSubview(textResult) - stackView.addArrangedSubview(imageResult) - - scrollView.addSubview(stackView) - view.addSubview(scrollView) - - NSLayoutConstraint.activate([ - scrollView.leadingAnchor.constraint(equalTo: margins.leadingAnchor), - scrollView.trailingAnchor.constraint(equalTo: margins.trailingAnchor), - scrollView.topAnchor.constraint(equalTo: margins.topAnchor), - scrollView.bottomAnchor.constraint(equalTo: margins.bottomAnchor) - ]) - - NSLayoutConstraint.activate([ - stackView.leadingAnchor.constraint(equalTo: scrollView.leadingAnchor), - stackView.trailingAnchor.constraint(equalTo: scrollView.trailingAnchor), - stackView.topAnchor.constraint(equalTo: scrollView.topAnchor, constant: 20), - stackView.bottomAnchor.constraint(equalTo: scrollView.bottomAnchor), - stackView.widthAnchor.constraint(equalTo: scrollView.widthAnchor) - ]) - - NSLayoutConstraint.activate([ - clientIdTextField.widthAnchor.constraint(equalTo: stackView.widthAnchor), - passportTextField.widthAnchor.constraint(equalTo: stackView.widthAnchor), - dobTextField.widthAnchor.constraint(equalTo: stackView.widthAnchor), - scanButton.centerXAnchor.constraint(equalTo: stackView.centerXAnchor), - saveButton.centerXAnchor.constraint(equalTo: stackView.centerXAnchor), - ]) - - let tap = UITapGestureRecognizer(target: self, action: #selector(UIInputViewController.dismissKeyboard)) - view.addGestureRecognizer(tap) - } - - @objc func dismissKeyboard() { - view.endEditing(true) - } -} diff --git a/Podfile b/Podfile deleted file mode 100644 index 3e9f554..0000000 --- a/Podfile +++ /dev/null @@ -1,18 +0,0 @@ -# Uncomment the next line to define a global platform for your project -# platform :ios, '9.0' - -target 'MyIdSample' do - use_frameworks! - - target 'MyIdSampleTests' do - inherit! :search_paths - # Pods for testing - end - - target 'MyIdSampleUITests' do - # Pods for testing - end - - pod 'MyIdSDK' - -end \ No newline at end of file diff --git a/Podfile.lock b/Podfile.lock deleted file mode 100644 index af8c6a7..0000000 --- a/Podfile.lock +++ /dev/null @@ -1,16 +0,0 @@ -PODS: - - MyIdSDK (2.2.2) - -DEPENDENCIES: - - MyIdSDK - -SPEC REPOS: - trunk: - - MyIdSDK - -SPEC CHECKSUMS: - MyIdSDK: def78f7b73af02acda500f7a3f3e221ca9bfe20b - -PODFILE CHECKSUM: 3d43422acf589a5c2bd22a9c89828a68b010d362 - -COCOAPODS: 1.13.0 diff --git a/myid-ios-parent.xcodeproj/project.pbxproj b/myid-ios-parent.xcodeproj/project.pbxproj new file mode 100644 index 0000000..929dd5a --- /dev/null +++ b/myid-ios-parent.xcodeproj/project.pbxproj @@ -0,0 +1,394 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 77; + objects = { + +/* Begin PBXBuildFile section */ + 7E6631B02DC0AB8F00C2C87A /* MyIdSDK in Frameworks */ = {isa = PBXBuildFile; productRef = 7E6631AF2DC0AB8F00C2C87A /* MyIdSDK */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 7EAA66092D648EA000340823 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 7EE673D32D6309D700E08D7D /* myid-ios-parent.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "myid-ios-parent.app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFileSystemSynchronizedRootGroup section */ + 7EE673D52D6309D700E08D7D /* myid-ios-parent */ = { + isa = PBXFileSystemSynchronizedRootGroup; + exceptions = ( + ); + path = "myid-ios-parent"; + sourceTree = ""; + }; +/* End PBXFileSystemSynchronizedRootGroup section */ + +/* Begin PBXFrameworksBuildPhase section */ + 7EE673D02D6309D700E08D7D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 7E6631B02DC0AB8F00C2C87A /* MyIdSDK in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 7EE673CA2D6309D700E08D7D = { + isa = PBXGroup; + children = ( + 7EE673D52D6309D700E08D7D /* myid-ios-parent */, + 7EE673D42D6309D700E08D7D /* Products */, + ); + sourceTree = ""; + }; + 7EE673D42D6309D700E08D7D /* Products */ = { + isa = PBXGroup; + children = ( + 7EE673D32D6309D700E08D7D /* myid-ios-parent.app */, + ); + name = Products; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 7EE673D22D6309D700E08D7D /* myid-ios-parent */ = { + isa = PBXNativeTarget; + buildConfigurationList = 7EE673E12D6309D700E08D7D /* Build configuration list for PBXNativeTarget "myid-ios-parent" */; + buildPhases = ( + 7EE673CF2D6309D700E08D7D /* Sources */, + 7EE673D02D6309D700E08D7D /* Frameworks */, + 7EE673D12D6309D700E08D7D /* Resources */, + 7EAA66092D648EA000340823 /* Embed Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + fileSystemSynchronizedGroups = ( + 7EE673D52D6309D700E08D7D /* myid-ios-parent */, + ); + name = "myid-ios-parent"; + productName = "myid-ios-parent"; + productReference = 7EE673D32D6309D700E08D7D /* myid-ios-parent.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 7EE673CB2D6309D700E08D7D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastSwiftUpdateCheck = 1620; + LastUpgradeCheck = 1620; + TargetAttributes = { + 7EE673D22D6309D700E08D7D = { + CreatedOnToolsVersion = 16.2; + }; + }; + }; + buildConfigurationList = 7EE673CE2D6309D700E08D7D /* Build configuration list for PBXProject "myid-ios-parent" */; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 7EE673CA2D6309D700E08D7D; + minimizedProjectReferenceProxies = 1; + packageReferences = ( + 7E6631AE2DC0AB8F00C2C87A /* XCRemoteSwiftPackageReference "myid-ios-sdk" */, + ); + preferredProjectObjectVersion = 77; + productRefGroup = 7EE673D42D6309D700E08D7D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 7EE673D22D6309D700E08D7D /* myid-ios-parent */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 7EE673D12D6309D700E08D7D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 7EE673CF2D6309D700E08D7D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 7EE673DF2D6309D700E08D7D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + 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; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + 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 = 18.2; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 7EE673E02D6309D700E08D7D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + 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; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + 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 = 18.2; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 7EE673E22D6309D700E08D7D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_IDENTITY = "Apple Development"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; + CODE_SIGN_STYLE = Manual; + CURRENT_PROJECT_VERSION = 6; + DEVELOPMENT_ASSET_PATHS = "\"myid-ios-parent/Preview Content\""; + DEVELOPMENT_TEAM = ""; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = S46NMW9Y9P; + ENABLE_PREVIEWS = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_CFBundleDisplayName = "MyID SDK"; + INFOPLIST_KEY_NSCameraUsageDescription = YOUR_TEXT_HERE; + INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchScreen_Generation = YES; + INFOPLIST_KEY_UISupportedInterfaceOrientations = "UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown"; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = uz.uzinfocom.myidsdk; + PRODUCT_NAME = "$(TARGET_NAME)"; + PROVISIONING_PROFILE_SPECIFIER = ""; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "MyID SDK Profile"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 7EE673E32D6309D700E08D7D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_IDENTITY = "Apple Development"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; + CODE_SIGN_STYLE = Manual; + CURRENT_PROJECT_VERSION = 6; + DEVELOPMENT_ASSET_PATHS = "\"myid-ios-parent/Preview Content\""; + DEVELOPMENT_TEAM = ""; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = S46NMW9Y9P; + ENABLE_PREVIEWS = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_CFBundleDisplayName = "MyID SDK"; + INFOPLIST_KEY_NSCameraUsageDescription = YOUR_TEXT_HERE; + INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchScreen_Generation = YES; + INFOPLIST_KEY_UISupportedInterfaceOrientations = "UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown"; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = uz.uzinfocom.myidsdk; + PRODUCT_NAME = "$(TARGET_NAME)"; + PROVISIONING_PROFILE_SPECIFIER = ""; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "MyID SDK Profile"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + SUPPORTS_XR_DESIGNED_FOR_IPHONE_IPAD = NO; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 7EE673CE2D6309D700E08D7D /* Build configuration list for PBXProject "myid-ios-parent" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 7EE673DF2D6309D700E08D7D /* Debug */, + 7EE673E02D6309D700E08D7D /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 7EE673E12D6309D700E08D7D /* Build configuration list for PBXNativeTarget "myid-ios-parent" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 7EE673E22D6309D700E08D7D /* Debug */, + 7EE673E32D6309D700E08D7D /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + +/* Begin XCRemoteSwiftPackageReference section */ + 7E6631AE2DC0AB8F00C2C87A /* XCRemoteSwiftPackageReference "myid-ios-sdk" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://gitlab.myid.uz/myid-public-code/myid-ios-sdk.git"; + requirement = { + branch = master; + kind = branch; + }; + }; +/* End XCRemoteSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + 7E6631AF2DC0AB8F00C2C87A /* MyIdSDK */ = { + isa = XCSwiftPackageProductDependency; + package = 7E6631AE2DC0AB8F00C2C87A /* XCRemoteSwiftPackageReference "myid-ios-sdk" */; + productName = MyIdSDK; + }; +/* End XCSwiftPackageProductDependency section */ + }; + rootObject = 7EE673CB2D6309D700E08D7D /* Project object */; +} diff --git a/MyIdSample.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/myid-ios-parent.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from MyIdSample.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to myid-ios-parent.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/MyIdSample/Assets.xcassets/AccentColor.colorset/Contents.json b/myid-ios-parent/Assets.xcassets/AccentColor.colorset/Contents.json similarity index 100% rename from MyIdSample/Assets.xcassets/AccentColor.colorset/Contents.json rename to myid-ios-parent/Assets.xcassets/AccentColor.colorset/Contents.json diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/100.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/100.png new file mode 100644 index 0000000000000000000000000000000000000000..8e94b19434f98fa9161594a19ba813bb50df7d02 GIT binary patch literal 1081 zcmeAS@N?(olHy`uVBq!ia0vp^DImVE*js;uum9 z_jb<1zFQ6g%_k=_`m@U9(vFbJbqI>#s}q`rHYhGuhry?Vb9* zLjUKVEC0?s{y9dO*;+T(Da~P<6mQ_&`5~5EExmG*JC_=yIWUPigs2%G+0Uo4N>8uD zKjy>Vy8nU^6VIg`-I?q9$M4a-mM7UI&+{eCnGP8|lA74{!!79n_kt%ockx~N``<+I zYVSEMF0}`X4EGto$#D8%6Y~DrqZ7F+cgwfk+-j6p%3zvZzc}oh>4Z}(Gg?d8m{xBq zW#Nz(End{6{US7~ILTV!&bICUL{~>{Joimtc0PaTkb1ai z<&&GK=Y7k$OV)+>C9*Hc)(u@Pn|pg>^ONIE_4`gIDSRwmqgrYB_*HAfk``WTE|q)} z3)R@H;@xW&l<-$>_WPK-`u5ZbIePXIPAA@oy0W!}YsPY)3YGsH{#v;Iu^G$f^j&HG zf3AMqp;j%hKiuJiLgZT0yV=V#PfNYsv|(-cd)=vVx&GU??bP5>$@#L6^DUF8E%T(y zac6C_r@F_@E%|0ocEL&fp~(I+qRH64F?_bi8vkW^@A-MwD^&q*>RA=lTOJNrD8 z^Jz)~d+YB9rY-YJxBWPt{O4C~2&a9)8Hc(9UoNWh4t)B@k@Jo;{9$rhQ7E|W*PAuK PvVg(U)z4*}Q$iB}0czb| literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/1024.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/1024.png new file mode 100644 index 0000000000000000000000000000000000000000..2f56a8fbe835696e33884ef5cfd2d41efc4028d7 GIT binary patch literal 30894 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 literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/120.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/120.png new file mode 100644 index 0000000000000000000000000000000000000000..5d0920fc052b641845c42fde99c9d206fb2b5801 GIT binary patch literal 1390 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 E3nfLH@Bjb+ literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/180.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/180.png new file mode 100644 index 0000000000000000000000000000000000000000..c72bfb1dd9899d2cceea08d04ae8f7b94c6011f9 GIT binary patch literal 2327 zcmeHJ{Xf$Q03JmnotJAmYFZSRrPC=yt9(x_y5pL+Gg+O=hH$l^Z4J9q?vmUmQ7OB2 z^g+zLY+Pd~rx%)S&Flqf73Js0u_e@2Sr}Mfp?B!Ui;fww1r#VweffQ zp^0H=H5mJYs>pLMZGee`p61YU&#baG|QIN}Zxm zC`#EZ8I49;R?0EN`?&NuHk;kLVu~j=?WB;&3re@mn>P=h$uTMVv$$iJ>VeNq=_cfI zz4kbJYzn8*Ch}x=!1kEM6Aru$Hv;bugV8{|8J4L_t1Q7uaw2pWG!!==HX*pZ1?|k{X1h~1e%Hy$k!4Znv zf?i8kE{d1Dtk7J^TE4?9fs6bhX6E=d4ooreuA%*d(NK3SE9kFgKwa|CS6VDjcxBdf zUB`s+Y&fG4+~SSk!=k(Ue! z4{X&c(6?g#6lb2wNY5w{;rm-rBeB$87!&Q6V4p;~z!+^G_7F$SB7c)yav5b(&9}=q z`GLYyOV-u=T&hMl@`CY{!@X4p9c{B`Ek@k~dlhYF^(Q;|L*W~ESq+-5H_g{)2I@wg=S0Kvtt1l{PBB@W!+VXZfyojI@U%Z>s1+@)YBadsZ4WQd=ZZk zGC~Ih-T?$`IK4v6Orfd$F6T!RidOT5XCJx5g6#$(Y+y08zgcj5zhj^&>?KyZ4@rU( zIhPt*VqI$RH1fQN+P=^Ts22oui!OQQ=a=UA;Vr>Q%1(R-5-3{K^-BzcmHIt~n_iy! z1EDION$%q4dDX2*jqRoc*WS|`EkfJyoV5MIh@Kg|`ZFB!C{37*`jlK+h&O`x*MJNW z?Qv@Pd~H@kL;bYi(F31=t~zbR)S1Ew7GBzDoO43QRt!EEsykhopq?J$=j+!`_}KmI zo+}btd3W4^07uVZc9cN?v`5zmj5*Y+C!~>J4uzLPCXQMmIO{!nez!u9Nak0+*p@58 j++APrG5CKNCkIlow;?{#VUNqo(}9E>3Jb0WPX720zpX*u literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/20.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/20.png new file mode 100644 index 0000000000000000000000000000000000000000..223ca980e371f6e93b1b09e333b1d7ec289743a3 GIT binary patch literal 205 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VV{wqX6T`Z5GB1Igc25__5DWje zlLNU9DDXJ%p1e{$IDeV?>k22AZGU&}U#k#%dDevoeC6fUhJEu3Zl7IWbtB5yPc!w2 z#N#tFs*bKR{m${}LjZ#d7iYloDLT({wuW&l_6Vk_^7zgF<>oQ@fs)gld%utTSP&L} z+cQCc$*Z*1Jjypa``JmRuls)GZ2P~x^}+Xo`)7rj6Bi%d^t><}=p+VDS3j3^P6Px#*hxe|R7gwhltB)IFbo8fmjN#WUIx63Y9b9XRK2BD4~`TOTef$-aj55cp5@1@ zCg?X6PkFzoZb^Al-YyDUgS0G5D>#m0+xxy>HfMY;Y&JPD4qIQ$i80h^pccWgu4~!0 ztxVI@Fg){hNl=jEI9gn-waoK;BWsS$U|*ns4Z~0qcmMzZ literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/40.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/40.png new file mode 100644 index 0000000000000000000000000000000000000000..b34add93bbf7e1821e93ad11f6487d17b86a01e9 GIT binary patch literal 388 zcmeAS@N?(olHy`uVBq!ia0vp^8X(NU1|)m_?Z^dEjKx9jP7LeL$-D%z?L1u^Ln7SY zPK(WJHV|Mtd$M6NqdK#no9R?GUB63qYqY*5>bh<``>$qR>|~znrLk}2`xmmPtqx|H z%n&W8(-g@R`Tx~Hr5UOdzOI*paCfs`FU@^kdGF)2)Xd8!wd zJMUiatLXXRYh!n-?{UTL35O5vtK06tQzP&^&|(qCxzGRlEy}puTe4Y<&DE5)D2oMj zSo0iyeBn?f#}Ubi7M@O3UB6T=u&9MA7z!TPcSI?2`~R<%rzhz)xf*yYypFexVA;&F>EG36 eD0hbH57t*ddS)z~Y~=(DRt8U3KbLh*2~7aws;c$? literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/50.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/50.png new file mode 100644 index 0000000000000000000000000000000000000000..d7ef1de840fbb4fdf41a91b1fa5f04e9e9dd0bd6 GIT binary patch literal 518 zcmV+h0{Q)kP)Px$z)3_wRA@u(SP71UFbpIw16~Ha40suIp)(>;VB#Ag?WgJOpS}CuxGuJ=E@pU5`~uNZ0fT zwMTUBXyh@fCz0kyj$D3ipWN}Qd!G4&Sn1zGleFPT6PX=F!V!m9O+v$wCNevUgd+~I znuLZUO=NZy2}c}aH3lK=n! literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/57.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/57.png new file mode 100644 index 0000000000000000000000000000000000000000..394834a77ab34d42aa731be8a2a16368a10376cb GIT binary patch literal 541 zcmV+&0^Px$*GWV{RA@u(SzB&{Fc8EiBRLu2WF#k}8l*v!&0^^1qOla=xa?ydwyU$(m% zAI%_dqOg^`iI9Vpw33Awuw4s@)os;ETFF8T*sg`d^1)-f+OCBduw4s@< z@ArU@j>qFM;G^U9dTn3%#GJ9Z7D>X-V!kZyXpMC=N7i%f?aQucVxH$66ag>Gvajho zSm$^?pW9T|A~DPz<4`B7!M}U6rskWbX(JhR5wAjw!Gf&|pgKpuf0NOect zUMa}9Cz(KtvvC&hfz-IjJma7g=6GU|+%tzTpZ2WI!+O`Q+Y7DjcEucnOsVyH&0LMs z{f^vf*E1#mZC4FIgUT)dVq;@qU(m8gAhq!;ajFdZpkv~mgwjw9PZAPObACUyD_)Ei z(i4>hGTV?4-Ped!%Vy+6OJ6x%kG9y4UE`fYTjF_k$7S~;Pt)Grc$PO_L)ufk5BYAa z=U?lNJYH?xN>)?s(&>5^P!WgidKYD_q?IhhfbCjHtZu7T(n=O$z;-PpmJc4=)pjk! ffbCjHET67_$GfF;#eWnp00000NkvXXu0mjf1Wo|( literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/58.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/58.png new file mode 100644 index 0000000000000000000000000000000000000000..ca84264878428419770cca99f0a0a274f7c52262 GIT binary patch literal 537 zcmeAS@N?(olHy`uVBq!ia0vp^Rv^s51|%Qu_R;`SjKx9jP7LeL$-D%zFMGN;hGaOu zjSS3dHQ>qiXPd)gAz5Ig=Km>Wk-@gVtvl`g*Q*@uoBJj6_4CSkZ{^qIEz%FZ*|pE- zLYnK^jEh`1cDc6hZq0?WKO1Z+&Aq!wbVF%3*YlOxuW#*g)h^ihZj(-K>~-#`g)+Cd zql3Tla+XI8n zT80VtHD~c!@)@gg8A+{vrKA@nUfuD3bLrJpYYZA3Ip2n}o@AWJ+hP%FEc#d>iGS5A zg}$E-Iv1bSxG9EQm5Jd)v3mPx%2uVaiRA@u(SzC_kFcfQ72CNKN8L+Zm8ObB#rlk|W?g7lokuOyY2mt|R| zKlGVHcyPDl@ZbhdaX1bSra&S+n4v2=aX1bSra&S+n4vke66r*GFa;9n!3@nQok%Cr zgDLP4>F4vgqIW)@S7WU6XItYs!Cvog=EFQ&^}3$dd=S3fZqxmKUlF`suM?i}!#W?o zTrTgD$K$b?i+P@ZY7`8{@mqVj4#rrEHPjfzz`1pC$Jiu{A}&Ay6bL7FfZqs{0OxMa zsQ{fY$+8c`fscX!mtrUJ4`KDMmMulqHLU>vSAWl8^uAuNHx7W+zqRNv#z|V&A~|Y(O z{$|7oVvjK0+NyOiAUZHGvPTKCPtO~5xk*?ZZNn;ZX zJoEjhiD(@-IycW1zdFBNOMa7-eV1;%cpP~tEKB$ZxmHaG_bOMVFAi66suyP*?p3Zz zUmULDR4>jr+^bxbzBpXPsa~9MxL3IdEr+RV5;a=sc^u^&S cPW9sa2i;|XYiIta?f?J)07*qoM6N<$g3&b+$^ZZW literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/72.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/72.png new file mode 100644 index 0000000000000000000000000000000000000000..f0e023f1028b3137a0453f71e06fe2bfdc7e31b0 GIT binary patch literal 684 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@ZgvM!jKx9jP7LeL$-HD>U`q3JaSW-5 zdpj$z@09_M>&sIOQyI0H!>%pwE^(K;o@-=O|Ncwn^@W28&`zisp#DIPVwy!@fHXCp>SFsqZINmSU;wW)Nxxvx4 z?u!D?p#^e`Jg+`3W=|Ag`^u3J&@XSx(Y!C`!q+O>y>aW$u9<%N>6aQi^Y7DBf8N=B zH*fjxzyDtEoZnlQxVWNgwYQFM)BKZ?HpSdnw=#Xq2AWP8!&iu14cXq8xA_wAIN zpk_V){CvwPE$iki5neOz4m`=5&I{e$sq`5ffQcm1_-*fg0KJgtn`i}M6A(4p3n-YyXkL-*U zyZY=%(TC4G8EW_9&)Bg{d0o7I&z@*D>Ff%%ME#)0TEUNPr|vm*cV`LXQ`2W$7C;5T zoo=O%51C997ivDkaLKyx9*>pt=i=VN`jRsRlHaes88=SyceblDk1cVRzMIZQjPDEp}NYeEGA)m%y7xCm&~b zy~}6|olxT6ZWsU^?UJ;uum9 z_jXob(IEo?=aVNJCNrut`?ilgRAKk4DyXL8W`|-z$H$^(aH<)r} zUJaH=kXz4ST*(^Iu#?57wko1wCW}v{j97viW3XI1>kQ8WQ;sJxrU@B5Eu=u|XZPW} z?Y9fM4nMrm_i7}gA3D;kLP0hKz?fK5U zKNU9bCR}-0ax3xO&4n8Umx~>@*lhUMPM|Q*yLHjd9bfqx6>t8n`yVZ@cr7LSz%R$e z%ssaRYnTpKoNZ2)iWi@>bpxMM^1rQd&pvF*_{#0#7a(hBbzUiup>BQa8m4CM1+I5~ z|NU3u+PeP0s@d8b0{1Z-w3v~+?Df00g@@e^h;)c`KJZu~wu#F}Sbf99Zh^)3o{2_0 z-@$j_dPC{t{l#;4^@hcg3o*D`9JN>1y*FlI=KYJGcm2+KKif7;V9&E(7n@(_gsu`^&1_;J&gwUd zQTdPH2C2=vpMJR$E+1o9_U>5asaSW-5 zdpj#JPs>oC`Q~Isb!I=dIX$OV)Xhp)d%5hL|N1NPZ`K*l)Ss8K;zr#1>#rxgzRt3Z z;g9L=?FJ0Cb&MIGxDPOtaL)Mkrjap2$lz&V0>dm8pGp~t1~tZDId--Mo(HBJr(Ei1 zJF|TM@rPx*Yk8_|A%6OKjdH&Q-Pf5^diq4zE_OaNUdTL8?dAyu1SOde|>%-PgzPu!yG4J*_{dPVf#!DYd9jzO79bjl& z{p?6g=Dc%1FT6yHCN%6BKH}o#7t&Tl#bj9T75u*E;t{i#Ixi@H<_WO5Q4+D2z zYK=W)bNAK0E$k0+zLq+QC?sF|mdzGZ?f0#(o-d%kD0kY=NXP8?VT_v^*LoIwKECkc zx2XHMz3(>vdbdJ;ZNiO13U>aLckL@TWzYP)W!?Ab{DSLpw#Q!;T33+ntD}C}Z4dJb z?n{;vHoE(Md(q%v_owY+dasGMTWpZDXWpl~t2U@)WtJqDNmqUk<&S#xvBv++#XYYg ze)-j2JDWS5**fuEFXxl{k;|-^3>bWwmf7&}I81KP>}O`apptOv@c{-C&KaL9s4b;` YL-vu~gtuvDfVqXi)78&qol`;+0P>@G)Bpeg literal 0 HcmV?d00001 diff --git a/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/87.png b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/87.png new file mode 100644 index 0000000000000000000000000000000000000000..36681a0d2ecf518034e2955ce18cac400721865f GIT binary patch literal 1013 zcmeAS@N?(olHy`uVBq!ia0vp^;ULVx1|$nl+{^(|jKx9jP7LeL$-HD>U|#R(;uum9 z_jYz-7n31R>)gpJ)r0+)%{!xdD0-9P%O|`k^?Ml$r>kZD`f9qe>Gt!_Kj(bu5xBup z-tyXf#e;JjMejInYtr5^nT0KR^)s$_3XKOZ1g(3(CnUk6`;_L~clC#B_r|GLho1ji z=ik2P{?j7Mo7#3C)*jn@pl)AI-kIp5Un-DYbx?cjN{WYNoSCgz(x&${zz@d;(ALUG{JFFw-N)vvv-}_1PB*Q*C^tJ}X-4!8|6|PwlfOu(E%;b(BY5*z)d4|0v$Hu? z_6ldcI@07Y-Sn_l6JuU*&I;OXwXzHMDmxZz^1 zzqV%InB*jb^)5k{kg%!zSBhi~zM3Usp37=p_Up$=!&TPP zCPavR^O`U3|1fO+;*G`?+m8g!UbX1mes70G+B^QOi+U=!fBuc%`;zqidz>x)$y&}n z`zo{EDcbE~!t929MLCNf@v=@&zxGYwj+xfIfP%`jT>gW(Lqf1$KGNRD;z!5rx4?YN N;OXk;vd$@?2><~Y-n{?- literal 0 HcmV?d00001 diff --git a/MyIdSample/Assets.xcassets/AppIcon.appiconset/Contents.json b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 51% rename from MyIdSample/Assets.xcassets/AppIcon.appiconset/Contents.json rename to myid-ios-parent/Assets.xcassets/AppIcon.appiconset/Contents.json index 5a3257a..4fdf882 100644 --- a/MyIdSample/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/myid-ios-parent/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,86 +1,151 @@ { "images" : [ { + "filename" : "40.png", "idiom" : "iphone", "scale" : "2x", "size" : "20x20" }, { + "filename" : "60.png", "idiom" : "iphone", "scale" : "3x", "size" : "20x20" }, { + "filename" : "29.png", + "idiom" : "iphone", + "scale" : "1x", + "size" : "29x29" + }, + { + "filename" : "58.png", "idiom" : "iphone", "scale" : "2x", "size" : "29x29" }, { + "filename" : "87.png", "idiom" : "iphone", "scale" : "3x", "size" : "29x29" }, { + "filename" : "80.png", "idiom" : "iphone", "scale" : "2x", "size" : "40x40" }, { + "filename" : "120.png", "idiom" : "iphone", "scale" : "3x", "size" : "40x40" }, { + "filename" : "57.png", + "idiom" : "iphone", + "scale" : "1x", + "size" : "57x57" + }, + { + "filename" : "114.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "57x57" + }, + { + "filename" : "120.png", "idiom" : "iphone", "scale" : "2x", "size" : "60x60" }, { + "filename" : "180.png", "idiom" : "iphone", "scale" : "3x", "size" : "60x60" }, { + "filename" : "20.png", "idiom" : "ipad", "scale" : "1x", "size" : "20x20" }, { + "filename" : "40.png", "idiom" : "ipad", "scale" : "2x", "size" : "20x20" }, { + "filename" : "29.png", "idiom" : "ipad", "scale" : "1x", "size" : "29x29" }, { + "filename" : "58.png", "idiom" : "ipad", "scale" : "2x", "size" : "29x29" }, { + "filename" : "40.png", "idiom" : "ipad", "scale" : "1x", "size" : "40x40" }, { + "filename" : "80.png", "idiom" : "ipad", "scale" : "2x", "size" : "40x40" }, { + "filename" : "50.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "50x50" + }, + { + "filename" : "100.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "50x50" + }, + { + "filename" : "72.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "72x72" + }, + { + "filename" : "144.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "72x72" + }, + { + "filename" : "76.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "76x76" + }, + { + "filename" : "152.png", "idiom" : "ipad", "scale" : "2x", "size" : "76x76" }, { + "filename" : "167.png", "idiom" : "ipad", "scale" : "2x", "size" : "83.5x83.5" }, { + "filename" : "1024.png", "idiom" : "ios-marketing", "scale" : "1x", "size" : "1024x1024" diff --git a/MyIdSample/Assets.xcassets/Contents.json b/myid-ios-parent/Assets.xcassets/Contents.json similarity index 100% rename from MyIdSample/Assets.xcassets/Contents.json rename to myid-ios-parent/Assets.xcassets/Contents.json diff --git a/myid-ios-parent/ContentView.swift b/myid-ios-parent/ContentView.swift new file mode 100644 index 0000000..83969d4 --- /dev/null +++ b/myid-ios-parent/ContentView.swift @@ -0,0 +1,109 @@ +// +// ContentView.swift +// + +import SwiftUI +import MyIdSDK + +struct ContentView: View { + + @StateObject private var viewModel = ViewModel() + + var body: some View { + ScrollView { + VStack(spacing: 16) { + FormSection(viewModel: viewModel) + + Button(action: { + viewModel.startMyId() + }) { + Text("Start SDK") + .font(.headline) + .frame(maxWidth: .infinity) + .padding() + .background(Color.blue) + .foregroundColor(.white) + .cornerRadius(10) + } + .padding(.horizontal) + + if let image = viewModel.image { + Image(uiImage: image) + .resizable() + .scaledToFit() + .frame(height: 100) + .cornerRadius(12) + .padding(.horizontal) + } + + if !viewModel.message.isEmpty { + Text(viewModel.message) + .foregroundColor(.blue) + .padding() + .background(Color.gray.opacity(0.1)) + .cornerRadius(8) + .padding(.horizontal) + .onTapGesture { + copyToClipboard(viewModel.message) + } + } + } + .padding(.vertical) + } + } + + private func copyToClipboard(_ text: String) { + UIPasteboard.general.string = text + } +} + +struct FormSection: View { + + @ObservedObject var viewModel: ViewModel + + var body: some View { + VStack( + alignment: .leading, + spacing: 16 + ) { + Group { + TextField("Passport Data", text: $viewModel.passportData) + TextField("Date of Birth", text: $viewModel.dateOfBirth) + TextField("External ID", text: $viewModel.externalId) + } + .textFieldStyle(RoundedBorderTextFieldStyle()) + .padding(.horizontal) + + Group { + Picker("Residency", selection: $viewModel.residency) { + Text("Resident").tag(MyIdResidency.resident) + Text("Non-Resident").tag(MyIdResidency.nonResident) + Text("User defined").tag(MyIdResidency.userDefined) + } + + Picker("Environment", selection: $viewModel.environment) { + Text("Production").tag(MyIdEnvironment.production) + Text("Debug").tag(MyIdEnvironment.debug) + } + + Picker("Entry Type", selection: $viewModel.entryType) { + Text("Identification").tag(MyIdEntryType.identification) + Text("Face detection").tag(MyIdEntryType.faceDetection) + } + + Picker("Locale", selection: $viewModel.locale) { + Text("Uzbek").tag(MyIdLocale.uzbek) + Text("English").tag(MyIdLocale.english) + Text("Russian").tag(MyIdLocale.russian) + } + + Picker("Camera Shape", selection: $viewModel.cameraShape) { + Text("Circle").tag(MyIdCameraShape.circle) + Text("Ellipse").tag(MyIdCameraShape.ellipse) + } + } + .pickerStyle(MenuPickerStyle()) + .padding(.horizontal) + } + } +} diff --git a/myid-ios-parent/Preview Content/Preview Assets.xcassets/Contents.json b/myid-ios-parent/Preview Content/Preview Assets.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/myid-ios-parent/Preview Content/Preview Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/myid-ios-parent/ViewModel.swift b/myid-ios-parent/ViewModel.swift new file mode 100644 index 0000000..b0681a8 --- /dev/null +++ b/myid-ios-parent/ViewModel.swift @@ -0,0 +1,66 @@ +// +// ViewModel.swift +// + +import SwiftUI +import Combine +import MyIdSDK + +@objc public class ViewModel: NSObject, ObservableObject { + + @Published var passportData: String = "" + @Published var dateOfBirth: String = "" + @Published var externalId: String = "" + @Published var residency: MyIdResidency = .resident + @Published var environment: MyIdEnvironment = .debug + @Published var entryType: MyIdEntryType = .identification + @Published var locale: MyIdLocale = .uzbek + @Published var cameraShape: MyIdCameraShape = .circle + + @Published var image: UIImage? + @Published var message: String = "" + + @objc public func startMyId() { + let devClientId = "your_dev_client_id" + let devClientHash = "your_dev_client_hash" + let devClientHashId = "your_dev_client_hash_id" + + let prodClientId = "your_prod_client_id" + let prodClientHash = "your_prod_client_hash" + let prodClientHashId = "your_prod_client_hash_id" + + let config = MyIdConfig() + config.clientId = environment == .production ? prodClientId : devClientId + config.clientHash = environment == .production ? prodClientHash : devClientHash + config.clientHashId = environment == .production ? prodClientHashId : devClientHashId + config.passportData = passportData + config.dateOfBirth = dateOfBirth + config.externalId = externalId + config.residency = residency + config.environment = environment + config.entryType = entryType + config.locale = locale + config.cameraShape = cameraShape + config.presentationStyle = .sheet + + MyIdClient.start(withConfig: config, withDelegate: self) + } +} + +@objc extension ViewModel: MyIdClientDelegate { + + public func onSuccess(result: MyIdResult) { + message = result.code ?? "" + image = result.image + } + + public func onError(exception: MyIdException) { + message = exception.message ?? "" + image = nil + } + + public func onUserExited() { + message = "User exited" + image = nil + } +} diff --git a/myid-ios-parent/myid_ios_parentApp.swift b/myid-ios-parent/myid_ios_parentApp.swift new file mode 100644 index 0000000..4512a8a --- /dev/null +++ b/myid-ios-parent/myid_ios_parentApp.swift @@ -0,0 +1,14 @@ +// +// myid_ios_parentApp.swift +// + +import SwiftUI + +@main +struct myid_ios_parentApp: App { + var body: some Scene { + WindowGroup { + ContentView() + } + } +} -- GitLab