mirror of
https://github.com/mosip/inji-wallet.git
synced 2026-01-09 13:38:01 -05:00
* feat(INJI-245): dowload and view card via issuers Co-authored-by: Harsh Vardhan <harsh59v@gmail.com> * fix(INJI-245): remove vc from wallet Co-authored-by: Harsh Vardhan <harsh59v@gmail.com> * feat(INJI-245): pin card downloaded via eSignet * refactor(INJI-245): remove debug logs * refactor(INJI-245): rename vcItem related component to ExistingVcItem * refactor(INJI-245): add lock file modifications * refactor(INJI-245): add styles in purple theme for issuer related components * refactor(INJI-245): update VID for wallet binding usecase and issuer logo display in vc * refactor(INJI-245): remove duplicate loader component * refactor(INJI-245): remove unused props in vc details container --------- Co-authored-by: Harsh Vardhan <harsh59v@gmail.com> Co-authored-by: Vijay <94220135+vijay151096@users.noreply.github.com>
46 lines
1.5 KiB
TypeScript
46 lines
1.5 KiB
TypeScript
import {useSelector} from '@xstate/react';
|
|
import {
|
|
IssuerScreenTabEvents,
|
|
IssuersMachine,
|
|
selectErrorMessage,
|
|
selectIsDone,
|
|
selectIsDownloadCredentials,
|
|
selectIsIdle,
|
|
selectIssuers,
|
|
selectLoadingReason,
|
|
selectStoring,
|
|
} from '../../machines/issuersMachine';
|
|
import {ActorRefFrom} from 'xstate';
|
|
import {BOTTOM_TAB_ROUTES} from '../../routes/routesConstants';
|
|
|
|
export function useIssuerScreenController({route, navigation}) {
|
|
const service = route.params.service;
|
|
|
|
return {
|
|
issuers: useSelector(service, selectIssuers),
|
|
errorMessage: useSelector(service, selectErrorMessage),
|
|
isDownloadingCredentials: useSelector(service, selectIsDownloadCredentials),
|
|
isDone: useSelector(service, selectIsDone),
|
|
isIdle: useSelector(service, selectIsIdle),
|
|
loadingReason: useSelector(service, selectLoadingReason),
|
|
isStoring: useSelector(service, selectStoring),
|
|
|
|
CANCEL: () => service.send(IssuerScreenTabEvents.CANCEL()),
|
|
SELECTED_ISSUER: id =>
|
|
service.send(IssuerScreenTabEvents.SELECTED_ISSUER(id)),
|
|
DISMISS: () => service.send(IssuerScreenTabEvents.DISMISS()),
|
|
TRY_AGAIN: () => service.send(IssuerScreenTabEvents.TRY_AGAIN()),
|
|
RESET_ERROR: () => service.send(IssuerScreenTabEvents.RESET_ERROR()),
|
|
DOWNLOAD_ID: () => {
|
|
service.send(IssuerScreenTabEvents.DOWNLOAD_ID());
|
|
navigation.navigate(BOTTOM_TAB_ROUTES.home, {screen: 'HomeScreen'});
|
|
},
|
|
};
|
|
}
|
|
|
|
export interface IssuerModalProps {
|
|
service?: ActorRefFrom<typeof IssuersMachine>;
|
|
onPress?: () => void;
|
|
isVisible?: boolean;
|
|
}
|