mirror of
https://github.com/mosip/inji-wallet.git
synced 2026-01-09 21:48:04 -05:00
* [INJIMOB-3453] fix share-with-selfie not coming with vc with face (#2095) * [INJIMOB-3453] fix share-with-selfie not coming with vc with face and remove mosip vc hardcoding Signed-off-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com> * [INJIMOB-3453] pass issuerHost instead of issuer name in activitylogs Signed-off-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com> * [INJIMOB-3453] exclude processed credentialdata data in ble share Signed-off-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com> * [INJIMOB-3453] refactor: rename vcHasImage to getFaceAtribute Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3453] refactor: modify fallback for face in VC Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3453] fix: inexisting function import 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> Co-authored-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com> * [INJIMOB-3571] | [INJIMOB-3572] refactor: Modify trusted verifiers construction (#2094) * [INJIMOB-3571] add: modify trusted verifiers Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3571] add: modify trusted verifiers in swift Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3571] refactor: remove unused logs and code Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3572] add: support for unsigned request in pre-registered verifiers Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3572] chore: update openid4vp swift package version Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3571] refactor: revert changes trustedVerifiers cachePreference Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3558] refactor: update vc renderer renderVc to generateCredentualDisplayCOntent Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3559] fix: bridging issue of generateCredentialContent method Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3559] refactor: modify vc renderer native module Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3559] refactor: modify vc renderer native module Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> * [INJIMOB-3559] chore: update vc renderer swift package Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com> --------- 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> Co-authored-by: Abhishek Paul <paul.apaul.abhishek.ap@gmail.com>
103 lines
3.9 KiB
TypeScript
103 lines
3.9 KiB
TypeScript
import {useSelector} from '@xstate/react';
|
|
import {useContext, useState} from 'react';
|
|
import {ActorRefFrom} from 'xstate';
|
|
import {selectShareableVcsMetadata} from '../../machines/VerifiableCredential/VCMetaMachine/VCMetaSelectors';
|
|
import {GlobalContext} from '../../shared/GlobalContext';
|
|
import {
|
|
selectCredential,
|
|
selectIsSelectingVc,
|
|
selectReceiverInfo,
|
|
selectVcName,
|
|
selectVerifiableCredentialData,
|
|
} from '../../machines/bleShare/scan/scanSelectors';
|
|
import {
|
|
selectIsCancelling,
|
|
selectIsInvalidIdentity,
|
|
selectIsVerifyingIdentity,
|
|
} from '../../machines/bleShare/commonSelectors';
|
|
import {ScanEvents} from '../../machines/bleShare/scan/scanMachine';
|
|
import {selectIsFaceVerificationConsent} from '../../machines/bleShare/scan/scanSelectors';
|
|
import {VCShareFlowType} from '../../shared/Utils';
|
|
import {NavigationProp, useNavigation} from '@react-navigation/native';
|
|
import {RootRouteProps} from '../../routes';
|
|
import {BOTTOM_TAB_ROUTES} from '../../routes/routesConstants';
|
|
import {VCItemMachine} from '../../machines/VerifiableCredential/VCItemMachine/VCItemMachine';
|
|
import {Theme} from '../../components/ui/styleUtils';
|
|
|
|
type MyVcsTabNavigation = NavigationProp<RootRouteProps>;
|
|
|
|
const changeTabBarVisible = (visible: string) => {
|
|
Theme.BottomTabBarStyle.tabBarStyle.display = visible;
|
|
};
|
|
|
|
export function useSendVcScreen() {
|
|
const {appService} = useContext(GlobalContext);
|
|
const scanService = appService.children.get('scan')!!;
|
|
const vcMetaService = appService.children.get('vcMeta')!!;
|
|
const navigation = useNavigation<MyVcsTabNavigation>();
|
|
|
|
const [selectedIndex, setSelectedIndex] = useState<number>(null);
|
|
|
|
return {
|
|
selectedIndex,
|
|
receiverInfo: useSelector(scanService, selectReceiverInfo),
|
|
vcName: useSelector(scanService, selectVcName),
|
|
shareableVcsMetadata: useSelector(
|
|
vcMetaService,
|
|
selectShareableVcsMetadata,
|
|
),
|
|
isSelectingVc: useSelector(scanService, selectIsSelectingVc),
|
|
isVerifyingIdentity: useSelector(scanService, selectIsVerifyingIdentity),
|
|
isInvalidIdentity: useSelector(scanService, selectIsInvalidIdentity),
|
|
isCancelling: useSelector(scanService, selectIsCancelling),
|
|
isFaceVerificationConsent: useSelector(
|
|
scanService,
|
|
selectIsFaceVerificationConsent,
|
|
),
|
|
credential: useSelector(scanService, selectCredential),
|
|
verifiableCredentialData: useSelector(
|
|
scanService,
|
|
selectVerifiableCredentialData,
|
|
),
|
|
CANCEL: () => scanService.send(ScanEvents.CANCEL()),
|
|
ACCEPT_REQUEST: () => scanService.send(ScanEvents.ACCEPT_REQUEST()),
|
|
FACE_VERIFICATION_CONSENT: (isDoNotAskAgainChecked: boolean) =>
|
|
scanService.send(
|
|
ScanEvents.FACE_VERIFICATION_CONSENT(isDoNotAskAgainChecked),
|
|
),
|
|
VERIFY_AND_ACCEPT_REQUEST: () =>
|
|
scanService.send(ScanEvents.VERIFY_AND_ACCEPT_REQUEST()),
|
|
DISMISS: () => scanService.send(ScanEvents.DISMISS()),
|
|
UPDATE_VC_NAME: (vcName: string) =>
|
|
scanService.send(ScanEvents.UPDATE_VC_NAME(vcName)),
|
|
FACE_VALID: () => scanService.send(ScanEvents.FACE_VALID()),
|
|
FACE_INVALID: () => scanService.send(ScanEvents.FACE_INVALID()),
|
|
RETRY_VERIFICATION: () => scanService.send(ScanEvents.RETRY_VERIFICATION()),
|
|
GO_TO_HOME: () => {
|
|
navigation.navigate(BOTTOM_TAB_ROUTES.home, {screen: 'HomeScreen'});
|
|
changeTabBarVisible('flex');
|
|
},
|
|
SELECT_VC_ITEM:
|
|
(index: number) => (vcRef: ActorRefFrom<typeof VCItemMachine>) => {
|
|
setSelectedIndex(index);
|
|
const {
|
|
serviceRefs,
|
|
wellknownResponse,
|
|
verifiableCredential: {
|
|
processedCredential,
|
|
...filteredVerifiableCredential
|
|
},
|
|
...rest
|
|
} = vcRef.getSnapshot().context;
|
|
const vcData = {
|
|
...rest,
|
|
processedCredential,
|
|
verifiableCredential: filteredVerifiableCredential,
|
|
};
|
|
scanService.send(
|
|
ScanEvents.SELECT_VC(vcData, VCShareFlowType.SIMPLE_SHARE),
|
|
);
|
|
},
|
|
};
|
|
}
|