
Security News
npm Adopts OIDC for Trusted Publishing in CI/CD Workflows
npm now supports Trusted Publishing with OIDC, enabling secure package publishing directly from CI/CD workflows without relying on long-lived tokens.
react-native-persona
Advanced tools
Launch a mobile native implementation of the Persona inquiry flow from React Native.
First, run yarn in the project root.
yarn
To test changes to SDK, we will use the Example App in example
app.
This will bundle JavaScript and serve it to your React Native sample app. Keep the Metro bundler running in a terminal.
yarn example start
Metro bundler compiles source code and caches compiled targets to speed up incremental rebuilds. However, it's possible
that this can lead to random failures if things get out of sync. If you ever run into any weird issues, it's worth
running yarn example start --reset-cache
again.
Use the built-in CLI command with Metro running.
yarn example ios
Or open ios/example.xcworkspace
in XCode and build + run.
Use the built-in CLI command with Metro running.
yarn example android
Or open the Android project in Android Studio and build + run.
If you need to add any open source dependencies to this project, you'll need to make sure that the license for that project is acceptable. At the time of writing, licenses that are not GPL, LGPL, or AGPL are likely to be acceptable. Please consult with #legal for specific questions though.
We use the license_finder gem to ensure that we're only using open source projects with licenses that we explicitly allow. If and when you need to add a new license to our allow-list, you can edit the file at doc/dependency_decisions.yml
accordingly. If you check out license_finder
's documentation, you'll see how to use the tool to make these updates to the yml file.
yarn add react-native-persona
import {Environment, Inquiry} from "react-native-persona";
// Start an inquiry.
Inquiry.fromTemplate('itmpl_Ygs16MKTkA6obnF8C3Rb17dm')
.environment(Environment.SANDBOX)
.onComplete((inquiryId, status, fields) =>
Alert.alert('Complete', `Inquiry ${inquiryId} completed with status "${status}."`,),
)
.onCanceled((inquiryId, sessionToken) =>
Alert.alert('Canceled', `Inquiry ${inquiryId} was cancelled`),
)
.onError(error => Alert.alert('Error', error.message))
.build()
.start();
Set your own colors, buttons, fonts, and more. This can be done via the Persona Dashboard. For more information on using the theme editor, see our help article.
Android
Update the sdk version in android/build.gradle
implementation 'com.withpersona.sdk2:inquiry:X.Y.Z'
iOS
Update the sdk version in RNPersonaInquiry2.podspec
s.dependency 'PersonaInquirySDK2', '~> X.Y.Z'
Go to example/ios
directory, update the Podfiles by running
pod update PersonaInquirySDK2 --repo-update
pod install --repo-update
React Native
Bump react native version in package.json
if needed.
Commit and push changed files including:
android/build.gradle
RNPersonaInquiry2.podspec
package.json
example/ios/Podfile.lock
FAQs
Launch a mobile native implementation of the Persona inquiry flow from React Native.
The npm package react-native-persona receives a total of 12,125 weekly downloads. As such, react-native-persona popularity was classified as popular.
We found that react-native-persona demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 6 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
npm now supports Trusted Publishing with OIDC, enabling secure package publishing directly from CI/CD workflows without relying on long-lived tokens.
Research
/Security News
A RubyGems malware campaign used 60 malicious packages posing as automation tools to steal credentials from social media and marketing tool users.
Security News
The CNA Scorecard ranks CVE issuers by data completeness, revealing major gaps in patch info and software identifiers across thousands of vulnerabilities.