* [INJIMOB-3647] refactor: modify data type of isRevoked to EvaluationStatus
Type representing any possible value of EvaluationStatus.
- "TRUE" → Condition was evaluated and is positively true
- "FALSE" → Condition was evaluated and is definitively false
- "UNDETERMINED" → Condition could not be evaluated due to an error
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-3647] refactor: modify data type of isRevoked to EvaluationStatus
Type representing any possible value of EvaluationStatus.
- "TRUE" → Condition was evaluated and is positively true
- "FALSE" → Condition was evaluated and is definitively false
- "UNDETERMINED" → Condition could not be evaluated due to an error
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-3647] refactor: change statuslistVC type to record from string
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
# Conflicts:
# shared/vcjs/verifyCredential.ts
* [INJIMOB-3647] refactor: update status revoke check to check for null status
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-3647] refactor: VCMetadat constructor isRevoked param
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-3647] refactor: rename EvaluationStatus to RevocationStatus
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-3647] refactor: modify revocation status logs
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
---------
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] update package.json and resolve dependencies for react 0.73.0
Signed-off-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com>
* [INJIMOB-2381] setup for 0.73.6
Signed-off-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com>
* [INJIMOB-2381] fix font & image not loading issue
changes include
- move common image assets to android & iOS folders
- update gradle version to 8.2
- add expo-font asset for Inter regular
- replace useFont with expo-font
- remove flipper (reason: 0.74 react native decoupled flipper)
- npm package updates
- close icon changed to close text in QRScanner.tsx
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
Signed-off-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com>
* [INJIMOB-2381] update android:mosip script as per updated react native version
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] fix android build failure issue
Changes include:
- rename android assets folder as per convention
- remove unused biometrics dependency
- use env from react-native-dotenv as per module registered in babel config
- revert conversion of close icon to image in QRScanner component
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] fix iOS build issue
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] rm unused local images linking in adnroid
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] fix splash screen not rendering issue in android
Issue: Local assets were not loaded via React Native Image component in android, to fix this @react-native/assets-registry has been added
Reference: https://github.com/expo/expo/issues/31240#issuecomment-2459049911
Other changes:
- remove usage of expo-image as we dont have any explicit usecase for expo-image and its unused
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] rm unused intro slider image assets
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] revert back using local font assets in android
Reason: Previously expo-font was used for fonts, to bring back the same compatiblity it is bought back
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] use GestureHandlerRootView in root level to handle gestures
ref - https://docs.swmansion.com/react-native-gesture-handler/docs/1.x/#js
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] remove custom assets and linking for images in iOS
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] use default parameters instead of defaultProps
Reason: React 18 has marked defaultProps as deprecated and it is removed in React 19 version. To avoid the issue of deprated usage, its modified.
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] remove unused terminal option in android build script
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] remove font assets in android
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] optimize import
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] fix failing test
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] set package.resolved version to 2
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] fix setting of camera view in face scanner
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] fix setting of camera view in face compare
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] remove flipper config file
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] remove unused debug logs
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] refactor use component instead of type
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] refactor use GestureHandlerRootView only on root level
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] refactor remove unused config linking of font assets
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] refactor remove unused image assets
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] fix camera persmission issue in QRScanner
use expo-camera to request and getstatus of camera permission instead of expo-barcode-scanner to avoid multiple re-renders of scan screen in flow of camera permission denial
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] remove package expo-barcode-scanner
expo-barcode-scanner is deprecated and its suggested to use expo-camera to handle the scanning flows. The existing bar-code-scanner implementations have been replaced with expo-camera.
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] use extracted enums instead of legacy expo-camera
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] remove patch for react-native-0.71.8
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] revert date-fs version to 2.28.0
date-fns is not supporting filipino langauge, so we are maintaining patch for that. The patch created is for version 2.28.0 and updating the version of date-fns is causing conflicts in patch application if updated as well. To avoid this issue, version is kept as 2.28.0
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] update readme
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] remove usage of legacy expo-camera in getting image type
Other changes
- remove resolutions block from package.json
- sync pbxproj
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
* [INJIMOB-2381] add active prop to expo-camera as per suggestions
expo-camera suggests "Only one Camera preview can be active at any given time. If you have multiple screens in your app, you should unmount Camera components whenever a screen is unfocused.". To handle this active prop is used which is set to false on unMount of the component whenever rendering Camera from expo-camera
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
---------
Signed-off-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com>
Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
Signed-off-by: adityankannan-tw <109274996+adityankannan-tw@users.noreply.github.com>
Co-authored-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com>
Co-authored-by: adityankannan-tw <109274996+adityankannan-tw@users.noreply.github.com>
* refactor(INJI-449): remove unused dependencies
Dependencies removed
1. expo-status-bar
2. @expo-google-fonts/poppins
3. react-native-simple-markdown
4. react-native-swipe-gestures
DevDependencies removed
1. @react-native/metro-config (removed as we already have @expo/metro-config dependency used)
2. metro-react-native-babel-preset
3. @types/react-test-renderer
4. react-test-renderer
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* refactor(INJI-449): update expo related packages and crypto-js
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* refactor(INJI-449): update transitive dependency of expo-updates package
plist package is a transitive dependency of expo-updates which had vulnerability - Prototype pollution vulnerability via .parse() in Plist before v3.0.4 allows attackers to cause a Denial of Service (DoS) and may lead to remote code execution. Thus this package was updated to fix vulnerability
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* refactor(INJI-449): update axios dependency of telemetry-sdk to 1.6.0
Since the package axios(1.5.0) has vulnerability - Cross-Site Request Forgery (CSRF), it is updated to 1.6.0
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* fix(INJI-449): vulnerablity issue with @digitalbazaar/rsa-verification-key-2018
override the node-forge dependency of the package - @digitalbazaar/rsa-verification-key-2018 as it has the high severity with CVE count 13
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* revert(INJI-449): downgrade crypto-js to 3.3.0 from 4.x.x version
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* refactor(INJI-449): use expo-splash-screen instead of expo-app-loading
expo-app-loading package is deprecated and it is suggested to replace it with expo-splash-screen
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* refactor(INJI-449): optimize time taken to hide splash screen
Co-authored-by: Sreenadh S <32409698+sree96@users.noreply.github.com>
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* refactor(INJI-449): change appEntry to index js
Change appEntry to index.js file since react-native-url-polyfill/auto is imported to avoid URL error. appEntry is required for expo package update
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* refactor(INJI-559): update podfile.lock
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* refactor(INJI-449): optimize import
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
---------
Signed-off-by: Kiruthika Jeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* perf(INJI-458): cache fixed result of custom keystore presence
Each call over the RN bridge can take significant user-visible time, and since
the result is used multiple times and cannot change for a device in runtime,
it can be computed once stored for later use.
Signed-off-by: Harsh Vardhan <harsh59v@gmail.com>
* feat(INJI-458): show loading for android h/w keystore check & generation
Signed-off-by: Harsh Vardhan <harsh59v@gmail.com>
* feat(INJI-472): show loader on issuer select
Co-authored-by: KiruthikaJeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
Signed-off-by: Harsh Vardhan <harsh59v@gmail.com>
* refactor(INJI-458): rename const name to isHardwareKeystoreExists
Signed-off-by: Harsh Vardhan <harsh59v@gmail.com>
---------
Signed-off-by: Harsh Vardhan <harsh59v@gmail.com>
Co-authored-by: KiruthikaJeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
* feat(INJI-403): add events in the VC download flow for success scenario
* refactor(INJI-403): updates logic to capture preferred language in telemetry
Signed-off-by: Alka <prasadalka1998@gmail.com>
* fix(INJI-403): revert changes of google services and env added by mistake
Signed-off-by: Alka <prasadalka1998@gmail.com>
* refactor(INJI-403): extracts some methods of telemetry to a util file
Signed-off-by: Alka <prasadalka1998@gmail.com>
* fix(INJI-403): fetch selected issuer's id from context instead of event
Signed-off-by: Alka <prasadalka1998@gmail.com>
* feat(INJI-403): update telemetry package link to mosip org
Signed-off-by: Alka <prasadalka1998@gmail.com>
* feat(INJI-403): making language code mapping fail safe and removing unwanted code
Signed-off-by: Alka <prasadalka1998@gmail.com>
---------
Signed-off-by: Alka Prasad <Alka1703@users.noreply.github.com>
Signed-off-by: Alka <prasadalka1998@gmail.com>
* feat(inji-344): add flipper config for mmkv and xstate
* feat(inji-409): Add flipper config file and enable devtools for all machines
* feat(inji-409): Add react-navigation to flipper config
* feat(inji-344): Use VC Key class instead of separate functions for managing vc key
* feat(inji-344): Use properties from VcKey Class instead of reading from vckey string
* feat(inji-344): Rename vcKey to vcMetadata
* feat(inji-344): Use vc's unique id or vckey instead of joined string of vc metadata
* feat(inji-344): Use vc key instead of unique id to avoid confusion. Fix issues reg parsing vc metadata
* feat(inji-344):fix redownloading issue
Co-authored-by: Tilak <tilakpuli15@gmail.com>
* feat(inji-344): Remove vc getting stored on update of pin status
* feat(inji-344): update other vc's pin status to false when any vc is pinned
* feat(inji-344): remove hash ID for UIN
* feat(inji-344): revert google services json
* feat(inji-344): remove mmkv logs added for debugging
* feat(inji-344): fix received vcs not getting displayed on reopen of app
* feat(inji-344): fix id not shown in revoke component
---------
Co-authored-by: Sri Kanth Kola <srikanthsri7447@gmail.com>
* feat(INJI-267): add and export deviceId constant in constants file
Use react-native-device-info library to get the unique identifier for each and every device
* refactor(INJI-267): extracts AppId global variable into a global variable file and renames it to __AppId
* refactor(INJI-267): extracts inji version and tuvali version handling into global variable file
* feat(INJI-267): add telemetry configuration in the application
* feat(INJI-267): generate unique session id for every session of the app
After launching the app until we kill the app we consider it as a single session
* feat(INJI-267): add start and end telemetry events for the QR login success flow
* feat(INJI-267): pass session id value in sunbird config
* feat(INJI-267): add start and end telemetry events for the VC sharing success flow
* feat(INJI-267): add start and end telemetry events for the VC activation success flow
* refactor(INJI-267): change QR login, VC share telemetry events type
* refactor(INJI-267): extract generateSessionId function, deviceId into global variables file
* feat(INJI-267): adds device related information in the config value
* feat(INJI-267): add and export deviceId constant in constants file
Use react-native-device-info library to get the unique identifier for each and every device
* refactor(INJI-267): extracts AppId global variable into a global variable file and renames it to __AppId
* refactor(INJI-267): extracts inji version and tuvali version handling into global variable file
* feat(INJI-267): add telemetry configuration in the application
* feat(INJI-267): generate unique session id for every session of the app
After launching the app until we kill the app we consider it as a single session
* feat(INJI-267): add start and end telemetry events for the QR login success flow
* feat(INJI-267): pass session id value in sunbird config
* feat(INJI-267): add start and end telemetry events for the VC sharing success flow
* feat(INJI-267): add start and end telemetry events for the VC activation success flow
* refactor(INJI-267): change QR login, VC share telemetry events type
* refactor(INJI-267): extract generateSessionId function, deviceId into global variables file
* feat(INJI-267): adds device related information in the config value
* feat(INJI-267): add selected language in global variables file to pass it into sunbird config
* feat(INJI-267): updates config structure and add AppInfo event
* feat(INJI-267): create dummy end event data to make the schema and send AppInfo Event on app launch
* feat(INJI-267): add and export deviceId constant in constants file
Use react-native-device-info library to get the unique identifier for each and every device
* refactor(INJI-267): extracts AppId global variable into a global variable file and renames it to __AppId
* refactor(INJI-267): extracts inji version and tuvali version handling into global variable file
* feat(INJI-267): add telemetry configuration in the application
* feat(INJI-267): generate unique session id for every session of the app
After launching the app until we kill the app we consider it as a single session
* feat(INJI-267): add start and end telemetry events for the QR login success flow
* feat(INJI-267): pass session id value in sunbird config
* feat(INJI-267): add start and end telemetry events for the VC sharing success flow
* feat(INJI-267): add start and end telemetry events for the VC activation success flow
* refactor(INJI-267): change QR login, VC share telemetry events type
* refactor(INJI-267): extract generateSessionId function, deviceId into global variables file
* feat(INJI-267): adds device related information in the config value
* feat(INJI-267): add and export deviceId constant in constants file
Use react-native-device-info library to get the unique identifier for each and every device
* feat(INJI-267): add telemetry configuration in the application
* feat(INJI-267): pass session id value in sunbird config
* refactor(INJI-267): change QR login, VC share telemetry events type
* refactor(INJI-267): extract generateSessionId function, deviceId into global variables file
* feat(INJI-267): adds device related information in the config value
* feat(INJI-267): add selected language in global variables file to pass it into sunbird config
* feat(INJI-267): updates config structure and add AppInfo event
* feat(INJI-267): create dummy end event data to make the schema and send AppInfo Event on app launch
* feat(INJI-267): bump up react-native-localize and remove unnecessary code
* feat(INJI-267): remove some unused imports and unnecessary formattings
* feat(INJI-267): remove unnecessary formattings
* feat(INJI-267): extracts obsrv host in an env variable
* feat(INJI-267): add env variable in react-native-dot-env index file
* feat(INJI-267): bump up react-native-localize
---------
Signed-off-by: Swati Goel <meet2swati@gmail.com>
Co-authored-by: PuBHARGAVI <46226958+PuBHARGAVI@users.noreply.github.com>
Co-authored-by: Swati Goel <meet2swati@gmail.com>
details about the component:
- has two buttons tryAgain & cancel each occupying half the space in the
row
- kludge: uses similar styling for both themes
- TODO: override the width styles in-place instead
- this component should not be used for production as this is strictly
temporary for narrowing down in on bugs
Other changes:
- removed additional button from original MessageOverlay component
Reason: when keychain.getGenericPassword errors due to a false/falsy response,
the state machine goes ahead and clears the MMKV store and the VC
directory as without the key the encrypted data is not meaningful,
it may so happen that the keychain/keystore is not unlocked yet as
most modern mobile OSes can choose to lock access to it when the phone
is locked
Fix: earlier the state machine would go and clear the datastores without
user intervention, this fix will give the user a prompt if encrypted
VCs exist on app-data and allow user to try reading the keychain once
again before silently deleting everything
Co-authored-by: KiruthikaJeyashankar <81218987+KiruthikaJeyashankar@users.noreply.github.com>
Co-authored-by: Alka <prasadalka1998@gmail.com>