@learncard/react 2.10.0 → 2.10.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 (92) hide show
  1. package/dist/cjs/{BoostGenericCard-d4056c6a.js → BoostGenericCard-52b35509.js} +3 -3
  2. package/dist/cjs/{BoostGenericCard-d4056c6a.js.map → BoostGenericCard-52b35509.js.map} +1 -1
  3. package/dist/cjs/{CertificateDisplayCard-217ce543.js → CertificateDisplayCard-2c6f5a4b.js} +12 -8
  4. package/dist/cjs/CertificateDisplayCard-2c6f5a4b.js.map +1 -0
  5. package/dist/cjs/{IDDisplayIcon-4b6ce62f.js → IDDisplayIcon-922a5fcf.js} +14 -14
  6. package/dist/cjs/IDDisplayIcon-922a5fcf.js.map +1 -0
  7. package/dist/cjs/{MeritBadgeDisplayCard-f610c4e8.js → MeritBadgeDisplayCard-62ac8ad6.js} +12 -8
  8. package/dist/cjs/MeritBadgeDisplayCard-62ac8ad6.js.map +1 -0
  9. package/dist/cjs/{MeritBadgeSkillsCount-1120813b.js → MeritBadgeSkillsCount-65786c6c.js} +2 -2
  10. package/dist/cjs/{MeritBadgeSkillsCount-1120813b.js.map → MeritBadgeSkillsCount-65786c6c.js.map} +1 -1
  11. package/dist/cjs/{VCCard-675144fc.js → VCCard-46e4212e.js} +3 -3
  12. package/dist/cjs/{VCCard-675144fc.js.map → VCCard-46e4212e.js.map} +1 -1
  13. package/dist/cjs/{VCDisplayBackFace-be7d1e31.js → VCDisplayBackFace-bcaeae1c.js} +3 -3
  14. package/dist/cjs/{VCDisplayBackFace-be7d1e31.js.map → VCDisplayBackFace-bcaeae1c.js.map} +1 -1
  15. package/dist/cjs/{VCDisplayCard-e50b4801.js → VCDisplayCard-ce16bd9e.js} +3 -3
  16. package/dist/cjs/{VCDisplayCard-e50b4801.js.map → VCDisplayCard-ce16bd9e.js.map} +1 -1
  17. package/dist/cjs/{VCDisplayCard2-648a9543.js → VCDisplayCard2-e8e84f7e.js} +52 -31
  18. package/dist/cjs/VCDisplayCard2-e8e84f7e.js.map +1 -0
  19. package/dist/cjs/{VCVerificationPill-93260164.js → VCVerificationPill-40c09268.js} +2 -2
  20. package/dist/cjs/{VCVerificationPill-93260164.js.map → VCVerificationPill-40c09268.js.map} +1 -1
  21. package/dist/cjs/{VerifierStateBadgeAndText-806b6c2c.js → VerifierStateBadgeAndText-db7a1881.js} +34 -13
  22. package/dist/{esm/VerifierStateBadgeAndText-0db85894.js.map → cjs/VerifierStateBadgeAndText-db7a1881.js.map} +1 -1
  23. package/dist/cjs/{credential.helpers-a11b14f1.js → credential.helpers-62edac8a.js} +2 -2
  24. package/dist/cjs/{credential.helpers-a11b14f1.js.map → credential.helpers-62edac8a.js.map} +1 -1
  25. package/dist/cjs/index.js +13 -14
  26. package/dist/cjs/index.js.map +1 -1
  27. package/dist/cjs/index14.js +13 -14
  28. package/dist/cjs/index14.js.map +1 -1
  29. package/dist/cjs/index22.js +5 -5
  30. package/dist/cjs/index37.js +1 -1
  31. package/dist/cjs/index39.js +10 -10
  32. package/dist/cjs/index4.js +4 -4
  33. package/dist/cjs/index40.js +4 -4
  34. package/dist/cjs/index41.js +5 -5
  35. package/dist/cjs/index42.js +6 -6
  36. package/dist/cjs/index43.js +1 -1
  37. package/dist/cjs/index46.js +2 -2
  38. package/dist/cjs/index7.js +4 -5
  39. package/dist/cjs/index7.js.map +1 -1
  40. package/dist/cjs/{types.esm-4d399274.js → types.esm-60d3a9fc.js} +11 -4
  41. package/dist/cjs/types.esm-60d3a9fc.js.map +1 -0
  42. package/dist/esm/{BoostGenericCard-b83ff069.js → BoostGenericCard-18e140ec.js} +3 -3
  43. package/dist/esm/{BoostGenericCard-b83ff069.js.map → BoostGenericCard-18e140ec.js.map} +1 -1
  44. package/dist/esm/{CertificateDisplayCard-d2fa3f05.js → CertificateDisplayCard-d49f9c9c.js} +12 -8
  45. package/dist/{cjs/CertificateDisplayCard-217ce543.js.map → esm/CertificateDisplayCard-d49f9c9c.js.map} +1 -1
  46. package/dist/esm/{IDDisplayIcon-d87174fd.js → IDDisplayIcon-f6993140.js} +14 -14
  47. package/dist/esm/IDDisplayIcon-f6993140.js.map +1 -0
  48. package/dist/esm/{MeritBadgeDisplayCard-eba507ab.js → MeritBadgeDisplayCard-f72efa12.js} +12 -8
  49. package/dist/esm/MeritBadgeDisplayCard-f72efa12.js.map +1 -0
  50. package/dist/esm/{MeritBadgeSkillsCount-7871d74f.js → MeritBadgeSkillsCount-395deb31.js} +2 -2
  51. package/dist/esm/{MeritBadgeSkillsCount-7871d74f.js.map → MeritBadgeSkillsCount-395deb31.js.map} +1 -1
  52. package/dist/esm/{VCCard-8a27387d.js → VCCard-5153f069.js} +3 -3
  53. package/dist/esm/{VCCard-8a27387d.js.map → VCCard-5153f069.js.map} +1 -1
  54. package/dist/esm/{VCDisplayBackFace-fbb3235f.js → VCDisplayBackFace-986b439b.js} +3 -3
  55. package/dist/esm/{VCDisplayBackFace-fbb3235f.js.map → VCDisplayBackFace-986b439b.js.map} +1 -1
  56. package/dist/esm/{VCDisplayCard-8463d18d.js → VCDisplayCard-eaa782c4.js} +3 -3
  57. package/dist/esm/{VCDisplayCard-8463d18d.js.map → VCDisplayCard-eaa782c4.js.map} +1 -1
  58. package/dist/esm/{VCDisplayCard2-5ed2777f.js → VCDisplayCard2-006e7a8c.js} +51 -30
  59. package/dist/esm/VCDisplayCard2-006e7a8c.js.map +1 -0
  60. package/dist/esm/{VCVerificationPill-a412a211.js → VCVerificationPill-80c774e2.js} +2 -2
  61. package/dist/esm/{VCVerificationPill-a412a211.js.map → VCVerificationPill-80c774e2.js.map} +1 -1
  62. package/dist/esm/{VerifierStateBadgeAndText-0db85894.js → VerifierStateBadgeAndText-a1bd5f0c.js} +36 -15
  63. package/dist/{cjs/VerifierStateBadgeAndText-806b6c2c.js.map → esm/VerifierStateBadgeAndText-a1bd5f0c.js.map} +1 -1
  64. package/dist/esm/{credential.helpers-108b5fb6.js → credential.helpers-b6acd108.js} +2 -2
  65. package/dist/esm/{credential.helpers-108b5fb6.js.map → credential.helpers-b6acd108.js.map} +1 -1
  66. package/dist/esm/index.js +13 -13
  67. package/dist/esm/index14.js +13 -13
  68. package/dist/esm/index22.js +5 -5
  69. package/dist/esm/index37.js +1 -1
  70. package/dist/esm/index39.js +10 -10
  71. package/dist/esm/index4.js +4 -4
  72. package/dist/esm/index40.js +4 -4
  73. package/dist/esm/index41.js +5 -5
  74. package/dist/esm/index42.js +6 -6
  75. package/dist/esm/index43.js +1 -1
  76. package/dist/esm/index46.js +2 -2
  77. package/dist/esm/index7.js +4 -4
  78. package/dist/esm/{types.esm-aa0345d0.js → types.esm-59c23f9b.js} +11 -4
  79. package/dist/esm/types.esm-59c23f9b.js.map +1 -0
  80. package/dist/index.d.ts +22 -16
  81. package/dist/main.css +1 -1
  82. package/dist/main.js +1 -1
  83. package/package.json +9 -13
  84. package/dist/cjs/IDDisplayIcon-4b6ce62f.js.map +0 -1
  85. package/dist/cjs/MeritBadgeDisplayCard-f610c4e8.js.map +0 -1
  86. package/dist/cjs/VCDisplayCard2-648a9543.js.map +0 -1
  87. package/dist/cjs/types.esm-4d399274.js.map +0 -1
  88. package/dist/esm/CertificateDisplayCard-d2fa3f05.js.map +0 -1
  89. package/dist/esm/IDDisplayIcon-d87174fd.js.map +0 -1
  90. package/dist/esm/MeritBadgeDisplayCard-eba507ab.js.map +0 -1
  91. package/dist/esm/VCDisplayCard2-5ed2777f.js.map +0 -1
  92. package/dist/esm/types.esm-aa0345d0.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"VCDisplayCard-e50b4801.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":["getNameFromProfile","getImageFromProfile","React","UserProfilePicture","FatArrow","VCVerificationCheckWithText","useState","getInfoFromCredential","FlippyCard","VCDisplayBackFace"],"mappings":"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"}
1
+ {"version":3,"file":"VCDisplayCard-ce16bd9e.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":["getNameFromProfile","getImageFromProfile","React","UserProfilePicture","FatArrow","VCVerificationCheckWithText","useState","getInfoFromCredential","FlippyCard","VCDisplayBackFace"],"mappings":"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"}
@@ -4,17 +4,17 @@ var React = require('react');
4
4
  require('./index-838fa72c.js');
5
5
  var VCVerificationCheck = require('./VCVerificationCheck-92198135.js');
6
6
  var UserProfilePicture = require('./UserProfilePicture-80675455.js');
7
- var credential_helpers = require('./credential.helpers-a11b14f1.js');
8
- var VerifierStateBadgeAndText = require('./VerifierStateBadgeAndText-806b6c2c.js');
7
+ var credential_helpers = require('./credential.helpers-62edac8a.js');
8
+ var VerifierStateBadgeAndText = require('./VerifierStateBadgeAndText-db7a1881.js');
9
9
  require('./index-0cac2c5b.js');
10
10
  var Lightbox = require('./Lightbox-d72e19ba.js');
11
- var types_esm = require('./types.esm-4d399274.js');
12
- var CertificateDisplayCard = require('./CertificateDisplayCard-217ce543.js');
11
+ var types_esm = require('./types.esm-60d3a9fc.js');
12
+ var CertificateDisplayCard = require('./CertificateDisplayCard-2c6f5a4b.js');
13
13
  var QRCodeIcon = require('./QRCodeIcon-3021a53b.js');
14
14
  var index = require('./index-5488badc.js');
15
15
  var PuzzlePiece = require('./PuzzlePiece-e64f4596.js');
16
16
  var IDSleeve = require('./id-sleeve.png');
17
- var MeritBadgeDisplayCard = require('./MeritBadgeDisplayCard-f610c4e8.js');
17
+ var MeritBadgeDisplayCard = require('./MeritBadgeDisplayCard-62ac8ad6.js');
18
18
 
19
19
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
20
 
@@ -867,7 +867,8 @@ const VC2FrontFaceInfo = ({
867
867
  customThumbComponent,
868
868
  knownDIDRegistry,
869
869
  customBodyContentSlot,
870
- unknownVerifierTitle
870
+ unknownVerifierTitle,
871
+ onVerifierClick
871
872
  }) => {
872
873
  const issuerImage = credential_helpers.getImageFromProfile(issuer != null ? issuer : "");
873
874
  const issueeImage = credential_helpers.getImageFromProfile(issuee != null ? issuee : "");
@@ -950,7 +951,8 @@ const VC2FrontFaceInfo = ({
950
951
  VerifierStateBadgeAndText.VerifierStateBadgeAndText,
951
952
  {
952
953
  verifierState,
953
- unknownVerifierTitle
954
+ unknownVerifierTitle,
955
+ onClick: (event) => onVerifierClick == null ? void 0 : onVerifierClick(event, verifierState)
954
956
  }
955
957
  ))), customBodyContentSlot && customBodyContentSlot)));
956
958
  };
@@ -992,13 +994,6 @@ const VCDisplayCardSkillsCount = ({ skills, onClick }) => {
992
994
  );
993
995
  };
994
996
 
995
- const VERIFIER_STATES = {
996
- selfVerified: "Self Issued",
997
- trustedVerifier: "Trusted Issuer",
998
- unknownVerifier: "Unknown Issuer",
999
- appIssuer: "Trusted App",
1000
- untrustedVerifier: "Untrusted Issuer"
1001
- };
1002
997
  const VCIDDisplayFrontFace = ({
1003
998
  isFront,
1004
999
  setIsFront,
@@ -1009,7 +1004,8 @@ const VCIDDisplayFrontFace = ({
1009
1004
  hideQRCode = false,
1010
1005
  qrCodeOnClick,
1011
1006
  customIDDescription,
1012
- unknownVerifierTitle
1007
+ unknownVerifierTitle,
1008
+ onVerifierClick
1013
1009
  }) => {
1014
1010
  var _a;
1015
1011
  const { credentialSubject } = credential_helpers.getInfoFromCredential(credential, "MMM dd, yyyy", {
@@ -1019,21 +1015,21 @@ const VCIDDisplayFrontFace = ({
1019
1015
  const isAppIssuerDid = VerifierStateBadgeAndText.isAppDidWeb(issuerDid);
1020
1016
  let verifierState;
1021
1017
  if ((credentialSubject == null ? void 0 : credentialSubject.id) === issuerDid && issuerDid && issuerDid !== "did:example:123") {
1022
- verifierState = VERIFIER_STATES.selfVerified;
1018
+ verifierState = VerifierStateBadgeAndText.VERIFIER_STATES.selfVerified;
1023
1019
  } else if (unknownVerifierTitle) {
1024
- verifierState = VERIFIER_STATES.trustedVerifier;
1020
+ verifierState = VerifierStateBadgeAndText.VERIFIER_STATES.trustedVerifier;
1025
1021
  } else {
1026
1022
  if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "trusted") {
1027
- verifierState = VERIFIER_STATES.trustedVerifier;
1023
+ verifierState = VerifierStateBadgeAndText.VERIFIER_STATES.trustedVerifier;
1028
1024
  } else if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "untrusted") {
1029
- verifierState = VERIFIER_STATES.untrustedVerifier;
1025
+ verifierState = VerifierStateBadgeAndText.VERIFIER_STATES.untrustedVerifier;
1030
1026
  } else if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "unknown") {
1031
- verifierState = isAppIssuerDid ? VERIFIER_STATES.appIssuer : VERIFIER_STATES.unknownVerifier;
1027
+ verifierState = isAppIssuerDid ? VerifierStateBadgeAndText.VERIFIER_STATES.appIssuer : VerifierStateBadgeAndText.VERIFIER_STATES.unknownVerifier;
1032
1028
  } else {
1033
- verifierState = isAppIssuerDid ? VERIFIER_STATES.appIssuer : VERIFIER_STATES.unknownVerifier;
1029
+ verifierState = isAppIssuerDid ? VerifierStateBadgeAndText.VERIFIER_STATES.appIssuer : VerifierStateBadgeAndText.VERIFIER_STATES.unknownVerifier;
1034
1030
  }
1035
1031
  }
1036
- const isSelfVerified = verifierState === VERIFIER_STATES.selfVerified;
1032
+ const isSelfVerified = verifierState === VerifierStateBadgeAndText.VERIFIER_STATES.selfVerified;
1037
1033
  const achievement = "achievement" in (credential == null ? void 0 : credential.credentialSubject) ? (_a = credential == null ? void 0 : credential.credentialSubject) == null ? void 0 : _a.achievement : void 0;
1038
1034
  const description = achievement == null ? void 0 : achievement.description;
1039
1035
  return /* @__PURE__ */ React__default["default"].createElement(h, { className: "w-full", flipKey: isFront }, /* @__PURE__ */ React__default["default"].createElement(v, { flipId: "face" }, /* @__PURE__ */ React__default["default"].createElement("section", { className: "vc-front-face w-full flex flex-col items-center gap-[15px]" }, /* @__PURE__ */ React__default["default"].createElement(v, { inverseFlipId: "face" }, customThumbComponent), /* @__PURE__ */ React__default["default"].createElement(v, { inverseFlipId: "face" }, /* @__PURE__ */ React__default["default"].createElement("div", { className: "text-white w-full flex items-center justify-center font-poppins" }, /* @__PURE__ */ React__default["default"].createElement(QRCodeIcon.IDIcon, { className: "text-white mr-1" }), " ID")), /* @__PURE__ */ React__default["default"].createElement(v, { inverseFlipId: "face" }, /* @__PURE__ */ React__default["default"].createElement("div", { className: "w-full relative" }, !hideQRCode && /* @__PURE__ */ React__default["default"].createElement(
@@ -1063,7 +1059,25 @@ const VCIDDisplayFrontFace = ({
1063
1059
  onClick: () => setIsFront(!isFront)
1064
1060
  },
1065
1061
  "Details"
1066
- ), /* @__PURE__ */ React__default["default"].createElement("div", { className: "w-full flex items-center justify-center mt-4" }, /* @__PURE__ */ React__default["default"].createElement("div", { className: "h-[2px] w-full bg-gray-200" })), /* @__PURE__ */ React__default["default"].createElement("div", { className: "w-full flex items-center justify-center mt-2" }, isSelfVerified && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-green-dark flex gap-[3px] items-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.PersonBadge, { className: "w-[20px] h-[20px]" }), "Self Issued"), verifierState === VERIFIER_STATES.trustedVerifier && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-blue-light flex gap-[3px] items-center text-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.VerifiedBadge, { className: "w-[20px] h-[20px]" }), unknownVerifierTitle != null ? unknownVerifierTitle : "Trusted Issuer"), verifierState === VERIFIER_STATES.unknownVerifier && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-orange-500 flex gap-[3px] items-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.UnknownVerifierBadge, { className: "w-[20px] h-[20px]" }), "Unknown Issuer"), verifierState === VERIFIER_STATES.appIssuer && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-cyan-600 flex gap-[3px] items-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.UnknownVerifierBadge, { className: "w-[20px] h-[20px]" }), "Trusted App"), verifierState === VERIFIER_STATES.untrustedVerifier && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-red-mastercard flex gap-[3px] items-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.RedFlag, { className: "w-[20px] h-[20px]" }), "Untrusted Issuer")))))));
1062
+ ), /* @__PURE__ */ React__default["default"].createElement("div", { className: "w-full flex items-center justify-center mt-4" }, /* @__PURE__ */ React__default["default"].createElement("div", { className: "h-[2px] w-full bg-gray-200" })), /* @__PURE__ */ React__default["default"].createElement(
1063
+ "button",
1064
+ {
1065
+ type: "button",
1066
+ className: "w-full flex items-center justify-center mt-2 appearance-none bg-transparent p-0",
1067
+ onClick: (event) => {
1068
+ event.stopPropagation();
1069
+ onVerifierClick == null ? void 0 : onVerifierClick(event, verifierState);
1070
+ },
1071
+ onMouseDown: (event) => event.stopPropagation(),
1072
+ "aria-haspopup": "dialog",
1073
+ "aria-label": `Open issuer details for ${unknownVerifierTitle != null ? unknownVerifierTitle : verifierState}`
1074
+ },
1075
+ isSelfVerified && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-green-dark flex gap-[3px] items-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.PersonBadge, { className: "w-[20px] h-[20px]" }), "Self Issued"),
1076
+ verifierState === VerifierStateBadgeAndText.VERIFIER_STATES.trustedVerifier && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-blue-light flex gap-[3px] items-center text-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.VerifiedBadge, { className: "w-[20px] h-[20px]" }), unknownVerifierTitle != null ? unknownVerifierTitle : "Trusted Issuer"),
1077
+ verifierState === VerifierStateBadgeAndText.VERIFIER_STATES.unknownVerifier && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-orange-500 flex gap-[3px] items-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.UnknownVerifierBadge, { className: "w-[20px] h-[20px]" }), "Unknown Issuer"),
1078
+ verifierState === VerifierStateBadgeAndText.VERIFIER_STATES.appIssuer && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-cyan-600 flex gap-[3px] items-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.VerifiedBadge, { className: "w-[20px] h-[20px]" }), "App Issuer"),
1079
+ verifierState === VerifierStateBadgeAndText.VERIFIER_STATES.untrustedVerifier && /* @__PURE__ */ React__default["default"].createElement("span", { className: "uppercase font-poppins text-base font-[500] text-red-mastercard flex gap-[3px] items-center" }, /* @__PURE__ */ React__default["default"].createElement(VerifierStateBadgeAndText.RedFlag, { className: "w-[20px] h-[20px]" }), "Untrusted Issuer")
1080
+ ))))));
1067
1081
  };
1068
1082
 
1069
1083
  const VCIDDisplayCard = ({
@@ -1090,7 +1104,8 @@ const VCIDDisplayCard = ({
1090
1104
  customIDDescription,
1091
1105
  hideGradientBackground = false,
1092
1106
  customLinkedCredentialsComponent,
1093
- unknownVerifierTitle
1107
+ unknownVerifierTitle,
1108
+ onVerifierClick
1094
1109
  }) => {
1095
1110
  const [_isFront, _setIsFront] = React.useState(isFrontOverride != null ? isFrontOverride : true);
1096
1111
  const isFront = isFrontOverride != null ? isFrontOverride : _isFront;
@@ -1127,7 +1142,8 @@ const VCIDDisplayCard = ({
1127
1142
  qrCodeOnClick,
1128
1143
  hideQRCode,
1129
1144
  customIDDescription,
1130
- unknownVerifierTitle
1145
+ unknownVerifierTitle,
1146
+ onVerifierClick
1131
1147
  }
1132
1148
  ), !isFront && /* @__PURE__ */ React__default["default"].createElement(
1133
1149
  VC2BackFace,
@@ -1197,7 +1213,8 @@ const VCDisplayCard2 = ({
1197
1213
  customContentSlot,
1198
1214
  customBodyContentSlot,
1199
1215
  unknownVerifierTitle,
1200
- hideFrontFaceDetails
1216
+ hideFrontFaceDetails,
1217
+ onVerifierClick
1201
1218
  }) => {
1202
1219
  var _a, _b, _c, _d, _e, _f, _g, _h;
1203
1220
  const {
@@ -1273,7 +1290,8 @@ const VCDisplayCard2 = ({
1273
1290
  customLinkedCredentialsComponent,
1274
1291
  customBodyContentSlot,
1275
1292
  unknownVerifierTitle,
1276
- hideFrontFaceDetails
1293
+ hideFrontFaceDetails,
1294
+ onVerifierClick
1277
1295
  }
1278
1296
  );
1279
1297
  }
@@ -1306,7 +1324,8 @@ const VCDisplayCard2 = ({
1306
1324
  customLinkedCredentialsComponent,
1307
1325
  customBodyContentSlot,
1308
1326
  unknownVerifierTitle,
1309
- hideFrontFaceDetails
1327
+ hideFrontFaceDetails,
1328
+ onVerifierClick
1310
1329
  }
1311
1330
  );
1312
1331
  } else if (((_f = credential == null ? void 0 : credential.display) == null ? void 0 : _f.displayType) === "id" || categoryType === "ID") {
@@ -1336,7 +1355,8 @@ const VCDisplayCard2 = ({
1336
1355
  customIDDescription,
1337
1356
  hideGradientBackground,
1338
1357
  customLinkedCredentialsComponent,
1339
- unknownVerifierTitle
1358
+ unknownVerifierTitle,
1359
+ onVerifierClick
1340
1360
  }
1341
1361
  ));
1342
1362
  }
@@ -1433,7 +1453,8 @@ const VCDisplayCard2 = ({
1433
1453
  imageUrl,
1434
1454
  knownDIDRegistry,
1435
1455
  customBodyContentSlot,
1436
- unknownVerifierTitle
1456
+ unknownVerifierTitle,
1457
+ onVerifierClick
1437
1458
  }
1438
1459
  ), !isFront && /* @__PURE__ */ React__default["default"].createElement(
1439
1460
  VC2BackFace,
@@ -1506,4 +1527,4 @@ const VCDisplayCard2 = ({
1506
1527
  exports.VCDisplayCard2 = VCDisplayCard2;
1507
1528
  exports.VCDisplayCardSkillsCount = VCDisplayCardSkillsCount;
1508
1529
  exports.VCIDDisplayCard = VCIDDisplayCard;
1509
- //# sourceMappingURL=VCDisplayCard2-648a9543.js.map
1530
+ //# sourceMappingURL=VCDisplayCard2-e8e84f7e.js.map