### Setup Cordova Project and Add Jumio Plugin Source: https://github.com/jumio/mobile-cordova/blob/master/README.md This snippet demonstrates the initial steps to set up a new Apache Cordova project, add iOS and Android platforms, integrate the Jumio Mobile SDK Cordova plugin from its GitHub repository, and install necessary iOS dependencies via CocoaPods. ```bash cordova create MyProject com.my.project "MyProject" cd MyProject cordova platform add ios cordova platform add android cordova plugin add https://github.com/Jumio/mobile-cordova.git#v4.13.0 cd platforms/ios && pod install ``` -------------------------------- ### Start Jumio SDK Process Source: https://github.com/jumio/mobile-cordova/blob/master/README.md After successful initialization, this JavaScript snippet shows how to start the Jumio SDK's verification process. It accepts optional success and error callback functions to handle the outcome of the SDK operation. ```javascript Jumio.start(successCallback, errorCallback); ``` -------------------------------- ### Add Cordova Plugin and Prepare Platforms Source: https://github.com/jumio/mobile-cordova/blob/master/demo/README.md Commands to add the local JumioMobileSDK plugin, prepare Android and iOS platforms, and install iOS pods. Note that 'platform add' and 'prepare' must be called separately due to Cordova limitations. ```Shell cordova plugin add --link ../ cordova platform add android && cordova prepare android cordova platform add ios && cordova prepare ios && cd platforms/ios && pod install ``` -------------------------------- ### Resolve 'framework not found iProov.xcframework' Build Error Source: https://github.com/jumio/mobile-cordova/blob/master/README.md This Ruby `post_install` hook for the Podfile addresses the 'framework not found iProov.xcframework' build error. It ensures that the `BUILD_LIBRARY_FOR_DISTRIBUTION` setting is enabled for all targets, which is often necessary for proper framework linking after Cocoapods installation. ```Ruby post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'YES' end end end ``` -------------------------------- ### Customize Jumio SDK Colors for Dark and Light Mode Source: https://github.com/jumio/mobile-cordova/blob/master/README.md This JavaScript example demonstrates how to customize Jumio SDK colors by providing different HEX string values for light and dark display modes. This allows the application's UI to adapt dynamically to the device's appearance settings, ensuring optimal visibility and branding across themes. ```JavaScript Jumio.start(successCallback, errorCallback, { primaryColor: { light:"ffffff", dark:"000000" }, primaryButtonBackground: { light:"ffffff", dark:"000000" } }); ``` -------------------------------- ### Set Single Jumio SDK Color for Both Dark and Light Mode Source: https://github.com/jumio/mobile-cordova/blob/master/README.md This JavaScript example shows how to apply a single HEX color string for a Jumio SDK customization option. This color will be used consistently across both light and dark display modes, providing a uniform appearance regardless of the device's theme settings. ```JavaScript Jumio.start(successCallback, errorCallback, { primaryColor: "ffffff", primaryButtonBackground: "ffffff" }); ``` -------------------------------- ### Jumio.start Method iOS Customization Parameters Source: https://github.com/jumio/mobile-cordova/blob/master/README.md Documentation for the customization options available when calling the `Jumio.start` method on iOS. These keys allow developers to specify colors for various UI elements within the Jumio SDK. Colors can be provided as HEX strings, optionally with alpha, and can differ for light and dark modes. ```APIDOC Jumio.start(successCallback: function, errorCallback: function, options: object) options: // All color options accept a HEX string (e.g., "#ff00ff" or "#66ff00ff") // or an object for light/dark mode specific colors (e.g., { light:"#ffffff", dark:"#000000" }) facePrimary: string | object faceSecondary: string | object faceOutline: string | object faceAnimationForeground: string | object iProovFilterForegroundColor: string | object iProovFilterBackgroundColor: string | object iProovTitleTextColor: string | object iProovCloseButtonTintColor: string | object iProovSurroundColor: string | object iProovPromptTextColor: string | object iProovPromptBackgroundColor: string | object genuinePresenceAssuranceReadyOvalStrokeColor: string | object genuinePresenceAssuranceNotReadyOvalStrokeColor: string | object livenessAssuranceOvalStrokeColor: string | object livenessAssuranceCompletedOvalStrokeColor: string | object primaryButtonBackground: string | object primaryButtonBackgroundPressed: string | object primaryButtonBackgroundDisabled: string | object primaryButtonForeground: string | object primaryButtonForegroundPressed: string | object primaryButtonForegroundDisabled: string | object primaryButtonOutline: string | object secondaryButtonBackground: string | object secondaryButtonBackgroundPressed: string | object secondaryButtonBackgroundDisabled: string | object secondaryButtonForeground: string | object secondaryButtonForegroundPressed: string | object secondaryButtonForegroundDisabled: string | object secondaryButtonOutline: string | object bubbleBackground: string | object bubbleForeground: string | object bubbleBackgroundSelected: string | object bubbleOutline: string | object loadingCirclePlain: string | object loadingCircleGradientStart: string | object loadingCircleGradientEnd: string | object loadingErrorCircleGradientStart: string | object loadingErrorCircleGradientEnd: string | object loadingCircleIcon: string | object scanOverlay: string | object scanOverlayBackground: string | object nfcPassportCover: string | object nfcPassportPageDark: string | object nfcPassportPageLight: string | object nfcPassportForeground: string | object nfcPhoneCover: string | object scanViewTooltipForeground: string | object scanViewTooltipBackground: string | object scanViewForeground: string | object scanViewDocumentShutter: string | object scanViewFaceShutter: string | object searchBubbleBackground: string | object searchBubbleForeground: string | object searchBubbleOutline: string | object confirmationImageBackground: string | object confirmationImageBackgroundBorder: string | object confirmationIndicatorActive: string | object confirmationIndicatorDefault: string | object confirmationImageBorder: string | object background: string | object navigationIconColor: string | object textForegroundColor: string | object primaryColor: string | object selectionIconForeground: string | object ``` -------------------------------- ### Initialize Jumio SDK Source: https://github.com/jumio/mobile-cordova/blob/master/README.md This JavaScript snippet demonstrates how to initialize the Jumio SDK by calling `Jumio.initialize()`. It requires an authorization token and a datacenter (US, EU, or SG) to establish the connection. ```javascript Jumio.initialize(, ); ``` -------------------------------- ### Resolve 'framework not found DatadogCore.xcframework' Build Error Source: https://github.com/jumio/mobile-cordova/blob/master/README.md This Ruby `post_install` hook for the Podfile resolves the 'framework not found DatadogCore.xcframework' build error. It sets the `IPHONEOS_DEPLOYMENT_TARGET` to '13.0' for all targets, ensuring compatibility with the required iOS deployment target for the DatadogCore framework. ```Ruby post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0' end end end ``` -------------------------------- ### Run Cordova Application Source: https://github.com/jumio/mobile-cordova/blob/master/demo/README.md Commands to run the Cordova application on Android or iOS. For devices with iOS 17+, the application can only be run from Xcode due to Cordova limitations. ```Shell cordova run android # OR cordova run ios --noprepare ``` -------------------------------- ### Enable AndroidX in Cordova config.xml Source: https://github.com/jumio/mobile-cordova/blob/master/README.md To ensure compatibility with the native Jumio Android component, this XML snippet shows how to enable AndroidX support within your Cordova project's `config.xml` file by adding a specific preference. ```xml ``` -------------------------------- ### Jumio Mobile Cordova Result Object Structure Source: https://github.com/jumio/mobile-cordova/blob/master/README.md Defines the structure and parameters of the main result object returned by the Jumio Mobile Cordova SDK, encompassing personal, document, and address-related information. ```APIDOC Result Object: selectedCountry: String (Max. length: 3) - [ISO 3166-1 alpha-3] country code as provided or selected selectedDocumentType: String (Max. length: 16) - PASSPORT, DRIVER_LICENSE, IDENTITY_CARD or VISA selectedDocumentSubType: String - Sub type of the scanned ID idNumber: String (Max. length: 100) - Identification number of the document personalNumber: String (Max. length: 14) - Personal number of the document issuingDate: Date - Date of issue expiryDate: Date - Date of expiry issuingCountry: String (Max. length: 3) - Country of issue as ([ISO 3166-1 alpha-3]) country code lastName: String (Max. length: 100) - Last name of the customer firstName: String (Max. length: 100) - First name of the customer dob: Date - Date of birth gender: String (Max. length: 1) - m, f or x originatingCountry: String (Max. length: 3) - Country of origin as ([ISO 3166-1 alpha-3]) country code addressLine: String (Max. length: 64) - Street name city: String (Max. length: 64) - City subdivision: String (Max. length: 3) - Last three characters of [ISO 3166-2:US] state code postCode: String (Max. length: 15) - Postal code mrzData: MRZ-DATA - MRZ data, see table below optionalData1: String (Max. length: 50) - Optional field of MRZ line 1 optionalData2: String (Max. length: 50) - Optional field of MRZ line 2 placeOfBirth: String (Max. length: 255) - Place of Birth ``` -------------------------------- ### Update Gradle Wrapper Version for Android Build Tools Source: https://github.com/jumio/mobile-cordova/blob/master/README.md This Groovy snippet illustrates how to update the `distributionUrl` in the `gradle-wrapper.properties` file to use Gradle version 8.13, which is required by the plugin for compatibility with Android build tools 8.0.0 or higher. ```groovy ... distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip ``` -------------------------------- ### Jumio Mobile Cordova MRZ-Data Object Structure Source: https://github.com/jumio/mobile-cordova/blob/master/README.md Details the structure and parameters of the MRZ-Data object, which is a nested component within the main result object and contains machine-readable zone information from the scanned document. ```APIDOC MRZ-Data Object: format: String (Max. length: 8) - MRP, TD1, TD2, CNIS, MRVA, MRVB or UNKNOWN line1: String (Max. length: 50) - MRZ line 1 line2: String (Max. length: 50) - MRZ line 2 line3: String (Max. length: 50) - MRZ line 3 idNumberValid: BOOL - True if ID number check digit is valid, otherwise false dobValid: BOOL - True if date of birth check digit is valid, otherwise false expiryDateValid: BOOL - True if date of expiry check digit is valid or not available, otherwise false ``` -------------------------------- ### Jumio SDK Validation Properties Source: https://github.com/jumio/mobile-cordova/blob/master/README.md This section describes boolean properties related to the validity of personal and composite check digits within the Jumio SDK context. These properties indicate the success or failure of internal validation checks. ```APIDOC personalNumberValid: BOOL - True if personal number check digit is valid or not available, otherwise false compositeValid: BOOL - True if composite check digit is valid, otherwise false ``` -------------------------------- ### Disable Xcode 13 App Store Version Management Source: https://github.com/jumio/mobile-cordova/blob/master/README.md This XML snippet demonstrates how to explicitly disable the 'Manage Version and Build Number' option within Xcode's `exportOptions.plist`. Disabling this setting is crucial for preventing Xcode from inadvertently altering the version and build numbers of third-party frameworks, which can lead to Jumio SDK version check failures during release builds. ```XML manageAppVersionAndBuildNumber ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.