@procivis/one-react-native-components 0.3.102 → 0.3.106
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/history/history-list-item-icon.js +6 -2
- package/lib/commonjs/components/history/history-list-item-icon.js.map +1 -1
- package/lib/commonjs/components/proof-request/v1/share-credential.js +2 -14
- package/lib/commonjs/components/proof-request/v1/share-credential.js.map +1 -1
- package/lib/commonjs/ui-components/header/foldable-header.js +26 -16
- package/lib/commonjs/ui-components/header/foldable-header.js.map +1 -1
- package/lib/commonjs/ui-components/index.js +11 -0
- package/lib/commonjs/ui-components/index.js.map +1 -1
- package/lib/commonjs/ui-components/notice/index.js +14 -0
- package/lib/commonjs/ui-components/notice/index.js.map +1 -0
- package/lib/commonjs/ui-components/notice/wallet-notice.js +80 -0
- package/lib/commonjs/ui-components/notice/wallet-notice.js.map +1 -0
- package/lib/commonjs/utils/hooks/core/proofs.js +12 -2
- package/lib/commonjs/utils/hooks/core/proofs.js.map +1 -1
- package/lib/commonjs/utils/parsers/credential-images.js +1 -1
- package/lib/commonjs/utils/parsers/credential-images.js.map +1 -1
- package/lib/commonjs/utils/parsers/credential-sharing-v2.js +1 -1
- package/lib/commonjs/utils/parsers/credential-sharing-v2.js.map +1 -1
- package/lib/commonjs/utils/parsers/credential-sharing.js +4 -10
- package/lib/commonjs/utils/parsers/credential-sharing.js.map +1 -1
- package/lib/module/components/history/history-list-item-icon.js +6 -2
- package/lib/module/components/history/history-list-item-icon.js.map +1 -1
- package/lib/module/components/proof-request/v1/share-credential.js +2 -14
- package/lib/module/components/proof-request/v1/share-credential.js.map +1 -1
- package/lib/module/ui-components/header/foldable-header.js +26 -16
- package/lib/module/ui-components/header/foldable-header.js.map +1 -1
- package/lib/module/ui-components/index.js +1 -0
- package/lib/module/ui-components/index.js.map +1 -1
- package/lib/module/ui-components/notice/index.js +3 -0
- package/lib/module/ui-components/notice/index.js.map +1 -0
- package/lib/module/ui-components/notice/wallet-notice.js +72 -0
- package/lib/module/ui-components/notice/wallet-notice.js.map +1 -0
- package/lib/module/utils/hooks/core/proofs.js +12 -2
- package/lib/module/utils/hooks/core/proofs.js.map +1 -1
- package/lib/module/utils/parsers/credential-images.js +1 -1
- package/lib/module/utils/parsers/credential-images.js.map +1 -1
- package/lib/module/utils/parsers/credential-sharing-v2.js +1 -1
- package/lib/module/utils/parsers/credential-sharing-v2.js.map +1 -1
- package/lib/module/utils/parsers/credential-sharing.js +4 -10
- package/lib/module/utils/parsers/credential-sharing.js.map +1 -1
- package/lib/typescript/ui-components/index.d.ts +1 -0
- package/lib/typescript/ui-components/notice/index.d.ts +2 -0
- package/lib/typescript/ui-components/notice/wallet-notice.d.ts +11 -0
- package/lib/typescript/utils/hooks/core/proofs.d.ts +5 -3
- package/lib/typescript/utils/parsers/credential-sharing.d.ts +2 -2
- package/package.json +3 -3
- package/src/components/history/history-list-item-icon.tsx +4 -0
- package/src/components/proof-request/v1/share-credential.tsx +1 -18
- package/src/ui-components/header/foldable-header.tsx +27 -20
- package/src/ui-components/index.ts +1 -0
- package/src/ui-components/notice/index.ts +3 -0
- package/src/ui-components/notice/wallet-notice.tsx +82 -0
- package/src/utils/hooks/core/proofs.ts +10 -2
- package/src/utils/parsers/credential-images.tsx +1 -1
- package/src/utils/parsers/credential-sharing-v2.tsx +0 -1
- package/src/utils/parsers/credential-sharing.tsx +1 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CredentialStateBindingEnum","React","useMemo","Dimensions","StyleSheet","CredentialDetailsCardListItem","useAppColorScheme","concatTestID","useCoreConfig","getValidityState","ValidityState","shareCredentialCardFromCredential","SelectShareCredentialCardNotice","ShareCredentialCardNotice","ShareCredential","allCredentials","expanded","labels","lastItem","onHeaderPress","onImagePreview","onSelectCredential","onSelectField","request","selectedCredentialId","selectedFields","style","testID","_credential$issuer","colorScheme","credential","find","c","id","data","config","cardWidth","get","width","selectionOptions","applicableCredentials","filter","applicableCredentialId","some","state","ACCEPTED","multipleCredentialsAvailable","length","validityState","issuer","undefined","invalid","lvvcIssuanceDate","validityCredentialNbf","Date","footer","Revoked","createElement","text","revokedCredentialNotice","Suspended","suspendedCredentialNotice","invalidCredentialNotice","buttonTitle","multipleCredentialsSelect","onPress","multipleCredentialsNotice","card","attributes","Boolean","credentialId","onAttributeSelected","styles","borderColor","background","create","borderRadius","borderWidth","marginBottom"],"sources":["share-credential.tsx"],"sourcesContent":["import {\n CredentialDetailBindingDto,\n CredentialListItemBindingDto,\n CredentialStateBindingEnum,\n PresentationDefinitionFieldBindingDto,\n PresentationDefinitionRequestedCredentialBindingDto,\n} from '@procivis/react-native-one-core';\nimport React, { FunctionComponent, useMemo } from 'react';\nimport { Dimensions, ImageSourcePropType, StyleProp, StyleSheet, ViewStyle } from 'react-native';\n\nimport { CredentialDetailsCardListItem, useAppColorScheme } from '../../../ui-components';\nimport { concatTestID } from '../../../utils';\nimport { useCoreConfig } from '../../../utils/hooks/core/core-config';\nimport { getValidityState, ValidityState } from '../../../utils/parsers/credential';\nimport {\n shareCredentialCardFromCredential,\n ShareCredentialCardLabels,\n} from '../../../utils/parsers/credential-sharing';\nimport { SelectShareCredentialCardNotice } from '../select-share-credential-card-notice';\nimport { ShareCredentialCardNotice } from '../share-credential-card-notice';\n\nexport type ShareCredentialLabels = ShareCredentialCardLabels & {\n invalidCredentialNotice: string;\n multipleCredentialsNotice: string;\n multipleCredentialsSelect: string;\n revokedCredentialNotice: string;\n suspendedCredentialNotice: string;\n};\n\nexport const ShareCredential: FunctionComponent<{\n allCredentials: CredentialDetailBindingDto[];\n expanded?: boolean;\n labels: ShareCredentialLabels;\n lastItem?: boolean;\n onHeaderPress?: (_credentialId?: string) => void;\n onImagePreview: (title: string, image: ImageSourcePropType) => void;\n onSelectCredential?: () => void;\n onSelectField: (_id: PresentationDefinitionFieldBindingDto['id'], _selected: boolean) => void;\n request: PresentationDefinitionRequestedCredentialBindingDto;\n selectedCredentialId?: CredentialListItemBindingDto['id'];\n selectedFields?: Array<PresentationDefinitionFieldBindingDto['id']>;\n style?: StyleProp<ViewStyle>;\n testID: string;\n}> = ({\n allCredentials,\n expanded,\n labels,\n lastItem,\n onHeaderPress,\n onImagePreview,\n onSelectCredential,\n onSelectField,\n request,\n selectedCredentialId,\n selectedFields,\n style,\n testID,\n}) => {\n const colorScheme = useAppColorScheme();\n const credential = allCredentials.find((c) => c.id === selectedCredentialId);\n const { data: config } = useCoreConfig();\n const cardWidth = useMemo(() => Dimensions.get('window').width - 32, []);\n\n const selectionOptions = useMemo(\n () =>\n request.applicableCredentials.filter((applicableCredentialId) =>\n allCredentials.some(\n ({ id, state }) => id === applicableCredentialId && state === CredentialStateBindingEnum.ACCEPTED,\n ),\n ),\n [allCredentials, request],\n );\n const multipleCredentialsAvailable = selectionOptions.length > 1;\n\n const validityState = getValidityState(\n credential\n ? {\n ...credential,\n issuer: credential?.issuer?.id,\n }\n : undefined,\n );\n\n const invalid = useMemo(() => {\n if (!credential?.lvvcIssuanceDate || !request.validityCredentialNbf) {\n return false;\n }\n return new Date(credential.lvvcIssuanceDate) < new Date(request.validityCredentialNbf);\n }, [credential, request]);\n\n const footer = useMemo(() => {\n if (!expanded) {\n return;\n }\n if (validityState === ValidityState.Revoked) {\n return (\n <ShareCredentialCardNotice\n testID={concatTestID(testID, 'notice.revoked')}\n text={labels.revokedCredentialNotice}\n />\n );\n }\n if (validityState === ValidityState.Suspended) {\n return (\n <ShareCredentialCardNotice\n testID={concatTestID(testID, 'notice.suspended')}\n text={labels.suspendedCredentialNotice}\n />\n );\n }\n\n if (invalid) {\n return (\n <ShareCredentialCardNotice\n testID={concatTestID(testID, 'notice.invalid')}\n text={labels.invalidCredentialNotice}\n />\n );\n }\n\n if (multipleCredentialsAvailable) {\n return (\n <SelectShareCredentialCardNotice\n buttonTitle={labels.multipleCredentialsSelect}\n onPress={onSelectCredential}\n testID={concatTestID(testID, 'notice.multiple')}\n text={labels.multipleCredentialsNotice}\n />\n );\n }\n }, [expanded, invalid, labels, multipleCredentialsAvailable, onSelectCredential, testID, validityState]);\n\n if (!config) {\n return null;\n }\n\n const { card, attributes } = shareCredentialCardFromCredential(\n credential,\n invalid,\n Boolean(expanded),\n multipleCredentialsAvailable,\n request,\n selectedFields,\n config,\n testID,\n labels,\n );\n\n return (\n <CredentialDetailsCardListItem\n attributes={attributes}\n card={{\n ...card,\n credentialId: request.id,\n onHeaderPress,\n width: cardWidth,\n }}\n expanded={expanded}\n footer={footer}\n lastItem={lastItem}\n onAttributeSelected={onSelectField}\n onImagePreview={onImagePreview}\n style={[styles.credential, { borderColor: colorScheme.background }, style]}\n testID={testID}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n credential: {\n borderRadius: 10,\n borderWidth: 1,\n marginBottom: 8,\n },\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["CredentialStateBindingEnum","React","useMemo","Dimensions","StyleSheet","CredentialDetailsCardListItem","useAppColorScheme","concatTestID","useCoreConfig","getValidityState","ValidityState","shareCredentialCardFromCredential","SelectShareCredentialCardNotice","ShareCredentialCardNotice","ShareCredential","allCredentials","expanded","labels","lastItem","onHeaderPress","onImagePreview","onSelectCredential","onSelectField","request","selectedCredentialId","selectedFields","style","testID","_credential$issuer","colorScheme","credential","find","c","id","data","config","cardWidth","get","width","selectionOptions","applicableCredentials","filter","applicableCredentialId","some","state","ACCEPTED","multipleCredentialsAvailable","length","validityState","issuer","undefined","footer","Revoked","createElement","text","revokedCredentialNotice","Suspended","suspendedCredentialNotice","buttonTitle","multipleCredentialsSelect","onPress","multipleCredentialsNotice","card","attributes","Boolean","credentialId","onAttributeSelected","styles","borderColor","background","create","borderRadius","borderWidth","marginBottom"],"sources":["share-credential.tsx"],"sourcesContent":["import {\n CredentialDetailBindingDto,\n CredentialListItemBindingDto,\n CredentialStateBindingEnum,\n PresentationDefinitionFieldBindingDto,\n PresentationDefinitionRequestedCredentialBindingDto,\n} from '@procivis/react-native-one-core';\nimport React, { FunctionComponent, useMemo } from 'react';\nimport { Dimensions, ImageSourcePropType, StyleProp, StyleSheet, ViewStyle } from 'react-native';\n\nimport { CredentialDetailsCardListItem, useAppColorScheme } from '../../../ui-components';\nimport { concatTestID } from '../../../utils';\nimport { useCoreConfig } from '../../../utils/hooks/core/core-config';\nimport { getValidityState, ValidityState } from '../../../utils/parsers/credential';\nimport {\n shareCredentialCardFromCredential,\n ShareCredentialCardLabels,\n} from '../../../utils/parsers/credential-sharing';\nimport { SelectShareCredentialCardNotice } from '../select-share-credential-card-notice';\nimport { ShareCredentialCardNotice } from '../share-credential-card-notice';\n\nexport type ShareCredentialLabels = ShareCredentialCardLabels & {\n invalidCredentialNotice: string;\n multipleCredentialsNotice: string;\n multipleCredentialsSelect: string;\n revokedCredentialNotice: string;\n suspendedCredentialNotice: string;\n};\n\nexport const ShareCredential: FunctionComponent<{\n allCredentials: CredentialDetailBindingDto[];\n expanded?: boolean;\n labels: ShareCredentialLabels;\n lastItem?: boolean;\n onHeaderPress?: (_credentialId?: string) => void;\n onImagePreview: (title: string, image: ImageSourcePropType) => void;\n onSelectCredential?: () => void;\n onSelectField: (_id: PresentationDefinitionFieldBindingDto['id'], _selected: boolean) => void;\n request: PresentationDefinitionRequestedCredentialBindingDto;\n selectedCredentialId?: CredentialListItemBindingDto['id'];\n selectedFields?: Array<PresentationDefinitionFieldBindingDto['id']>;\n style?: StyleProp<ViewStyle>;\n testID: string;\n}> = ({\n allCredentials,\n expanded,\n labels,\n lastItem,\n onHeaderPress,\n onImagePreview,\n onSelectCredential,\n onSelectField,\n request,\n selectedCredentialId,\n selectedFields,\n style,\n testID,\n}) => {\n const colorScheme = useAppColorScheme();\n const credential = allCredentials.find((c) => c.id === selectedCredentialId);\n const { data: config } = useCoreConfig();\n const cardWidth = useMemo(() => Dimensions.get('window').width - 32, []);\n\n const selectionOptions = useMemo(\n () =>\n request.applicableCredentials.filter((applicableCredentialId) =>\n allCredentials.some(\n ({ id, state }) => id === applicableCredentialId && state === CredentialStateBindingEnum.ACCEPTED,\n ),\n ),\n [allCredentials, request],\n );\n const multipleCredentialsAvailable = selectionOptions.length > 1;\n\n const validityState = getValidityState(\n credential\n ? {\n ...credential,\n issuer: credential?.issuer?.id,\n }\n : undefined,\n );\n\n const footer = useMemo(() => {\n if (!expanded) {\n return;\n }\n if (validityState === ValidityState.Revoked) {\n return (\n <ShareCredentialCardNotice\n testID={concatTestID(testID, 'notice.revoked')}\n text={labels.revokedCredentialNotice}\n />\n );\n }\n if (validityState === ValidityState.Suspended) {\n return (\n <ShareCredentialCardNotice\n testID={concatTestID(testID, 'notice.suspended')}\n text={labels.suspendedCredentialNotice}\n />\n );\n }\n\n if (multipleCredentialsAvailable) {\n return (\n <SelectShareCredentialCardNotice\n buttonTitle={labels.multipleCredentialsSelect}\n onPress={onSelectCredential}\n testID={concatTestID(testID, 'notice.multiple')}\n text={labels.multipleCredentialsNotice}\n />\n );\n }\n }, [expanded, labels, multipleCredentialsAvailable, onSelectCredential, testID, validityState]);\n\n if (!config) {\n return null;\n }\n\n const { card, attributes } = shareCredentialCardFromCredential(\n credential,\n Boolean(expanded),\n multipleCredentialsAvailable,\n request,\n selectedFields,\n config,\n testID,\n labels,\n );\n\n return (\n <CredentialDetailsCardListItem\n attributes={attributes}\n card={{\n ...card,\n credentialId: request.id,\n onHeaderPress,\n width: cardWidth,\n }}\n expanded={expanded}\n footer={footer}\n lastItem={lastItem}\n onAttributeSelected={onSelectField}\n onImagePreview={onImagePreview}\n style={[styles.credential, { borderColor: colorScheme.background }, style]}\n testID={testID}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n credential: {\n borderRadius: 10,\n borderWidth: 1,\n marginBottom: 8,\n },\n});\n"],"mappings":"AAAA,SAGEA,0BAA0B,QAGrB,iCAAiC;AACxC,OAAOC,KAAK,IAAuBC,OAAO,QAAQ,OAAO;AACzD,SAASC,UAAU,EAAkCC,UAAU,QAAmB,cAAc;AAEhG,SAASC,6BAA6B,EAAEC,iBAAiB,QAAQ,wBAAwB;AACzF,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,aAAa,QAAQ,uCAAuC;AACrE,SAASC,gBAAgB,EAAEC,aAAa,QAAQ,mCAAmC;AACnF,SACEC,iCAAiC,QAE5B,2CAA2C;AAClD,SAASC,+BAA+B,QAAQ,wCAAwC;AACxF,SAASC,yBAAyB,QAAQ,iCAAiC;AAU3E,OAAO,MAAMC,eAcX,GAAGA,CAAC;EACJC,cAAc;EACdC,QAAQ;EACRC,MAAM;EACNC,QAAQ;EACRC,aAAa;EACbC,cAAc;EACdC,kBAAkB;EAClBC,aAAa;EACbC,OAAO;EACPC,oBAAoB;EACpBC,cAAc;EACdC,KAAK;EACLC;AACF,CAAC,KAAK;EAAA,IAAAC,kBAAA;EACJ,MAAMC,WAAW,GAAGvB,iBAAiB,CAAC,CAAC;EACvC,MAAMwB,UAAU,GAAGf,cAAc,CAACgB,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,EAAE,KAAKT,oBAAoB,CAAC;EAC5E,MAAM;IAAEU,IAAI,EAAEC;EAAO,CAAC,GAAG3B,aAAa,CAAC,CAAC;EACxC,MAAM4B,SAAS,GAAGlC,OAAO,CAAC,MAAMC,UAAU,CAACkC,GAAG,CAAC,QAAQ,CAAC,CAACC,KAAK,GAAG,EAAE,EAAE,EAAE,CAAC;EAExE,MAAMC,gBAAgB,GAAGrC,OAAO,CAC9B,MACEqB,OAAO,CAACiB,qBAAqB,CAACC,MAAM,CAAEC,sBAAsB,IAC1D3B,cAAc,CAAC4B,IAAI,CACjB,CAAC;IAAEV,EAAE;IAAEW;EAAM,CAAC,KAAKX,EAAE,KAAKS,sBAAsB,IAAIE,KAAK,KAAK5C,0BAA0B,CAAC6C,QAC3F,CACF,CAAC,EACH,CAAC9B,cAAc,EAAEQ,OAAO,CAC1B,CAAC;EACD,MAAMuB,4BAA4B,GAAGP,gBAAgB,CAACQ,MAAM,GAAG,CAAC;EAEhE,MAAMC,aAAa,GAAGvC,gBAAgB,CACpCqB,UAAU,GACN;IACE,GAAGA,UAAU;IACbmB,MAAM,EAAEnB,UAAU,aAAVA,UAAU,gBAAAF,kBAAA,GAAVE,UAAU,CAAEmB,MAAM,cAAArB,kBAAA,uBAAlBA,kBAAA,CAAoBK;EAC9B,CAAC,GACDiB,SACN,CAAC;EAED,MAAMC,MAAM,GAAGjD,OAAO,CAAC,MAAM;IAC3B,IAAI,CAACc,QAAQ,EAAE;MACb;IACF;IACA,IAAIgC,aAAa,KAAKtC,aAAa,CAAC0C,OAAO,EAAE;MAC3C,oBACEnD,KAAA,CAAAoD,aAAA,CAACxC,yBAAyB;QACxBc,MAAM,EAAEpB,YAAY,CAACoB,MAAM,EAAE,gBAAgB,CAAE;QAC/C2B,IAAI,EAAErC,MAAM,CAACsC;MAAwB,CACtC,CAAC;IAEN;IACA,IAAIP,aAAa,KAAKtC,aAAa,CAAC8C,SAAS,EAAE;MAC7C,oBACEvD,KAAA,CAAAoD,aAAA,CAACxC,yBAAyB;QACxBc,MAAM,EAAEpB,YAAY,CAACoB,MAAM,EAAE,kBAAkB,CAAE;QACjD2B,IAAI,EAAErC,MAAM,CAACwC;MAA0B,CACxC,CAAC;IAEN;IAEA,IAAIX,4BAA4B,EAAE;MAChC,oBACE7C,KAAA,CAAAoD,aAAA,CAACzC,+BAA+B;QAC9B8C,WAAW,EAAEzC,MAAM,CAAC0C,yBAA0B;QAC9CC,OAAO,EAAEvC,kBAAmB;QAC5BM,MAAM,EAAEpB,YAAY,CAACoB,MAAM,EAAE,iBAAiB,CAAE;QAChD2B,IAAI,EAAErC,MAAM,CAAC4C;MAA0B,CACxC,CAAC;IAEN;EACF,CAAC,EAAE,CAAC7C,QAAQ,EAAEC,MAAM,EAAE6B,4BAA4B,EAAEzB,kBAAkB,EAAEM,MAAM,EAAEqB,aAAa,CAAC,CAAC;EAE/F,IAAI,CAACb,MAAM,EAAE;IACX,OAAO,IAAI;EACb;EAEA,MAAM;IAAE2B,IAAI;IAAEC;EAAW,CAAC,GAAGpD,iCAAiC,CAC5DmB,UAAU,EACVkC,OAAO,CAAChD,QAAQ,CAAC,EACjB8B,4BAA4B,EAC5BvB,OAAO,EACPE,cAAc,EACdU,MAAM,EACNR,MAAM,EACNV,MACF,CAAC;EAED,oBACEhB,KAAA,CAAAoD,aAAA,CAAChD,6BAA6B;IAC5B0D,UAAU,EAAEA,UAAW;IACvBD,IAAI,EAAE;MACJ,GAAGA,IAAI;MACPG,YAAY,EAAE1C,OAAO,CAACU,EAAE;MACxBd,aAAa;MACbmB,KAAK,EAAEF;IACT,CAAE;IACFpB,QAAQ,EAAEA,QAAS;IACnBmC,MAAM,EAAEA,MAAO;IACfjC,QAAQ,EAAEA,QAAS;IACnBgD,mBAAmB,EAAE5C,aAAc;IACnCF,cAAc,EAAEA,cAAe;IAC/BM,KAAK,EAAE,CAACyC,MAAM,CAACrC,UAAU,EAAE;MAAEsC,WAAW,EAAEvC,WAAW,CAACwC;IAAW,CAAC,EAAE3C,KAAK,CAAE;IAC3EC,MAAM,EAAEA;EAAO,CAChB,CAAC;AAEN,CAAC;AAED,MAAMwC,MAAM,GAAG/D,UAAU,CAACkE,MAAM,CAAC;EAC/BxC,UAAU,EAAE;IACVyC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,CAAC;IACdC,YAAY,EAAE;EAChB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -16,8 +16,9 @@ const FoldableSearchHeader = ({
|
|
|
16
16
|
const colorScheme = useAppColorScheme();
|
|
17
17
|
const [collapsed, setCollapsed] = useState(header ? false : true);
|
|
18
18
|
const [headerHeight, setHeaderHeight] = useState();
|
|
19
|
+
const containerPaddingTop = withNotice ? 15 : safeAreaInsets.top;
|
|
19
20
|
const containerPaddingStyle = {
|
|
20
|
-
paddingTop:
|
|
21
|
+
paddingTop: containerPaddingTop
|
|
21
22
|
};
|
|
22
23
|
useEffect(() => {
|
|
23
24
|
const id = scrollOffset.addListener(({
|
|
@@ -38,11 +39,13 @@ const FoldableSearchHeader = ({
|
|
|
38
39
|
}, [scrollOffset, searchBar, headerHeight]);
|
|
39
40
|
const playHeaderFoldAnimation = !staticHeader && headerHeight;
|
|
40
41
|
const scrollHeaderAnimatedStyle = playHeaderFoldAnimation ? {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
42
|
+
transform: [{
|
|
43
|
+
translateY: scrollOffset.interpolate({
|
|
44
|
+
extrapolate: 'clamp',
|
|
45
|
+
inputRange: [0, headerHeight],
|
|
46
|
+
outputRange: [0, -headerHeight]
|
|
47
|
+
})
|
|
48
|
+
}]
|
|
46
49
|
} : undefined;
|
|
47
50
|
const fadeHeaderOutAnimatedStyle = playHeaderFoldAnimation ? {
|
|
48
51
|
opacity: scrollOffset.interpolate({
|
|
@@ -56,26 +59,33 @@ const FoldableSearchHeader = ({
|
|
|
56
59
|
}, [setHeaderHeight]);
|
|
57
60
|
return /*#__PURE__*/React.createElement(Animated.View, {
|
|
58
61
|
style: [styles.headerContainer, containerPaddingStyle, withNotice ? styles.noticeBorderRadius : undefined]
|
|
62
|
+
}, /*#__PURE__*/React.createElement(Animated.View, {
|
|
63
|
+
style: scrollHeaderAnimatedStyle
|
|
59
64
|
}, /*#__PURE__*/React.createElement(View, {
|
|
60
|
-
style: [styles.
|
|
65
|
+
style: [styles.blurFill, {
|
|
66
|
+
top: -containerPaddingTop
|
|
67
|
+
}]
|
|
61
68
|
}, /*#__PURE__*/React.createElement(BlurView, {
|
|
62
69
|
blurStyle: 'header',
|
|
63
70
|
color: colorScheme.background,
|
|
64
71
|
style: [StyleSheet.absoluteFill, withNotice ? styles.noticeBorderRadius : undefined]
|
|
65
|
-
})),
|
|
66
|
-
style: scrollHeaderAnimatedStyle
|
|
67
|
-
}, searchBar && /*#__PURE__*/React.createElement(AnimatedSearchBar, _extends({}, searchBar, {
|
|
68
|
-
collapsed: collapsed
|
|
69
|
-
}))), header && /*#__PURE__*/React.createElement(Animated.View, {
|
|
72
|
+
})), header && /*#__PURE__*/React.createElement(Animated.View, {
|
|
70
73
|
onLayout: onHeaderLayout,
|
|
71
|
-
style:
|
|
72
|
-
}, header)
|
|
74
|
+
style: fadeHeaderOutAnimatedStyle
|
|
75
|
+
}, header), searchBar && /*#__PURE__*/React.createElement(AnimatedSearchBar, _extends({}, searchBar, {
|
|
76
|
+
collapsed: collapsed
|
|
77
|
+
}))));
|
|
73
78
|
};
|
|
74
79
|
const styles = StyleSheet.create({
|
|
75
|
-
|
|
76
|
-
|
|
80
|
+
blurFill: {
|
|
81
|
+
bottom: 0,
|
|
82
|
+
left: 0,
|
|
83
|
+
overflow: 'hidden',
|
|
84
|
+
position: 'absolute',
|
|
85
|
+
right: 0
|
|
77
86
|
},
|
|
78
87
|
headerContainer: {
|
|
88
|
+
overflow: 'hidden',
|
|
79
89
|
position: 'absolute',
|
|
80
90
|
width: '100%'
|
|
81
91
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useEffect","useState","Animated","StyleSheet","View","useSafeAreaInsets","BlurView","AnimatedSearchBar","useAppColorScheme","FoldableSearchHeader","staticHeader","scrollOffset","searchBar","header","withNotice","safeAreaInsets","colorScheme","collapsed","setCollapsed","headerHeight","setHeaderHeight","
|
|
1
|
+
{"version":3,"names":["React","useCallback","useEffect","useState","Animated","StyleSheet","View","useSafeAreaInsets","BlurView","AnimatedSearchBar","useAppColorScheme","FoldableSearchHeader","staticHeader","scrollOffset","searchBar","header","withNotice","safeAreaInsets","colorScheme","collapsed","setCollapsed","headerHeight","setHeaderHeight","containerPaddingTop","top","containerPaddingStyle","paddingTop","id","addListener","value","removeListener","playHeaderFoldAnimation","scrollHeaderAnimatedStyle","transform","translateY","interpolate","extrapolate","inputRange","outputRange","undefined","fadeHeaderOutAnimatedStyle","opacity","onHeaderLayout","event","nativeEvent","layout","height","createElement","style","styles","headerContainer","noticeBorderRadius","blurFill","blurStyle","color","background","absoluteFill","onLayout","_extends","create","bottom","left","overflow","position","right","width","borderTopLeftRadius","borderTopRightRadius"],"sources":["foldable-header.tsx"],"sourcesContent":["import React, { FunctionComponent, ReactElement, useCallback, useEffect, useState } from 'react';\nimport { Animated, LayoutChangeEvent, StyleSheet, View, ViewStyle } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nimport BlurView from '../blur/blur-view';\nimport AnimatedSearchBar, { AnimatedSearchBarProps } from '../searchbar/animated-search-bar';\nimport { useAppColorScheme } from '../theme/color-scheme-context';\n\nexport type FoldableHeaderProps = {\n header: ReactElement;\n scrollOffset: Animated.Value;\n searchBar?: Omit<AnimatedSearchBarProps, 'collapsed'>;\n // if true, the header won't fold / fade out on scroll\n staticHeader?: boolean;\n withNotice?: boolean;\n};\n\nconst FoldableSearchHeader: FunctionComponent<FoldableHeaderProps> = ({\n staticHeader = false,\n scrollOffset,\n searchBar,\n header,\n withNotice,\n}) => {\n const safeAreaInsets = useSafeAreaInsets();\n const colorScheme = useAppColorScheme();\n const [collapsed, setCollapsed] = useState(header ? false : true);\n const [headerHeight, setHeaderHeight] = useState<number>();\n\n const containerPaddingTop = withNotice ? 15 : safeAreaInsets.top;\n const containerPaddingStyle = {\n paddingTop: containerPaddingTop,\n };\n\n useEffect(() => {\n const id = scrollOffset.addListener(({ value }) => {\n if (!headerHeight) {\n return;\n }\n\n if (value > headerHeight) {\n setCollapsed(true);\n } else {\n setCollapsed(false);\n }\n });\n return () => {\n scrollOffset.removeListener(id);\n };\n }, [scrollOffset, searchBar, headerHeight]);\n\n const playHeaderFoldAnimation = !staticHeader && headerHeight;\n\n const scrollHeaderAnimatedStyle: Animated.WithAnimatedObject<ViewStyle> | undefined = playHeaderFoldAnimation\n ? {\n transform: [{\n translateY: scrollOffset.interpolate({\n extrapolate: 'clamp',\n inputRange: [0, headerHeight],\n outputRange: [0, -headerHeight],\n }),\n }],\n }\n : undefined;\n\n const fadeHeaderOutAnimatedStyle: Animated.WithAnimatedObject<ViewStyle> | undefined = playHeaderFoldAnimation\n ? {\n opacity: scrollOffset.interpolate({\n extrapolate: 'clamp',\n inputRange: [0, headerHeight / 2],\n outputRange: [1, 0],\n }),\n }\n : undefined;\n\n const onHeaderLayout = useCallback(\n (event: LayoutChangeEvent) => {\n setHeaderHeight(event.nativeEvent.layout.height);\n },\n [setHeaderHeight],\n );\n\n return (\n <Animated.View\n style={[styles.headerContainer, containerPaddingStyle, withNotice ? styles.noticeBorderRadius : undefined]}>\n <Animated.View style={scrollHeaderAnimatedStyle}>\n <View\n style={[styles.blurFill, { top: -containerPaddingTop }]}>\n <BlurView\n blurStyle={'header'}\n color={colorScheme.background}\n style={[StyleSheet.absoluteFill, withNotice ? styles.noticeBorderRadius : undefined]}\n />\n </View>\n {header && (\n <Animated.View onLayout={onHeaderLayout} style={fadeHeaderOutAnimatedStyle}>\n {header}\n </Animated.View>\n )}\n {searchBar && <AnimatedSearchBar {...searchBar} collapsed={collapsed} />}\n </Animated.View>\n </Animated.View>\n );\n};\n\nconst styles = StyleSheet.create({\n blurFill: {\n bottom: 0,\n left: 0,\n overflow: 'hidden',\n position: 'absolute',\n right: 0,\n },\n headerContainer: {\n overflow: 'hidden',\n position: 'absolute',\n width: '100%',\n },\n noticeBorderRadius: {\n borderTopLeftRadius: 30,\n borderTopRightRadius: 30,\n overflow: 'hidden',\n },\n});\n\nexport default FoldableSearchHeader;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './accessibility';\nexport * from './action-modal';\nexport * from './activity-indicator';\nexport * from './blur';\nexport * from './buttons';\nexport * from './camera';\nexport * from './control';\nexport * from './credential';\nexport * from './detail';\nexport * from './entity';\nexport * from './header';\nexport * from './history';\nexport * from './icons';\nexport * from './image';\nexport * from './input';\nexport * from './list';\nexport * from './loader';\nexport * from './nerd-view';\nexport * from './nfc';\nexport * from './pin';\nexport * from './proof-request';\nexport * from './screens';\nexport * from './searchbar';\nexport * from './settings';\nexport * from './state';\nexport * from './text';\nexport * from './theme';\n"],"mappings":"AAAA,cAAc,iBAAiB;AAC/B,cAAc,gBAAgB;AAC9B,cAAc,sBAAsB;AACpC,cAAc,QAAQ;AACtB,cAAc,WAAW;AACzB,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,cAAc;AAC5B,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,UAAU;AACxB,cAAc,aAAa;AAC3B,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,iBAAiB;AAC/B,cAAc,WAAW;AACzB,cAAc,aAAa;AAC3B,cAAc,YAAY;AAC1B,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,SAAS","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './accessibility';\nexport * from './action-modal';\nexport * from './activity-indicator';\nexport * from './blur';\nexport * from './buttons';\nexport * from './camera';\nexport * from './control';\nexport * from './credential';\nexport * from './detail';\nexport * from './entity';\nexport * from './header';\nexport * from './history';\nexport * from './icons';\nexport * from './image';\nexport * from './input';\nexport * from './list';\nexport * from './loader';\nexport * from './nerd-view';\nexport * from './nfc';\nexport * from './notice';\nexport * from './pin';\nexport * from './proof-request';\nexport * from './screens';\nexport * from './searchbar';\nexport * from './settings';\nexport * from './state';\nexport * from './text';\nexport * from './theme';\n"],"mappings":"AAAA,cAAc,iBAAiB;AAC/B,cAAc,gBAAgB;AAC9B,cAAc,sBAAsB;AACpC,cAAc,QAAQ;AACtB,cAAc,WAAW;AACzB,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,cAAc;AAC5B,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,UAAU;AACxB,cAAc,aAAa;AAC3B,cAAc,OAAO;AACrB,cAAc,UAAU;AACxB,cAAc,OAAO;AACrB,cAAc,iBAAiB;AAC/B,cAAc,WAAW;AACzB,cAAc,aAAa;AAC3B,cAAc,YAAY;AAC1B,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,SAAS","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["WalletNotice"],"sources":["index.ts"],"sourcesContent":["import WalletNotice from './wallet-notice';\n\nexport { WalletNotice };\n"],"mappings":"AAAA,OAAOA,YAAY,MAAM,iBAAiB;AAE1C,SAASA,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import React, { useMemo } from 'react';
|
|
2
|
+
import { StyleSheet, View } from 'react-native';
|
|
3
|
+
import { concatTestID } from '../../utils';
|
|
4
|
+
import { TouchableOpacity } from '../accessibility/accessibilityHistoryWrappers';
|
|
5
|
+
import { CloseIcon } from '../icons';
|
|
6
|
+
import { Typography } from '../text';
|
|
7
|
+
import { useAppColorScheme } from '../theme';
|
|
8
|
+
const testID = 'WalletNotice';
|
|
9
|
+
const WalletNotice = ({
|
|
10
|
+
accessory,
|
|
11
|
+
icon,
|
|
12
|
+
style,
|
|
13
|
+
text,
|
|
14
|
+
onClose
|
|
15
|
+
}) => {
|
|
16
|
+
const colorScheme = useAppColorScheme();
|
|
17
|
+
const iconView = useMemo(() => {
|
|
18
|
+
if (!icon) {
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
if (/*#__PURE__*/React.isValidElement(icon)) {
|
|
22
|
+
return icon;
|
|
23
|
+
} else {
|
|
24
|
+
const IconComponent = icon;
|
|
25
|
+
return /*#__PURE__*/React.createElement(IconComponent, null);
|
|
26
|
+
}
|
|
27
|
+
}, [icon]);
|
|
28
|
+
const accessoryView = useMemo(() => {
|
|
29
|
+
if (!accessory) {
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
if (/*#__PURE__*/React.isValidElement(accessory)) {
|
|
33
|
+
return accessory;
|
|
34
|
+
} else {
|
|
35
|
+
const AccessoryComponent = accessory;
|
|
36
|
+
return /*#__PURE__*/React.createElement(AccessoryComponent, null);
|
|
37
|
+
}
|
|
38
|
+
}, [accessory]);
|
|
39
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
40
|
+
style: [styles.noticeContainer, style]
|
|
41
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
42
|
+
style: styles.title
|
|
43
|
+
}, iconView, /*#__PURE__*/React.createElement(Typography, {
|
|
44
|
+
color: colorScheme.white
|
|
45
|
+
}, text), accessoryView), onClose && /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
46
|
+
onPress: onClose,
|
|
47
|
+
style: styles.closeIcon,
|
|
48
|
+
testID: concatTestID(testID, 'close')
|
|
49
|
+
}, /*#__PURE__*/React.createElement(CloseIcon, {
|
|
50
|
+
color: "white"
|
|
51
|
+
})));
|
|
52
|
+
};
|
|
53
|
+
const styles = StyleSheet.create({
|
|
54
|
+
closeIcon: {
|
|
55
|
+
position: 'absolute',
|
|
56
|
+
right: 20,
|
|
57
|
+
top: 5
|
|
58
|
+
},
|
|
59
|
+
noticeContainer: {
|
|
60
|
+
flexDirection: 'row',
|
|
61
|
+
justifyContent: 'center',
|
|
62
|
+
position: 'relative'
|
|
63
|
+
},
|
|
64
|
+
title: {
|
|
65
|
+
alignItems: 'center',
|
|
66
|
+
flexDirection: 'row',
|
|
67
|
+
gap: 5,
|
|
68
|
+
justifyContent: 'center'
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
export default WalletNotice;
|
|
72
|
+
//# sourceMappingURL=wallet-notice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useMemo","StyleSheet","View","concatTestID","TouchableOpacity","CloseIcon","Typography","useAppColorScheme","testID","WalletNotice","accessory","icon","style","text","onClose","colorScheme","iconView","undefined","isValidElement","IconComponent","createElement","accessoryView","AccessoryComponent","styles","noticeContainer","title","color","white","onPress","closeIcon","create","position","right","top","flexDirection","justifyContent","alignItems","gap"],"sources":["wallet-notice.tsx"],"sourcesContent":["import React, { ComponentType, FunctionComponent, JSXElementConstructor, ReactElement, useMemo } from 'react';\nimport { StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport { concatTestID } from '../../utils';\nimport { TouchableOpacity } from '../accessibility/accessibilityHistoryWrappers';\nimport { CloseIcon } from '../icons';\nimport { Typography } from '../text';\nimport { useAppColorScheme } from '../theme';\n\nexport type WalletNoticeProps = {\n accessory?: ComponentType<any> | ReactElement;\n icon?: ComponentType<any> | ReactElement;\n onClose?: () => void;\n style?: StyleProp<ViewStyle>;\n text: string;\n};\n\nconst testID = 'WalletNotice';\n\nconst WalletNotice: FunctionComponent<WalletNoticeProps> = ({ accessory, icon, style, text, onClose }) => {\n const colorScheme = useAppColorScheme();\n\n const iconView: React.ReactElement | undefined = useMemo(() => {\n if (!icon) {\n return undefined;\n }\n if (React.isValidElement(icon)) {\n return icon;\n } else {\n const IconComponent = icon as JSXElementConstructor<any>;\n return <IconComponent />;\n }\n }, [icon]);\n\n const accessoryView: React.ReactElement | undefined = useMemo(() => {\n if (!accessory) {\n return undefined;\n }\n if (React.isValidElement(accessory)) {\n return accessory;\n } else {\n const AccessoryComponent = accessory as JSXElementConstructor<any>;\n return <AccessoryComponent />;\n }\n }, [accessory]);\n\n return (\n <View style={[styles.noticeContainer, style]}>\n <View style={styles.title}>\n {iconView}\n <Typography color={colorScheme.white}>{text}</Typography>\n {accessoryView}\n </View>\n {onClose && (\n <TouchableOpacity onPress={onClose} style={styles.closeIcon} testID={concatTestID(testID, 'close')}>\n <CloseIcon color=\"white\" />\n </TouchableOpacity>\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n closeIcon: {\n position: 'absolute',\n right: 20,\n top: 5,\n },\n noticeContainer: {\n flexDirection: 'row',\n justifyContent: 'center',\n position: 'relative',\n },\n title: {\n alignItems: 'center',\n flexDirection: 'row',\n gap: 5,\n justifyContent: 'center',\n },\n});\n\nexport default WalletNotice;\n"],"mappings":"AAAA,OAAOA,KAAK,IAA2EC,OAAO,QAAQ,OAAO;AAC7G,SAAoBC,UAAU,EAAEC,IAAI,QAAmB,cAAc;AAErE,SAASC,YAAY,QAAQ,aAAa;AAC1C,SAASC,gBAAgB,QAAQ,+CAA+C;AAChF,SAASC,SAAS,QAAQ,UAAU;AACpC,SAASC,UAAU,QAAQ,SAAS;AACpC,SAASC,iBAAiB,QAAQ,UAAU;AAU5C,MAAMC,MAAM,GAAG,cAAc;AAE7B,MAAMC,YAAkD,GAAGA,CAAC;EAAEC,SAAS;EAAEC,IAAI;EAAEC,KAAK;EAAEC,IAAI;EAAEC;AAAQ,CAAC,KAAK;EACxG,MAAMC,WAAW,GAAGR,iBAAiB,CAAC,CAAC;EAEvC,MAAMS,QAAwC,GAAGhB,OAAO,CAAC,MAAM;IAC7D,IAAI,CAACW,IAAI,EAAE;MACT,OAAOM,SAAS;IAClB;IACA,iBAAIlB,KAAK,CAACmB,cAAc,CAACP,IAAI,CAAC,EAAE;MAC9B,OAAOA,IAAI;IACb,CAAC,MAAM;MACL,MAAMQ,aAAa,GAAGR,IAAkC;MACxD,oBAAOZ,KAAA,CAAAqB,aAAA,CAACD,aAAa,MAAE,CAAC;IAC1B;EACF,CAAC,EAAE,CAACR,IAAI,CAAC,CAAC;EAEV,MAAMU,aAA6C,GAAGrB,OAAO,CAAC,MAAM;IAClE,IAAI,CAACU,SAAS,EAAE;MACd,OAAOO,SAAS;IAClB;IACA,iBAAIlB,KAAK,CAACmB,cAAc,CAACR,SAAS,CAAC,EAAE;MACnC,OAAOA,SAAS;IAClB,CAAC,MAAM;MACL,MAAMY,kBAAkB,GAAGZ,SAAuC;MAClE,oBAAOX,KAAA,CAAAqB,aAAA,CAACE,kBAAkB,MAAE,CAAC;IAC/B;EACF,CAAC,EAAE,CAACZ,SAAS,CAAC,CAAC;EAEf,oBACEX,KAAA,CAAAqB,aAAA,CAAClB,IAAI;IAACU,KAAK,EAAE,CAACW,MAAM,CAACC,eAAe,EAAEZ,KAAK;EAAE,gBAC3Cb,KAAA,CAAAqB,aAAA,CAAClB,IAAI;IAACU,KAAK,EAAEW,MAAM,CAACE;EAAM,GACvBT,QAAQ,eACTjB,KAAA,CAAAqB,aAAA,CAACd,UAAU;IAACoB,KAAK,EAAEX,WAAW,CAACY;EAAM,GAAEd,IAAiB,CAAC,EACxDQ,aACG,CAAC,EACNP,OAAO,iBACNf,KAAA,CAAAqB,aAAA,CAAChB,gBAAgB;IAACwB,OAAO,EAAEd,OAAQ;IAACF,KAAK,EAAEW,MAAM,CAACM,SAAU;IAACrB,MAAM,EAAEL,YAAY,CAACK,MAAM,EAAE,OAAO;EAAE,gBACjGT,KAAA,CAAAqB,aAAA,CAACf,SAAS;IAACqB,KAAK,EAAC;EAAO,CAAE,CACV,CAEhB,CAAC;AAEX,CAAC;AAED,MAAMH,MAAM,GAAGtB,UAAU,CAAC6B,MAAM,CAAC;EAC/BD,SAAS,EAAE;IACTE,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE,EAAE;IACTC,GAAG,EAAE;EACP,CAAC;EACDT,eAAe,EAAE;IACfU,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,QAAQ;IACxBJ,QAAQ,EAAE;EACZ,CAAC;EACDN,KAAK,EAAE;IACLW,UAAU,EAAE,QAAQ;IACpBF,aAAa,EAAE,KAAK;IACpBG,GAAG,EAAE,CAAC;IACNF,cAAc,EAAE;EAClB;AACF,CAAC,CAAC;AAEF,eAAe1B,YAAY","ignoreList":[]}
|
|
@@ -120,7 +120,6 @@ export let VerificationProtocol = /*#__PURE__*/function (VerificationProtocol) {
|
|
|
120
120
|
VerificationProtocol["OPENID4VP_DRAFT20"] = "OPENID4VP_DRAFT20";
|
|
121
121
|
VerificationProtocol["OPENID4VP_DRAFT25"] = "OPENID4VP_DRAFT25";
|
|
122
122
|
VerificationProtocol["OPENID4VP_PROXIMITY_DRAFT00"] = "OPENID4VP_PROXIMITY_DRAFT00";
|
|
123
|
-
VerificationProtocol["SCAN_TO_VERIFY"] = "SCAN_TO_VERIFY";
|
|
124
123
|
return VerificationProtocol;
|
|
125
124
|
}({});
|
|
126
125
|
export let VerificationEngagement = /*#__PURE__*/function (VerificationEngagement) {
|
|
@@ -246,6 +245,14 @@ export const useProofForSchemaIdWithTransport = (proofSchemaId, transport, enabl
|
|
|
246
245
|
proofIdRef.current = id;
|
|
247
246
|
setProofIdState(id);
|
|
248
247
|
}, []);
|
|
248
|
+
const retract = useCallback(async () => {
|
|
249
|
+
const id = proofIdRef.current;
|
|
250
|
+
if (!id) {
|
|
251
|
+
return;
|
|
252
|
+
}
|
|
253
|
+
setProofId(undefined);
|
|
254
|
+
await deleteProof(id).catch(() => {});
|
|
255
|
+
}, [deleteProof, setProofId]);
|
|
249
256
|
useEffect(() => {
|
|
250
257
|
if (!proofIdRef.current) {
|
|
251
258
|
return;
|
|
@@ -283,7 +290,10 @@ export const useProofForSchemaIdWithTransport = (proofSchemaId, transport, enabl
|
|
|
283
290
|
setProofId(id);
|
|
284
291
|
}).catch(() => {});
|
|
285
292
|
}, [proofSchemaId, identifiers, identifierFilter, createProof, enabled, transport, proofId, setProofId, deleting]);
|
|
286
|
-
return
|
|
293
|
+
return {
|
|
294
|
+
proofId: deleting ? undefined : proofId,
|
|
295
|
+
retract
|
|
296
|
+
};
|
|
287
297
|
};
|
|
288
298
|
export const useCleanupUnusedProofs = () => {
|
|
289
299
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HistoryActionBindingEnum","HistoryEntityTypeBindingEnum","OneError","ProofStateBindingEnum","useCallback","useEffect","useMemo","useRef","useState","useMutation","useQuery","useQueryClient","getQueryKeyFromProofListQueryParams","reportException","useCoreConfig","useONECore","OneErrorCode","HISTORY_LIST_QUERY_KEY","useIdentifiers","useProofSchemaDetail","PAGE_SIZE","PROOF_DETAIL_QUERY_KEY","PROOF_STATE_QUERY_KEY","PROOF_LIST_QUERY_KEY","useProofDetail","proofId","core","getProof","undefined","enabled","Boolean","keepPreviousData","useProofState","isPolling","organisationId","state","then","proof","metadata","ERROR","getHistoryList","page","pageSize","entityIds","entityTypes","PROOF","actions","ERRORED","result","_result$values$","values","value","refetchInterval","useProofUrl","queryClient","request","shareProof","url","onSuccess","invalidateQueries","useProofAccept","interactionId","credentials","holderSubmitProof","onError","err","useProofReject","holderRejectProof","catch","e","code","OperationNotSupported","IssuanceProtocol","VerificationProtocol","VerificationEngagement","useProposeProof","proposeProof","useProofDelete","deleteProof","useProofs","queryParams","queryKey","pageParam","getProofs","useProofCreate","data","createProof","getIdentifierFilterForProofSchema","proofSchema","config","requestedFormats","proofInputSchemas","map","schema","credentialSchema","format","requestedFormatsCapabilities","_config$format$format","capabilities","filter","x","keyAlgorithms","reduce","others","_others$filter","current","verificationKeyAlgorithms","item","includes","keyStorages","_others$filter2","verificationKeyStorages","useProofForSchemaIdWithTransport","proofSchemaId","transport","identifierFilter","identifiers","mutateAsync","deleting","setDeleting","setProofIdState","proofIdRef","proofState","setProofId","id","CREATED","PENDING","length","protocol","OPENID4VP_PROXIMITY_DRAFT00","verifierIdentifierId","useCleanupUnusedProofs","proofs","proofStates","cleaned","setCleaned","forEach","useShareProof","proofUrlProps","sharedProof","setSharedProof","bleAdapterDisabled","error","_error$cause","cause","useRetainProofCheck","runTask","removeQueries","useDeleteProofData","deleteProofClaims","useDeleteAllProofsData","schemaId","proofSchemaIds","ACCEPTED","Promise","all","reverse"],"sources":["proofs.ts"],"sourcesContent":["import {\n Config,\n CreateProofRequestBindingDto,\n GetProofSchemaBindingDto,\n HistoryActionBindingEnum,\n HistoryEntityTypeBindingEnum,\n HistoryErrorMetadataBindingDto,\n IdentifierListQueryBindingDto,\n OneError,\n PresentationSubmitCredentialRequestBindingDto,\n ProofListQueryBindingDto,\n ProofStateBindingEnum,\n ProposeProofRequestBindingDto,\n ShareProofRequestBindingDto,\n} from '@procivis/react-native-one-core';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { getQueryKeyFromProofListQueryParams } from '../../parsers/query';\nimport { reportException } from '../../reporting';\nimport { Transport } from '../connectivity/connectivity';\nimport { useCoreConfig } from './core-config';\nimport { useONECore } from './core-context';\nimport { OneErrorCode } from './error-code';\nimport { HISTORY_LIST_QUERY_KEY } from './history';\nimport { useIdentifiers } from './identifiers';\nimport { useProofSchemaDetail } from './proof-schemas';\n\nconst PAGE_SIZE = 10;\nexport const PROOF_DETAIL_QUERY_KEY = 'proof-detail';\nexport const PROOF_STATE_QUERY_KEY = 'proof-state';\nexport const PROOF_LIST_QUERY_KEY = 'proof-list';\n\nexport const useProofDetail = (proofId: string | undefined) => {\n const { core } = useONECore();\n\n return useQuery([PROOF_DETAIL_QUERY_KEY, proofId], () => (proofId ? core.getProof(proofId) : undefined), {\n enabled: Boolean(proofId),\n keepPreviousData: true,\n });\n};\n\nexport const useProofState = (proofId: string | undefined, isPolling: boolean) => {\n const { core, organisationId } = useONECore();\n\n return useQuery(\n [PROOF_STATE_QUERY_KEY, proofId],\n async () => {\n if (!proofId) {\n return undefined;\n }\n\n const state = await core.getProof(proofId).then((proof) => proof.state);\n let metadata: HistoryErrorMetadataBindingDto | undefined;\n if (state === ProofStateBindingEnum.ERROR) {\n metadata = await core\n .getHistoryList({\n organisationId,\n page: 0,\n pageSize: 1,\n entityIds: [proofId],\n entityTypes: [HistoryEntityTypeBindingEnum.PROOF],\n actions: [HistoryActionBindingEnum.ERRORED],\n })\n .then((result) => result.values[0]?.metadata?.value as HistoryErrorMetadataBindingDto);\n }\n return { state, metadata };\n },\n {\n enabled: Boolean(proofId),\n refetchInterval: isPolling ? 1000 : false,\n },\n );\n};\n\ntype ProofUrlHookParams = { proofId: string; request?: ShareProofRequestBindingDto };\n\nexport const useProofUrl = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({ proofId, request }: ProofUrlHookParams) =>\n core.shareProof(proofId, request ?? {}).then((proof) => proof.url),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofAccept = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({\n interactionId,\n credentials,\n }: {\n credentials: Record<string, PresentationSubmitCredentialRequestBindingDto[]>;\n interactionId: string;\n }) => core.holderSubmitProof(interactionId, credentials),\n {\n onError: async (err) => {\n reportException(err, 'Proof submission failure');\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofReject = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (interactionId: string) =>\n core.holderRejectProof(interactionId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport enum IssuanceProtocol {\n OPENID4VCI_DRAFT13 = 'OPENID4VCI_DRAFT13',\n}\n\nexport enum VerificationProtocol {\n ISO_MDL = 'ISO_MDL',\n OPENID4VP_DRAFT20 = 'OPENID4VP_DRAFT20',\n OPENID4VP_DRAFT25 = 'OPENID4VP_DRAFT25',\n OPENID4VP_PROXIMITY_DRAFT00 = 'OPENID4VP_PROXIMITY_DRAFT00',\n SCAN_TO_VERIFY = 'SCAN_TO_VERIFY',\n}\n\nexport enum VerificationEngagement {\n QR_CODE = 'QR_CODE',\n NFC = 'NFC',\n}\n\nexport const useProposeProof = () => {\n const queryClient = useQueryClient();\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async (request: Omit<ProposeProofRequestBindingDto, 'organisationId'>) =>\n core.proposeProof({ organisationId, ...request }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofDelete = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (proofId: string) => {\n return core.deleteProof(proofId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n });\n },\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofs = (queryParams?: Partial<ProofListQueryBindingDto>) => {\n const { core, organisationId } = useONECore();\n\n const queryKey = [PROOF_LIST_QUERY_KEY, ...getQueryKeyFromProofListQueryParams(queryParams)];\n\n return useQuery(\n queryKey,\n ({ pageParam = 0 }) =>\n core.getProofs({\n organisationId,\n page: pageParam,\n pageSize: PAGE_SIZE,\n ...queryParams,\n }),\n {\n keepPreviousData: false,\n },\n );\n};\n\nexport const useProofCreate = () => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async (data: CreateProofRequestBindingDto) => core.createProof(data), {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nconst getIdentifierFilterForProofSchema = (\n proofSchema: GetProofSchemaBindingDto,\n config: Config,\n): Partial<IdentifierListQueryBindingDto> => {\n const requestedFormats = proofSchema.proofInputSchemas.map((schema) => schema.credentialSchema.format);\n const requestedFormatsCapabilities = requestedFormats\n .map((format) => config.format[format]?.capabilities)\n .filter((x) => x);\n\n // key algorithms must be supported by all requested formats\n const keyAlgorithms = requestedFormatsCapabilities.reduce<string[] | undefined>((others, capabilities) => {\n const current = capabilities.verificationKeyAlgorithms;\n return others?.filter((item) => current.includes(item)) ?? current;\n }, undefined);\n\n // key storages must be supported by all requested formats\n const keyStorages = requestedFormatsCapabilities.reduce<string[] | undefined>((others, capabilities) => {\n const current = capabilities.verificationKeyStorages;\n return others?.filter((item) => current.includes(item)) ?? current;\n }, undefined);\n\n return { keyAlgorithms, keyStorages };\n};\n\nexport const useProofForSchemaIdWithTransport = (\n proofSchemaId: string,\n transport: Transport[] | undefined,\n enabled: boolean,\n) => {\n const { data: proofSchema } = useProofSchemaDetail(proofSchemaId, enabled);\n const { data: config } = useCoreConfig();\n\n const identifierFilter = useMemo(\n () => (proofSchema && config ? getIdentifierFilterForProofSchema(proofSchema, config) : undefined),\n [config, proofSchema],\n );\n\n const { data: identifiers } = useIdentifiers(identifierFilter);\n const { mutateAsync: createProof } = useProofCreate();\n const { mutateAsync: deleteProof } = useProofDelete();\n\n const [deleting, setDeleting] = useState(false);\n const [proofId, setProofIdState] = useState<string | undefined>(undefined);\n const proofIdRef = useRef<string>();\n\n const { data: proofState } = useProofState(deleting ? undefined : proofId, enabled);\n\n const setProofId = useCallback((id: string | undefined) => {\n proofIdRef.current = id;\n setProofIdState(id);\n }, []);\n\n useEffect(() => {\n if (!proofIdRef.current) {\n return;\n }\n setDeleting(true);\n deleteProof(proofIdRef.current)\n .then(() => {\n setProofId(undefined);\n setDeleting(false);\n })\n .catch(() => {});\n }, [proofIdRef, deleteProof, proofSchemaId, transport, setProofId]);\n\n useEffect(() => {\n if (enabled) {\n return;\n }\n\n if (proofState?.state !== ProofStateBindingEnum.CREATED && proofState?.state !== ProofStateBindingEnum.PENDING) {\n setProofId(undefined);\n } else {\n setDeleting(true);\n deleteProof(proofIdRef.current || '')\n .then(() => {\n setProofId(undefined);\n setDeleting(false);\n })\n .catch(() => {});\n }\n }, [deleteProof, enabled, proofId, proofState, setProofId]);\n\n useEffect(() => {\n if (\n deleting ||\n !enabled ||\n proofId ||\n !identifiers ||\n !identifierFilter ||\n !identifiers.values.length ||\n !transport ||\n transport.length === 0\n ) {\n return;\n }\n\n createProof({\n protocol: VerificationProtocol.OPENID4VP_PROXIMITY_DRAFT00,\n proofSchemaId,\n transport,\n verifierIdentifierId: identifiers.values[0].id,\n })\n .then((id) => {\n setProofId(id);\n })\n .catch(() => {});\n }, [proofSchemaId, identifiers, identifierFilter, createProof, enabled, transport, proofId, setProofId, deleting]);\n\n return deleting ? undefined : proofId;\n};\n\nexport const useCleanupUnusedProofs = () => {\n const { mutateAsync: deleteProof } = useProofDelete();\n const { data: proofs } = useProofs({\n page: 0,\n pageSize: 100,\n proofStates: [ProofStateBindingEnum.CREATED, ProofStateBindingEnum.PENDING],\n });\n const [cleaned, setCleaned] = useState(false);\n\n useEffect(() => {\n if (cleaned || !proofs) {\n return;\n }\n setCleaned(true);\n proofs.values.forEach((proof) => deleteProof(proof.id));\n }, [cleaned, deleteProof, proofs]);\n};\n\nexport const useShareProof = (proofUrlProps: ProofUrlHookParams | undefined, enabled: boolean) => {\n const { mutateAsync: shareProof } = useProofUrl();\n const { data: proofState } = useProofState(proofUrlProps?.proofId, enabled);\n\n const [sharedProof, setSharedProof] = useState<{\n bleAdapterDisabled: boolean;\n url?: string;\n error?: unknown;\n }>();\n\n // reset when proofId changes or the proof was retracted\n useEffect(() => {\n if (!proofUrlProps?.proofId || proofState?.state === ProofStateBindingEnum.CREATED) {\n setSharedProof(undefined);\n }\n }, [proofUrlProps?.proofId, proofState]);\n\n useEffect(() => {\n if (!proofUrlProps || !enabled || sharedProof) {\n return;\n }\n\n shareProof(proofUrlProps)\n .then((url) => {\n setSharedProof({\n bleAdapterDisabled: false,\n url,\n });\n })\n .catch((error: unknown) => {\n if (error instanceof OneError && error.cause?.includes('BLE adapter not enabled')) {\n setSharedProof({\n bleAdapterDisabled: true,\n });\n } else {\n setSharedProof({ error, bleAdapterDisabled: false });\n }\n });\n }, [enabled, proofUrlProps, shareProof, sharedProof]);\n\n return sharedProof;\n};\n\nexport const useRetainProofCheck = (proofId?: string) => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async () => core.runTask('RETAIN_PROOF_CHECK'), {\n onSuccess: async () => {\n if (proofId) {\n await queryClient.removeQueries([PROOF_DETAIL_QUERY_KEY, proofId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n }\n },\n });\n};\n\nexport const useDeleteProofData = (proofId: string) => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async () => core.deleteProofClaims(proofId), {\n onSuccess: async () => {\n await queryClient.removeQueries([PROOF_DETAIL_QUERY_KEY, proofId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nexport const useDeleteAllProofsData = (schemaId: string) => {\n const queryClient = useQueryClient();\n\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async () =>\n core\n .getProofs({\n organisationId,\n page: 0,\n pageSize: 1000,\n proofSchemaIds: [schemaId],\n proofStates: [ProofStateBindingEnum.ACCEPTED],\n })\n .then((result) => Promise.all(result.values.reverse().map((proof) => core.deleteProofClaims(proof.id)))),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["HistoryActionBindingEnum","HistoryEntityTypeBindingEnum","OneError","ProofStateBindingEnum","useCallback","useEffect","useMemo","useRef","useState","useMutation","useQuery","useQueryClient","getQueryKeyFromProofListQueryParams","reportException","useCoreConfig","useONECore","OneErrorCode","HISTORY_LIST_QUERY_KEY","useIdentifiers","useProofSchemaDetail","PAGE_SIZE","PROOF_DETAIL_QUERY_KEY","PROOF_STATE_QUERY_KEY","PROOF_LIST_QUERY_KEY","useProofDetail","proofId","core","getProof","undefined","enabled","Boolean","keepPreviousData","useProofState","isPolling","organisationId","state","then","proof","metadata","ERROR","getHistoryList","page","pageSize","entityIds","entityTypes","PROOF","actions","ERRORED","result","_result$values$","values","value","refetchInterval","useProofUrl","queryClient","request","shareProof","url","onSuccess","invalidateQueries","useProofAccept","interactionId","credentials","holderSubmitProof","onError","err","useProofReject","holderRejectProof","catch","e","code","OperationNotSupported","IssuanceProtocol","VerificationProtocol","VerificationEngagement","useProposeProof","proposeProof","useProofDelete","deleteProof","useProofs","queryParams","queryKey","pageParam","getProofs","useProofCreate","data","createProof","getIdentifierFilterForProofSchema","proofSchema","config","requestedFormats","proofInputSchemas","map","schema","credentialSchema","format","requestedFormatsCapabilities","_config$format$format","capabilities","filter","x","keyAlgorithms","reduce","others","_others$filter","current","verificationKeyAlgorithms","item","includes","keyStorages","_others$filter2","verificationKeyStorages","useProofForSchemaIdWithTransport","proofSchemaId","transport","identifierFilter","identifiers","mutateAsync","deleting","setDeleting","setProofIdState","proofIdRef","proofState","setProofId","id","retract","CREATED","PENDING","length","protocol","OPENID4VP_PROXIMITY_DRAFT00","verifierIdentifierId","useCleanupUnusedProofs","proofs","proofStates","cleaned","setCleaned","forEach","useShareProof","proofUrlProps","sharedProof","setSharedProof","bleAdapterDisabled","error","_error$cause","cause","useRetainProofCheck","runTask","removeQueries","useDeleteProofData","deleteProofClaims","useDeleteAllProofsData","schemaId","proofSchemaIds","ACCEPTED","Promise","all","reverse"],"sources":["proofs.ts"],"sourcesContent":["import {\n Config,\n CreateProofRequestBindingDto,\n GetProofSchemaBindingDto,\n HistoryActionBindingEnum,\n HistoryEntityTypeBindingEnum,\n HistoryErrorMetadataBindingDto,\n IdentifierListQueryBindingDto,\n OneError,\n PresentationSubmitCredentialRequestBindingDto,\n ProofListQueryBindingDto,\n ProofStateBindingEnum,\n ProposeProofRequestBindingDto,\n ShareProofRequestBindingDto,\n} from '@procivis/react-native-one-core';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { getQueryKeyFromProofListQueryParams } from '../../parsers/query';\nimport { reportException } from '../../reporting';\nimport { Transport } from '../connectivity/connectivity';\nimport { useCoreConfig } from './core-config';\nimport { useONECore } from './core-context';\nimport { OneErrorCode } from './error-code';\nimport { HISTORY_LIST_QUERY_KEY } from './history';\nimport { useIdentifiers } from './identifiers';\nimport { useProofSchemaDetail } from './proof-schemas';\n\nconst PAGE_SIZE = 10;\nexport const PROOF_DETAIL_QUERY_KEY = 'proof-detail';\nexport const PROOF_STATE_QUERY_KEY = 'proof-state';\nexport const PROOF_LIST_QUERY_KEY = 'proof-list';\n\nexport const useProofDetail = (proofId: string | undefined) => {\n const { core } = useONECore();\n\n return useQuery([PROOF_DETAIL_QUERY_KEY, proofId], () => (proofId ? core.getProof(proofId) : undefined), {\n enabled: Boolean(proofId),\n keepPreviousData: true,\n });\n};\n\nexport const useProofState = (proofId: string | undefined, isPolling: boolean) => {\n const { core, organisationId } = useONECore();\n\n return useQuery(\n [PROOF_STATE_QUERY_KEY, proofId],\n async () => {\n if (!proofId) {\n return undefined;\n }\n\n const state = await core.getProof(proofId).then((proof) => proof.state);\n let metadata: HistoryErrorMetadataBindingDto | undefined;\n if (state === ProofStateBindingEnum.ERROR) {\n metadata = await core\n .getHistoryList({\n organisationId,\n page: 0,\n pageSize: 1,\n entityIds: [proofId],\n entityTypes: [HistoryEntityTypeBindingEnum.PROOF],\n actions: [HistoryActionBindingEnum.ERRORED],\n })\n .then((result) => result.values[0]?.metadata?.value as HistoryErrorMetadataBindingDto);\n }\n return { state, metadata };\n },\n {\n enabled: Boolean(proofId),\n refetchInterval: isPolling ? 1000 : false,\n },\n );\n};\n\ntype ProofUrlHookParams = { proofId: string; request?: ShareProofRequestBindingDto };\n\nexport const useProofUrl = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({ proofId, request }: ProofUrlHookParams) =>\n core.shareProof(proofId, request ?? {}).then((proof) => proof.url),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofAccept = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({\n interactionId,\n credentials,\n }: {\n credentials: Record<string, PresentationSubmitCredentialRequestBindingDto[]>;\n interactionId: string;\n }) => core.holderSubmitProof(interactionId, credentials),\n {\n onError: async (err) => {\n reportException(err, 'Proof submission failure');\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofReject = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (interactionId: string) =>\n core.holderRejectProof(interactionId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport enum IssuanceProtocol {\n OPENID4VCI_DRAFT13 = 'OPENID4VCI_DRAFT13',\n}\n\nexport enum VerificationProtocol {\n ISO_MDL = 'ISO_MDL',\n OPENID4VP_DRAFT20 = 'OPENID4VP_DRAFT20',\n OPENID4VP_DRAFT25 = 'OPENID4VP_DRAFT25',\n OPENID4VP_PROXIMITY_DRAFT00 = 'OPENID4VP_PROXIMITY_DRAFT00',\n}\n\nexport enum VerificationEngagement {\n QR_CODE = 'QR_CODE',\n NFC = 'NFC',\n}\n\nexport const useProposeProof = () => {\n const queryClient = useQueryClient();\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async (request: Omit<ProposeProofRequestBindingDto, 'organisationId'>) =>\n core.proposeProof({ organisationId, ...request }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofDelete = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (proofId: string) => {\n return core.deleteProof(proofId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n });\n },\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofs = (queryParams?: Partial<ProofListQueryBindingDto>) => {\n const { core, organisationId } = useONECore();\n\n const queryKey = [PROOF_LIST_QUERY_KEY, ...getQueryKeyFromProofListQueryParams(queryParams)];\n\n return useQuery(\n queryKey,\n ({ pageParam = 0 }) =>\n core.getProofs({\n organisationId,\n page: pageParam,\n pageSize: PAGE_SIZE,\n ...queryParams,\n }),\n {\n keepPreviousData: false,\n },\n );\n};\n\nexport const useProofCreate = () => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async (data: CreateProofRequestBindingDto) => core.createProof(data), {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nconst getIdentifierFilterForProofSchema = (\n proofSchema: GetProofSchemaBindingDto,\n config: Config,\n): Partial<IdentifierListQueryBindingDto> => {\n const requestedFormats = proofSchema.proofInputSchemas.map((schema) => schema.credentialSchema.format);\n const requestedFormatsCapabilities = requestedFormats\n .map((format) => config.format[format]?.capabilities)\n .filter((x) => x);\n\n // key algorithms must be supported by all requested formats\n const keyAlgorithms = requestedFormatsCapabilities.reduce<string[] | undefined>((others, capabilities) => {\n const current = capabilities.verificationKeyAlgorithms;\n return others?.filter((item) => current.includes(item)) ?? current;\n }, undefined);\n\n // key storages must be supported by all requested formats\n const keyStorages = requestedFormatsCapabilities.reduce<string[] | undefined>((others, capabilities) => {\n const current = capabilities.verificationKeyStorages;\n return others?.filter((item) => current.includes(item)) ?? current;\n }, undefined);\n\n return { keyAlgorithms, keyStorages };\n};\n\nexport const useProofForSchemaIdWithTransport = (\n proofSchemaId: string,\n transport: Transport[] | undefined,\n enabled: boolean,\n) => {\n const { data: proofSchema } = useProofSchemaDetail(proofSchemaId, enabled);\n const { data: config } = useCoreConfig();\n\n const identifierFilter = useMemo(\n () => (proofSchema && config ? getIdentifierFilterForProofSchema(proofSchema, config) : undefined),\n [config, proofSchema],\n );\n\n const { data: identifiers } = useIdentifiers(identifierFilter);\n const { mutateAsync: createProof } = useProofCreate();\n const { mutateAsync: deleteProof } = useProofDelete();\n\n const [deleting, setDeleting] = useState(false);\n const [proofId, setProofIdState] = useState<string | undefined>(undefined);\n const proofIdRef = useRef<string>();\n\n const { data: proofState } = useProofState(deleting ? undefined : proofId, enabled);\n\n const setProofId = useCallback((id: string | undefined) => {\n proofIdRef.current = id;\n setProofIdState(id);\n }, []);\n\n const retract = useCallback(async () => {\n const id = proofIdRef.current;\n if (!id) {\n return;\n }\n setProofId(undefined);\n await deleteProof(id).catch(() => {});\n }, [deleteProof, setProofId]);\n\n useEffect(() => {\n if (!proofIdRef.current) {\n return;\n }\n setDeleting(true);\n deleteProof(proofIdRef.current)\n .then(() => {\n setProofId(undefined);\n setDeleting(false);\n })\n .catch(() => {});\n }, [proofIdRef, deleteProof, proofSchemaId, transport, setProofId]);\n\n useEffect(() => {\n if (enabled) {\n return;\n }\n\n if (proofState?.state !== ProofStateBindingEnum.CREATED && proofState?.state !== ProofStateBindingEnum.PENDING) {\n setProofId(undefined);\n } else {\n setDeleting(true);\n deleteProof(proofIdRef.current || '')\n .then(() => {\n setProofId(undefined);\n setDeleting(false);\n })\n .catch(() => {});\n }\n }, [deleteProof, enabled, proofId, proofState, setProofId]);\n\n useEffect(() => {\n if (\n deleting ||\n !enabled ||\n proofId ||\n !identifiers ||\n !identifierFilter ||\n !identifiers.values.length ||\n !transport ||\n transport.length === 0\n ) {\n return;\n }\n\n createProof({\n protocol: VerificationProtocol.OPENID4VP_PROXIMITY_DRAFT00,\n proofSchemaId,\n transport,\n verifierIdentifierId: identifiers.values[0].id,\n })\n .then((id) => {\n setProofId(id);\n })\n .catch(() => {});\n }, [proofSchemaId, identifiers, identifierFilter, createProof, enabled, transport, proofId, setProofId, deleting]);\n\n return { proofId: deleting ? undefined : proofId, retract };\n};\n\nexport const useCleanupUnusedProofs = () => {\n const { mutateAsync: deleteProof } = useProofDelete();\n const { data: proofs } = useProofs({\n page: 0,\n pageSize: 100,\n proofStates: [ProofStateBindingEnum.CREATED, ProofStateBindingEnum.PENDING],\n });\n const [cleaned, setCleaned] = useState(false);\n\n useEffect(() => {\n if (cleaned || !proofs) {\n return;\n }\n setCleaned(true);\n proofs.values.forEach((proof) => deleteProof(proof.id));\n }, [cleaned, deleteProof, proofs]);\n};\n\nexport const useShareProof = (proofUrlProps: ProofUrlHookParams | undefined, enabled: boolean) => {\n const { mutateAsync: shareProof } = useProofUrl();\n const { data: proofState } = useProofState(proofUrlProps?.proofId, enabled);\n\n const [sharedProof, setSharedProof] = useState<{\n bleAdapterDisabled: boolean;\n url?: string;\n error?: unknown;\n }>();\n\n // reset when proofId changes or the proof was retracted\n useEffect(() => {\n if (!proofUrlProps?.proofId || proofState?.state === ProofStateBindingEnum.CREATED) {\n setSharedProof(undefined);\n }\n }, [proofUrlProps?.proofId, proofState]);\n\n useEffect(() => {\n if (!proofUrlProps || !enabled || sharedProof) {\n return;\n }\n\n shareProof(proofUrlProps)\n .then((url) => {\n setSharedProof({\n bleAdapterDisabled: false,\n url,\n });\n })\n .catch((error: unknown) => {\n if (error instanceof OneError && error.cause?.includes('BLE adapter not enabled')) {\n setSharedProof({\n bleAdapterDisabled: true,\n });\n } else {\n setSharedProof({ error, bleAdapterDisabled: false });\n }\n });\n }, [enabled, proofUrlProps, shareProof, sharedProof]);\n\n return sharedProof;\n};\n\nexport const useRetainProofCheck = (proofId?: string) => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async () => core.runTask('RETAIN_PROOF_CHECK'), {\n onSuccess: async () => {\n if (proofId) {\n await queryClient.removeQueries([PROOF_DETAIL_QUERY_KEY, proofId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n }\n },\n });\n};\n\nexport const useDeleteProofData = (proofId: string) => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async () => core.deleteProofClaims(proofId), {\n onSuccess: async () => {\n await queryClient.removeQueries([PROOF_DETAIL_QUERY_KEY, proofId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nexport const useDeleteAllProofsData = (schemaId: string) => {\n const queryClient = useQueryClient();\n\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async () =>\n core\n .getProofs({\n organisationId,\n page: 0,\n pageSize: 1000,\n proofSchemaIds: [schemaId],\n proofStates: [ProofStateBindingEnum.ACCEPTED],\n })\n .then((result) => Promise.all(result.values.reverse().map((proof) => core.deleteProofClaims(proof.id)))),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -42,7 +42,7 @@ export const getCarouselImagesFromClaims = (claims, layoutProperties, testID) =>
|
|
|
42
42
|
if (code) {
|
|
43
43
|
const claim = findClaimByPath(code.attribute, claims);
|
|
44
44
|
let claimValue = '';
|
|
45
|
-
if (claim && (claim.value.type_ === 'FLOAT' || claim.value.type_ === 'INTEGER')) {
|
|
45
|
+
if (claim && (claim.value.type_ === 'FLOAT' || claim.value.type_ === 'INTEGER' || claim.value.type_ === 'STRING')) {
|
|
46
46
|
claimValue = String(claim.value.value);
|
|
47
47
|
}
|
|
48
48
|
if (!claim || typeof claimValue !== 'string') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CredentialSchemaCodeTypeBindingDto","React","StyleSheet","Barcode","CarouselImageType","Mrz","QrCode","ImageOrComponent","isASCII","concatTestID","findClaimByPath","styles","create","container","height","justifyContent","width","getCarouselImagesFromClaims","claims","layoutProperties","testID","result","code","pictureAttribute","pictureClaim","push","element","createElement","source","imageSource","uri","value","style","Photo","type","claim","attribute","claimValue","type_","String","QR_CODE","content","BARCODE","MRZ"],"sources":["credential-images.tsx"],"sourcesContent":["import {\n ClaimBindingDto,\n CredentialSchemaCodeTypeBindingDto,\n CredentialSchemaLayoutPropertiesBindingDto,\n} from '@procivis/react-native-one-core';\nimport React from 'react';\nimport { StyleSheet } from 'react-native';\n\nimport { Barcode, CarouselImage, CarouselImageType, Mrz, QrCode } from '../../ui-components/credential';\nimport { ImageOrComponent } from '../../ui-components/image';\nimport { isASCII } from '../string';\nimport { concatTestID } from '../testID';\nimport { findClaimByPath } from './credential';\n\nconst styles = StyleSheet.create({\n container: {\n height: '100%',\n justifyContent: 'center',\n width: '100%',\n },\n});\n\nexport const getCarouselImagesFromClaims = (\n claims: ClaimBindingDto[],\n layoutProperties?: CredentialSchemaLayoutPropertiesBindingDto,\n testID?: string,\n): CarouselImage[] => {\n const result: CarouselImage[] = [];\n\n if (!layoutProperties) {\n return result;\n }\n\n const { code, pictureAttribute } = layoutProperties;\n\n if (pictureAttribute) {\n const pictureClaim = findClaimByPath(pictureAttribute, claims);\n if (pictureClaim) {\n result.push({\n element: (\n <ImageOrComponent\n source={{ imageSource: { uri: pictureClaim.value.value as string } }}\n style={styles.container}\n testID={concatTestID(testID, CarouselImageType.Photo)}\n />\n ),\n type: CarouselImageType.Photo,\n });\n }\n }\n\n if (code) {\n const claim = findClaimByPath(code.attribute, claims);\n\n let claimValue = '';\n\n if (claim && (claim.value.type_ === 'FLOAT' || claim.value.type_ === 'INTEGER')) {\n claimValue = String(claim.value.value);\n }\n\n if (!claim || typeof claimValue !== 'string') {\n return result;\n }\n\n if (code.type === CredentialSchemaCodeTypeBindingDto.QR_CODE) {\n result.push({\n element: <QrCode content={claimValue} testID={concatTestID(testID, CarouselImageType.QrCode)} />,\n type: CarouselImageType.QrCode,\n });\n } else if (code.type === CredentialSchemaCodeTypeBindingDto.BARCODE && isASCII(claimValue)) {\n result.push({\n element: <Barcode content={claimValue} testID={concatTestID(testID, CarouselImageType.Barcode)} />,\n type: CarouselImageType.Barcode,\n });\n } else if (code.type === CredentialSchemaCodeTypeBindingDto.MRZ) {\n result.push({\n element: <Mrz content={claimValue} testID={concatTestID(testID, CarouselImageType.MRZ)} />,\n type: CarouselImageType.MRZ,\n });\n }\n }\n\n return result;\n};\n"],"mappings":"AAAA,SAEEA,kCAAkC,QAE7B,iCAAiC;AACxC,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,cAAc;AAEzC,SAASC,OAAO,EAAiBC,iBAAiB,EAAEC,GAAG,EAAEC,MAAM,QAAQ,gCAAgC;AACvG,SAASC,gBAAgB,QAAQ,2BAA2B;AAC5D,SAASC,OAAO,QAAQ,WAAW;AACnC,SAASC,YAAY,QAAQ,WAAW;AACxC,SAASC,eAAe,QAAQ,cAAc;AAE9C,MAAMC,MAAM,GAAGT,UAAU,CAACU,MAAM,CAAC;EAC/BC,SAAS,EAAE;IACTC,MAAM,EAAE,MAAM;IACdC,cAAc,EAAE,QAAQ;IACxBC,KAAK,EAAE;EACT;AACF,CAAC,CAAC;AAEF,OAAO,MAAMC,2BAA2B,GAAGA,CACzCC,MAAyB,EACzBC,gBAA6D,EAC7DC,MAAe,KACK;EACpB,MAAMC,MAAuB,GAAG,EAAE;EAElC,IAAI,CAACF,gBAAgB,EAAE;IACrB,OAAOE,MAAM;EACf;EAEA,MAAM;IAAEC,IAAI;IAAEC;EAAiB,CAAC,GAAGJ,gBAAgB;EAEnD,IAAII,gBAAgB,EAAE;IACpB,MAAMC,YAAY,GAAGd,eAAe,CAACa,gBAAgB,EAAEL,MAAM,CAAC;IAC9D,IAAIM,YAAY,EAAE;MAChBH,MAAM,CAACI,IAAI,CAAC;QACVC,OAAO,eACLzB,KAAA,CAAA0B,aAAA,CAACpB,gBAAgB;UACfqB,MAAM,EAAE;YAAEC,WAAW,EAAE;cAAEC,GAAG,EAAEN,YAAY,CAACO,KAAK,CAACA;YAAgB;UAAE,CAAE;UACrEC,KAAK,EAAErB,MAAM,CAACE,SAAU;UACxBO,MAAM,EAAEX,YAAY,CAACW,MAAM,EAAEhB,iBAAiB,CAAC6B,KAAK;QAAE,CACvD,CACF;QACDC,IAAI,EAAE9B,iBAAiB,CAAC6B;MAC1B,CAAC,CAAC;IACJ;EACF;EAEA,IAAIX,IAAI,EAAE;IACR,MAAMa,KAAK,GAAGzB,eAAe,CAACY,IAAI,CAACc,SAAS,EAAElB,MAAM,CAAC;IAErD,IAAImB,UAAU,GAAG,EAAE;IAEnB,IAAIF,KAAK,KAAKA,KAAK,CAACJ,KAAK,CAACO,KAAK,KAAK,OAAO,IAAIH,KAAK,CAACJ,KAAK,CAACO,KAAK,KAAK,SAAS,CAAC,EAAE;
|
|
1
|
+
{"version":3,"names":["CredentialSchemaCodeTypeBindingDto","React","StyleSheet","Barcode","CarouselImageType","Mrz","QrCode","ImageOrComponent","isASCII","concatTestID","findClaimByPath","styles","create","container","height","justifyContent","width","getCarouselImagesFromClaims","claims","layoutProperties","testID","result","code","pictureAttribute","pictureClaim","push","element","createElement","source","imageSource","uri","value","style","Photo","type","claim","attribute","claimValue","type_","String","QR_CODE","content","BARCODE","MRZ"],"sources":["credential-images.tsx"],"sourcesContent":["import {\n ClaimBindingDto,\n CredentialSchemaCodeTypeBindingDto,\n CredentialSchemaLayoutPropertiesBindingDto,\n} from '@procivis/react-native-one-core';\nimport React from 'react';\nimport { StyleSheet } from 'react-native';\n\nimport { Barcode, CarouselImage, CarouselImageType, Mrz, QrCode } from '../../ui-components/credential';\nimport { ImageOrComponent } from '../../ui-components/image';\nimport { isASCII } from '../string';\nimport { concatTestID } from '../testID';\nimport { findClaimByPath } from './credential';\n\nconst styles = StyleSheet.create({\n container: {\n height: '100%',\n justifyContent: 'center',\n width: '100%',\n },\n});\n\nexport const getCarouselImagesFromClaims = (\n claims: ClaimBindingDto[],\n layoutProperties?: CredentialSchemaLayoutPropertiesBindingDto,\n testID?: string,\n): CarouselImage[] => {\n const result: CarouselImage[] = [];\n\n if (!layoutProperties) {\n return result;\n }\n\n const { code, pictureAttribute } = layoutProperties;\n\n if (pictureAttribute) {\n const pictureClaim = findClaimByPath(pictureAttribute, claims);\n if (pictureClaim) {\n result.push({\n element: (\n <ImageOrComponent\n source={{ imageSource: { uri: pictureClaim.value.value as string } }}\n style={styles.container}\n testID={concatTestID(testID, CarouselImageType.Photo)}\n />\n ),\n type: CarouselImageType.Photo,\n });\n }\n }\n\n if (code) {\n const claim = findClaimByPath(code.attribute, claims);\n\n let claimValue = '';\n\n if (claim && (claim.value.type_ === 'FLOAT' || claim.value.type_ === 'INTEGER' || claim.value.type_ === 'STRING')) {\n claimValue = String(claim.value.value);\n }\n\n if (!claim || typeof claimValue !== 'string') {\n return result;\n }\n\n if (code.type === CredentialSchemaCodeTypeBindingDto.QR_CODE) {\n result.push({\n element: <QrCode content={claimValue} testID={concatTestID(testID, CarouselImageType.QrCode)} />,\n type: CarouselImageType.QrCode,\n });\n } else if (code.type === CredentialSchemaCodeTypeBindingDto.BARCODE && isASCII(claimValue)) {\n result.push({\n element: <Barcode content={claimValue} testID={concatTestID(testID, CarouselImageType.Barcode)} />,\n type: CarouselImageType.Barcode,\n });\n } else if (code.type === CredentialSchemaCodeTypeBindingDto.MRZ) {\n result.push({\n element: <Mrz content={claimValue} testID={concatTestID(testID, CarouselImageType.MRZ)} />,\n type: CarouselImageType.MRZ,\n });\n }\n }\n\n return result;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -107,7 +107,7 @@ export const shareCredentialCardFromV2PresentationCredential = (credential, fail
|
|
|
107
107
|
const card = credential ? validityCheckedCardFromCredential({
|
|
108
108
|
...credential,
|
|
109
109
|
claims: []
|
|
110
|
-
},
|
|
110
|
+
}, expanded, multipleCredentialsAvailable, config, notice, cardTestId, labels) : missingCredentialCardFromFailureHint(failureHint, notice, cardTestId, labels);
|
|
111
111
|
return {
|
|
112
112
|
attributes: (_credential$claims$ma = credential === null || credential === void 0 ? void 0 : credential.claims.map(v => shareCredentialCardAttributeFromV2Claim(v, selectedFields !== null && selectedFields !== void 0 ? selectedFields : [], true, false, config, testID))) !== null && _credential$claims$ma !== void 0 ? _credential$claims$ma : [],
|
|
113
113
|
card
|