Files
inji-wallet/components/VCVerification.tsx
KiruthikaJeyashankar 324349b9c1 [INJIMOB-2415] show credential type in mini view instead of fullName (#1705)
* [INJIMOB-2415] show credential type in mini view

Previously, it was showing hardcoded fullName in mini view

Other changes include
- Handling of display property
  -> unavailable in wellknown
  -> empty array in wellknown
  -> expected credential type (name) is not available in display property of wellknown

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] rename getIDType to getCredentialType

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415]: update logic to get credential type

Signed-off-by: Alka Prasad <prasadalka1998@gmail.com>

* [INJIMOB-2415]: update the translation for mso mdoc fallback for credential type

Signed-off-by: Alka Prasad <prasadalka1998@gmail.com>

* [INJIMOB-2415] update getCredentialType method comments

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2369] remove commented code

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] get backgroundColor of VC from curr lang's display property

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] get background image of VC from curr lang's display property

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] get text color of VC from curr lang's display property

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] add prop types for VCVerification component

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] introduce fieldColor prop in VCItemField for VC mini & detail view

As of now, for each and every field that is getting rendered we are calling getTextColor with wellknown param, if we start bringing in logic of getDisplayObjectForCurrentLanguage and then get the text_color from it, we will end up in running a filter for each and every field. For reducing this complexity, VCItemField component is accepting fieldColor prop from the caller.

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] move fallback miniview kebab popup color to const

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] move fallback detailview border color to const

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] move fallback verification text color to const

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] remove unnecessary sending of props

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] refactor type error

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] refactor type error

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] refactor - remove unused prop

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] refactor getBackgroundColor to accept display element as per app languange

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] refactor getBackgroundImage to accept display element as per app languange

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] refactor getTextColor to accept display element as per app languange

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] fix credential type to be shown based on app lang

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] extract card's display related functions to class

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

* [INJIMOB-2415] fix build fail for accessing Theme in static block

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>

---------

Signed-off-by: KiruthikaJeyashankar <kiruthikavjshankar@gmail.com>
Signed-off-by: Alka Prasad <prasadalka1998@gmail.com>
Co-authored-by: Alka Prasad <prasadalka1998@gmail.com>
2024-11-29 17:30:42 +05:30

54 lines
1.3 KiB
TypeScript

import testIDProps from '../shared/commonUtil';
import {Display} from './VC/common/VCUtils';
import VerifiedIcon from './VerifiedIcon';
import {Row, Text} from './ui';
import {Theme} from './ui/styleUtils';
import React from 'react';
import {useTranslation} from 'react-i18next';
import PendingIcon from './PendingIcon';
import {VCMetadata} from '../shared/VCMetadata';
export const VCVerification: React.FC<VCVerificationProps> = ({
vcMetadata,
display,
}) => {
const {t} = useTranslation('VcDetails');
const statusText = vcMetadata.isVerified
? vcMetadata.isExpired
? t('expired')
: t('valid')
: t('pending');
const statusIcon = vcMetadata.isVerified ? (
vcMetadata.isExpired ? (
<PendingIcon />
) : (
<VerifiedIcon />
)
) : (
<PendingIcon />
);
return (
<Row
{...testIDProps('verified')}
style={{
alignItems: 'center',
}}>
<React.Fragment>
{statusIcon}
<Text
testID="verificationStatus"
color={display.getTextColor(Theme.Colors.Details)}
style={Theme.Styles.verificationStatus}>
{statusText}
</Text>
</React.Fragment>
</Row>
);
};
export interface VCVerificationProps {
vcMetadata: VCMetadata;
display: Display;
}