@learncard/react 2.9.29 → 2.10.1

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 (268) hide show
  1. package/dist/cjs/BadgeThumbnailImg-02df88f9.js +55 -0
  2. package/dist/cjs/BadgeThumbnailImg-02df88f9.js.map +1 -0
  3. package/dist/cjs/{BoostGenericCard-310cd633.js → BoostGenericCard-f2f66b1c.js} +6 -5
  4. package/dist/cjs/BoostGenericCard-f2f66b1c.js.map +1 -0
  5. package/dist/cjs/{BoostSmallCard-4e200046.js → BoostSmallCard-ece8f97e.js} +4 -3
  6. package/dist/cjs/BoostSmallCard-ece8f97e.js.map +1 -0
  7. package/dist/cjs/{CertificateDisplayCard-50eb6485.js → CertificateDisplayCard-ca865915.js} +51 -13
  8. package/dist/cjs/CertificateDisplayCard-ca865915.js.map +1 -0
  9. package/dist/cjs/{GenericCard-2b20ab4b.js → GenericCard-cdc6eede.js} +3 -2
  10. package/dist/cjs/GenericCard-cdc6eede.js.map +1 -0
  11. package/dist/cjs/{IDDisplayIcon-4b6ce62f.js → IDDisplayIcon-922a5fcf.js} +14 -14
  12. package/dist/cjs/IDDisplayIcon-922a5fcf.js.map +1 -0
  13. package/dist/cjs/{MeritBadgeDisplayCard-7535f16d.js → MeritBadgeDisplayCard-c2f39f1f.js} +52 -13
  14. package/dist/cjs/MeritBadgeDisplayCard-c2f39f1f.js.map +1 -0
  15. package/dist/cjs/{MeritBadgeSkillsCount-8307d493.js → MeritBadgeSkillsCount-1120813b.js} +2 -2
  16. package/dist/cjs/{MeritBadgeSkillsCount-8307d493.js.map → MeritBadgeSkillsCount-1120813b.js.map} +1 -1
  17. package/dist/cjs/{NotificationBoostCard-80dbf681.js → NotificationBoostCard-3ed9ec86.js} +2 -2
  18. package/dist/cjs/{NotificationBoostCard-80dbf681.js.map → NotificationBoostCard-3ed9ec86.js.map} +1 -1
  19. package/dist/cjs/{UserProfilePicture-22944d8f.js → UserProfilePicture-80675455.js} +8 -3
  20. package/dist/cjs/UserProfilePicture-80675455.js.map +1 -0
  21. package/dist/cjs/{VCCard-8b62170d.js → VCCard-f0735377.js} +3 -3
  22. package/dist/cjs/{VCCard-8b62170d.js.map → VCCard-f0735377.js.map} +1 -1
  23. package/dist/cjs/{VCDisplayBackFace-f220ad7d.js → VCDisplayBackFace-be7d1e31.js} +3 -3
  24. package/dist/cjs/{VCDisplayBackFace-f220ad7d.js.map → VCDisplayBackFace-be7d1e31.js.map} +1 -1
  25. package/dist/cjs/{VCDisplayCard-b3f9ae8d.js → VCDisplayCard-e50b4801.js} +4 -4
  26. package/dist/cjs/{VCDisplayCard-b3f9ae8d.js.map → VCDisplayCard-e50b4801.js.map} +1 -1
  27. package/dist/cjs/{VCDisplayCard2-b6bf45cf.js → VCDisplayCard2-e14da0aa.js} +94 -39
  28. package/dist/cjs/VCDisplayCard2-e14da0aa.js.map +1 -0
  29. package/dist/cjs/{VCVerificationPill-ae3e2fbb.js → VCVerificationPill-93260164.js} +2 -2
  30. package/dist/cjs/{VCVerificationPill-ae3e2fbb.js.map → VCVerificationPill-93260164.js.map} +1 -1
  31. package/dist/cjs/{VerifierStateBadgeAndText-d3d4e6a9.js → VerifierStateBadgeAndText-db71ebb2.js} +383 -610
  32. package/dist/cjs/VerifierStateBadgeAndText-db71ebb2.js.map +1 -0
  33. package/dist/cjs/{credential.helpers-4e3cf40c.js → credential.helpers-a11b14f1.js} +2 -2
  34. package/dist/cjs/{credential.helpers-4e3cf40c.js.map → credential.helpers-a11b14f1.js.map} +1 -1
  35. package/dist/cjs/index.js +187 -30
  36. package/dist/cjs/index.js.map +1 -1
  37. package/dist/cjs/index10.js +2 -27
  38. package/dist/cjs/index10.js.map +1 -1
  39. package/dist/cjs/index11.js +31 -2
  40. package/dist/cjs/index11.js.map +1 -1
  41. package/dist/cjs/index12.js +2 -46
  42. package/dist/cjs/index12.js.map +1 -1
  43. package/dist/cjs/index13.js +5 -175
  44. package/dist/cjs/index13.js.map +1 -1
  45. package/dist/cjs/index14.js +215 -1
  46. package/dist/cjs/index14.js.map +1 -1
  47. package/dist/cjs/index15.js +3 -21
  48. package/dist/cjs/index15.js.map +1 -1
  49. package/dist/cjs/index16.js +21 -3
  50. package/dist/cjs/index16.js.map +1 -1
  51. package/dist/cjs/index17.js +3 -5
  52. package/dist/cjs/index17.js.map +1 -1
  53. package/dist/cjs/index18.js +5 -20
  54. package/dist/cjs/index18.js.map +1 -1
  55. package/dist/cjs/index19.js +20 -3
  56. package/dist/cjs/index19.js.map +1 -1
  57. package/dist/cjs/index20.js +3 -2
  58. package/dist/cjs/index20.js.map +1 -1
  59. package/dist/cjs/index21.js +2 -28
  60. package/dist/cjs/index21.js.map +1 -1
  61. package/dist/cjs/index22.js +28 -3
  62. package/dist/cjs/index22.js.map +1 -1
  63. package/dist/cjs/index23.js +3 -10
  64. package/dist/cjs/index23.js.map +1 -1
  65. package/dist/cjs/index24.js +5 -7
  66. package/dist/cjs/index24.js.map +1 -1
  67. package/dist/cjs/index25.js +9 -3
  68. package/dist/cjs/index25.js.map +1 -1
  69. package/dist/cjs/index26.js +3 -5
  70. package/dist/cjs/index26.js.map +1 -1
  71. package/dist/cjs/index27.js +8 -3
  72. package/dist/cjs/index27.js.map +1 -1
  73. package/dist/cjs/index28.js +3 -28
  74. package/dist/cjs/index28.js.map +1 -1
  75. package/dist/cjs/index29.js +4 -28
  76. package/dist/cjs/index29.js.map +1 -1
  77. package/dist/cjs/index3.js +0 -58
  78. package/dist/cjs/index3.js.map +1 -1
  79. package/dist/cjs/index30.js +52 -2
  80. package/dist/cjs/index30.js.map +1 -1
  81. package/dist/cjs/index31.js +2 -3
  82. package/dist/cjs/index31.js.map +1 -1
  83. package/dist/cjs/index32.js +3 -3
  84. package/dist/cjs/index33.js +3 -29
  85. package/dist/cjs/index33.js.map +1 -1
  86. package/dist/cjs/index34.js +29 -3
  87. package/dist/cjs/index34.js.map +1 -1
  88. package/dist/cjs/index35.js +3 -3
  89. package/dist/cjs/index36.js +3 -27
  90. package/dist/cjs/index36.js.map +1 -1
  91. package/dist/cjs/index37.js +27 -2
  92. package/dist/cjs/index37.js.map +1 -1
  93. package/dist/cjs/index38.js +2 -42
  94. package/dist/cjs/index38.js.map +1 -1
  95. package/dist/cjs/index39.js +34 -9
  96. package/dist/cjs/index39.js.map +1 -1
  97. package/dist/cjs/index4.js +11 -6
  98. package/dist/cjs/index4.js.map +1 -1
  99. package/dist/cjs/index40.js +9 -13
  100. package/dist/cjs/index40.js.map +1 -1
  101. package/dist/cjs/index41.js +15 -28
  102. package/dist/cjs/index41.js.map +1 -1
  103. package/dist/cjs/index42.js +37 -3
  104. package/dist/cjs/index42.js.map +1 -1
  105. package/dist/cjs/index43.js +3 -7
  106. package/dist/cjs/index43.js.map +1 -1
  107. package/dist/cjs/index44.js +4 -6
  108. package/dist/cjs/index44.js.map +1 -1
  109. package/dist/cjs/index45.js +6 -6
  110. package/dist/cjs/index46.js +15 -0
  111. package/dist/cjs/index46.js.map +1 -0
  112. package/dist/cjs/index5.js +51 -2
  113. package/dist/cjs/index5.js.map +1 -1
  114. package/dist/cjs/index6.js +2 -29
  115. package/dist/cjs/index6.js.map +1 -1
  116. package/dist/cjs/index7.js +27 -27
  117. package/dist/cjs/index8.js +4 -5
  118. package/dist/cjs/index8.js.map +1 -1
  119. package/dist/cjs/index9.js +28 -5
  120. package/dist/cjs/index9.js.map +1 -1
  121. package/dist/cjs/{types.esm-674d5934.js → types.esm-4d399274.js} +11 -4
  122. package/dist/cjs/types.esm-4d399274.js.map +1 -0
  123. package/dist/esm/BadgeThumbnailImg-7d436367.js +49 -0
  124. package/dist/esm/BadgeThumbnailImg-7d436367.js.map +1 -0
  125. package/dist/esm/{BoostGenericCard-956474fc.js → BoostGenericCard-fbf76c2c.js} +6 -5
  126. package/dist/esm/BoostGenericCard-fbf76c2c.js.map +1 -0
  127. package/dist/esm/{BoostSmallCard-6d63f0b3.js → BoostSmallCard-a73b6800.js} +4 -3
  128. package/dist/esm/BoostSmallCard-a73b6800.js.map +1 -0
  129. package/dist/esm/{CertificateDisplayCard-fdc1ea6c.js → CertificateDisplayCard-8f3f43b4.js} +51 -13
  130. package/dist/esm/CertificateDisplayCard-8f3f43b4.js.map +1 -0
  131. package/dist/esm/{GenericCard-24648e62.js → GenericCard-a469f2f0.js} +3 -2
  132. package/dist/esm/GenericCard-a469f2f0.js.map +1 -0
  133. package/dist/esm/{IDDisplayIcon-d87174fd.js → IDDisplayIcon-f6993140.js} +14 -14
  134. package/dist/esm/IDDisplayIcon-f6993140.js.map +1 -0
  135. package/dist/esm/{MeritBadgeDisplayCard-4c768f06.js → MeritBadgeDisplayCard-1b080902.js} +52 -13
  136. package/dist/esm/MeritBadgeDisplayCard-1b080902.js.map +1 -0
  137. package/dist/esm/{MeritBadgeSkillsCount-e906d83f.js → MeritBadgeSkillsCount-7871d74f.js} +2 -2
  138. package/dist/esm/{MeritBadgeSkillsCount-e906d83f.js.map → MeritBadgeSkillsCount-7871d74f.js.map} +1 -1
  139. package/dist/esm/{NotificationBoostCard-fdfa0cf4.js → NotificationBoostCard-cfebc09e.js} +2 -2
  140. package/dist/esm/{NotificationBoostCard-fdfa0cf4.js.map → NotificationBoostCard-cfebc09e.js.map} +1 -1
  141. package/dist/esm/{UserProfilePicture-7e131f5d.js → UserProfilePicture-50c34186.js} +8 -3
  142. package/dist/esm/UserProfilePicture-50c34186.js.map +1 -0
  143. package/dist/esm/{VCCard-6c25c2d5.js → VCCard-dcf5ef3d.js} +3 -3
  144. package/dist/esm/{VCCard-6c25c2d5.js.map → VCCard-dcf5ef3d.js.map} +1 -1
  145. package/dist/esm/{VCDisplayBackFace-ce80f06d.js → VCDisplayBackFace-fbb3235f.js} +3 -3
  146. package/dist/esm/{VCDisplayBackFace-ce80f06d.js.map → VCDisplayBackFace-fbb3235f.js.map} +1 -1
  147. package/dist/esm/{VCDisplayCard-a40c4c7a.js → VCDisplayCard-8463d18d.js} +4 -4
  148. package/dist/esm/{VCDisplayCard-a40c4c7a.js.map → VCDisplayCard-8463d18d.js.map} +1 -1
  149. package/dist/esm/{VCDisplayCard2-f0bf0f87.js → VCDisplayCard2-5003e0c8.js} +93 -38
  150. package/dist/esm/VCDisplayCard2-5003e0c8.js.map +1 -0
  151. package/dist/esm/{VCVerificationPill-8f82b17c.js → VCVerificationPill-a412a211.js} +2 -2
  152. package/dist/esm/{VCVerificationPill-8f82b17c.js.map → VCVerificationPill-a412a211.js.map} +1 -1
  153. package/dist/esm/{VerifierStateBadgeAndText-2bddbc91.js → VerifierStateBadgeAndText-f878973e.js} +380 -612
  154. package/dist/esm/VerifierStateBadgeAndText-f878973e.js.map +1 -0
  155. package/dist/esm/{credential.helpers-bd29e893.js → credential.helpers-108b5fb6.js} +2 -2
  156. package/dist/esm/{credential.helpers-bd29e893.js.map → credential.helpers-108b5fb6.js.map} +1 -1
  157. package/dist/esm/index.js +177 -29
  158. package/dist/esm/index.js.map +1 -1
  159. package/dist/esm/index10.js +1 -26
  160. package/dist/esm/index10.js.map +1 -1
  161. package/dist/esm/index11.js +30 -1
  162. package/dist/esm/index11.js.map +1 -1
  163. package/dist/esm/index12.js +1 -45
  164. package/dist/esm/index12.js.map +1 -1
  165. package/dist/esm/index13.js +5 -94
  166. package/dist/esm/index13.js.map +1 -1
  167. package/dist/esm/index14.js +135 -1
  168. package/dist/esm/index14.js.map +1 -1
  169. package/dist/esm/index15.js +2 -19
  170. package/dist/esm/index15.js.map +1 -1
  171. package/dist/esm/index16.js +19 -2
  172. package/dist/esm/index16.js.map +1 -1
  173. package/dist/esm/index17.js +2 -4
  174. package/dist/esm/index17.js.map +1 -1
  175. package/dist/esm/index18.js +4 -19
  176. package/dist/esm/index18.js.map +1 -1
  177. package/dist/esm/index19.js +19 -2
  178. package/dist/esm/index19.js.map +1 -1
  179. package/dist/esm/index20.js +2 -1
  180. package/dist/esm/index20.js.map +1 -1
  181. package/dist/esm/index21.js +1 -24
  182. package/dist/esm/index21.js.map +1 -1
  183. package/dist/esm/index22.js +24 -2
  184. package/dist/esm/index22.js.map +1 -1
  185. package/dist/esm/index23.js +2 -8
  186. package/dist/esm/index23.js.map +1 -1
  187. package/dist/esm/index24.js +3 -6
  188. package/dist/esm/index24.js.map +1 -1
  189. package/dist/esm/index25.js +8 -2
  190. package/dist/esm/index25.js.map +1 -1
  191. package/dist/esm/index26.js +2 -3
  192. package/dist/esm/index26.js.map +1 -1
  193. package/dist/esm/index27.js +6 -2
  194. package/dist/esm/index27.js.map +1 -1
  195. package/dist/esm/index28.js +2 -26
  196. package/dist/esm/index28.js.map +1 -1
  197. package/dist/esm/index29.js +2 -23
  198. package/dist/esm/index29.js.map +1 -1
  199. package/dist/esm/index3.js +0 -53
  200. package/dist/esm/index3.js.map +1 -1
  201. package/dist/esm/index30.js +47 -1
  202. package/dist/esm/index30.js.map +1 -1
  203. package/dist/esm/index31.js +1 -1
  204. package/dist/esm/index32.js +1 -2
  205. package/dist/esm/index32.js.map +1 -1
  206. package/dist/esm/index33.js +2 -28
  207. package/dist/esm/index33.js.map +1 -1
  208. package/dist/esm/index34.js +28 -2
  209. package/dist/esm/index34.js.map +1 -1
  210. package/dist/esm/index35.js +2 -2
  211. package/dist/esm/index36.js +2 -9
  212. package/dist/esm/index36.js.map +1 -1
  213. package/dist/esm/index37.js +9 -1
  214. package/dist/esm/index37.js.map +1 -1
  215. package/dist/esm/index38.js +1 -41
  216. package/dist/esm/index38.js.map +1 -1
  217. package/dist/esm/index39.js +33 -8
  218. package/dist/esm/index39.js.map +1 -1
  219. package/dist/esm/index4.js +10 -5
  220. package/dist/esm/index4.js.map +1 -1
  221. package/dist/esm/index40.js +8 -12
  222. package/dist/esm/index40.js.map +1 -1
  223. package/dist/esm/index41.js +14 -24
  224. package/dist/esm/index41.js.map +1 -1
  225. package/dist/esm/index42.js +29 -3
  226. package/dist/esm/index42.js.map +1 -1
  227. package/dist/esm/index43.js +3 -2
  228. package/dist/esm/index43.js.map +1 -1
  229. package/dist/esm/index44.js +3 -3
  230. package/dist/esm/index45.js +3 -5
  231. package/dist/esm/index45.js.map +1 -1
  232. package/dist/esm/index46.js +7 -0
  233. package/dist/esm/index46.js.map +1 -0
  234. package/dist/esm/index5.js +50 -1
  235. package/dist/esm/index5.js.map +1 -1
  236. package/dist/esm/index6.js +1 -23
  237. package/dist/esm/index6.js.map +1 -1
  238. package/dist/esm/index7.js +22 -26
  239. package/dist/esm/index7.js.map +1 -1
  240. package/dist/esm/index8.js +3 -3
  241. package/dist/esm/index9.js +26 -4
  242. package/dist/esm/index9.js.map +1 -1
  243. package/dist/esm/{types.esm-e2b75956.js → types.esm-aa0345d0.js} +11 -4
  244. package/dist/esm/types.esm-aa0345d0.js.map +1 -0
  245. package/dist/index.d.ts +103 -16
  246. package/dist/main.css +1 -1
  247. package/dist/main.js +1 -1
  248. package/package.json +9 -13
  249. package/dist/cjs/BoostGenericCard-310cd633.js.map +0 -1
  250. package/dist/cjs/BoostSmallCard-4e200046.js.map +0 -1
  251. package/dist/cjs/CertificateDisplayCard-50eb6485.js.map +0 -1
  252. package/dist/cjs/GenericCard-2b20ab4b.js.map +0 -1
  253. package/dist/cjs/IDDisplayIcon-4b6ce62f.js.map +0 -1
  254. package/dist/cjs/MeritBadgeDisplayCard-7535f16d.js.map +0 -1
  255. package/dist/cjs/UserProfilePicture-22944d8f.js.map +0 -1
  256. package/dist/cjs/VCDisplayCard2-b6bf45cf.js.map +0 -1
  257. package/dist/cjs/VerifierStateBadgeAndText-d3d4e6a9.js.map +0 -1
  258. package/dist/cjs/types.esm-674d5934.js.map +0 -1
  259. package/dist/esm/BoostGenericCard-956474fc.js.map +0 -1
  260. package/dist/esm/BoostSmallCard-6d63f0b3.js.map +0 -1
  261. package/dist/esm/CertificateDisplayCard-fdc1ea6c.js.map +0 -1
  262. package/dist/esm/GenericCard-24648e62.js.map +0 -1
  263. package/dist/esm/IDDisplayIcon-d87174fd.js.map +0 -1
  264. package/dist/esm/MeritBadgeDisplayCard-4c768f06.js.map +0 -1
  265. package/dist/esm/UserProfilePicture-7e131f5d.js.map +0 -1
  266. package/dist/esm/VCDisplayCard2-f0bf0f87.js.map +0 -1
  267. package/dist/esm/VerifierStateBadgeAndText-2bddbc91.js.map +0 -1
  268. package/dist/esm/types.esm-e2b75956.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"VCDisplayCard-a40c4c7a.js","sources":["../../src/components/VCDisplayFrontFace/VCDisplayFrontFace.tsx","../../src/components/VCDisplayCard/VCDisplayCard.tsx"],"sourcesContent":["import React from 'react';\nimport FatArrow from '../../assets/images/icon.green.fat-arrow.png';\nimport UserProfilePicture from '../UserProfilePicture/UserProfilePicture';\nimport { VCVerificationCheckWithText } from '../VCVerificationCheck/VCVerificationCheck';\nimport { getImageFromProfile, getNameFromProfile } from '../../helpers/credential.helpers';\n\nimport { VCDisplayCardProps } from '../../types';\n\nconst VCDisplayFrontFace: React.FC<VCDisplayCardProps> = ({\n title,\n createdAt,\n issuer,\n issuee,\n subjectImageComponent,\n issuerImageComponent,\n hideProfileBubbles = false,\n credentialSubject,\n className = '',\n loading,\n handleClick,\n overrideCardImageComponent,\n overrideCardTitle,\n customHeaderComponent,\n}) => {\n const credentialAchievementImage =\n credentialSubject?.achievement?.image?.id || credentialSubject?.achievement?.image;\n const issuerName = getNameFromProfile(issuer ?? '');\n const issueeName = getNameFromProfile(issuee ?? '');\n const issuerImage = getImageFromProfile(issuer ?? '');\n const issueeImage = getImageFromProfile(issuee ?? '');\n\n let issueeImageEl: React.ReactNode | null = null;\n if (subjectImageComponent) {\n issueeImageEl = subjectImageComponent;\n } else {\n issueeImageEl = (\n <UserProfilePicture\n customContainerClass={`object-cover h-full w-full text-4xl ${\n !issueeImage ? 'pt-[8px]' : ''\n }`}\n user={{ image: issueeImage, name: issueeName }}\n alt=\"Issuee image\"\n />\n );\n }\n\n let issuerImageEl: React.ReactNode | null = null;\n\n if (issuerImageComponent) {\n issuerImageEl = issuerImageComponent;\n } else {\n issuerImageEl = (\n <UserProfilePicture\n customContainerClass={`object-cover h-full w-full text-4xl ${\n !issuerImage ? 'pt-[8px]' : ''\n }`}\n user={{ image: issuerImage, name: issuerName }}\n alt=\"Issuer image\"\n />\n );\n }\n\n const credImg = credentialAchievementImage ? (\n <img\n className=\"h-full w-full object-cover\"\n src={credentialAchievementImage ?? ''}\n alt=\"Credential Achievement Image\"\n />\n ) : (\n <></>\n );\n\n const renderCardImg = overrideCardImageComponent ? overrideCardImageComponent : credImg;\n const cardTitle = overrideCardTitle ? overrideCardTitle : title;\n\n return (\n <div\n className={`z-[9] vc-display-main-card-front flex overflow-hidden flex-col items-center justify-between relative max-w-[400px] h-[100%] min-h-[600px] p-7 rounded-3xl shadow-3xl bg-emerald-700 vc-display-card-full-container ${className}`}\n >\n <section className=\"bg-white rounded-bl-[50%] rounded-br-[50%] absolute top-0 w-[110%] h-[77%]\"></section>\n <section className=\"flex flex-col items-center justify-center z-10 text-center credential-thumb-img\">\n <section className=\"max-w-[100px] max-h-[100px]\">{renderCardImg}</section>\n\n <section className=\"flex flex-row w-full line-clamp-2\">\n <div className=\"flex flex-row w-full line-clamp-2 py-4 vc-flippy-card-title-front \">\n <h3\n className=\"vc-thumbnail-title w-full text-2xl line-clamp-2 tracking-wide leading-snug text-center vc-display-title text-gray-900 font-medium\"\n data-testid=\"vc-thumbnail-title\"\n >\n {cardTitle ?? ''}\n </h3>\n </div>\n\n {customHeaderComponent && customHeaderComponent}\n </section>\n\n <section className=\"flex flex-row items-center justify-center mt-2 w-full my-2 vc-card-issuer-thumbs\">\n {!hideProfileBubbles && (\n <>\n <div className=\"flex items-center justify-center h-16 w-16 shadow-3xl rounded-full overflow-hidden bg-white\">\n {issuerImageEl}\n </div>\n <img\n className=\"h-8 w-8 my-0 mx-4\"\n src={FatArrow ?? ''}\n alt=\"fat arrow icon\"\n />\n <div className=\"flex items-center justify-center h-16 w-16 shadow-3xl rounded-full overflow-hidden bg-white\">\n {issueeImageEl}\n </div>\n </>\n )}\n </section>\n\n <div className=\"w-full mt-2 vc-card-issued-to-info\">\n <p\n className=\"text-sm font-light text-center line-clamp-2 vc-display-issue-details text-gray-900\"\n data-testid=\"vc-thumbnail-createdAt\"\n >\n Issued to <span className=\"font-bold text-gray-900\">{issueeName}</span> on{' '}\n {createdAt ?? ''} by{' '}\n <span className=\"font-bold text-gray-900\"> {issuerName}</span>\n </p>\n </div>\n\n <button\n onClick={handleClick}\n className=\"cursor-alias bg-white my-3 border-0 text-indigo-500 font-semibold py-2 px-4 sl\"\n >\n <span className=\"flex justify-center\">\n <p className=\"flex items-center\">View Details</p>\n </span>\n </button>\n </section>\n\n <div className=\"flex items-center justify-center w-full\">\n <VCVerificationCheckWithText loading={loading} />\n </div>\n </div>\n );\n};\n\nexport default VCDisplayFrontFace;\n","import React, { useState } from 'react';\nimport { AchievementCredential, VC, Profile, VerificationItem } from '@learncard/types';\n\nimport FlippyCard from '../FlippyCard/FlippyCard';\nimport VCDisplayFrontFace from '../VCDisplayFrontFace/VCDisplayFrontFace';\nimport VCDisplayBackFace from '../VCDisplayBackFace/VCDisplayBackFace';\n\nimport { getInfoFromCredential } from '../../helpers/credential.helpers';\n\nconst FRONT_FACE = 'front';\nconst BACK_FACE = 'back';\n\nexport type VCDisplayCardPropsReal = {\n credential: VC | AchievementCredential;\n issueeOverride?: Profile;\n issuerOverride?: Profile;\n className?: string;\n hideProfileBubbles?: boolean;\n loading?: boolean;\n verification?: VerificationItem[];\n subjectImageComponent?: React.ReactNode;\n issuerImageComponent?: React.ReactNode;\n overrideDetailsComponent?: React.ReactNode;\n overrideCardTitle?: string;\n overrideCardImageComponent?: React.ReactNode;\n customHeaderComponent?: React.ReactNode;\n};\n\nexport const VCDisplayCard: React.FC<VCDisplayCardPropsReal> = ({\n credential,\n issueeOverride,\n issuerOverride,\n className = '',\n loading = false,\n verification = [],\n hideProfileBubbles = false,\n subjectImageComponent,\n issuerImageComponent,\n overrideDetailsComponent,\n overrideCardTitle,\n overrideCardImageComponent,\n customHeaderComponent,\n}) => {\n const [flipState, setFlipState] = useState(FRONT_FACE);\n const {\n title,\n createdAt,\n issuer: _issuer,\n issuee: _issuee,\n credentialSubject,\n } = getInfoFromCredential(credential);\n const issuee = issueeOverride || _issuee;\n const issuer = issuerOverride || _issuer;\n\n const handleFlip = () => {\n if (flipState === FRONT_FACE) {\n setFlipState(BACK_FACE);\n }\n if (flipState === BACK_FACE) {\n setFlipState(FRONT_FACE);\n }\n };\n\n return (\n <FlippyCard flipState={flipState}>\n <VCDisplayFrontFace\n title={title}\n credentialSubject={credentialSubject}\n customHeaderComponent={customHeaderComponent}\n issuer={issuer}\n issuee={issuee}\n subjectImageComponent={subjectImageComponent}\n issuerImageComponent={issuerImageComponent}\n overrideCardImageComponent={overrideCardImageComponent}\n overrideCardTitle={overrideCardTitle}\n hideProfileBubbles={hideProfileBubbles}\n createdAt={createdAt}\n className={className}\n loading={loading}\n handleClick={handleFlip}\n />\n <VCDisplayBackFace\n title={title}\n credentialSubject={credentialSubject}\n overrideDetailsComponent={overrideDetailsComponent}\n issuer={issuer}\n issuee={issuee}\n createdAt={createdAt}\n className={className}\n loading={loading}\n verification={verification}\n handleClick={handleFlip}\n />\n </FlippyCard>\n );\n};\n\nexport default VCDisplayCard;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VCDisplayCard-8463d18d.js","sources":["../../src/components/VCDisplayFrontFace/VCDisplayFrontFace.tsx","../../src/components/VCDisplayCard/VCDisplayCard.tsx"],"sourcesContent":["import React from 'react';\nimport FatArrow from '../../assets/images/icon.green.fat-arrow.png';\nimport UserProfilePicture from '../UserProfilePicture/UserProfilePicture';\nimport { VCVerificationCheckWithText } from '../VCVerificationCheck/VCVerificationCheck';\nimport { getImageFromProfile, getNameFromProfile } from '../../helpers/credential.helpers';\n\nimport { VCDisplayCardProps } from '../../types';\n\nconst VCDisplayFrontFace: React.FC<VCDisplayCardProps> = ({\n title,\n createdAt,\n issuer,\n issuee,\n subjectImageComponent,\n issuerImageComponent,\n hideProfileBubbles = false,\n credentialSubject,\n className = '',\n loading,\n handleClick,\n overrideCardImageComponent,\n overrideCardTitle,\n customHeaderComponent,\n}) => {\n const credentialAchievementImage =\n credentialSubject?.achievement?.image?.id || credentialSubject?.achievement?.image;\n const issuerName = getNameFromProfile(issuer ?? '');\n const issueeName = getNameFromProfile(issuee ?? '');\n const issuerImage = getImageFromProfile(issuer ?? '');\n const issueeImage = getImageFromProfile(issuee ?? '');\n\n let issueeImageEl: React.ReactNode | null = null;\n if (subjectImageComponent) {\n issueeImageEl = subjectImageComponent;\n } else {\n issueeImageEl = (\n <UserProfilePicture\n customContainerClass={`object-cover h-full w-full text-4xl ${\n !issueeImage ? 'pt-[8px]' : ''\n }`}\n user={{ image: issueeImage, name: issueeName }}\n alt=\"Issuee image\"\n />\n );\n }\n\n let issuerImageEl: React.ReactNode | null = null;\n\n if (issuerImageComponent) {\n issuerImageEl = issuerImageComponent;\n } else {\n issuerImageEl = (\n <UserProfilePicture\n customContainerClass={`object-cover h-full w-full text-4xl ${\n !issuerImage ? 'pt-[8px]' : ''\n }`}\n user={{ image: issuerImage, name: issuerName }}\n alt=\"Issuer image\"\n />\n );\n }\n\n const credImg = credentialAchievementImage ? (\n <img\n className=\"h-full w-full object-cover\"\n src={credentialAchievementImage ?? ''}\n alt=\"Credential Achievement Image\"\n />\n ) : (\n <></>\n );\n\n const renderCardImg = overrideCardImageComponent ? overrideCardImageComponent : credImg;\n const cardTitle = overrideCardTitle ? overrideCardTitle : title;\n\n return (\n <div\n className={`z-[9] vc-display-main-card-front flex overflow-hidden flex-col items-center justify-between relative max-w-[400px] h-[100%] min-h-[600px] p-7 rounded-3xl shadow-3xl bg-emerald-700 vc-display-card-full-container ${className}`}\n >\n <section className=\"bg-white rounded-bl-[50%] rounded-br-[50%] absolute top-0 w-[110%] h-[77%]\"></section>\n <section className=\"flex flex-col items-center justify-center z-10 text-center credential-thumb-img\">\n <section className=\"max-w-[100px] max-h-[100px]\">{renderCardImg}</section>\n\n <section className=\"flex flex-row w-full line-clamp-2\">\n <div className=\"flex flex-row w-full line-clamp-2 py-4 vc-flippy-card-title-front \">\n <h3\n className=\"vc-thumbnail-title w-full text-2xl line-clamp-2 tracking-wide leading-snug text-center vc-display-title text-gray-900 font-medium\"\n data-testid=\"vc-thumbnail-title\"\n >\n {cardTitle ?? ''}\n </h3>\n </div>\n\n {customHeaderComponent && customHeaderComponent}\n </section>\n\n <section className=\"flex flex-row items-center justify-center mt-2 w-full my-2 vc-card-issuer-thumbs\">\n {!hideProfileBubbles && (\n <>\n <div className=\"flex items-center justify-center h-16 w-16 shadow-3xl rounded-full overflow-hidden bg-white\">\n {issuerImageEl}\n </div>\n <img\n className=\"h-8 w-8 my-0 mx-4\"\n src={FatArrow ?? ''}\n alt=\"fat arrow icon\"\n />\n <div className=\"flex items-center justify-center h-16 w-16 shadow-3xl rounded-full overflow-hidden bg-white\">\n {issueeImageEl}\n </div>\n </>\n )}\n </section>\n\n <div className=\"w-full mt-2 vc-card-issued-to-info\">\n <p\n className=\"text-sm font-light text-center line-clamp-2 vc-display-issue-details text-gray-900\"\n data-testid=\"vc-thumbnail-createdAt\"\n >\n Issued to <span className=\"font-bold text-gray-900\">{issueeName}</span> on{' '}\n {createdAt ?? ''} by{' '}\n <span className=\"font-bold text-gray-900\"> {issuerName}</span>\n </p>\n </div>\n\n <button\n onClick={handleClick}\n className=\"cursor-alias bg-white my-3 border-0 text-indigo-500 font-semibold py-2 px-4 sl\"\n >\n <span className=\"flex justify-center\">\n <p className=\"flex items-center\">View Details</p>\n </span>\n </button>\n </section>\n\n <div className=\"flex items-center justify-center w-full\">\n <VCVerificationCheckWithText loading={loading} />\n </div>\n </div>\n );\n};\n\nexport default VCDisplayFrontFace;\n","import React, { useState } from 'react';\nimport { AchievementCredential, VC, Profile, VerificationItem } from '@learncard/types';\n\nimport FlippyCard from '../FlippyCard/FlippyCard';\nimport VCDisplayFrontFace from '../VCDisplayFrontFace/VCDisplayFrontFace';\nimport VCDisplayBackFace from '../VCDisplayBackFace/VCDisplayBackFace';\n\nimport { getInfoFromCredential } from '../../helpers/credential.helpers';\n\nconst FRONT_FACE = 'front';\nconst BACK_FACE = 'back';\n\nexport type VCDisplayCardPropsReal = {\n credential: VC | AchievementCredential;\n issueeOverride?: Profile;\n issuerOverride?: Profile;\n className?: string;\n hideProfileBubbles?: boolean;\n loading?: boolean;\n verification?: VerificationItem[];\n subjectImageComponent?: React.ReactNode;\n issuerImageComponent?: React.ReactNode;\n overrideDetailsComponent?: React.ReactNode;\n overrideCardTitle?: string;\n overrideCardImageComponent?: React.ReactNode;\n customHeaderComponent?: React.ReactNode;\n};\n\nexport const VCDisplayCard: React.FC<VCDisplayCardPropsReal> = ({\n credential,\n issueeOverride,\n issuerOverride,\n className = '',\n loading = false,\n verification = [],\n hideProfileBubbles = false,\n subjectImageComponent,\n issuerImageComponent,\n overrideDetailsComponent,\n overrideCardTitle,\n overrideCardImageComponent,\n customHeaderComponent,\n}) => {\n const [flipState, setFlipState] = useState(FRONT_FACE);\n const {\n title,\n createdAt,\n issuer: _issuer,\n issuee: _issuee,\n credentialSubject,\n } = getInfoFromCredential(credential);\n const issuee = issueeOverride || _issuee;\n const issuer = issuerOverride || _issuer;\n\n const handleFlip = () => {\n if (flipState === FRONT_FACE) {\n setFlipState(BACK_FACE);\n }\n if (flipState === BACK_FACE) {\n setFlipState(FRONT_FACE);\n }\n };\n\n return (\n <FlippyCard flipState={flipState}>\n <VCDisplayFrontFace\n title={title}\n credentialSubject={credentialSubject}\n customHeaderComponent={customHeaderComponent}\n issuer={issuer}\n issuee={issuee}\n subjectImageComponent={subjectImageComponent}\n issuerImageComponent={issuerImageComponent}\n overrideCardImageComponent={overrideCardImageComponent}\n overrideCardTitle={overrideCardTitle}\n hideProfileBubbles={hideProfileBubbles}\n createdAt={createdAt}\n className={className}\n loading={loading}\n handleClick={handleFlip}\n />\n <VCDisplayBackFace\n title={title}\n credentialSubject={credentialSubject}\n overrideDetailsComponent={overrideDetailsComponent}\n issuer={issuer}\n issuee={issuee}\n createdAt={createdAt}\n className={className}\n loading={loading}\n verification={verification}\n handleClick={handleFlip}\n />\n </FlippyCard>\n );\n};\n\nexport default VCDisplayCard;\n"],"names":[],"mappings":"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"}
@@ -1,17 +1,17 @@
1
1
  import React, { useRef, useEffect, useState, createContext, Component, Children, cloneElement, useLayoutEffect } from 'react';
2
2
  import { a as VCVerificationCheckWithSpinner } from './VCVerificationCheck-8b8b7a76.js';
3
- import { U as UserProfilePicture } from './UserProfilePicture-7e131f5d.js';
4
- import { a as getColorForVerificationStatus, j as format$1, h as getImageFromProfile, b as getInfoFromCredential, k as getCategoryColor, g as getTotalCountOfSkills, c as categorizeSkills } from './credential.helpers-bd29e893.js';
5
- import { g as getBaseUrl, b as VideoIcon, C as Camera, G as GenericDocumentIcon, L as LinkIcon, p as prettyBytes, c as capitalize, E as ExclamationPoint, A as AcuteCheckmark, I as InfoIcon, d as LeftArrow, e as SkillsBox, r as resolveProfileDisplay, i as isAppDidWeb, V as VERIFIER_STATES$1, a as VerifierStateBadgeAndText, P as PersonBadge, h as VerifiedBadge, U as UnknownVerifierBadge, j as RedFlag } from './VerifierStateBadgeAndText-2bddbc91.js';
3
+ import { U as UserProfilePicture } from './UserProfilePicture-50c34186.js';
4
+ import { a as getColorForVerificationStatus, j as format$1, h as getImageFromProfile, b as getInfoFromCredential, k as getCategoryColor, g as getTotalCountOfSkills, c as categorizeSkills } from './credential.helpers-108b5fb6.js';
5
+ import { d as getBaseUrl, e as VideoIcon, C as Camera, G as GenericDocumentIcon, L as LinkIcon, p as prettyBytes, c as capitalize, E as ExclamationPoint, A as AcuteCheckmark, I as InfoIcon, h as LeftArrow, j as SkillsBox, r as resolveProfileDisplay, l as isAppDidWeb, V as VERIFIER_STATES, m as VerifierStateBadgeAndText, P as PersonBadge, n as VerifiedBadge, U as UnknownVerifierBadge, o as RedFlag } from './VerifierStateBadgeAndText-f878973e.js';
6
6
  import './index-eae3ca64.js';
7
7
  import { L as Lightbox, X } from './Lightbox-f0338a0c.js';
8
- import { V as VerificationStatusEnum } from './types.esm-e2b75956.js';
9
- import { A as AlignmentsBox, b as CertificateDisplayCard } from './CertificateDisplayCard-fdc1ea6c.js';
8
+ import { V as VerificationStatusEnum } from './types.esm-aa0345d0.js';
9
+ import { A as AlignmentsBox, b as CertificateDisplayCard } from './CertificateDisplayCard-8f3f43b4.js';
10
10
  import { I as IDIcon, Q as QRCodeIcon, A as AwardRibbon } from './QRCodeIcon-8eef4f7c.js';
11
11
  import { a as LCCategoryEnum } from './index-28917993.js';
12
12
  import { P as PuzzlePiece } from './PuzzlePiece-a3d9cc62.js';
13
13
  import IDSleeve from './id-sleeve.png';
14
- import { a as MeritBadgeDisplayCard } from './MeritBadgeDisplayCard-4c768f06.js';
14
+ import { a as MeritBadgeDisplayCard } from './MeritBadgeDisplayCard-1b080902.js';
15
15
 
16
16
  const RoundedX = ({ className = "" }) => {
17
17
  return /* @__PURE__ */ React.createElement(
@@ -818,6 +818,34 @@ const VC2BackFace = ({
818
818
  ), alignment && /* @__PURE__ */ React.createElement(AlignmentsBox, { alignment, style: "boost" }), verificationItems && verificationItems.length > 0 && /* @__PURE__ */ React.createElement(VerificationsBox, { verificationItems })));
819
819
  };
820
820
 
821
+ const BadgeThumbnailPlaceholder = () => /* @__PURE__ */ React.createElement(
822
+ "svg",
823
+ {
824
+ viewBox: "0 0 24 24",
825
+ fill: "none",
826
+ xmlns: "http://www.w3.org/2000/svg",
827
+ className: "w-1/2 h-1/2 text-grayscale-400",
828
+ "aria-hidden": "true"
829
+ },
830
+ /* @__PURE__ */ React.createElement("circle", { cx: "12", cy: "9", r: "6", stroke: "currentColor", strokeWidth: "1.75" }),
831
+ /* @__PURE__ */ React.createElement(
832
+ "path",
833
+ {
834
+ d: "M8.5 14.5 7 22l5-3 5 3-1.5-7.5",
835
+ stroke: "currentColor",
836
+ strokeWidth: "1.75",
837
+ strokeLinecap: "round",
838
+ strokeLinejoin: "round"
839
+ }
840
+ ),
841
+ /* @__PURE__ */ React.createElement(
842
+ "path",
843
+ {
844
+ d: "M12 6.5 13 8.3l2 .3-1.4 1.4.3 2L12 11l-1.9.9.3-2L9 8.6l2-.3L12 6.5Z",
845
+ fill: "currentColor"
846
+ }
847
+ )
848
+ );
821
849
  const VC2FrontFaceInfo = ({
822
850
  credential,
823
851
  issuee,
@@ -831,10 +859,15 @@ const VC2FrontFaceInfo = ({
831
859
  customThumbComponent,
832
860
  knownDIDRegistry,
833
861
  customBodyContentSlot,
834
- unknownVerifierTitle
862
+ unknownVerifierTitle,
863
+ onVerifierClick
835
864
  }) => {
836
865
  const issuerImage = getImageFromProfile(issuer != null ? issuer : "");
837
866
  const issueeImage = getImageFromProfile(issuee != null ? issuee : "");
867
+ const [thumbErrored, setThumbErrored] = React.useState(false);
868
+ React.useEffect(() => {
869
+ setThumbErrored(false);
870
+ }, [imageUrl]);
838
871
  const issueeDisplay = resolveProfileDisplay(issuee, "");
839
872
  const issuerDisplay = resolveProfileDisplay(issuer, "");
840
873
  const { credentialSubject } = getInfoFromCredential(credential, "MMM dd, yyyy", {
@@ -884,31 +917,34 @@ const VC2FrontFaceInfo = ({
884
917
  const isAppIssuerDid = isAppDidWeb(issuerDid);
885
918
  let verifierState;
886
919
  if ((credentialSubject == null ? void 0 : credentialSubject.id) === issuerDid && issuerDid && issuerDid !== "did:example:123") {
887
- verifierState = VERIFIER_STATES$1.selfVerified;
920
+ verifierState = VERIFIER_STATES.selfVerified;
888
921
  } else if (unknownVerifierTitle) {
889
- verifierState = VERIFIER_STATES$1.trustedVerifier;
922
+ verifierState = VERIFIER_STATES.trustedVerifier;
890
923
  } else {
891
924
  if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "trusted") {
892
- verifierState = VERIFIER_STATES$1.trustedVerifier;
925
+ verifierState = VERIFIER_STATES.trustedVerifier;
893
926
  } else if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "untrusted") {
894
- verifierState = VERIFIER_STATES$1.untrustedVerifier;
927
+ verifierState = VERIFIER_STATES.untrustedVerifier;
895
928
  } else if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "unknown") {
896
- verifierState = isAppIssuerDid ? VERIFIER_STATES$1.appIssuer : VERIFIER_STATES$1.unknownVerifier;
929
+ verifierState = isAppIssuerDid ? VERIFIER_STATES.appIssuer : VERIFIER_STATES.unknownVerifier;
897
930
  } else {
898
- verifierState = isAppIssuerDid ? VERIFIER_STATES$1.appIssuer : VERIFIER_STATES$1.unknownVerifier;
931
+ verifierState = isAppIssuerDid ? VERIFIER_STATES.appIssuer : VERIFIER_STATES.unknownVerifier;
899
932
  }
900
933
  }
901
- return /* @__PURE__ */ React.createElement(v, { inverseFlipId: "card" }, /* @__PURE__ */ React.createElement("section", { className: "vc-front-face w-full px-[15px] flex flex-col items-center gap-[15px]" }, imageUrl && !customThumbComponent && /* @__PURE__ */ React.createElement(
934
+ return /* @__PURE__ */ React.createElement(v, { inverseFlipId: "card" }, /* @__PURE__ */ React.createElement("section", { className: "vc-front-face w-full px-[15px] flex flex-col items-center gap-[15px]" }, imageUrl && !customThumbComponent && (thumbErrored ? /* @__PURE__ */ React.createElement("div", { className: "vc-front-image h-[130px] w-[130px] rounded-[10px] bg-grayscale-100 flex items-center justify-center" }, /* @__PURE__ */ React.createElement(BadgeThumbnailPlaceholder, null)) : /* @__PURE__ */ React.createElement(
902
935
  "img",
903
936
  {
904
- className: "vc-front-image h-[130px] w-[130px] rounded-[10px]",
905
- src: imageUrl
937
+ className: "vc-front-image h-[130px] w-[130px] rounded-[10px] bg-white object-cover",
938
+ src: imageUrl,
939
+ alt: "credential thumbnail",
940
+ onError: () => setThumbErrored(true)
906
941
  }
907
- ), customThumbComponent && customThumbComponent, /* @__PURE__ */ React.createElement("div", { className: "vc-issue-info-box bg-white flex flex-col items-center gap-[5px] rounded-[20px] shadow-bottom px-[15px] py-[20px] w-full" }, customBodyCardComponent && customBodyCardComponent, !customBodyCardComponent && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("h3", { className: "flex flex-col text-center leading-[130%] w-full" }, !issueeDisplay.isMissing && issueeDisplay.isDidValue && /* @__PURE__ */ React.createElement("span", { className: "flex flex-wrap items-baseline justify-center gap-1 text-[17px] leading-normal font-[600] font-poppins max-w-full overflow-hidden text-ellipsis whitespace-nowrap" }, /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-900" }, "Digital ID:"), /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-500 underline" }, issueeDisplay.displayName)), !issueeDisplay.isMissing && !issueeDisplay.isDidValue && /* @__PURE__ */ React.createElement("span", { className: "font-poppins font-semibold text-[20px] leading-[130%] max-w-full overflow-hidden text-ellipsis whitespace-nowrap text-grayscale-900" }, issueeDisplay.displayName), subjectDID && !issueeDisplay.isDidValue && !issueeDisplay.isLCNetwork && /* @__PURE__ */ React.createElement("span", { className: "text-[12px] text-grayscale-500 leading-[18px] font-poppins font-normal m-0 p-0" }, subjectDID)), /* @__PURE__ */ React.createElement("div", { className: "relative" }, /* @__PURE__ */ React.createElement("div", { className: "vc-issuee-image h-[60px] w-[60px] rounded-full overflow-hidden" }, issueeImageEl), /* @__PURE__ */ React.createElement("div", { className: "vc-issuer-image h-[30px] w-[30px] rounded-full overflow-hidden absolute bottom-[-12px] right-[-12px]" }, issuerImageEl)), /* @__PURE__ */ React.createElement("div", { className: "flex flex-col gap-[13px]" }, /* @__PURE__ */ React.createElement("div", { className: "vc-issue-details mt-[10px] flex flex-col items-center font-poppins text-[14px] leading-[20px]" }, /* @__PURE__ */ React.createElement("span", { className: "created-at text-grayscale-700" }, createdAt), !issuerDisplay.isMissing && /* @__PURE__ */ React.createElement("span", { className: "issued-by flex flex-wrap items-baseline justify-center gap-1 max-w-full overflow-hidden text-ellipsis whitespace-nowrap text-[14px]" }, /* @__PURE__ */ React.createElement("span", { className: "font-medium text-grayscale-900" }, "By"), issuerDisplay.isDidValue ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("span", { className: "flex flex-wrap items-baseline justify-center gap-1 leading-normal font-[600] font-poppins max-w-full overflow-hidden text-ellipsis whitespace-nowrap" }, /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-900" }, "Digital ID:"), /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-500 underline" }, issuerDisplay.displayName))) : /* @__PURE__ */ React.createElement("strong", { className: "font-bold text-grayscale-900" }, issuerDisplay.displayName))), /* @__PURE__ */ React.createElement(
942
+ )), customThumbComponent && customThumbComponent, /* @__PURE__ */ React.createElement("div", { className: "vc-issue-info-box bg-white flex flex-col items-center gap-[5px] rounded-[20px] shadow-bottom px-[15px] py-[20px] w-full" }, customBodyCardComponent && customBodyCardComponent, !customBodyCardComponent && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("h3", { className: "flex flex-col text-center leading-[130%] w-full" }, !issueeDisplay.isMissing && issueeDisplay.isDidValue && /* @__PURE__ */ React.createElement("span", { className: "flex flex-wrap items-baseline justify-center gap-x-1 text-[17px] leading-normal font-[600] font-poppins max-w-full break-words" }, /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-900" }, "Digital ID:"), /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-500 underline" }, issueeDisplay.displayName)), !issueeDisplay.isMissing && !issueeDisplay.isDidValue && /* @__PURE__ */ React.createElement("span", { className: "font-poppins font-semibold text-[20px] leading-[130%] max-w-full line-clamp-2 break-words text-grayscale-900" }, issueeDisplay.displayName), subjectDID && !issueeDisplay.isDidValue && !issueeDisplay.isLCNetwork && /* @__PURE__ */ React.createElement("span", { className: "text-[12px] text-grayscale-500 leading-[18px] font-poppins font-normal m-0 p-0" }, subjectDID)), /* @__PURE__ */ React.createElement("div", { className: "relative" }, /* @__PURE__ */ React.createElement("div", { className: "vc-issuee-image h-[60px] w-[60px] rounded-full overflow-hidden bg-white" }, issueeImageEl), /* @__PURE__ */ React.createElement("div", { className: "vc-issuer-image h-[30px] w-[30px] rounded-full overflow-hidden absolute bottom-[-12px] right-[-12px] bg-white" }, issuerImageEl)), /* @__PURE__ */ React.createElement("div", { className: "flex flex-col gap-[13px]" }, /* @__PURE__ */ React.createElement("div", { className: "vc-issue-details mt-[10px] flex flex-col items-center font-poppins text-[14px] leading-[20px]" }, /* @__PURE__ */ React.createElement("span", { className: "created-at text-grayscale-700" }, createdAt), !issuerDisplay.isMissing && /* @__PURE__ */ React.createElement("span", { className: "issued-by max-w-full break-words text-center line-clamp-2 text-[14px]" }, /* @__PURE__ */ React.createElement("span", { className: "font-medium text-grayscale-900" }, "By"), " ", issuerDisplay.isDidValue ? /* @__PURE__ */ React.createElement("span", { className: "font-[600] font-poppins break-words" }, /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-900" }, "Digital ID:"), " ", /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-500 underline" }, issuerDisplay.displayName)) : /* @__PURE__ */ React.createElement("strong", { className: "font-bold text-grayscale-900 break-words" }, issuerDisplay.displayName))), /* @__PURE__ */ React.createElement(
908
943
  VerifierStateBadgeAndText,
909
944
  {
910
945
  verifierState,
911
- unknownVerifierTitle
946
+ unknownVerifierTitle,
947
+ onClick: (event) => onVerifierClick == null ? void 0 : onVerifierClick(event, verifierState)
912
948
  }
913
949
  ))), customBodyContentSlot && customBodyContentSlot)));
914
950
  };
@@ -950,13 +986,6 @@ const VCDisplayCardSkillsCount = ({ skills, onClick }) => {
950
986
  );
951
987
  };
952
988
 
953
- const VERIFIER_STATES = {
954
- selfVerified: "Self Issued",
955
- trustedVerifier: "Trusted Issuer",
956
- unknownVerifier: "Unknown Issuer",
957
- appIssuer: "Trusted App",
958
- untrustedVerifier: "Untrusted Issuer"
959
- };
960
989
  const VCIDDisplayFrontFace = ({
961
990
  isFront,
962
991
  setIsFront,
@@ -967,7 +996,8 @@ const VCIDDisplayFrontFace = ({
967
996
  hideQRCode = false,
968
997
  qrCodeOnClick,
969
998
  customIDDescription,
970
- unknownVerifierTitle
999
+ unknownVerifierTitle,
1000
+ onVerifierClick
971
1001
  }) => {
972
1002
  var _a;
973
1003
  const { credentialSubject } = getInfoFromCredential(credential, "MMM dd, yyyy", {
@@ -1017,11 +1047,29 @@ const VCIDDisplayFrontFace = ({
1017
1047
  "button",
1018
1048
  {
1019
1049
  type: "button",
1020
- className: "vc-toggle-side-button text-white shadow-bottom bg-[#00000099] px-[30px] py-[8px] rounded-[40px] text-[28px] tracking-[0.75px] uppercase leading-[28px] mt-[25px] w-fit select-none",
1050
+ className: "vc-toggle-side-button text-white shadow-bottom bg-[#00000099] px-[24px] py-[8px] rounded-[40px] text-[16px] font-poppins font-medium leading-normal mt-[25px] w-fit select-none",
1021
1051
  onClick: () => setIsFront(!isFront)
1022
1052
  },
1023
1053
  "Details"
1024
- ), /* @__PURE__ */ React.createElement("div", { className: "w-full flex items-center justify-center mt-4" }, /* @__PURE__ */ React.createElement("div", { className: "h-[2px] w-full bg-gray-200" })), /* @__PURE__ */ React.createElement("div", { className: "w-full flex items-center justify-center mt-2" }, isSelfVerified && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-green-dark flex gap-[3px] items-center" }, /* @__PURE__ */ React.createElement(PersonBadge, { className: "w-[20px] h-[20px]" }), "Self Issued"), verifierState === VERIFIER_STATES.trustedVerifier && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-blue-light flex gap-[3px] items-center text-center" }, /* @__PURE__ */ React.createElement(VerifiedBadge, { className: "w-[20px] h-[20px]" }), unknownVerifierTitle != null ? unknownVerifierTitle : "Trusted Issuer"), verifierState === VERIFIER_STATES.unknownVerifier && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-orange-500 flex gap-[3px] items-center" }, /* @__PURE__ */ React.createElement(UnknownVerifierBadge, { className: "w-[20px] h-[20px]" }), "Unknown Issuer"), verifierState === VERIFIER_STATES.appIssuer && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-cyan-600 flex gap-[3px] items-center" }, /* @__PURE__ */ React.createElement(UnknownVerifierBadge, { className: "w-[20px] h-[20px]" }), "Trusted App"), verifierState === VERIFIER_STATES.untrustedVerifier && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-red-mastercard flex gap-[3px] items-center" }, /* @__PURE__ */ React.createElement(RedFlag, { className: "w-[20px] h-[20px]" }), "Untrusted Issuer")))))));
1054
+ ), /* @__PURE__ */ React.createElement("div", { className: "w-full flex items-center justify-center mt-4" }, /* @__PURE__ */ React.createElement("div", { className: "h-[2px] w-full bg-gray-200" })), /* @__PURE__ */ React.createElement(
1055
+ "button",
1056
+ {
1057
+ type: "button",
1058
+ className: "w-full flex items-center justify-center mt-2 appearance-none bg-transparent p-0",
1059
+ onClick: (event) => {
1060
+ event.stopPropagation();
1061
+ onVerifierClick == null ? void 0 : onVerifierClick(event, verifierState);
1062
+ },
1063
+ onMouseDown: (event) => event.stopPropagation(),
1064
+ "aria-haspopup": "dialog",
1065
+ "aria-label": `Open issuer details for ${unknownVerifierTitle != null ? unknownVerifierTitle : verifierState}`
1066
+ },
1067
+ isSelfVerified && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-green-dark flex gap-[3px] items-center" }, /* @__PURE__ */ React.createElement(PersonBadge, { className: "w-[20px] h-[20px]" }), "Self Issued"),
1068
+ verifierState === VERIFIER_STATES.trustedVerifier && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-blue-light flex gap-[3px] items-center text-center" }, /* @__PURE__ */ React.createElement(VerifiedBadge, { className: "w-[20px] h-[20px]" }), unknownVerifierTitle != null ? unknownVerifierTitle : "Trusted Issuer"),
1069
+ verifierState === VERIFIER_STATES.unknownVerifier && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-orange-500 flex gap-[3px] items-center" }, /* @__PURE__ */ React.createElement(UnknownVerifierBadge, { className: "w-[20px] h-[20px]" }), "Unknown Issuer"),
1070
+ verifierState === VERIFIER_STATES.appIssuer && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-cyan-600 flex gap-[3px] items-center" }, /* @__PURE__ */ React.createElement(VerifiedBadge, { className: "w-[20px] h-[20px]" }), "App Issuer"),
1071
+ verifierState === VERIFIER_STATES.untrustedVerifier && /* @__PURE__ */ React.createElement("span", { className: "uppercase font-poppins text-base font-[500] text-red-mastercard flex gap-[3px] items-center" }, /* @__PURE__ */ React.createElement(RedFlag, { className: "w-[20px] h-[20px]" }), "Untrusted Issuer")
1072
+ ))))));
1025
1073
  };
1026
1074
 
1027
1075
  const VCIDDisplayCard = ({
@@ -1048,7 +1096,8 @@ const VCIDDisplayCard = ({
1048
1096
  customIDDescription,
1049
1097
  hideGradientBackground = false,
1050
1098
  customLinkedCredentialsComponent,
1051
- unknownVerifierTitle
1099
+ unknownVerifierTitle,
1100
+ onVerifierClick
1052
1101
  }) => {
1053
1102
  const [_isFront, _setIsFront] = useState(isFrontOverride != null ? isFrontOverride : true);
1054
1103
  const isFront = isFrontOverride != null ? isFrontOverride : _isFront;
@@ -1085,7 +1134,8 @@ const VCIDDisplayCard = ({
1085
1134
  qrCodeOnClick,
1086
1135
  hideQRCode,
1087
1136
  customIDDescription,
1088
- unknownVerifierTitle
1137
+ unknownVerifierTitle,
1138
+ onVerifierClick
1089
1139
  }
1090
1140
  ), !isFront && /* @__PURE__ */ React.createElement(
1091
1141
  VC2BackFace,
@@ -1155,7 +1205,8 @@ const VCDisplayCard2 = ({
1155
1205
  customContentSlot,
1156
1206
  customBodyContentSlot,
1157
1207
  unknownVerifierTitle,
1158
- hideFrontFaceDetails
1208
+ hideFrontFaceDetails,
1209
+ onVerifierClick
1159
1210
  }) => {
1160
1211
  var _a, _b, _c, _d, _e, _f, _g, _h;
1161
1212
  const {
@@ -1231,7 +1282,8 @@ const VCDisplayCard2 = ({
1231
1282
  customLinkedCredentialsComponent,
1232
1283
  customBodyContentSlot,
1233
1284
  unknownVerifierTitle,
1234
- hideFrontFaceDetails
1285
+ hideFrontFaceDetails,
1286
+ onVerifierClick
1235
1287
  }
1236
1288
  );
1237
1289
  }
@@ -1264,7 +1316,8 @@ const VCDisplayCard2 = ({
1264
1316
  customLinkedCredentialsComponent,
1265
1317
  customBodyContentSlot,
1266
1318
  unknownVerifierTitle,
1267
- hideFrontFaceDetails
1319
+ hideFrontFaceDetails,
1320
+ onVerifierClick
1268
1321
  }
1269
1322
  );
1270
1323
  } else if (((_f = credential == null ? void 0 : credential.display) == null ? void 0 : _f.displayType) === "id" || categoryType === "ID") {
@@ -1294,7 +1347,8 @@ const VCDisplayCard2 = ({
1294
1347
  customIDDescription,
1295
1348
  hideGradientBackground,
1296
1349
  customLinkedCredentialsComponent,
1297
- unknownVerifierTitle
1350
+ unknownVerifierTitle,
1351
+ onVerifierClick
1298
1352
  }
1299
1353
  ));
1300
1354
  }
@@ -1391,7 +1445,8 @@ const VCDisplayCard2 = ({
1391
1445
  imageUrl,
1392
1446
  knownDIDRegistry,
1393
1447
  customBodyContentSlot,
1394
- unknownVerifierTitle
1448
+ unknownVerifierTitle,
1449
+ onVerifierClick
1395
1450
  }
1396
1451
  ), !isFront && /* @__PURE__ */ React.createElement(
1397
1452
  VC2BackFace,
@@ -1421,7 +1476,7 @@ const VCDisplayCard2 = ({
1421
1476
  "button",
1422
1477
  {
1423
1478
  type: "button",
1424
- className: "vc-toggle-side-button text-white shadow-bottom bg-[#00000099] px-[30px] py-[8px] rounded-[40px] text-[28px] tracking-[0.75px] uppercase leading-[28px] mt-[40px] w-fit select-none",
1479
+ className: "vc-toggle-side-button text-white shadow-bottom bg-[#00000099] px-[24px] py-[8px] rounded-[40px] text-[16px] font-poppins font-medium leading-normal mt-[40px] w-fit select-none",
1425
1480
  onClick: () => setIsFront(!isFront)
1426
1481
  },
1427
1482
  "Details"
@@ -1429,7 +1484,7 @@ const VCDisplayCard2 = ({
1429
1484
  "button",
1430
1485
  {
1431
1486
  type: "button",
1432
- className: "vc-toggle-side-button text-white shadow-bottom bg-[#00000099] px-[30px] py-[8px] rounded-[40px] text-[28px] tracking-[0.75px] uppercase leading-[28px] mt-[40px] w-fit select-none",
1487
+ className: "vc-toggle-side-button text-white shadow-bottom bg-[#00000099] px-[24px] py-[8px] rounded-[40px] text-[16px] font-poppins font-medium leading-normal mt-[40px] w-fit select-none",
1433
1488
  onClick: () => setIsFront(!isFront)
1434
1489
  },
1435
1490
  /* @__PURE__ */ React.createElement("span", { className: "flex gap-[10px] items-center" }, /* @__PURE__ */ React.createElement(LeftArrow, null), "Back")
@@ -1462,4 +1517,4 @@ const VCDisplayCard2 = ({
1462
1517
  };
1463
1518
 
1464
1519
  export { VCDisplayCard2 as V, VCDisplayCardSkillsCount as a, VCIDDisplayCard as b };
1465
- //# sourceMappingURL=VCDisplayCard2-f0bf0f87.js.map
1520
+ //# sourceMappingURL=VCDisplayCard2-5003e0c8.js.map