Skip to content

Conversation

@wangerekaharun
Copy link
Member

@wangerekaharun wangerekaharun commented Dec 19, 2025

User description

…sitivity parameter

Story: https://app.shortcut.com/smileid/story/xxx

Summary

A few sentences/bullet points about the changes

Known Issues

Any shortcomings in your work. This may include corner cases not correctly handled or issues related
to but not within the scope of your PR. Design compromises should be discussed here if they were not
already discussed above.

Test Instructions

Concise test instructions on how to verify that your feature works as intended. This should include
changes to the development environment (if applicable) and all commands needed to run your work.

Screenshot

If applicable (e.g. UI changes), add screenshots to help explain your work.


PR Type

Enhancement


Description

  • Add smileSensitivity parameter to Smart Selfie features

  • Update Android SDK to v11.1.5 and iOS SDK to v11.1.4

  • Support Normal and Relaxed smile detection sensitivity levels

  • Apply sensitivity configuration across enrollment, authentication, and capture views


File Walkthrough

Relevant files
Enhancement
18 files
Mapper.kt
Add mapper function for SmileSensitivity enum conversion 
+14/-0   
SmileIDSmartSelfieAuthenticationViewManager.kt
Add smileSensitivity parameter to authentication view manager
+3/-0     
SmileIDSmartSelfieCaptureViewManager.kt
Add smileSensitivity parameter to capture view manager     
+3/-0     
SmileIDSmartSelfieEnrollmentViewManager.kt
Add smileSensitivity parameter to enrollment view manager
+3/-0     
SmileIDSmartSelfieAuthenticationView.kt
Pass smileSensitivity to SmartSelfieAuthentication composable
+2/-0     
SmileIDSmartSelfieCaptureView.kt
Pass smileSensitivity to capture content and view model   
+8/-2     
SmileIDSmartSelfieEnrollmentView.kt
Pass smileSensitivity to SmartSelfieEnrollment composable
+2/-0     
SmileIDView.kt
Add smileSensitivity property to base SmileIDView class   
+3/-0     
SmileIDUtils.swift
Add extension method to convert string to SmileSensitivity
+11/-0   
SmileIDSmartSelfieAuthView.swift
Pass smileSensitivity parameter to authentication screen 
+1/-0     
SmileIDSmartSelfieCaptureView.swift
Pass smileSensitivity parameter to capture screen               
+1/-0     
SmileIDSmartSelfieEnrollmentView.swift
Pass smileSensitivity parameter to enrollment screen         
+1/-0     
SmileIDSmartSelfieAuthenticationViewManager.swift
Parse and set smileSensitivity from params in authentication manager
+5/-0     
SmileIDSmartSelfieCaptureViewManager.swift
Parse and set smileSensitivity from params in capture manager
+5/-0     
SmileIDSmartSelfieEnrollmentViewManager.swift
Parse and set smileSensitivity from params in enrollment manager
+6/-0     
SmileIDProductModel.swift
Add smileSensitivity published property to product model 
+1/-0     
HomeScreen.tsx
Set smileSensitivity to Normal in sample app configurations
+4/-1     
types.ts
Add SmileSensitivity enum and optional parameter to SmartSelfieRequest
+11/-0   
Dependencies
2 files
react-native-smile-id.podspec
Update iOS SDK dependency to version 11.1.4                           
+1/-1     
gradle.properties
Update Android SDK version to 11.1.5                                         
+1/-1     
Documentation
1 files
CHANGELOG.md
Document v11.1.3 release with SDK updates and new feature
+9/-0     
Configuration changes
1 files
package.json
Bump package version to 11.1.3                                                     
+1/-1     


Need help?
  • Type /help how to ... in the comments thread for any questions about PR-Agent usage.
  • Check out the documentation for more information.
  • @wangerekaharun wangerekaharun marked this pull request as ready for review December 22, 2025 12:08
    @prfectionist
    Copy link
    Contributor

    prfectionist bot commented Dec 22, 2025

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    ⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Recommended focus areas for review

    Syntax Error

    Missing comma after allowAgentMode parameter in the SelfieCaptureScreen call. This will cause a compilation error in Swift.

      smileSensitivity: self.product.smileSensitivity
    ).preferredColorScheme(.light)
    Inconsistent Error Handling

    The toSmileSensitivity() function silently defaults to .normal for invalid input, while the Android equivalent toSmileSensitivity() throws an IllegalArgumentException. This inconsistency could mask configuration errors on iOS that would be caught on Android.

    func toSmileSensitivity() -> SmileSensitivity {
      switch self {
      case "Normal":
        return .normal
      case "Relaxed":
        return .relaxed
      default:
        return .normal
      }
    Inconsistent Naming

    The function is named toSmileSensitivity() but the enum values use uppercase (NORMAL, RELAXED) while the iOS version uses lowercase (.normal, .relaxed). Verify this matches the underlying SDK expectations and consider documenting the case sensitivity requirements.

    fun String.toSmileSensitivity() : SmileSensitivity {
      return when (this) {
        "Normal" -> SmileSensitivity.NORMAL
        "Relaxed" -> SmileSensitivity.RELAXED
        else -> {
          throw IllegalArgumentException(
            "Invalid smileSensitivity value: $this. " +
              "Expected 'Normal' or 'Relaxed'."
          )
        }
      }
    }

    @wangerekaharun wangerekaharun changed the title feat: Update Android & iOS SDKs to v11.1.5 and v11.1.4 feat: Update Android & iOS SDKs to v11.1.6 and v11.1.5 Dec 23, 2025
    jumaallan
    jumaallan previously approved these changes Dec 23, 2025
    @wangerekaharun wangerekaharun merged commit 75c4248 into main Dec 23, 2025
    10 checks passed
    @wangerekaharun wangerekaharun deleted the release/v11.1.3 branch December 23, 2025 16:28
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

    Projects

    None yet

    Development

    Successfully merging this pull request may close these issues.

    2 participants