@learncard/react 2.9.7 → 2.9.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{BoostGenericCard-8bfbd19d.js → BoostGenericCard-2bfa7b3b.js} +2 -2
- package/dist/cjs/{BoostGenericCard-8bfbd19d.js.map → BoostGenericCard-2bfa7b3b.js.map} +1 -1
- package/dist/cjs/{BoostSmallCard-3e303698.js → BoostSmallCard-2141fdd9.js} +2 -2
- package/dist/cjs/BoostSmallCard-2141fdd9.js.map +1 -0
- package/dist/cjs/{CertificateDisplayCard-3629a31d.js → CertificateDisplayCard-a4cd56d5.js} +7 -6
- package/dist/cjs/{CertificateDisplayCard-3629a31d.js.map → CertificateDisplayCard-a4cd56d5.js.map} +1 -1
- package/dist/cjs/{MeritBadgeDisplayCard-6909f9c4.js → MeritBadgeDisplayCard-f19999c1.js} +7 -6
- package/dist/cjs/MeritBadgeDisplayCard-f19999c1.js.map +1 -0
- package/dist/cjs/{MeritBadgeSkillsCount-6ab76512.js → MeritBadgeSkillsCount-9c81b0b7.js} +2 -2
- package/dist/cjs/{MeritBadgeSkillsCount-6ab76512.js.map → MeritBadgeSkillsCount-9c81b0b7.js.map} +1 -1
- package/dist/cjs/{NotificationBoostCard-abb23722.js → NotificationBoostCard-c4679a33.js} +2 -2
- package/dist/cjs/NotificationBoostCard-c4679a33.js.map +1 -0
- package/dist/cjs/{NotificationUserAcceptedBoostCard-31d8a89e.js → NotificationUserAcceptedBoostCard-1c6d1e33.js} +2 -2
- package/dist/cjs/NotificationUserAcceptedBoostCard-1c6d1e33.js.map +1 -0
- package/dist/cjs/{NotificationUserCard-59431df3.js → NotificationUserCard-4364506c.js} +2 -2
- package/dist/cjs/NotificationUserCard-4364506c.js.map +1 -0
- package/dist/cjs/{SchoolIDCard-dddb3b1d.js → SchoolIDCard-e22d0d80.js} +1184 -3
- package/dist/cjs/SchoolIDCard-e22d0d80.js.map +1 -0
- package/dist/cjs/{VCCard-71a11dcb.js → VCCard-947544a7.js} +3 -3
- package/dist/cjs/{VCCard-71a11dcb.js.map → VCCard-947544a7.js.map} +1 -1
- package/dist/cjs/{VCDisplayBackFace-a1d472dd.js → VCDisplayBackFace-4304cfe1.js} +3 -3
- package/dist/cjs/{VCDisplayBackFace-a1d472dd.js.map → VCDisplayBackFace-4304cfe1.js.map} +1 -1
- package/dist/cjs/{VCDisplayCard-b401b6cb.js → VCDisplayCard-21e8aaa2.js} +3 -3
- package/dist/cjs/{VCDisplayCard-b401b6cb.js.map → VCDisplayCard-21e8aaa2.js.map} +1 -1
- package/dist/cjs/{VCDisplayCard2-7e83002e.js → VCDisplayCard2-ef69b767.js} +15 -13
- package/dist/cjs/VCDisplayCard2-ef69b767.js.map +1 -0
- package/dist/cjs/{VCVerificationPill-9ab86092.js → VCVerificationPill-438983db.js} +2 -2
- package/dist/cjs/{VCVerificationPill-9ab86092.js.map → VCVerificationPill-438983db.js.map} +1 -1
- package/dist/cjs/VerifierStateBadgeAndText-0c8bc9bf.js +19357 -0
- package/dist/cjs/VerifierStateBadgeAndText-0c8bc9bf.js.map +1 -0
- package/dist/cjs/{credential.helpers-a8529046.js → credential.helpers-e3ba7ad4.js} +2 -2
- package/dist/cjs/{credential.helpers-a8529046.js.map → credential.helpers-e3ba7ad4.js.map} +1 -1
- package/dist/cjs/index.js +17 -18
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index13.js +17 -18
- package/dist/cjs/index13.js.map +1 -1
- package/dist/cjs/index21.js +5 -5
- package/dist/cjs/index24.js +1 -1
- package/dist/cjs/index25.js +1 -1
- package/dist/cjs/index26.js +1 -1
- package/dist/cjs/index3.js +3 -3
- package/dist/cjs/index30.js +1 -2
- package/dist/cjs/index30.js.map +1 -1
- package/dist/cjs/index38.js +10 -11
- package/dist/cjs/index38.js.map +1 -1
- package/dist/cjs/index39.js +4 -4
- package/dist/cjs/index4.js +1 -1
- package/dist/cjs/index40.js +5 -5
- package/dist/cjs/index41.js +6 -7
- package/dist/cjs/index41.js.map +1 -1
- package/dist/cjs/index42.js +1 -1
- package/dist/cjs/index45.js +2 -2
- package/dist/cjs/index6.js +4 -4
- package/dist/cjs/{types.esm-15986537.js → types.esm-901fe9bd.js} +21 -2
- package/dist/{esm/types.esm-adb59560.js.map → cjs/types.esm-901fe9bd.js.map} +1 -1
- package/dist/esm/{BoostGenericCard-46743965.js → BoostGenericCard-23ec21c9.js} +2 -2
- package/dist/esm/{BoostGenericCard-46743965.js.map → BoostGenericCard-23ec21c9.js.map} +1 -1
- package/dist/esm/{BoostSmallCard-ddefe808.js → BoostSmallCard-f2192dc1.js} +2 -2
- package/dist/esm/BoostSmallCard-f2192dc1.js.map +1 -0
- package/dist/esm/{CertificateDisplayCard-bba13104.js → CertificateDisplayCard-5cf493af.js} +7 -6
- package/dist/esm/{CertificateDisplayCard-bba13104.js.map → CertificateDisplayCard-5cf493af.js.map} +1 -1
- package/dist/esm/{MeritBadgeDisplayCard-e212372b.js → MeritBadgeDisplayCard-f4461df0.js} +7 -6
- package/dist/esm/MeritBadgeDisplayCard-f4461df0.js.map +1 -0
- package/dist/esm/{MeritBadgeSkillsCount-44a3cd70.js → MeritBadgeSkillsCount-ccac3d3e.js} +2 -2
- package/dist/esm/{MeritBadgeSkillsCount-44a3cd70.js.map → MeritBadgeSkillsCount-ccac3d3e.js.map} +1 -1
- package/dist/esm/{NotificationBoostCard-cf11d747.js → NotificationBoostCard-fa82a58d.js} +2 -2
- package/dist/esm/NotificationBoostCard-fa82a58d.js.map +1 -0
- package/dist/esm/{NotificationUserAcceptedBoostCard-a1269382.js → NotificationUserAcceptedBoostCard-89fe2317.js} +2 -2
- package/dist/esm/NotificationUserAcceptedBoostCard-89fe2317.js.map +1 -0
- package/dist/esm/{NotificationUserCard-c109c442.js → NotificationUserCard-2c29c86a.js} +2 -2
- package/dist/esm/NotificationUserCard-2c29c86a.js.map +1 -0
- package/dist/esm/{SchoolIDCard-4e51671c.js → SchoolIDCard-8b151cd3.js} +1183 -2
- package/dist/esm/SchoolIDCard-8b151cd3.js.map +1 -0
- package/dist/esm/{VCCard-e29637d6.js → VCCard-7f3b725e.js} +3 -3
- package/dist/esm/{VCCard-e29637d6.js.map → VCCard-7f3b725e.js.map} +1 -1
- package/dist/esm/{VCDisplayBackFace-2a9a838b.js → VCDisplayBackFace-17106134.js} +3 -3
- package/dist/esm/{VCDisplayBackFace-2a9a838b.js.map → VCDisplayBackFace-17106134.js.map} +1 -1
- package/dist/esm/{VCDisplayCard-3a8c0544.js → VCDisplayCard-5ff2037c.js} +3 -3
- package/dist/esm/{VCDisplayCard-3a8c0544.js.map → VCDisplayCard-5ff2037c.js.map} +1 -1
- package/dist/esm/{VCDisplayCard2-f02476ef.js → VCDisplayCard2-cb81b527.js} +15 -13
- package/dist/esm/VCDisplayCard2-cb81b527.js.map +1 -0
- package/dist/esm/{VCVerificationPill-2c293962.js → VCVerificationPill-ac60e855.js} +2 -2
- package/dist/esm/{VCVerificationPill-2c293962.js.map → VCVerificationPill-ac60e855.js.map} +1 -1
- package/dist/esm/VerifierStateBadgeAndText-6185da81.js +19318 -0
- package/dist/esm/VerifierStateBadgeAndText-6185da81.js.map +1 -0
- package/dist/esm/{credential.helpers-ac4e6c0f.js → credential.helpers-2a0afd7e.js} +2 -2
- package/dist/esm/{credential.helpers-ac4e6c0f.js.map → credential.helpers-2a0afd7e.js.map} +1 -1
- package/dist/esm/index.js +17 -18
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index13.js +17 -18
- package/dist/esm/index13.js.map +1 -1
- package/dist/esm/index21.js +5 -5
- package/dist/esm/index24.js +1 -1
- package/dist/esm/index25.js +1 -1
- package/dist/esm/index26.js +1 -1
- package/dist/esm/index3.js +3 -3
- package/dist/esm/index30.js +1 -2
- package/dist/esm/index30.js.map +1 -1
- package/dist/esm/index38.js +10 -11
- package/dist/esm/index38.js.map +1 -1
- package/dist/esm/index39.js +4 -4
- package/dist/esm/index4.js +1 -1
- package/dist/esm/index40.js +5 -5
- package/dist/esm/index41.js +6 -7
- package/dist/esm/index41.js.map +1 -1
- package/dist/esm/index42.js +1 -1
- package/dist/esm/index45.js +2 -2
- package/dist/esm/index6.js +4 -4
- package/dist/esm/{types.esm-adb59560.js → types.esm-52881edf.js} +17 -3
- package/dist/{cjs/types.esm-15986537.js.map → esm/types.esm-52881edf.js.map} +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/main.css +1 -1
- package/dist/main.js +1 -1
- package/package.json +3 -3
- package/dist/cjs/BoostSmallCard-3e303698.js.map +0 -1
- package/dist/cjs/MeritBadgeDisplayCard-6909f9c4.js.map +0 -1
- package/dist/cjs/NotificationBoostCard-abb23722.js.map +0 -1
- package/dist/cjs/NotificationUserAcceptedBoostCard-31d8a89e.js.map +0 -1
- package/dist/cjs/NotificationUserCard-59431df3.js.map +0 -1
- package/dist/cjs/SchoolIDCard-dddb3b1d.js.map +0 -1
- package/dist/cjs/VCDisplayCard2-7e83002e.js.map +0 -1
- package/dist/cjs/VerifierStateBadgeAndText-103557ca.js +0 -2447
- package/dist/cjs/VerifierStateBadgeAndText-103557ca.js.map +0 -1
- package/dist/cjs/index-838fa72c.js +0 -1186
- package/dist/cjs/index-838fa72c.js.map +0 -1
- package/dist/esm/BoostSmallCard-ddefe808.js.map +0 -1
- package/dist/esm/MeritBadgeDisplayCard-e212372b.js.map +0 -1
- package/dist/esm/NotificationBoostCard-cf11d747.js.map +0 -1
- package/dist/esm/NotificationUserAcceptedBoostCard-a1269382.js.map +0 -1
- package/dist/esm/NotificationUserCard-c109c442.js.map +0 -1
- package/dist/esm/SchoolIDCard-4e51671c.js.map +0 -1
- package/dist/esm/VCDisplayCard2-f02476ef.js.map +0 -1
- package/dist/esm/VerifierStateBadgeAndText-796c26ac.js +0 -2409
- package/dist/esm/VerifierStateBadgeAndText-796c26ac.js.map +0 -1
- package/dist/esm/index-4fa491c1.js +0 -1184
- package/dist/esm/index-4fa491c1.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { useState, useEffect } from 'react';
|
|
2
2
|
import { initLearnCard } from '@learncard/init';
|
|
3
|
-
import { V as VCDisplayCard } from './VCDisplayCard-
|
|
4
|
-
import { V as VCDisplayCard2 } from './VCDisplayCard2-
|
|
3
|
+
import { V as VCDisplayCard } from './VCDisplayCard-5ff2037c.js';
|
|
4
|
+
import { V as VCDisplayCard2 } from './VCDisplayCard2-cb81b527.js';
|
|
5
5
|
|
|
6
6
|
var __async = (__this, __arguments, generator) => {
|
|
7
7
|
return new Promise((resolve, reject) => {
|
|
@@ -77,4 +77,4 @@ const VCCard = ({
|
|
|
77
77
|
};
|
|
78
78
|
|
|
79
79
|
export { VCCard as V };
|
|
80
|
-
//# sourceMappingURL=VCCard-
|
|
80
|
+
//# sourceMappingURL=VCCard-7f3b725e.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VCCard-
|
|
1
|
+
{"version":3,"file":"VCCard-7f3b725e.js","sources":["../../src/components/VCCard/VCCard.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport { initLearnCard } from '@learncard/init';\nimport { VC, Profile, VerificationItem } from '@learncard/types';\n\nimport { VCDisplayCard } from '../VCDisplayCard';\nimport {\n VCDisplayCard2,\n CredentialIconType,\n} from '../VCDisplayCard2';\n\nimport { MediaMetadata, VideoMetadata } from '../../types';\n\nexport type VCCardProps = {\n credential: VC;\n issueeOverride?: Profile;\n className?: string;\n version?: '1' | '2';\n\n /* Only used for version 2 */\n subjectImageComponent?: React.ReactNode;\n // convertTagsToSkills?: (tags: string[]) => { [skill: string]: string[] };\n handleXClick?: () => void;\n getFileMetadata?: (url: string) => MediaMetadata;\n getVideoMetadata?: (url: string) => VideoMetadata;\n onMediaAttachmentClick?: (url: string) => void;\n bottomRightIcon?: CredentialIconType;\n};\n\nexport const VCCard: React.FC<VCCardProps> = ({\n credential,\n issueeOverride,\n className = '',\n version = '1',\n subjectImageComponent,\n // convertTagsToSkills,\n handleXClick,\n getFileMetadata,\n getVideoMetadata,\n onMediaAttachmentClick,\n bottomRightIcon,\n}) => {\n const [loading, setLoading] = useState(true);\n const [vcVerification, setVCVerification] = useState<VerificationItem[]>([]);\n\n useEffect(() => {\n const verify = async () => {\n const wallet = await initLearnCard();\n const verification = await wallet.invoke.verifyCredential(credential, {}, true);\n setVCVerification(verification);\n setLoading(false);\n };\n\n verify();\n }, [credential]);\n\n if (version === '1') {\n return (\n <VCDisplayCard\n credential={credential}\n issueeOverride={issueeOverride}\n className={className}\n loading={loading}\n verification={vcVerification}\n />\n );\n }\n return (\n <VCDisplayCard2\n credential={credential}\n issueeOverride={issueeOverride}\n verificationInProgress={loading}\n verificationItems={vcVerification}\n subjectImageComponent={subjectImageComponent}\n // convertTagsToSkills={convertTagsToSkills}\n handleXClick={handleXClick}\n getFileMetadata={getFileMetadata}\n getVideoMetadata={getVideoMetadata}\n onMediaAttachmentClick={onMediaAttachmentClick}\n bottomRightIcon={bottomRightIcon}\n />\n );\n};\n\nexport default VCCard;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA4BO,MAAM,SAAgC,CAAC;AAAA,EAC1C,UAAA;AAAA,EACA,cAAA;AAAA,EACA,SAAY,GAAA,EAAA;AAAA,EACZ,OAAU,GAAA,GAAA;AAAA,EACV,qBAAA;AAAA;AAAA,EAEA,YAAA;AAAA,EACA,eAAA;AAAA,EACA,gBAAA;AAAA,EACA,sBAAA;AAAA,EACA,eAAA;AACJ,CAAM,KAAA;AACF,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAS,IAAI,CAAA,CAAA;AAC3C,EAAA,MAAM,CAAC,cAAgB,EAAA,iBAAiB,CAAI,GAAA,QAAA,CAA6B,EAAE,CAAA,CAAA;AAE3E,EAAA,SAAA,CAAU,MAAM;AACZ,IAAA,MAAM,SAAS,MAAY,OAAA,CAAA,IAAA,EAAA,IAAA,EAAA,aAAA;AACvB,MAAM,MAAA,MAAA,GAAS,MAAM,aAAc,EAAA,CAAA;AACnC,MAAM,MAAA,YAAA,GAAe,MAAM,MAAO,CAAA,MAAA,CAAO,iBAAiB,UAAY,EAAA,IAAI,IAAI,CAAA,CAAA;AAC9E,MAAA,iBAAA,CAAkB,YAAY,CAAA,CAAA;AAC9B,MAAA,UAAA,CAAW,KAAK,CAAA,CAAA;AAAA,KACpB,CAAA,CAAA;AAEA,IAAO,MAAA,EAAA,CAAA;AAAA,GACX,EAAG,CAAC,UAAU,CAAC,CAAA,CAAA;AAEf,EAAA,IAAI,YAAY,GAAK,EAAA;AACjB,IACI,uBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,aAAA;AAAA,MAAA;AAAA,QACG,UAAA;AAAA,QACA,cAAA;AAAA,QACA,SAAA;AAAA,QACA,OAAA;AAAA,QACA,YAAc,EAAA,cAAA;AAAA,OAAA;AAAA,KAClB,CAAA;AAAA,GAER;AACA,EACI,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,cAAA;AAAA,IAAA;AAAA,MACG,UAAA;AAAA,MACA,cAAA;AAAA,MACA,sBAAwB,EAAA,OAAA;AAAA,MACxB,iBAAmB,EAAA,cAAA;AAAA,MACnB,qBAAA;AAAA,MAEA,YAAA;AAAA,MACA,eAAA;AAAA,MACA,gBAAA;AAAA,MACA,sBAAA;AAAA,MACA,eAAA;AAAA,KAAA;AAAA,GACJ,CAAA;AAER;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { b as VCVerificationCheckWithText } from './VCVerificationCheck-8b8b7a76.js';
|
|
3
|
-
import { a as VCVerificationPill } from './VCVerificationPill-
|
|
3
|
+
import { a as VCVerificationPill } from './VCVerificationPill-ac60e855.js';
|
|
4
4
|
import FlipArrowRight from './ArrowArcRight.svg';
|
|
5
|
-
import { h as getNameFromProfile } from './credential.helpers-
|
|
5
|
+
import { h as getNameFromProfile } from './credential.helpers-2a0afd7e.js';
|
|
6
6
|
|
|
7
7
|
const VCDisplayBackFace = ({
|
|
8
8
|
issuer,
|
|
@@ -60,4 +60,4 @@ const VCDisplayBackFace = ({
|
|
|
60
60
|
};
|
|
61
61
|
|
|
62
62
|
export { VCDisplayBackFace as V };
|
|
63
|
-
//# sourceMappingURL=VCDisplayBackFace-
|
|
63
|
+
//# sourceMappingURL=VCDisplayBackFace-17106134.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VCDisplayBackFace-
|
|
1
|
+
{"version":3,"file":"VCDisplayBackFace-17106134.js","sources":["../../src/components/VCDisplayBackFace/VCDisplayBackFace.tsx"],"sourcesContent":["import React from 'react';\nimport { VCDisplayCardProps } from '../../types';\nimport { VCVerificationCheckWithText } from '../VCVerificationCheck/VCVerificationCheck';\nimport VCVerificationPill from '../VCVerificationPill/VCVerificationPill';\nimport FlipArrowRight from '../../assets/images/ArrowArcRight.svg';\nimport { getNameFromProfile } from '../../helpers/credential.helpers';\n\nexport const VCDisplayBackFace: React.FC<VCDisplayCardProps> = ({\n issuer,\n credentialSubject,\n className = '',\n loading,\n verification = [],\n handleClick,\n overrideDetailsComponent,\n}) => {\n const descriptionText = credentialSubject?.achievement?.description;\n const criteriaText = credentialSubject?.achievement?.criteria?.narrative;\n const issuerUrl = typeof issuer === 'object' ? issuer.url : '';\n const issuerName = getNameFromProfile(issuer ?? '');\n const defaultDetails = (\n <>\n <div className=\"width-full\">\n <h6 className=\"line-clamp-1 text-grayscale-900 font-bold uppercase text-xs tracking-wider subpixel-antialiased\">\n Description\n </h6>\n <p className=\"line-clamp-3 subpixel-antialiased text-grayscale-600 text-[14px] lc-line-clamp\">\n {descriptionText}\n </p>\n </div>\n\n <div className=\"width-full mt-[10px]\">\n <h6 className=\"line-clamp-1 text-grayscale-900 font-bold uppercase text-xs tracking-wider subpixel-antialiased\">\n Criteria\n </h6>\n <p className=\"line-clamp-3 subpixel-antialiased text-grayscale-600 text-[14px] lc-line-clamp\">\n {criteriaText}\n </p>\n </div>\n\n <div className=\"width-full mt-[10px] line-clamp-1 overflow-hidden vc-issuer-name-info\">\n <h6 className=\"line-clamp-1 text-grayscale-900 font-bold uppercase text-xs tracking-wider subpixel-antialiased\">\n Issuer\n </h6>\n <p className=\"max-w-[344px] line-clamp-1 subpixel-antialiased text-grayscale-600 text-[14px] block overflow-ellipsis break-all\">\n {issuerName}\n </p>\n </div>\n\n {issuerUrl && (\n <p className=\"text-indigo-500 font-bold text-xs width-full text-center mt-8\">\n {issuerUrl}\n </p>\n )}\n </>\n );\n\n const renderDetails = overrideDetailsComponent ? overrideDetailsComponent : defaultDetails;\n\n return (\n <div\n className={`z-[9] vc-display-main-card-back flex overflow-hidden flex-col items-center justify-between relative max-w-[400px] h-[100%] max-h-[1100px] min-h-[600px] p-7 rounded-3xl shadow-3xl bg-emerald-700 vc-display-card-full-container ${className}`}\n >\n <section className=\"flex max-h-[150px] items-end bg-white rounded-bl-[50%] rounded-br-[50%] absolute top-0 w-[110%] h-[55%] min-h-[400px]\"></section>\n <section className=\"flex flex-col items-center justify-center w-full z-10 text-left credential-details-container max-w-[100%] relative\">\n <section className=\"flex flex-row items-start justify-start w-full line-clamp-2\">\n <h3\n className=\"text-2xl line-clamp-2 tracking-wide leading-snug text-left text-emerald-700\"\n data-testid=\"vc-credential-details-title tracking-wide subpixel-antialiased\"\n >\n Credential Details\n </h3>\n </section>\n\n <section className=\"flex flex-col mt-2 w-full my-2 min-h-[200px] credential-details-info\">\n {renderDetails}\n </section>\n\n <div className=\"w-full mt-2\"></div>\n\n <button\n onClick={handleClick}\n className=\"vc-flip-btn bg-white my-3 border-2 text-indigo-500 font-semibold py-2 px-4 shadow-3xl rounded-full\"\n >\n <span className=\"flex justify-center\">\n <img\n className=\"h-8 w-8 my-0 mx-4 scale-x-[-1]\"\n src={FlipArrowRight ?? ''}\n alt=\"Flip Card\"\n />\n </span>\n </button>\n\n <section className=\"flex-col items-center justify-center checklist-container justify-center w-[100%] width-full mt-[20px]\">\n <VCVerificationCheckWithText loading={loading} />\n <section>\n {verification.map(item => (\n <VCVerificationPill\n key={item.check}\n status={item.status}\n message={item.message}\n details={item.details}\n />\n ))}\n </section>\n </section>\n </section>\n </div>\n );\n};\n\nexport default VCDisplayBackFace;\n"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,8 @@ import { F as FlippyCard } from './FlippyCard-458dc9b1.js';
|
|
|
3
3
|
import FatArrow from './icon.green.fat-arrow.png';
|
|
4
4
|
import { U as UserProfilePicture } from './UserProfilePicture-7b950437.js';
|
|
5
5
|
import { b as VCVerificationCheckWithText } from './VCVerificationCheck-8b8b7a76.js';
|
|
6
|
-
import { h as getNameFromProfile, i as getImageFromProfile, b as getInfoFromCredential } from './credential.helpers-
|
|
7
|
-
import { V as VCDisplayBackFace } from './VCDisplayBackFace-
|
|
6
|
+
import { h as getNameFromProfile, i as getImageFromProfile, b as getInfoFromCredential } from './credential.helpers-2a0afd7e.js';
|
|
7
|
+
import { V as VCDisplayBackFace } from './VCDisplayBackFace-17106134.js';
|
|
8
8
|
|
|
9
9
|
const VCDisplayFrontFace = ({
|
|
10
10
|
title,
|
|
@@ -181,4 +181,4 @@ const VCDisplayCard = ({
|
|
|
181
181
|
};
|
|
182
182
|
|
|
183
183
|
export { VCDisplayCard as V };
|
|
184
|
-
//# sourceMappingURL=VCDisplayCard-
|
|
184
|
+
//# sourceMappingURL=VCDisplayCard-5ff2037c.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VCDisplayCard-3a8c0544.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-5ff2037c.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":";;;;;;;;AAQA,MAAM,qBAAmD,CAAC;AAAA,EACtD,KAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,qBAAA;AAAA,EACA,oBAAA;AAAA,EACA,kBAAqB,GAAA,KAAA;AAAA,EACrB,iBAAA;AAAA,EACA,SAAY,GAAA,EAAA;AAAA,EACZ,OAAA;AAAA,EACA,WAAA;AAAA,EACA,0BAAA;AAAA,EACA,iBAAA;AAAA,EACA,qBAAA;AACJ,CAAM,KAAA;AAvBN,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AAwBI,EAAM,MAAA,0BAAA,GAAA,CAAA,CACF,kEAAmB,WAAnB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAgC,UAAhC,IAAuC,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,EAAA,MAAA,CAAM,EAAmB,GAAA,iBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,iBAAA,CAAA,WAAA,KAAnB,IAAgC,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,CAAA,CAAA;AACjF,EAAM,MAAA,UAAA,GAAa,kBAAmB,CAAA,MAAA,IAAA,IAAA,GAAA,MAAA,GAAU,EAAE,CAAA,CAAA;AAClD,EAAM,MAAA,UAAA,GAAa,kBAAmB,CAAA,MAAA,IAAA,IAAA,GAAA,MAAA,GAAU,EAAE,CAAA,CAAA;AAClD,EAAM,MAAA,WAAA,GAAc,mBAAoB,CAAA,MAAA,IAAA,IAAA,GAAA,MAAA,GAAU,EAAE,CAAA,CAAA;AACpD,EAAM,MAAA,WAAA,GAAc,mBAAoB,CAAA,MAAA,IAAA,IAAA,GAAA,MAAA,GAAU,EAAE,CAAA,CAAA;AAEpD,EAAA,IAAI,aAAwC,GAAA,IAAA,CAAA;AAC5C,EAAA,IAAI,qBAAuB,EAAA;AACvB,IAAgB,aAAA,GAAA,qBAAA,CAAA;AAAA,GACb,MAAA;AACH,IACI,aAAA,mBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,kBAAA;AAAA,MAAA;AAAA,QACG,oBAAsB,EAAA,CAAA,oCAAA,EAClB,CAAC,WAAA,GAAc,aAAa,EAChC,CAAA,CAAA;AAAA,QACA,IAAM,EAAA,EAAE,KAAO,EAAA,WAAA,EAAa,MAAM,UAAW,EAAA;AAAA,QAC7C,GAAI,EAAA,cAAA;AAAA,OAAA;AAAA,KACR,CAAA;AAAA,GAER;AAEA,EAAA,IAAI,aAAwC,GAAA,IAAA,CAAA;AAE5C,EAAA,IAAI,oBAAsB,EAAA;AACtB,IAAgB,aAAA,GAAA,oBAAA,CAAA;AAAA,GACb,MAAA;AACH,IACI,aAAA,mBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,kBAAA;AAAA,MAAA;AAAA,QACG,oBAAsB,EAAA,CAAA,oCAAA,EAClB,CAAC,WAAA,GAAc,aAAa,EAChC,CAAA,CAAA;AAAA,QACA,IAAM,EAAA,EAAE,KAAO,EAAA,WAAA,EAAa,MAAM,UAAW,EAAA;AAAA,QAC7C,GAAI,EAAA,cAAA;AAAA,OAAA;AAAA,KACR,CAAA;AAAA,GAER;AAEA,EAAA,MAAM,UAAU,0BACZ,mBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACG,SAAU,EAAA,4BAAA;AAAA,MACV,KAAK,0BAA8B,IAAA,IAAA,GAAA,0BAAA,GAAA,EAAA;AAAA,MACnC,GAAI,EAAA,8BAAA;AAAA,KAAA;AAAA,sBAGN,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,CAAA,CAAA;AAGN,EAAM,MAAA,aAAA,GAAgB,6BAA6B,0BAA6B,GAAA,OAAA,CAAA;AAChF,EAAM,MAAA,SAAA,GAAY,oBAAoB,iBAAoB,GAAA,KAAA,CAAA;AAE1D,EACI,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACG,SAAA,EAAW,sNAAsN,SAAS,CAAA,CAAA;AAAA,KAAA;AAAA,oBAE1O,KAAA,CAAA,aAAA,CAAC,SAAQ,EAAA,EAAA,SAAA,EAAU,4EAA6E,EAAA,CAAA;AAAA,wCAC/F,SAAQ,EAAA,EAAA,SAAA,EAAU,iFACf,EAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,aAAQ,SAAU,EAAA,6BAAA,EAAA,EAA+B,aAAc,CAAA,sCAE/D,SAAQ,EAAA,EAAA,SAAA,EAAU,wDACd,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,WAAU,oEACX,EAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACG,SAAU,EAAA,mIAAA;AAAA,QACV,aAAY,EAAA,oBAAA;AAAA,OAAA;AAAA,MAEX,SAAa,IAAA,IAAA,GAAA,SAAA,GAAA,EAAA;AAAA,KAEtB,CAEC,EAAA,qBAAA,IAAyB,qBAC9B,CAAA,sCAEC,SAAQ,EAAA,EAAA,SAAA,EAAU,kFACd,EAAA,EAAA,CAAC,sCAEM,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,SAAI,SAAU,EAAA,6FAAA,EAAA,EACV,aACL,CACA,kBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACG,SAAU,EAAA,mBAAA;AAAA,QACV,MAAK,EAAY,GAAA,QAAA,KAAA,IAAA,GAAA,EAAA,GAAA,EAAA;AAAA,QACjB,GAAI,EAAA,gBAAA;AAAA,OAAA;AAAA,KAER,kBAAA,KAAA,CAAA,aAAA,CAAC,KAAI,EAAA,EAAA,SAAA,EAAU,6FACV,EAAA,EAAA,aACL,CACJ,CAER,CAEA,kBAAA,KAAA,CAAA,aAAA,CAAC,KAAI,EAAA,EAAA,SAAA,EAAU,oCACX,EAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,GAAA;AAAA,MAAA;AAAA,QACG,SAAU,EAAA,oFAAA;AAAA,QACV,aAAY,EAAA,wBAAA;AAAA,OAAA;AAAA,MACf,YAAA;AAAA,sBACc,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAK,SAAU,EAAA,yBAAA,EAAA,EAA2B,UAAW,CAAA;AAAA,MAAO,KAAA;AAAA,MAAI,GAAA;AAAA,MAC1E,SAAa,IAAA,IAAA,GAAA,SAAA,GAAA,EAAA;AAAA,MAAG,KAAA;AAAA,MAAI,GAAA;AAAA,sBACpB,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAK,SAAU,EAAA,yBAAA,EAAA,EAA0B,KAAE,UAAW,CAAA;AAAA,KAE/D,CAEA,kBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACG,OAAS,EAAA,WAAA;AAAA,QACT,SAAU,EAAA,gFAAA;AAAA,OAAA;AAAA,sBAEV,KAAA,CAAA,aAAA,CAAC,UAAK,SAAU,EAAA,qBAAA,EAAA,sCACX,GAAE,EAAA,EAAA,SAAA,EAAU,mBAAoB,EAAA,EAAA,cAAY,CACjD,CAAA;AAAA,KAER,CAAA;AAAA,wCAEC,KAAI,EAAA,EAAA,SAAA,EAAU,6DACV,KAAA,CAAA,aAAA,CAAA,2BAAA,EAAA,EAA4B,SAAkB,CACnD,CAAA;AAAA,GACJ,CAAA;AAER,CAAA;;ACnIA,MAAM,UAAa,GAAA,OAAA,CAAA;AACnB,MAAM,SAAY,GAAA,MAAA,CAAA;AAkBX,MAAM,gBAAkD,CAAC;AAAA,EAC5D,UAAA;AAAA,EACA,cAAA;AAAA,EACA,cAAA;AAAA,EACA,SAAY,GAAA,EAAA;AAAA,EACZ,OAAU,GAAA,KAAA;AAAA,EACV,eAAe,EAAC;AAAA,EAChB,kBAAqB,GAAA,KAAA;AAAA,EACrB,qBAAA;AAAA,EACA,oBAAA;AAAA,EACA,wBAAA;AAAA,EACA,iBAAA;AAAA,EACA,0BAAA;AAAA,EACA,qBAAA;AACJ,CAAM,KAAA;AACF,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAS,UAAU,CAAA,CAAA;AACrD,EAAM,MAAA;AAAA,IACF,KAAA;AAAA,IACA,SAAA;AAAA,IACA,MAAQ,EAAA,OAAA;AAAA,IACR,MAAQ,EAAA,OAAA;AAAA,IACR,iBAAA;AAAA,GACJ,GAAI,sBAAsB,UAAU,CAAA,CAAA;AACpC,EAAA,MAAM,SAAS,cAAkB,IAAA,OAAA,CAAA;AACjC,EAAA,MAAM,SAAS,cAAkB,IAAA,OAAA,CAAA;AAEjC,EAAA,MAAM,aAAa,MAAM;AACrB,IAAA,IAAI,cAAc,UAAY,EAAA;AAC1B,MAAA,YAAA,CAAa,SAAS,CAAA,CAAA;AAAA,KAC1B;AACA,IAAA,IAAI,cAAc,SAAW,EAAA;AACzB,MAAA,YAAA,CAAa,UAAU,CAAA,CAAA;AAAA,KAC3B;AAAA,GACJ,CAAA;AAEA,EACI,uBAAA,KAAA,CAAA,aAAA,CAAC,cAAW,SACR,EAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,kBAAA;AAAA,IAAA;AAAA,MACG,KAAA;AAAA,MACA,iBAAA;AAAA,MACA,qBAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,qBAAA;AAAA,MACA,oBAAA;AAAA,MACA,0BAAA;AAAA,MACA,iBAAA;AAAA,MACA,kBAAA;AAAA,MACA,SAAA;AAAA,MACA,SAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAa,EAAA,UAAA;AAAA,KAAA;AAAA,GAEjB,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,iBAAA;AAAA,IAAA;AAAA,MACG,KAAA;AAAA,MACA,iBAAA;AAAA,MACA,wBAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,SAAA;AAAA,MACA,OAAA;AAAA,MACA,YAAA;AAAA,MACA,WAAa,EAAA,UAAA;AAAA,KAAA;AAAA,GAErB,CAAA,CAAA;AAER;;;;"}
|
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import React, { useRef, useEffect, useState, createContext, Component, Children, cloneElement, useLayoutEffect } from 'react';
|
|
2
|
-
import './index-4fa491c1.js';
|
|
3
2
|
import { a as VCVerificationCheckWithSpinner } from './VCVerificationCheck-8b8b7a76.js';
|
|
4
3
|
import { U as UserProfilePicture } from './UserProfilePicture-7b950437.js';
|
|
5
|
-
import { a as getColorForVerificationStatus, j as format$1, h as getNameFromProfile, i as getImageFromProfile, b as getInfoFromCredential, k as getCategoryColor, g as getTotalCountOfSkills, c as categorizeSkills } from './credential.helpers-
|
|
6
|
-
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, t as truncateWithEllipsis, V as VERIFIER_STATES$1, a as VerifierStateBadgeAndText, P as PersonBadge,
|
|
4
|
+
import { a as getColorForVerificationStatus, j as format$1, h as getNameFromProfile, i as getImageFromProfile, b as getInfoFromCredential, k as getCategoryColor, g as getTotalCountOfSkills, c as categorizeSkills } from './credential.helpers-2a0afd7e.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, t as truncateWithEllipsis, i as isAppDidWeb, V as VERIFIER_STATES$1, a as VerifierStateBadgeAndText, P as PersonBadge, j as VerifiedBadge, U as UnknownVerifierBadge, k as RedFlag } from './VerifierStateBadgeAndText-6185da81.js';
|
|
7
6
|
import './index-eae3ca64.js';
|
|
8
7
|
import { L as Lightbox, X } from './Lightbox-f0338a0c.js';
|
|
9
|
-
import { V as VerificationStatusEnum } from './types.esm-
|
|
10
|
-
import { A as AlignmentsBox, b as CertificateDisplayCard } from './CertificateDisplayCard-
|
|
8
|
+
import { V as VerificationStatusEnum } from './types.esm-52881edf.js';
|
|
9
|
+
import { A as AlignmentsBox, b as CertificateDisplayCard } from './CertificateDisplayCard-5cf493af.js';
|
|
11
10
|
import { I as IDIcon, Q as QRCodeIcon, A as AwardRibbon } from './QRCodeIcon-8eef4f7c.js';
|
|
12
11
|
import { a as LCCategoryEnum } from './index-28917993.js';
|
|
13
12
|
import { P as PuzzlePiece } from './PuzzlePiece-a3d9cc62.js';
|
|
14
13
|
import IDSleeve from './id-sleeve.png';
|
|
15
|
-
import { a as MeritBadgeDisplayCard } from './MeritBadgeDisplayCard-
|
|
14
|
+
import { a as MeritBadgeDisplayCard } from './MeritBadgeDisplayCard-f4461df0.js';
|
|
16
15
|
|
|
17
16
|
const RoundedX = ({ className = "" }) => {
|
|
18
17
|
return /* @__PURE__ */ React.createElement(
|
|
@@ -864,6 +863,7 @@ const VC2FrontFaceInfo = ({
|
|
|
864
863
|
issuerImageComponent
|
|
865
864
|
);
|
|
866
865
|
const issuerDid = typeof credential.issuer === "string" ? credential.issuer : credential.issuer.id;
|
|
866
|
+
const isAppIssuerDid = isAppDidWeb(issuerDid);
|
|
867
867
|
let verifierState;
|
|
868
868
|
if ((credentialSubject == null ? void 0 : credentialSubject.id) === issuerDid && issuerDid && issuerDid !== "did:example:123") {
|
|
869
869
|
verifierState = VERIFIER_STATES$1.selfVerified;
|
|
@@ -875,9 +875,9 @@ const VC2FrontFaceInfo = ({
|
|
|
875
875
|
} else if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "untrusted") {
|
|
876
876
|
verifierState = VERIFIER_STATES$1.untrustedVerifier;
|
|
877
877
|
} else if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "unknown") {
|
|
878
|
-
verifierState = VERIFIER_STATES$1.unknownVerifier;
|
|
878
|
+
verifierState = isAppIssuerDid ? VERIFIER_STATES$1.appIssuer : VERIFIER_STATES$1.unknownVerifier;
|
|
879
879
|
} else {
|
|
880
|
-
verifierState = VERIFIER_STATES$1.unknownVerifier;
|
|
880
|
+
verifierState = isAppIssuerDid ? VERIFIER_STATES$1.appIssuer : VERIFIER_STATES$1.unknownVerifier;
|
|
881
881
|
}
|
|
882
882
|
}
|
|
883
883
|
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(
|
|
@@ -936,6 +936,7 @@ const VERIFIER_STATES = {
|
|
|
936
936
|
selfVerified: "Self Issued",
|
|
937
937
|
trustedVerifier: "Trusted Issuer",
|
|
938
938
|
unknownVerifier: "Unknown Issuer",
|
|
939
|
+
appIssuer: "Trusted App",
|
|
939
940
|
untrustedVerifier: "Untrusted Issuer"
|
|
940
941
|
};
|
|
941
942
|
const VCIDDisplayFrontFace = ({
|
|
@@ -955,6 +956,7 @@ const VCIDDisplayFrontFace = ({
|
|
|
955
956
|
uppercaseDate: false
|
|
956
957
|
});
|
|
957
958
|
const issuerDid = typeof credential.issuer === "string" ? credential.issuer : credential.issuer.id;
|
|
959
|
+
const isAppIssuerDid = isAppDidWeb(issuerDid);
|
|
958
960
|
let verifierState;
|
|
959
961
|
if ((credentialSubject == null ? void 0 : credentialSubject.id) === issuerDid && issuerDid && issuerDid !== "did:example:123") {
|
|
960
962
|
verifierState = VERIFIER_STATES.selfVerified;
|
|
@@ -966,15 +968,15 @@ const VCIDDisplayFrontFace = ({
|
|
|
966
968
|
} else if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "untrusted") {
|
|
967
969
|
verifierState = VERIFIER_STATES.untrustedVerifier;
|
|
968
970
|
} else if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "unknown") {
|
|
969
|
-
verifierState = VERIFIER_STATES.unknownVerifier;
|
|
971
|
+
verifierState = isAppIssuerDid ? VERIFIER_STATES.appIssuer : VERIFIER_STATES.unknownVerifier;
|
|
970
972
|
} else {
|
|
971
|
-
verifierState = VERIFIER_STATES.unknownVerifier;
|
|
973
|
+
verifierState = isAppIssuerDid ? VERIFIER_STATES.appIssuer : VERIFIER_STATES.unknownVerifier;
|
|
972
974
|
}
|
|
973
975
|
}
|
|
974
976
|
const isSelfVerified = verifierState === VERIFIER_STATES.selfVerified;
|
|
975
977
|
const achievement = "achievement" in (credential == null ? void 0 : credential.credentialSubject) ? (_a = credential == null ? void 0 : credential.credentialSubject) == null ? void 0 : _a.achievement : void 0;
|
|
976
978
|
const description = achievement == null ? void 0 : achievement.description;
|
|
977
|
-
return /* @__PURE__ */ React.createElement(h, { className: "w-full", flipKey: isFront }, /* @__PURE__ */ React.createElement(v, { flipId: "face" }, /* @__PURE__ */ React.createElement("section", { className: "vc-front-face w-full flex flex-col items-center gap-[15px]" }, /* @__PURE__ */ React.createElement(v, { inverseFlipId: "face" }, customThumbComponent
|
|
979
|
+
return /* @__PURE__ */ React.createElement(h, { className: "w-full", flipKey: isFront }, /* @__PURE__ */ React.createElement(v, { flipId: "face" }, /* @__PURE__ */ React.createElement("section", { className: "vc-front-face w-full flex flex-col items-center gap-[15px]" }, /* @__PURE__ */ React.createElement(v, { inverseFlipId: "face" }, customThumbComponent), /* @__PURE__ */ React.createElement(v, { inverseFlipId: "face" }, /* @__PURE__ */ React.createElement("div", { className: "text-white w-full flex items-center justify-center font-poppins" }, /* @__PURE__ */ React.createElement(IDIcon, { className: "text-white mr-1" }), " ID")), /* @__PURE__ */ React.createElement(v, { inverseFlipId: "face" }, /* @__PURE__ */ React.createElement("div", { className: "w-full relative" }, !hideQRCode && /* @__PURE__ */ React.createElement(
|
|
978
980
|
"button",
|
|
979
981
|
{
|
|
980
982
|
onClick: (e) => {
|
|
@@ -1001,7 +1003,7 @@ const VCIDDisplayFrontFace = ({
|
|
|
1001
1003
|
onClick: () => setIsFront(!isFront)
|
|
1002
1004
|
},
|
|
1003
1005
|
"Details"
|
|
1004
|
-
), /* @__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.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")))))));
|
|
1006
|
+
), /* @__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")))))));
|
|
1005
1007
|
};
|
|
1006
1008
|
|
|
1007
1009
|
const VCIDDisplayCard = ({
|
|
@@ -1445,4 +1447,4 @@ const VCDisplayCard2 = ({
|
|
|
1445
1447
|
};
|
|
1446
1448
|
|
|
1447
1449
|
export { VCDisplayCard2 as V, VCDisplayCardSkillsCount as a, VCIDDisplayCard as b };
|
|
1448
|
-
//# sourceMappingURL=VCDisplayCard2-
|
|
1450
|
+
//# sourceMappingURL=VCDisplayCard2-cb81b527.js.map
|