@bifold/core 3.0.1 → 3.0.2

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.
Files changed (205) hide show
  1. package/lib/commonjs/components/animated/LoadingSpinner.js +5 -4
  2. package/lib/commonjs/components/animated/LoadingSpinner.js.map +1 -1
  3. package/lib/commonjs/components/record/Record.js +11 -5
  4. package/lib/commonjs/components/record/Record.js.map +1 -1
  5. package/lib/commonjs/components/views/HomeFooterView.js +3 -2
  6. package/lib/commonjs/components/views/HomeFooterView.js.map +1 -1
  7. package/lib/commonjs/constants.js +2 -0
  8. package/lib/commonjs/constants.js.map +1 -1
  9. package/lib/commonjs/container-api.js +8 -2
  10. package/lib/commonjs/container-api.js.map +1 -1
  11. package/lib/commonjs/container-impl.js +5 -1
  12. package/lib/commonjs/container-impl.js.map +1 -1
  13. package/lib/commonjs/contexts/reducers/store.js +16 -1
  14. package/lib/commonjs/contexts/reducers/store.js.map +1 -1
  15. package/lib/commonjs/contexts/store.js +3 -0
  16. package/lib/commonjs/contexts/store.js.map +1 -1
  17. package/lib/commonjs/hooks/attestation.js +83 -0
  18. package/lib/commonjs/hooks/attestation.js.map +1 -0
  19. package/lib/commonjs/hooks/useBifoldAgentSetup.js +1 -0
  20. package/lib/commonjs/hooks/useBifoldAgentSetup.js.map +1 -1
  21. package/lib/commonjs/localization/en/en.json +4 -1
  22. package/lib/commonjs/localization/fr/fr.json +4 -1
  23. package/lib/commonjs/localization/pt-br/pt-br.json +4 -1
  24. package/lib/commonjs/modules/openid/components/OpenIDCredentialCard.js.map +1 -1
  25. package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js +63 -25
  26. package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
  27. package/lib/commonjs/modules/openid/displayProof.js +118 -1
  28. package/lib/commonjs/modules/openid/displayProof.js.map +1 -1
  29. package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.js +56 -0
  30. package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.js.map +1 -0
  31. package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.js +104 -0
  32. package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.js.map +1 -0
  33. package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.js +87 -0
  34. package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.js.map +1 -0
  35. package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.js +50 -0
  36. package/lib/commonjs/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.js.map +1 -0
  37. package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js +14 -1
  38. package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js.map +1 -1
  39. package/lib/commonjs/modules/openid/refresh/types.js.map +1 -1
  40. package/lib/commonjs/modules/openid/resolverProof.js +114 -27
  41. package/lib/commonjs/modules/openid/resolverProof.js.map +1 -1
  42. package/lib/commonjs/modules/openid/screens/OpenIDConnection.js +3 -2
  43. package/lib/commonjs/modules/openid/screens/OpenIDConnection.js.map +1 -1
  44. package/lib/commonjs/modules/openid/screens/OpenIDCredentialDetails.js +5 -2
  45. package/lib/commonjs/modules/openid/screens/OpenIDCredentialDetails.js.map +1 -1
  46. package/lib/commonjs/modules/openid/screens/OpenIDProofChangeCredential.js +6 -11
  47. package/lib/commonjs/modules/openid/screens/OpenIDProofChangeCredential.js.map +1 -1
  48. package/lib/commonjs/modules/openid/screens/OpenIDProofPresentation.js +45 -188
  49. package/lib/commonjs/modules/openid/screens/OpenIDProofPresentation.js.map +1 -1
  50. package/lib/commonjs/modules/openid/types.js.map +1 -1
  51. package/lib/commonjs/navigators/DeliveryStack.js +2 -1
  52. package/lib/commonjs/navigators/DeliveryStack.js.map +1 -1
  53. package/lib/commonjs/navigators/defaultLayoutOptions.js +2 -1
  54. package/lib/commonjs/navigators/defaultLayoutOptions.js.map +1 -1
  55. package/lib/commonjs/navigators/defaultStackOptions.js +1 -1
  56. package/lib/commonjs/navigators/defaultStackOptions.js.map +1 -1
  57. package/lib/commonjs/onboarding.js +6 -3
  58. package/lib/commonjs/onboarding.js.map +1 -1
  59. package/lib/commonjs/screens/Connection.js +9 -28
  60. package/lib/commonjs/screens/Connection.js.map +1 -1
  61. package/lib/commonjs/screens/ListCredentials.js +8 -2
  62. package/lib/commonjs/screens/ListCredentials.js.map +1 -1
  63. package/lib/commonjs/screens/Splash.js +21 -2
  64. package/lib/commonjs/screens/Splash.js.map +1 -1
  65. package/lib/commonjs/theme.js +2 -1
  66. package/lib/commonjs/theme.js.map +1 -1
  67. package/lib/commonjs/utils/agent.js +10 -0
  68. package/lib/commonjs/utils/agent.js.map +1 -1
  69. package/lib/commonjs/utils/network.js +16 -0
  70. package/lib/commonjs/utils/network.js.map +1 -1
  71. package/lib/commonjs/wallet/map-to-card.js +2 -2
  72. package/lib/commonjs/wallet/map-to-card.js.map +1 -1
  73. package/lib/module/components/animated/LoadingSpinner.js +4 -3
  74. package/lib/module/components/animated/LoadingSpinner.js.map +1 -1
  75. package/lib/module/components/record/Record.js +12 -6
  76. package/lib/module/components/record/Record.js.map +1 -1
  77. package/lib/module/components/views/HomeFooterView.js +3 -2
  78. package/lib/module/components/views/HomeFooterView.js.map +1 -1
  79. package/lib/module/constants.js +2 -0
  80. package/lib/module/constants.js.map +1 -1
  81. package/lib/module/container-api.js +7 -1
  82. package/lib/module/container-api.js.map +1 -1
  83. package/lib/module/container-impl.js +5 -1
  84. package/lib/module/container-impl.js.map +1 -1
  85. package/lib/module/contexts/reducers/store.js +16 -1
  86. package/lib/module/contexts/reducers/store.js.map +1 -1
  87. package/lib/module/contexts/store.js +3 -0
  88. package/lib/module/contexts/store.js.map +1 -1
  89. package/lib/module/hooks/attestation.js +75 -0
  90. package/lib/module/hooks/attestation.js.map +1 -0
  91. package/lib/module/hooks/useBifoldAgentSetup.js +1 -0
  92. package/lib/module/hooks/useBifoldAgentSetup.js.map +1 -1
  93. package/lib/module/localization/en/en.json +4 -1
  94. package/lib/module/localization/fr/fr.json +4 -1
  95. package/lib/module/localization/pt-br/pt-br.json +4 -1
  96. package/lib/module/modules/openid/components/OpenIDCredentialCard.js.map +1 -1
  97. package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js +63 -25
  98. package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
  99. package/lib/module/modules/openid/displayProof.js +116 -1
  100. package/lib/module/modules/openid/displayProof.js.map +1 -1
  101. package/lib/module/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.js +49 -0
  102. package/lib/module/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.js.map +1 -0
  103. package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.js +97 -0
  104. package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.js.map +1 -0
  105. package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.js +80 -0
  106. package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.js.map +1 -0
  107. package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.js +44 -0
  108. package/lib/module/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.js.map +1 -0
  109. package/lib/module/modules/openid/refresh/refreshOrchestrator.js +14 -1
  110. package/lib/module/modules/openid/refresh/refreshOrchestrator.js.map +1 -1
  111. package/lib/module/modules/openid/refresh/types.js.map +1 -1
  112. package/lib/module/modules/openid/resolverProof.js +114 -27
  113. package/lib/module/modules/openid/resolverProof.js.map +1 -1
  114. package/lib/module/modules/openid/screens/OpenIDConnection.js +3 -2
  115. package/lib/module/modules/openid/screens/OpenIDConnection.js.map +1 -1
  116. package/lib/module/modules/openid/screens/OpenIDCredentialDetails.js +5 -2
  117. package/lib/module/modules/openid/screens/OpenIDCredentialDetails.js.map +1 -1
  118. package/lib/module/modules/openid/screens/OpenIDProofChangeCredential.js +6 -11
  119. package/lib/module/modules/openid/screens/OpenIDProofChangeCredential.js.map +1 -1
  120. package/lib/module/modules/openid/screens/OpenIDProofPresentation.js +47 -191
  121. package/lib/module/modules/openid/screens/OpenIDProofPresentation.js.map +1 -1
  122. package/lib/module/modules/openid/types.js.map +1 -1
  123. package/lib/module/navigators/DeliveryStack.js +2 -1
  124. package/lib/module/navigators/DeliveryStack.js.map +1 -1
  125. package/lib/module/navigators/defaultLayoutOptions.js +2 -1
  126. package/lib/module/navigators/defaultLayoutOptions.js.map +1 -1
  127. package/lib/module/navigators/defaultStackOptions.js +1 -1
  128. package/lib/module/navigators/defaultStackOptions.js.map +1 -1
  129. package/lib/module/onboarding.js +6 -3
  130. package/lib/module/onboarding.js.map +1 -1
  131. package/lib/module/screens/Connection.js +9 -28
  132. package/lib/module/screens/Connection.js.map +1 -1
  133. package/lib/module/screens/ListCredentials.js +9 -3
  134. package/lib/module/screens/ListCredentials.js.map +1 -1
  135. package/lib/module/screens/Splash.js +21 -2
  136. package/lib/module/screens/Splash.js.map +1 -1
  137. package/lib/module/theme.js +2 -1
  138. package/lib/module/theme.js.map +1 -1
  139. package/lib/module/utils/agent.js +10 -1
  140. package/lib/module/utils/agent.js.map +1 -1
  141. package/lib/module/utils/network.js +15 -0
  142. package/lib/module/utils/network.js.map +1 -1
  143. package/lib/module/wallet/map-to-card.js +3 -3
  144. package/lib/module/wallet/map-to-card.js.map +1 -1
  145. package/lib/typescript/src/components/animated/LoadingSpinner.d.ts +2 -1
  146. package/lib/typescript/src/components/animated/LoadingSpinner.d.ts.map +1 -1
  147. package/lib/typescript/src/components/record/Record.d.ts +1 -0
  148. package/lib/typescript/src/components/record/Record.d.ts.map +1 -1
  149. package/lib/typescript/src/components/views/HomeFooterView.d.ts.map +1 -1
  150. package/lib/typescript/src/constants.d.ts +3 -1
  151. package/lib/typescript/src/constants.d.ts.map +1 -1
  152. package/lib/typescript/src/container-api.d.ts +12 -0
  153. package/lib/typescript/src/container-api.d.ts.map +1 -1
  154. package/lib/typescript/src/container-impl.d.ts +3 -0
  155. package/lib/typescript/src/container-impl.d.ts.map +1 -1
  156. package/lib/typescript/src/contexts/reducers/store.d.ts +5 -1
  157. package/lib/typescript/src/contexts/reducers/store.d.ts.map +1 -1
  158. package/lib/typescript/src/contexts/store.d.ts.map +1 -1
  159. package/lib/typescript/src/hooks/attestation.d.ts +4 -0
  160. package/lib/typescript/src/hooks/attestation.d.ts.map +1 -0
  161. package/lib/typescript/src/hooks/useBifoldAgentSetup.d.ts.map +1 -1
  162. package/lib/typescript/src/modules/openid/components/OpenIDCredentialCard.d.ts +2 -2
  163. package/lib/typescript/src/modules/openid/components/OpenIDCredentialCard.d.ts.map +1 -1
  164. package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts.map +1 -1
  165. package/lib/typescript/src/modules/openid/displayProof.d.ts +4 -29
  166. package/lib/typescript/src/modules/openid/displayProof.d.ts.map +1 -1
  167. package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.d.ts +23 -0
  168. package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.d.ts.map +1 -0
  169. package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.d.ts +13 -0
  170. package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.d.ts.map +1 -0
  171. package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.d.ts +14 -0
  172. package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.d.ts.map +1 -0
  173. package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.d.ts +9 -0
  174. package/lib/typescript/src/modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.d.ts.map +1 -0
  175. package/lib/typescript/src/modules/openid/refresh/refreshOrchestrator.d.ts +1 -0
  176. package/lib/typescript/src/modules/openid/refresh/refreshOrchestrator.d.ts.map +1 -1
  177. package/lib/typescript/src/modules/openid/refresh/types.d.ts +1 -0
  178. package/lib/typescript/src/modules/openid/refresh/types.d.ts.map +1 -1
  179. package/lib/typescript/src/modules/openid/resolverProof.d.ts +32 -11
  180. package/lib/typescript/src/modules/openid/resolverProof.d.ts.map +1 -1
  181. package/lib/typescript/src/modules/openid/screens/OpenIDCredentialDetails.d.ts.map +1 -1
  182. package/lib/typescript/src/modules/openid/screens/OpenIDProofChangeCredential.d.ts.map +1 -1
  183. package/lib/typescript/src/modules/openid/screens/OpenIDProofPresentation.d.ts.map +1 -1
  184. package/lib/typescript/src/modules/openid/types.d.ts +34 -4
  185. package/lib/typescript/src/modules/openid/types.d.ts.map +1 -1
  186. package/lib/typescript/src/navigators/defaultLayoutOptions.d.ts.map +1 -1
  187. package/lib/typescript/src/onboarding.d.ts +1 -1
  188. package/lib/typescript/src/onboarding.d.ts.map +1 -1
  189. package/lib/typescript/src/screens/Connection.d.ts.map +1 -1
  190. package/lib/typescript/src/screens/ListCredentials.d.ts.map +1 -1
  191. package/lib/typescript/src/screens/Splash.d.ts.map +1 -1
  192. package/lib/typescript/src/theme.d.ts +1 -0
  193. package/lib/typescript/src/theme.d.ts.map +1 -1
  194. package/lib/typescript/src/types/config.d.ts +1 -0
  195. package/lib/typescript/src/types/config.d.ts.map +1 -1
  196. package/lib/typescript/src/types/credentials.d.ts +2 -2
  197. package/lib/typescript/src/types/credentials.d.ts.map +1 -1
  198. package/lib/typescript/src/types/state.d.ts +4 -0
  199. package/lib/typescript/src/types/state.d.ts.map +1 -1
  200. package/lib/typescript/src/utils/agent.d.ts +4 -2
  201. package/lib/typescript/src/utils/agent.d.ts.map +1 -1
  202. package/lib/typescript/src/utils/network.d.ts +1 -0
  203. package/lib/typescript/src/utils/network.d.ts.map +1 -1
  204. package/lib/typescript/src/wallet/map-to-card.d.ts.map +1 -1
  205. package/package.json +6 -5
@@ -1 +1 @@
1
- {"version":3,"names":["ClaimFormat","filterAndMapSdJwtKeys","getCredentialForDisplay","formatDifPexCredentialsForRequest","credentialsForRequest","entries","requirements","flatMap","requirement","submissionEntry","map","submission","inputDescriptorId","name","purpose","description","isSatisfied","verifiableCredentials","length","credentials","verifiableCredential","display","attributes","metadata","claimFormat","credentialRecord","disclosedPayload","SdJwtDc","visibleProperties","MsoMdoc","Object","fromEntries","values","entry","id","credentialName","issuerName","issuer","requestedAttributes","keys","backgroundColor","textColor","backgroundImage","areAllSatisfied","every"],"sourceRoot":"../../../../src","sources":["modules/openid/displayProof.tsx"],"mappings":"AAAA,SAASA,WAAW,QAA0C,gBAAgB;AAE9E,SAAqDC,qBAAqB,EAAEC,uBAAuB,QAAQ,WAAW;AAkCtH,OAAO,SAASC,iCAAiCA,CAC/CC,qBAAkD,EAC7B;EACrB,MAAMC,OAAO,GAAGD,qBAAqB,CAACE,YAAY,CAACC,OAAO,CAAEC,WAAW,IAAK;IAC1E,OAAOA,WAAW,CAACC,eAAe,CAACC,GAAG,CAAEC,UAAU,IAA+B;MAC/E,OAAO;QACLC,iBAAiB,EAAED,UAAU,CAACC,iBAAiB;QAC/CC,IAAI,EAAEF,UAAU,CAACE,IAAI,IAAI,SAAS;QAClCC,OAAO,EAAEH,UAAU,CAACG,OAAO;QAC3BC,WAAW,EAAEJ,UAAU,CAACG,OAAO;QAC/BE,WAAW,EAAEL,UAAU,CAACM,qBAAqB,CAACC,MAAM,IAAI,CAAC;QAEzDC,WAAW,EAAER,UAAU,CAACM,qBAAqB,CAACP,GAAG,CAAEU,oBAAoB,IAAK;UAC1E,MAAM;YAAEC,OAAO;YAAEC,UAAU;YAAEC,QAAQ;YAAEC;UAAY,CAAC,GAAGtB,uBAAuB,CAC5EkB,oBAAoB,CAACK,gBACvB,CAAC;UAED,IAAIC,gBAAgB,GAAGJ,UAAU;UACjC,IAAIF,oBAAoB,CAACI,WAAW,KAAKxB,WAAW,CAAC2B,OAAO,EAAE;YAC5DD,gBAAgB,GAAGzB,qBAAqB,CAACmB,oBAAoB,CAACM,gBAAgB,CAAC,CAACE,iBAAiB;UACnG,CAAC,MAAM,IAAIR,oBAAoB,CAACI,WAAW,KAAKxB,WAAW,CAAC6B,OAAO,EAAE;YACnEH,gBAAgB,GAAGI,MAAM,CAACC,WAAW,CACnCD,MAAM,CAACE,MAAM,CAACZ,oBAAoB,CAACM,gBAAgB,CAAC,CAACnB,OAAO,CAAE0B,KAAK,IAAKH,MAAM,CAACzB,OAAO,CAAC4B,KAAK,CAAC,CAC/F,CAAC;UACH;UAEA,OAAO;YACLC,EAAE,EAAEd,oBAAoB,CAACK,gBAAgB,CAACS,EAAE;YAC5CC,cAAc,EAAEd,OAAO,CAACR,IAAI;YAC5BuB,UAAU,EAAEf,OAAO,CAACgB,MAAM,CAACxB,IAAI;YAC/ByB,mBAAmB,EAAE,CAAC,GAAGR,MAAM,CAACS,IAAI,CAACb,gBAAgB,CAAC,CAAC;YACvDA,gBAAgB;YAChBH,QAAQ;YACRiB,eAAe,EAAEnB,OAAO,CAACmB,eAAe;YACxCC,SAAS,EAAEpB,OAAO,CAACoB,SAAS;YAC5BC,eAAe,EAAErB,OAAO,CAACqB,eAAe;YACxClB;UACF,CAAC;QACH,CAAC;MACH,CAAC;IACH,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,OAAO;IACLmB,eAAe,EAAEtC,OAAO,CAACuC,KAAK,CAAEX,KAAK,IAAKA,KAAK,CAACjB,WAAW,CAAC;IAC5DH,IAAI,EAAET,qBAAqB,CAACS,IAAI,IAAI,SAAS;IAC7CC,OAAO,EAAEV,qBAAqB,CAACU,OAAO;IACtCT;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["ClaimFormat","filterAndMapSdJwtKeys","getCredentialForDisplay","asRecord","value","Array","isArray","flattenMdocDisclosedPayload","Object","fromEntries","values","flatMap","entry","entries","getDcqlClaimFormat","record","type","MsoMdoc","SdJwtDc","firstCredential","claimFormat","getDcqlDisclosedPayload","validCredential","output","claims","valid_claim_sets","visibleProperties","formatDcqlClaimPath","path","filter","item","join","getDcqlRequestedAttributes","credentialQuery","_credentialQuery$clai2","format","_credentialQuery$clai","map","claim","namespace","claim_name","getDcqlCredentialName","_credentialQuery$meta","meta","doctype_value","id","_credentialQuery$meta2","vct_values","replace","formatDcqlCredentialsForRequest","queryResult","credentialSets","credential_sets","required","options","credentials","credential","matching_options","can_be_satisfied","undefined","credentialSet","_credentialSet$matchi","credentialIds","credentialId","find","Error","match","credential_matches","validCredentials","success","from","valid_credentials","length","inputDescriptorId","name","purpose","description","isSatisfied","credentialName","requestedAttributes","JwtVc","display","metadata","disclosedPayload","issuerName","issuer","keys","backgroundColor","textColor","backgroundImage","areAllSatisfied","every","formatDifPexCredentialsForRequest","credentialsForRequest","requirements","requirement","submissionEntry","submission","verifiableCredentials","verifiableCredential","attributes","credentialRecord","formatOpenIdProofRequest","presentationExchange","dcql"],"sourceRoot":"../../../../src","sources":["modules/openid/displayProof.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,49 @@
1
+ import { StyleSheet, View, ScrollView } from 'react-native';
2
+ import OpenIDProofPresentationFooter from './components/OpenIDProofRequestFooter';
3
+ import OpenIDProofRequestHeader from './components/OpenIDProofRequestHeader';
4
+ import OpenIDProofRequestBody from './components/OpenIDProofRequestBody';
5
+ const OpenIdProofRequestDisplay = ({
6
+ buttonsVisible,
7
+ credential,
8
+ credentialsRequested,
9
+ onPressAltCredChange,
10
+ onPressAccept,
11
+ onPressDecline,
12
+ onPressDismiss,
13
+ selectedCredentialsSubmission,
14
+ submission,
15
+ verifierName
16
+ }) => {
17
+ const styles = StyleSheet.create({
18
+ container: {
19
+ flexGrow: 1,
20
+ justifyContent: 'space-between'
21
+ }
22
+ });
23
+ if (!credential) {
24
+ return null;
25
+ }
26
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ScrollView, null, /*#__PURE__*/React.createElement(View, {
27
+ style: styles.container
28
+ }, /*#__PURE__*/React.createElement(OpenIDProofRequestHeader, {
29
+ selectedCredentialsSubmission: selectedCredentialsSubmission,
30
+ verifierName: verifierName,
31
+ reason: (submission === null || submission === void 0 ? void 0 : submission.purpose) ?? ''
32
+ }), /*#__PURE__*/React.createElement(OpenIDProofRequestBody, {
33
+ credentialsRequested: credentialsRequested,
34
+ onPressAltCredChange: onPressAltCredChange,
35
+ selectedCredentialsSubmission: selectedCredentialsSubmission,
36
+ submission: submission,
37
+ verifierName: verifierName
38
+ }))), /*#__PURE__*/React.createElement(OpenIDProofPresentationFooter, {
39
+ buttonsVisible: buttonsVisible,
40
+ credential: credential,
41
+ onPressAccept: onPressAccept,
42
+ onPressDecline: onPressDecline,
43
+ onPressDismiss: onPressDismiss,
44
+ selectedCredentialsSubmission: selectedCredentialsSubmission,
45
+ submission: submission
46
+ }));
47
+ };
48
+ export default OpenIdProofRequestDisplay;
49
+ //# sourceMappingURL=OpenIDProofRequestDisplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["StyleSheet","View","ScrollView","OpenIDProofPresentationFooter","OpenIDProofRequestHeader","OpenIDProofRequestBody","OpenIdProofRequestDisplay","buttonsVisible","credential","credentialsRequested","onPressAltCredChange","onPressAccept","onPressDecline","onPressDismiss","selectedCredentialsSubmission","submission","verifierName","styles","create","container","flexGrow","justifyContent","React","createElement","Fragment","style","reason","purpose"],"sourceRoot":"../../../../../../src","sources":["modules/openid/features/OpenIDProofPresentation/OpenIDProofRequestDisplay.tsx"],"mappings":"AAAA,SAASA,UAAU,EAAEC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AAG3D,OAAOC,6BAA6B,MAAM,uCAAuC;AACjF,OAAOC,wBAAwB,MAAM,uCAAuC;AAC5E,OAAOC,sBAAsB,MAAM,qCAAqC;AAuBxE,MAAMC,yBAAmE,GAAGA,CAAC;EAC3EC,cAAc;EACdC,UAAU;EACVC,oBAAoB;EACpBC,oBAAoB;EACpBC,aAAa;EACbC,cAAc;EACdC,cAAc;EACdC,6BAA6B;EAC7BC,UAAU;EACVC;AACF,CAAC,KAAK;EAEJ,MAAMC,MAAM,GAAGjB,UAAU,CAACkB,MAAM,CAAC;IAC/BC,SAAS,EAAE;MACTC,QAAQ,EAAE,CAAC;MACXC,cAAc,EAAE;IAClB;EACF,CAAC,CAAC;EAEF,IAAI,CAACb,UAAU,EAAE;IACf,OAAO,IAAI;EACb;EAEA,oBACEc,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAE,QAAA,qBACEF,KAAA,CAAAC,aAAA,CAACrB,UAAU,qBACToB,KAAA,CAAAC,aAAA,CAACtB,IAAI;IAACwB,KAAK,EAAER,MAAM,CAACE;EAAU,gBAC5BG,KAAA,CAAAC,aAAA,CAACnB,wBAAwB;IAACU,6BAA6B,EAAEA,6BAA8B;IAACE,YAAY,EAAEA,YAAa;IAACU,MAAM,EAAE,CAAAX,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEY,OAAO,KAAI;EAAG,CAAC,CAAC,eACxJL,KAAA,CAAAC,aAAA,CAAClB,sBAAsB;IACrBI,oBAAoB,EAAEA,oBAAqB;IAC3CC,oBAAoB,EAAEA,oBAAqB;IAC3CI,6BAA6B,EAAEA,6BAA8B;IAC7DC,UAAU,EAAEA,UAAW;IACvBC,YAAY,EAAEA;EAAa,CAC5B,CACG,CACI,CAAC,eACbM,KAAA,CAAAC,aAAA,CAACpB,6BAA6B;IAC5BI,cAAc,EAAEA,cAAe;IAC/BC,UAAU,EAAEA,UAAW;IACvBG,aAAa,EAAEA,aAAc;IAC7BC,cAAc,EAAEA,cAAe;IAC/BC,cAAc,EAAEA,cAAe;IAC/BC,6BAA6B,EAAEA,6BAA8B;IAC7DC,UAAU,EAAEA;EAAW,CACxB,CACD,CAAC;AAEP,CAAC;AAED,eAAeT,yBAAyB","ignoreList":[]}
@@ -0,0 +1,97 @@
1
+ import { Pressable, StyleSheet, View } from 'react-native';
2
+ import { useTranslation } from 'react-i18next';
3
+ import { useTheme } from '../../../../../contexts/theme';
4
+ import { buildFieldsFromW3cCredsCredential } from '../../../../../utils/oca';
5
+ import { getCredentialForDisplay } from '../../../display';
6
+ import CredentialCardGen from '../../../../../components/misc/CredentialCardGen';
7
+ import Record from '../../../../../components/record/Record';
8
+ import OpenIDUnsatisfiedProofRequest from '../../../components/OpenIDUnsatisfiedProofRequest';
9
+ import { ThemedText } from '../../../../../components/texts/ThemedText';
10
+ const OpenIDProofRequestBody = ({
11
+ credentialsRequested,
12
+ onPressAltCredChange,
13
+ selectedCredentialsSubmission,
14
+ submission,
15
+ verifierName
16
+ }) => {
17
+ const {
18
+ ColorPalette,
19
+ Spacing,
20
+ ListItems
21
+ } = useTheme();
22
+ const {
23
+ t
24
+ } = useTranslation();
25
+ const styles = StyleSheet.create({
26
+ cardContainer: {
27
+ paddingHorizontal: 12,
28
+ paddingBottom: 24
29
+ },
30
+ detailContainer: {
31
+ paddingHorizontal: 8,
32
+ paddingVertical: 16,
33
+ backgroundColor: ColorPalette.brand.secondaryBackground,
34
+ marginBottom: 20
35
+ },
36
+ cardGroupHeader: {
37
+ padding: 8,
38
+ marginVertical: 8
39
+ },
40
+ credentialsList: {
41
+ marginTop: 20,
42
+ justifyContent: 'space-between'
43
+ }
44
+ });
45
+ if (submission && !submission.areAllSatisfied) {
46
+ return /*#__PURE__*/React.createElement(OpenIDUnsatisfiedProofRequest, {
47
+ credentialName: submission === null || submission === void 0 ? void 0 : submission.name,
48
+ requestPurpose: submission === null || submission === void 0 ? void 0 : submission.purpose,
49
+ verifierName: verifierName
50
+ });
51
+ }
52
+ if (!selectedCredentialsSubmission || !submission) return;
53
+ return /*#__PURE__*/React.createElement(View, {
54
+ style: styles.credentialsList
55
+ }, Object.entries(selectedCredentialsSubmission).map(([inputDescriptorId, credentialSimplified]) => {
56
+ var _submission$entries;
57
+ //TODO: Support multiple credentials
58
+ const correspondingSubmission = (_submission$entries = submission.entries) === null || _submission$entries === void 0 ? void 0 : _submission$entries.find(s => s.inputDescriptorId === inputDescriptorId);
59
+ const isSatisfied = correspondingSubmission === null || correspondingSubmission === void 0 ? void 0 : correspondingSubmission.isSatisfied;
60
+ const credentialSubmission = correspondingSubmission === null || correspondingSubmission === void 0 ? void 0 : correspondingSubmission.credentials.find(s => s.id === credentialSimplified.id);
61
+ const requestedAttributes = credentialSubmission === null || credentialSubmission === void 0 ? void 0 : credentialSubmission.requestedAttributes;
62
+ const hasMultipleCreds = correspondingSubmission !== null && correspondingSubmission !== void 0 && correspondingSubmission.credentials ? correspondingSubmission.credentials.length > 1 : false;
63
+ const credential = credentialsRequested.find(c => c.id === (credentialSubmission === null || credentialSubmission === void 0 ? void 0 : credentialSubmission.id));
64
+ if (!credential || !correspondingSubmission) {
65
+ return null;
66
+ }
67
+ const credentialDisplay = getCredentialForDisplay(credential);
68
+ const fields = buildFieldsFromW3cCredsCredential(credentialDisplay, requestedAttributes);
69
+ return /*#__PURE__*/React.createElement(View, {
70
+ key: credentialSimplified.id
71
+ }, /*#__PURE__*/React.createElement(View, {
72
+ style: styles.cardContainer
73
+ }, isSatisfied && requestedAttributes && /*#__PURE__*/React.createElement(CredentialCardGen, {
74
+ credential: credential,
75
+ hasAltCredentials: hasMultipleCreds
76
+ }), hasMultipleCreds && /*#__PURE__*/React.createElement(View, {
77
+ style: {
78
+ flex: 1,
79
+ flexDirection: 'row-reverse',
80
+ paddingTop: Spacing.sm
81
+ }
82
+ }, /*#__PURE__*/React.createElement(Pressable, {
83
+ onPress: () => onPressAltCredChange(correspondingSubmission.inputDescriptorId, credential.id)
84
+ }, /*#__PURE__*/React.createElement(ThemedText, {
85
+ style: ListItems.recordLink
86
+ }, t('ProofRequest.UseDifferentCard'))))), /*#__PURE__*/React.createElement(View, {
87
+ style: styles.detailContainer
88
+ }, /*#__PURE__*/React.createElement(Record, {
89
+ fields: fields,
90
+ hideFieldValues: true,
91
+ header: () => /*#__PURE__*/React.createElement(React.Fragment, null),
92
+ scrollEnabled: false
93
+ })));
94
+ }));
95
+ };
96
+ export default OpenIDProofRequestBody;
97
+ //# sourceMappingURL=OpenIDProofRequestBody.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Pressable","StyleSheet","View","useTranslation","useTheme","buildFieldsFromW3cCredsCredential","getCredentialForDisplay","CredentialCardGen","Record","OpenIDUnsatisfiedProofRequest","ThemedText","OpenIDProofRequestBody","credentialsRequested","onPressAltCredChange","selectedCredentialsSubmission","submission","verifierName","ColorPalette","Spacing","ListItems","t","styles","create","cardContainer","paddingHorizontal","paddingBottom","detailContainer","paddingVertical","backgroundColor","brand","secondaryBackground","marginBottom","cardGroupHeader","padding","marginVertical","credentialsList","marginTop","justifyContent","areAllSatisfied","React","createElement","credentialName","name","requestPurpose","purpose","style","Object","entries","map","inputDescriptorId","credentialSimplified","_submission$entries","correspondingSubmission","find","s","isSatisfied","credentialSubmission","credentials","id","requestedAttributes","hasMultipleCreds","length","credential","c","credentialDisplay","fields","key","hasAltCredentials","flex","flexDirection","paddingTop","sm","onPress","recordLink","hideFieldValues","header","Fragment","scrollEnabled"],"sourceRoot":"../../../../../../../src","sources":["modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestBody.tsx"],"mappings":"AAAA,SAASA,SAAS,EAAEC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC1D,SAASC,cAAc,QAAQ,eAAe;AAE9C,SAASC,QAAQ,QAAQ,+BAA+B;AACxD,SAASC,iCAAiC,QAAQ,0BAA0B;AAC5E,SAASC,uBAAuB,QAAQ,kBAAkB;AAC1D,OAAOC,iBAAiB,MAAM,kDAAkD;AAChF,OAAOC,MAAM,MAAM,yCAAyC;AAC5D,OAAOC,6BAA6B,MAAM,mDAAmD;AAI7F,SAASC,UAAU,QAAQ,4CAA4C;AAWvE,MAAMC,sBAA6D,GAAGA,CAAC;EACrEC,oBAAoB;EACpBC,oBAAoB;EACpBC,6BAA6B;EAC7BC,UAAU;EACVC;AACF,CAAC,KAAK;EAEJ,MAAM;IAAEC,YAAY;IAAEC,OAAO;IAAEC;EAAU,CAAC,GAAGf,QAAQ,CAAC,CAAC;EACrD,MAAM;IAAEgB;EAAE,CAAC,GAAGjB,cAAc,CAAC,CAAC;EAEhC,MAAMkB,MAAM,GAAGpB,UAAU,CAACqB,MAAM,CAAC;IAC/BC,aAAa,EAAE;MACbC,iBAAiB,EAAE,EAAE;MACrBC,aAAa,EAAE;IACjB,CAAC;IACDC,eAAe,EAAE;MACfF,iBAAiB,EAAE,CAAC;MACpBG,eAAe,EAAE,EAAE;MACnBC,eAAe,EAAEX,YAAY,CAACY,KAAK,CAACC,mBAAmB;MACvDC,YAAY,EAAE;IAChB,CAAC;IACDC,eAAe,EAAE;MACfC,OAAO,EAAE,CAAC;MACVC,cAAc,EAAE;IAClB,CAAC;IACDC,eAAe,EAAE;MACfC,SAAS,EAAE,EAAE;MACbC,cAAc,EAAE;IAClB;EACF,CAAC,CAAC;EAEF,IAAItB,UAAU,IAAI,CAACA,UAAU,CAACuB,eAAe,EAAE;IAC7C,oBACEC,KAAA,CAAAC,aAAA,CAAC/B,6BAA6B;MAC5BgC,cAAc,EAAE1B,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAE2B,IAAK;MACjCC,cAAc,EAAE5B,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAE6B,OAAQ;MACpC5B,YAAY,EAAEA;IAAa,CAC5B,CAAC;EAEN;EAEA,IAAI,CAACF,6BAA6B,IAAI,CAACC,UAAU,EAAE;EAEnD,oBACEwB,KAAA,CAAAC,aAAA,CAACtC,IAAI;IAAC2C,KAAK,EAAExB,MAAM,CAACc;EAAgB,GACjCW,MAAM,CAACC,OAAO,CAACjC,6BAA6B,CAAC,CAACkC,GAAG,CAAC,CAAC,CAACC,iBAAiB,EAAEC,oBAAoB,CAAC,KAAK;IAAA,IAAAC,mBAAA;IAChG;IACA,MAAMC,uBAAuB,IAAAD,mBAAA,GAAGpC,UAAU,CAACgC,OAAO,cAAAI,mBAAA,uBAAlBA,mBAAA,CAAoBE,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACL,iBAAiB,KAAKA,iBAAiB,CAAC;IAC1G,MAAMM,WAAW,GAAGH,uBAAuB,aAAvBA,uBAAuB,uBAAvBA,uBAAuB,CAAEG,WAAW;IACxD,MAAMC,oBAAoB,GAAGJ,uBAAuB,aAAvBA,uBAAuB,uBAAvBA,uBAAuB,CAAEK,WAAW,CAACJ,IAAI,CACnEC,CAAC,IAAKA,CAAC,CAACI,EAAE,KAAKR,oBAAoB,CAACQ,EACvC,CAAC;IACD,MAAMC,mBAAmB,GAAGH,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAEG,mBAAmB;IACrE,MAAMC,gBAAgB,GAAGR,uBAAuB,aAAvBA,uBAAuB,eAAvBA,uBAAuB,CAAEK,WAAW,GAAGL,uBAAuB,CAACK,WAAW,CAACI,MAAM,GAAG,CAAC,GAAG,KAAK;IAGtH,MAAMC,UAAU,GAAGlD,oBAAoB,CAACyC,IAAI,CAAEU,CAAC,IAAKA,CAAC,CAACL,EAAE,MAAKF,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAEE,EAAE,EAAC;IAEtF,IAAI,CAACI,UAAU,IAAI,CAACV,uBAAuB,EAAE;MAC3C,OAAO,IAAI;IACb;IAEA,MAAMY,iBAAiB,GAAG1D,uBAAuB,CAACwD,UAAU,CAAC;IAC7D,MAAMG,MAAM,GAAG5D,iCAAiC,CAAC2D,iBAAiB,EAAEL,mBAAmB,CAAC;IAExF,oBACEpB,KAAA,CAAAC,aAAA,CAACtC,IAAI;MAACgE,GAAG,EAAEhB,oBAAoB,CAACQ;IAAG,gBACjCnB,KAAA,CAAAC,aAAA,CAACtC,IAAI;MAAC2C,KAAK,EAAExB,MAAM,CAACE;IAAc,GAC/BgC,WAAW,IAAII,mBAAmB,iBACjCpB,KAAA,CAAAC,aAAA,CAACjC,iBAAiB;MAChBuD,UAAU,EAAEA,UAAW;MACvBK,iBAAiB,EAAEP;IAAiB,CACrC,CAAC,EAEHA,gBAAgB,iBAAIrB,KAAA,CAAAC,aAAA,CAACtC,IAAI;MAAC2C,KAAK,EAAE;QAAEuB,IAAI,EAAE,CAAC;QAAEC,aAAa,EAAE,aAAa;QAAEC,UAAU,EAAEpD,OAAO,CAACqD;MAAG;IAAE,gBAClGhC,KAAA,CAAAC,aAAA,CAACxC,SAAS;MAACwE,OAAO,EAAEA,CAAA,KAAM3D,oBAAoB,CAACuC,uBAAuB,CAACH,iBAAiB,EAAEa,UAAU,CAACJ,EAAE;IAAE,gBACvGnB,KAAA,CAAAC,aAAA,CAAC9B,UAAU;MAACmC,KAAK,EAAE1B,SAAS,CAACsD;IAAW,GACrCrD,CAAC,CAAC,+BAA+B,CACxB,CACH,CACP,CACF,CAAC,eACPmB,KAAA,CAAAC,aAAA,CAACtC,IAAI;MAAC2C,KAAK,EAAExB,MAAM,CAACK;IAAgB,gBAClCa,KAAA,CAAAC,aAAA,CAAChC,MAAM;MAACyD,MAAM,EAAEA,MAAO;MAACS,eAAe;MAACC,MAAM,EAAEA,CAAA,kBAAMpC,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAqC,QAAA,MAAI,CAAE;MAACC,aAAa,EAAE;IAAM,CAAE,CAChF,CACF,CAAC;EAEX,CAAC,CACG,CAAC;AAEX,CAAC;AAED,eAAelE,sBAAsB","ignoreList":[]}
@@ -0,0 +1,80 @@
1
+ import { StyleSheet, View } from 'react-native';
2
+ import { useTranslation } from 'react-i18next';
3
+ import { useTheme } from '../../../../../contexts/theme';
4
+ import Button, { ButtonType } from '../../../../../components/buttons/Button';
5
+ import { testIdWithKey } from '../../../../../utils/testable';
6
+ const OpenIDProofPresentationFooter = ({
7
+ buttonsVisible,
8
+ credential,
9
+ onPressAccept,
10
+ onPressDecline,
11
+ onPressDismiss,
12
+ selectedCredentialsSubmission,
13
+ submission
14
+ }) => {
15
+ const {
16
+ ColorPalette,
17
+ Spacing
18
+ } = useTheme();
19
+ const {
20
+ t
21
+ } = useTranslation();
22
+ const styles = StyleSheet.create({
23
+ footerButton: {
24
+ paddingVertical: 10
25
+ },
26
+ footerContainer: {
27
+ paddingHorizontal: 25,
28
+ paddingVertical: 16,
29
+ paddingBottom: 26,
30
+ backgroundColor: ColorPalette.brand.secondaryBackground
31
+ }
32
+ });
33
+ if (!credential) {
34
+ return null;
35
+ }
36
+ if (submission && !submission.areAllSatisfied) {
37
+ return /*#__PURE__*/React.createElement(View, {
38
+ style: styles.footerContainer
39
+ }, /*#__PURE__*/React.createElement(View, {
40
+ style: styles.footerButton
41
+ }, /*#__PURE__*/React.createElement(Button, {
42
+ title: t('Global.Dismiss'),
43
+ accessibilityLabel: t('Global.Dismiss'),
44
+ testID: testIdWithKey('DismissCredentialOffer'),
45
+ buttonType: ButtonType.Primary,
46
+ onPress: onPressDismiss,
47
+ disabled: !buttonsVisible
48
+ })));
49
+ }
50
+ return /*#__PURE__*/React.createElement(View, {
51
+ style: styles.footerContainer
52
+ }, selectedCredentialsSubmission && Object.keys(selectedCredentialsSubmission).length > 0 ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(View, {
53
+ style: {
54
+ marginBottom: Spacing.sm
55
+ }
56
+ }, /*#__PURE__*/React.createElement(Button, {
57
+ title: t('Global.Send'),
58
+ accessibilityLabel: t('Global.Send'),
59
+ testID: testIdWithKey('AcceptCredentialOffer'),
60
+ buttonType: ButtonType.Primary,
61
+ onPress: onPressAccept,
62
+ disabled: !buttonsVisible
63
+ })), /*#__PURE__*/React.createElement(Button, {
64
+ title: t('Global.Decline'),
65
+ accessibilityLabel: t('Global.Decline'),
66
+ testID: testIdWithKey('DeclineCredentialOffer'),
67
+ buttonType: ButtonType.Secondary,
68
+ onPress: onPressDecline,
69
+ disabled: !buttonsVisible
70
+ })) : /*#__PURE__*/React.createElement(Button, {
71
+ title: t('Global.Dismiss'),
72
+ accessibilityLabel: t('Global.Dismiss'),
73
+ testID: testIdWithKey('DismissCredentialOffer'),
74
+ buttonType: ButtonType.Primary,
75
+ onPress: onPressDismiss,
76
+ disabled: !buttonsVisible
77
+ }));
78
+ };
79
+ export default OpenIDProofPresentationFooter;
80
+ //# sourceMappingURL=OpenIDProofRequestFooter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["StyleSheet","View","useTranslation","useTheme","Button","ButtonType","testIdWithKey","OpenIDProofPresentationFooter","buttonsVisible","credential","onPressAccept","onPressDecline","onPressDismiss","selectedCredentialsSubmission","submission","ColorPalette","Spacing","t","styles","create","footerButton","paddingVertical","footerContainer","paddingHorizontal","paddingBottom","backgroundColor","brand","secondaryBackground","areAllSatisfied","React","createElement","style","title","accessibilityLabel","testID","buttonType","Primary","onPress","disabled","Object","keys","length","Fragment","marginBottom","sm","Secondary"],"sourceRoot":"../../../../../../../src","sources":["modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestFooter.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ import { StyleSheet, Text, View } from 'react-native';
2
+ import { useTranslation } from 'react-i18next';
3
+ import { useTheme } from '../../../../../contexts/theme';
4
+ import { testIdWithKey } from '../../../../../utils/testable';
5
+ const OpenIDProofRequestHeader = ({
6
+ selectedCredentialsSubmission,
7
+ verifierName = '',
8
+ reason = ''
9
+ }) => {
10
+ const {
11
+ ListItems,
12
+ TextTheme,
13
+ Spacing
14
+ } = useTheme();
15
+ const {
16
+ t
17
+ } = useTranslation();
18
+ const styles = StyleSheet.create({
19
+ headerTextContainer: {
20
+ paddingVertical: Spacing.md,
21
+ paddingHorizontal: Spacing.sm
22
+ },
23
+ headerText: {
24
+ ...ListItems.recordAttributeText,
25
+ flexShrink: 1,
26
+ paddingBottom: Spacing.sm
27
+ }
28
+ });
29
+ if (!selectedCredentialsSubmission) return;
30
+ return /*#__PURE__*/React.createElement(View, {
31
+ style: styles.headerTextContainer
32
+ }, /*#__PURE__*/React.createElement(Text, {
33
+ style: styles.headerText,
34
+ testID: testIdWithKey('HeaderText')
35
+ }, /*#__PURE__*/React.createElement(Text, {
36
+ style: TextTheme.normal
37
+ }, t('ProofRequest.ReceiveProofTitle')), /*#__PURE__*/React.createElement(Text, {
38
+ style: TextTheme.title
39
+ }, " $", verifierName)), /*#__PURE__*/React.createElement(Text, {
40
+ style: TextTheme.normal
41
+ }, reason));
42
+ };
43
+ export default OpenIDProofRequestHeader;
44
+ //# sourceMappingURL=OpenIDProofRequestHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["StyleSheet","Text","View","useTranslation","useTheme","testIdWithKey","OpenIDProofRequestHeader","selectedCredentialsSubmission","verifierName","reason","ListItems","TextTheme","Spacing","t","styles","create","headerTextContainer","paddingVertical","md","paddingHorizontal","sm","headerText","recordAttributeText","flexShrink","paddingBottom","React","createElement","style","testID","normal","title"],"sourceRoot":"../../../../../../../src","sources":["modules/openid/features/OpenIDProofPresentation/components/OpenIDProofRequestHeader.tsx"],"mappings":"AAAA,SAASA,UAAU,EAAEC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AACrD,SAASC,cAAc,QAAQ,eAAe;AAE9C,SAASC,QAAQ,QAAQ,+BAA+B;AACxD,SAASC,aAAa,QAAQ,+BAA+B;AAS7D,MAAMC,wBAAiE,GAAGA,CAAC;EACzEC,6BAA6B;EAC7BC,YAAY,GAAG,EAAE;EACjBC,MAAM,GAAG;AACX,CAAC,KAAK;EAEJ,MAAM;IAAEC,SAAS;IAAEC,SAAS;IAAEC;EAAQ,CAAC,GAAGR,QAAQ,CAAC,CAAC;EACpD,MAAM;IAAES;EAAE,CAAC,GAAGV,cAAc,CAAC,CAAC;EAE5B,MAAMW,MAAM,GAAGd,UAAU,CAACe,MAAM,CAAC;IAC7BC,mBAAmB,EAAE;MACjBC,eAAe,EAAEL,OAAO,CAACM,EAAE;MAC3BC,iBAAiB,EAAEP,OAAO,CAACQ;IAC/B,CAAC;IACDC,UAAU,EAAE;MACR,GAAGX,SAAS,CAACY,mBAAmB;MAChCC,UAAU,EAAE,CAAC;MACbC,aAAa,EAAEZ,OAAO,CAACQ;IAC3B;EACJ,CAAC,CAAC;EAEF,IAAI,CAACb,6BAA6B,EAAE;EAEpC,oBACIkB,KAAA,CAAAC,aAAA,CAACxB,IAAI;IAACyB,KAAK,EAAEb,MAAM,CAACE;EAAoB,gBACtCS,KAAA,CAAAC,aAAA,CAACzB,IAAI;IAAC0B,KAAK,EAAEb,MAAM,CAACO,UAAW;IAACO,MAAM,EAAEvB,aAAa,CAAC,YAAY;EAAE,gBAChEoB,KAAA,CAAAC,aAAA,CAACzB,IAAI;IAAC0B,KAAK,EAAEhB,SAAS,CAACkB;EAAO,GAAEhB,CAAC,CAAC,gCAAgC,CAAQ,CAAC,eAC7EY,KAAA,CAAAC,aAAA,CAACzB,IAAI;IAAC0B,KAAK,EAAEhB,SAAS,CAACmB;EAAM,GAAC,IAAE,EAACtB,YAAmB,CAChD,CAAC,eACPiB,KAAA,CAAAC,aAAA,CAACzB,IAAI;IAAC0B,KAAK,EAAEhB,SAAS,CAACkB;EAAO,GAAEpB,MAAa,CACzC,CAAC;AAEf,CAAC;AAED,eAAeH,wBAAwB","ignoreList":[]}
@@ -9,13 +9,14 @@ import { refreshAndQueueReplacement } from './operations';
9
9
  export class RefreshOrchestrator {
10
10
  intervalOn = false; // interval enabled?
11
11
  runningOnce = false; // a run is in progress?
12
-
12
+ startupRunTriggered = false;
13
13
  recentlyIssued = new Map();
14
14
  constructor(logger, bridge, opts) {
15
15
  this.logger = logger;
16
16
  this.opts = {
17
17
  intervalMs: 15 * 60 * 1000,
18
18
  autoStart: true,
19
+ runOnStart: false,
19
20
  flowType: OpenIDCredentialRefreshFlowType.FullReplacement,
20
21
  onError: e => this.logger.error(String(e)),
21
22
  listRecords: async () => [],
@@ -25,13 +26,24 @@ export class RefreshOrchestrator {
25
26
  logger.info(`🔧 [RefreshOrchestrator] initialized -> ${JSON.stringify({
26
27
  intervalMs: this.opts.intervalMs,
27
28
  autoStart: this.opts.autoStart,
29
+ runOnStart: this.opts.runOnStart,
28
30
  flowType: this.opts.flowType
29
31
  })}`);
30
32
  bridge.onReady(agent => {
31
33
  this.agent = agent;
32
34
  this.logger.info('🪝 [RefreshOrchestrator] Agent ready');
35
+ if (this.opts.runOnStart && !this.startupRunTriggered) {
36
+ this.startupRunTriggered = true;
37
+ void this.runOnce('startup');
38
+ }
33
39
  if (this.opts.autoStart && this.opts.intervalMs) this.start();
34
40
  }, true);
41
+ bridge.onChange(agent => {
42
+ if (agent) return;
43
+ this.agent = undefined;
44
+ this.logger.info('🪝 [RefreshOrchestrator] Agent cleared');
45
+ this.stop();
46
+ });
35
47
  }
36
48
  configure(next) {
37
49
  const prev = {
@@ -49,6 +61,7 @@ export class RefreshOrchestrator {
49
61
  this.logger.info(`🔧 [RefreshOrchestrator] configure -> ${JSON.stringify({
50
62
  intervalMs: this.opts.intervalMs,
51
63
  autoStart: this.opts.autoStart,
64
+ runOnStart: this.opts.runOnStart,
52
65
  flowType: this.opts.flowType
53
66
  })}`);
54
67
  const nowIntervalMs = this.opts.intervalMs ?? null;
@@ -1 +1 @@
1
- {"version":3,"names":["OpenIDCredentialRefreshFlowType","RefreshStatus","credentialRegistry","verifyCredentialStatus","getRefreshCredentialMetadata","markOpenIDCredentialStatus","persistCredentialRecord","setRefreshCredentialMetadata","toOpenIDCredentialLite","refreshAndQueueReplacement","RefreshOrchestrator","intervalOn","runningOnce","recentlyIssued","Map","constructor","logger","bridge","opts","intervalMs","autoStart","flowType","FullReplacement","onError","e","error","String","listRecords","toLite","info","JSON","stringify","onReady","agent","start","configure","next","prev","agentReady","nowIntervalMs","nowAutoStart","stop","isRunning","timer","setInterval","runOnce","clearInterval","undefined","reason","_this$agent","warn","isInitialized","records","length","rec","refreshRecord","checkRecordStatus","_this$opts$onError","_this$opts","id","call","_this$opts$onError2","_this$opts2","setIntervalMs","resolveFull","get","shouldSkip","markRefreshing","clearRefreshing","clearExpired","upsert","markInvalid","setLastSweep","getState","status","now","Date","meta","lastCheckResult","lastCheckedAt","attemptCount","context","Valid","Invalid","toISOString","_this$opts$onError3","_this$opts3","blockAsSucceeded","Error","credential","agentContext","newRecord","record","msg","set","_this$opts$onError4","_this$opts4","err"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshOrchestrator.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["OpenIDCredentialRefreshFlowType","RefreshStatus","credentialRegistry","verifyCredentialStatus","getRefreshCredentialMetadata","markOpenIDCredentialStatus","persistCredentialRecord","setRefreshCredentialMetadata","toOpenIDCredentialLite","refreshAndQueueReplacement","RefreshOrchestrator","intervalOn","runningOnce","startupRunTriggered","recentlyIssued","Map","constructor","logger","bridge","opts","intervalMs","autoStart","runOnStart","flowType","FullReplacement","onError","e","error","String","listRecords","toLite","info","JSON","stringify","onReady","agent","runOnce","start","onChange","undefined","stop","configure","next","prev","agentReady","nowIntervalMs","nowAutoStart","isRunning","timer","setInterval","clearInterval","reason","_this$agent","warn","isInitialized","records","length","rec","refreshRecord","checkRecordStatus","_this$opts$onError","_this$opts","id","call","_this$opts$onError2","_this$opts2","setIntervalMs","resolveFull","get","shouldSkip","markRefreshing","clearRefreshing","clearExpired","upsert","markInvalid","setLastSweep","getState","status","now","Date","meta","lastCheckResult","lastCheckedAt","attemptCount","context","Valid","Invalid","toISOString","_this$opts$onError3","_this$opts3","blockAsSucceeded","Error","credential","agentContext","newRecord","record","msg","set","_this$opts$onError4","_this$opts4","err"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshOrchestrator.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["RefreshStatus","OpenIDCredentialRefreshFlowType","OpenIDCustomNotificationType"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/types.ts"],"mappings":"AAeA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;;AAMzB;AACA;AACA;AACA;AACA;AACA,WAAYC,+BAA+B,0BAA/BA,+BAA+B;EAA/BA,+BAA+B;EAA/BA,+BAA+B;EAAA,OAA/BA,+BAA+B;AAAA;AAkD3C,WAAYC,4BAA4B,0BAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAAA,OAA5BA,4BAA4B;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["RefreshStatus","OpenIDCredentialRefreshFlowType","OpenIDCustomNotificationType"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/types.ts"],"mappings":"AAeA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;;AAMzB;AACA;AACA;AACA;AACA;AACA,WAAYC,+BAA+B,0BAA/BA,+BAA+B;EAA/BA,+BAA+B;EAA/BA,+BAA+B;EAAA,OAA/BA,+BAA+B;AAAA;AAmD3C,WAAYC,4BAA4B,0BAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAAA,OAA5BA,4BAA4B;AAAA","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ import { ClaimFormat, CredentialMultiInstanceUseMode } from '@credo-ts/core';
1
2
  import { getHostNameFromUrl } from './utils/utils';
2
3
  import { Linking } from 'react-native';
3
4
  function handleTextResponse(text) {
@@ -80,6 +81,19 @@ export async function fetchInvitationDataUrl(dataUrl) {
80
81
  throw new Error(`[retrieve_invitation_error] Unable to retrieve invitation: ${error}`);
81
82
  }
82
83
  }
84
+
85
+ /**
86
+ * Entry point for the OpenID4VP flow after QR scanning / deeplink / paste handling
87
+ * has identified an OpenID authorization request.
88
+ *
89
+ * This is the resolve phase only:
90
+ * - accept the raw request string coming from scan/deeplink handling
91
+ * - ask Credo to resolve the request into PEX or DCQL details
92
+ * - return a record that the proof UI can render
93
+ *
94
+ * It does not send anything to the verifier. The later submit phase is handled by
95
+ * {@link shareProof}, after the user explicitly opts in to share credentials.
96
+ */
83
97
  export const getCredentialsForProofRequest = async ({
84
98
  agent,
85
99
  request
@@ -87,19 +101,14 @@ export const getCredentialsForProofRequest = async ({
87
101
  try {
88
102
  agent.config.logger.info(`$$Receiving openid authorization request ${request}`);
89
103
  const resolved = await agent.modules.openid4vc.holder.resolveOpenId4VpAuthorizationRequest(request);
90
- if (!resolved.presentationExchange) {
91
- throw new Error('No presentation exchange found in authorization request.');
104
+ if (!resolved.presentationExchange && !resolved.dcql) {
105
+ throw new Error('Unsupported authorization request: missing presentation exchange or dcql parameters.');
92
106
  }
93
107
  const requestRecord = {
94
- ...resolved.presentationExchange,
95
- authorizationRequestPayload: resolved.authorizationRequestPayload,
108
+ ...resolved,
96
109
  verifierHostName: resolved.authorizationRequestPayload.response_uri ? getHostNameFromUrl(String(resolved.authorizationRequestPayload.response_uri)) : undefined,
97
110
  createdAt: new Date(),
98
- type: 'OpenId4VPRequestRecord',
99
- verifier: {
100
- clientIdPrefix: resolved.verifier.clientIdPrefix,
101
- effectiveClientId: resolved.verifier.effectiveClientId
102
- }
111
+ type: 'OpenId4VPRequestRecord'
103
112
  };
104
113
  return requestRecord;
105
114
  } catch (err) {
@@ -107,38 +116,116 @@ export const getCredentialsForProofRequest = async ({
107
116
  throw err;
108
117
  }
109
118
  };
110
- export const shareProof = async ({
111
- agent,
112
- authorizationRequest,
113
- credentialsForRequest,
114
- selectedCredentials
115
- }) => {
119
+ const getPexCredentialsForRequest = (credentialsForRequest, selectedProofCredentials) => {
116
120
  if (!credentialsForRequest.areRequirementsSatisfied) {
117
121
  throw new Error('Requirements from proof request are not satisfied');
118
122
  }
119
123
 
120
- // Map all requirements and entries to a credential record. If a credential record for an
121
- // input descriptor has been provided in `selectedCredentials` we will use that. Otherwise
122
- // it will pick the first available credential.
123
- const credentials = Object.fromEntries(credentialsForRequest.requirements.flatMap(requirement => requirement.submissionEntry.map(entry => {
124
- const credentialId = selectedCredentials[entry.inputDescriptorId].id;
124
+ // `selectedProofCredentials` always represents the user's final UI choice.
125
+ // For PEX, the map key is the input descriptor id.
126
+ return Object.fromEntries(credentialsForRequest.requirements.flatMap(requirement => requirement.submissionEntry.map(entry => {
127
+ const credentialId = selectedProofCredentials[entry.inputDescriptorId].id;
125
128
  const credential = entry.verifiableCredentials.find(vc => vc.credentialRecord.id === credentialId) ?? entry.verifiableCredentials[0];
126
- return [entry.inputDescriptorId, [credential.credentialRecord]];
129
+ return [entry.inputDescriptorId, [credential]];
127
130
  })));
131
+ };
132
+ const getDcqlCredentialForRequest = validCredential => {
133
+ const useMode = CredentialMultiInstanceUseMode.NewOrFirst;
134
+ switch (validCredential.record.type) {
135
+ case 'MdocRecord':
136
+ return {
137
+ claimFormat: ClaimFormat.MsoMdoc,
138
+ credentialRecord: validCredential.record,
139
+ disclosedPayload: validCredential.claims.valid_claim_sets[0].output,
140
+ useMode
141
+ };
142
+ case 'SdJwtVcRecord':
143
+ return {
144
+ claimFormat: ClaimFormat.SdJwtDc,
145
+ credentialRecord: validCredential.record,
146
+ disclosedPayload: validCredential.claims.valid_claim_sets[0].output,
147
+ useMode
148
+ };
149
+ case 'W3cCredentialRecord':
150
+ return {
151
+ claimFormat: validCredential.record.firstCredential.claimFormat,
152
+ credentialRecord: validCredential.record,
153
+ disclosedPayload: validCredential.record.firstCredential.jsonCredential,
154
+ useMode
155
+ };
156
+ case 'W3cV2CredentialRecord':
157
+ return {
158
+ claimFormat: validCredential.record.firstCredential.claimFormat,
159
+ credentialRecord: validCredential.record,
160
+ disclosedPayload: validCredential.claims.valid_claim_sets[0].output,
161
+ useMode
162
+ };
163
+ }
164
+ };
165
+ const getDcqlCredentialsForRequest = (agent, queryResult, selectedProofCredentials) => {
166
+ if (!queryResult.can_be_satisfied) {
167
+ throw new Error('Cannot select the credentials for the dcql query presentation if the request cannot be satisfied');
168
+ }
169
+
170
+ // This is the same user-selection map as for PEX.
171
+ // For DCQL, the map key is the credential query id instead of the input descriptor id.
172
+ if (Object.keys(selectedProofCredentials).length === 0) {
173
+ return agent.openid4vc.holder.selectCredentialsForDcqlRequest(queryResult);
174
+ }
175
+ return Object.fromEntries(Object.entries(selectedProofCredentials).map(([credentialQueryId, selectedCredential]) => {
176
+ const match = queryResult.credential_matches[credentialQueryId];
177
+ if (!(match !== null && match !== void 0 && match.success)) {
178
+ throw new Error(`No matching DCQL credentials found for credential query id ${credentialQueryId}`);
179
+ }
180
+ const validCredentials = Array.from(match.valid_credentials);
181
+ const validCredential = validCredentials.find(credential => credential.record.id === selectedCredential.id);
182
+ if (!validCredential) {
183
+ throw new Error(`Could not find credential record ${selectedCredential.id} in valid credential matches for credential query id ${credentialQueryId}`);
184
+ }
185
+ return [credentialQueryId, [getDcqlCredentialForRequest(validCredential)]];
186
+ }));
187
+ };
188
+
189
+ /**
190
+ * Submit phase for OpenID4VP after the user has reviewed the request and chosen
191
+ * which credentials to share.
192
+ *
193
+ * This function takes:
194
+ * - the resolved request record created by {@link getCredentialsForProofRequest}
195
+ * - the user's final credential selections from the proof UI
196
+ *
197
+ * It then maps those selections into the Credo input expected for either
198
+ * presentation exchange or DCQL and submits the authorization response.
199
+ */
200
+ export const shareProof = async ({
201
+ agent,
202
+ requestRecord,
203
+ selectedProofCredentials
204
+ }) => {
128
205
  try {
206
+ var _result$serverRespons;
207
+ const presentationExchange = requestRecord.presentationExchange ? {
208
+ credentials: getPexCredentialsForRequest(requestRecord.presentationExchange.credentialsForRequest, selectedProofCredentials)
209
+ } : undefined;
210
+ const dcql = !presentationExchange && requestRecord.dcql ? {
211
+ credentials: getDcqlCredentialsForRequest(agent, requestRecord.dcql.queryResult, selectedProofCredentials)
212
+ } : undefined;
213
+ if (!presentationExchange && !dcql) {
214
+ throw new Error('Unsupported authorization request: missing presentation exchange or dcql parameters.');
215
+ }
129
216
  const result = await agent.openid4vc.holder.acceptOpenId4VpAuthorizationRequest({
130
- authorizationRequest: authorizationRequest,
131
- presentationExchange: {
132
- credentials
133
- }
217
+ authorizationRequestPayload: requestRecord.authorizationRequestPayload,
218
+ presentationExchange,
219
+ dcql,
220
+ origin: requestRecord.origin
134
221
  });
135
222
 
136
223
  // if redirect_uri is provided, open it in the browser
137
224
  // Even if the response returned an error, we must open this uri
138
- if (typeof result.serverResponse.body === 'object' && typeof result.serverResponse.body.redirect_uri === 'string') {
225
+ if (result.serverResponse && typeof result.serverResponse.body === 'object' && typeof ((_result$serverRespons = result.serverResponse.body) === null || _result$serverRespons === void 0 ? void 0 : _result$serverRespons.redirect_uri) === 'string') {
139
226
  await Linking.openURL(result.serverResponse.body.redirect_uri);
140
227
  }
141
- if (result.serverResponse.status < 200 || result.serverResponse.status > 299) {
228
+ if (result.serverResponse && (result.serverResponse.status < 200 || result.serverResponse.status > 299)) {
142
229
  throw new Error(`Error while accepting authorization request. ${result.serverResponse.body}`);
143
230
  }
144
231
  return result;