@learncard/react 2.6.63 → 2.6.65
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/Accommodation-Hands.png +0 -0
- package/dist/cjs/{AchievementCard-a52e4f25.js → AchievementCard-040be8e5.js} +2 -2
- package/dist/cjs/{AchievementCard-a52e4f25.js.map → AchievementCard-040be8e5.js.map} +1 -1
- package/dist/cjs/{BoostGenericCard-7426cbea.js → BoostGenericCard-227b905d.js} +2 -2
- package/dist/cjs/{BoostGenericCard-7426cbea.js.map → BoostGenericCard-227b905d.js.map} +1 -1
- package/dist/cjs/{BoostSmallCard-0b3a3dd8.js → BoostSmallCard-1818c2a8.js} +2 -2
- package/dist/cjs/{BoostSmallCard-0b3a3dd8.js.map → BoostSmallCard-1818c2a8.js.map} +1 -1
- package/dist/cjs/{CertificateDisplayCard-eb505657.js → CertificateDisplayCard-07e6a4e9.js} +39 -25
- package/dist/cjs/{CertificateDisplayCard-eb505657.js.map → CertificateDisplayCard-07e6a4e9.js.map} +1 -1
- package/dist/cjs/{GenericCard-6f8770f5.js → GenericCard-42a558e2.js} +2 -2
- package/dist/cjs/{GenericCard-6f8770f5.js.map → GenericCard-42a558e2.js.map} +1 -1
- package/dist/cjs/{JobListCard-ccc86b2e.js → JobListCard-ce1ffea5.js} +2 -2
- package/dist/cjs/{JobListCard-ccc86b2e.js.map → JobListCard-ce1ffea5.js.map} +1 -1
- package/dist/cjs/{LearnPill-0ca6cc11.js → LearnPill-7c351a33.js} +2 -2
- package/dist/cjs/{LearnPill-0ca6cc11.js.map → LearnPill-7c351a33.js.map} +1 -1
- package/dist/cjs/{Lightbulb-1c28af02.js → Lightbulb-19c89d3c.js} +16 -1
- package/dist/cjs/Lightbulb-19c89d3c.js.map +1 -0
- package/dist/cjs/{AwardRibbon-14ba45fb.js → QRCodeIcon-81c6e96b.js} +64 -1
- package/dist/cjs/QRCodeIcon-81c6e96b.js.map +1 -0
- package/dist/cjs/{RoundedSquare-caa49231.js → RoundedSquare-898fd68c.js} +2 -2
- package/dist/cjs/{RoundedSquare-caa49231.js.map → RoundedSquare-898fd68c.js.map} +1 -1
- package/dist/cjs/{VCCard-e9147997.js → VCCard-835b3132.js} +8 -6
- package/dist/cjs/{VCCard-e9147997.js.map → VCCard-835b3132.js.map} +1 -1
- package/dist/cjs/{VCDisplayBackFace-3d2ef528.js → VCDisplayBackFace-7df2a29d.js} +2 -2
- package/dist/cjs/{VCDisplayBackFace-3d2ef528.js.map → VCDisplayBackFace-7df2a29d.js.map} +1 -1
- package/dist/cjs/{VCDisplayCard-244451a9.js → VCDisplayCard-c54d55b9.js} +3 -3
- package/dist/cjs/{VCDisplayCard-244451a9.js.map → VCDisplayCard-c54d55b9.js.map} +1 -1
- package/dist/cjs/{VCDisplayCard2-159e6248.js → VCDisplayCard2-b016c80e.js} +202 -21
- package/dist/cjs/VCDisplayCard2-b016c80e.js.map +1 -0
- package/dist/cjs/apple.png +0 -0
- package/dist/cjs/{constants-bf970829.js → constants-93a826a5.js} +5 -5
- package/dist/cjs/constants-93a826a5.js.map +1 -0
- package/dist/cjs/{credential.helpers-69dff6ee.js → credential.helpers-da2a9c40.js} +6 -5
- package/dist/{esm/credential.helpers-7658d821.js.map → cjs/credential.helpers-da2a9c40.js.map} +1 -1
- package/dist/cjs/id-sleeve.png +0 -0
- package/dist/cjs/{index-c570c8fb.js → index-810a6027.js} +5 -5
- package/dist/cjs/index-810a6027.js.map +1 -0
- package/dist/cjs/{index.es-f433af46.js → index.es-fd7e56d1.js} +1 -1
- package/dist/cjs/index.es-fd7e56d1.js.map +1 -0
- package/dist/cjs/index.js +45 -38
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index12.js +4 -4
- package/dist/cjs/index13.js +45 -38
- package/dist/cjs/index13.js.map +1 -1
- package/dist/cjs/index15.js +4 -4
- package/dist/cjs/index18.js +4 -4
- package/dist/cjs/index2.js +4 -4
- package/dist/cjs/index28.js +5 -5
- package/dist/cjs/index3.js +4 -4
- package/dist/cjs/index35.js +6 -3
- package/dist/cjs/index35.js.map +1 -1
- package/dist/cjs/index36.js +14 -13
- package/dist/cjs/index36.js.map +1 -1
- package/dist/cjs/index37.js +9 -8
- package/dist/cjs/index37.js.map +1 -1
- package/dist/cjs/index38.js +10 -9
- package/dist/cjs/index38.js.map +1 -1
- package/dist/cjs/index39.js +12 -10
- package/dist/cjs/index39.js.map +1 -1
- package/dist/cjs/index4.js +4 -4
- package/dist/cjs/index40.js +7 -6
- package/dist/cjs/index40.js.map +1 -1
- package/dist/cjs/index6.js +15 -12
- package/dist/cjs/index6.js.map +1 -1
- package/dist/esm/Accommodation-Hands.png +0 -0
- package/dist/esm/{AchievementCard-e83fb98a.js → AchievementCard-6a2e0157.js} +2 -2
- package/dist/esm/{AchievementCard-e83fb98a.js.map → AchievementCard-6a2e0157.js.map} +1 -1
- package/dist/esm/{BoostGenericCard-d691d173.js → BoostGenericCard-819edafe.js} +2 -2
- package/dist/esm/{BoostGenericCard-d691d173.js.map → BoostGenericCard-819edafe.js.map} +1 -1
- package/dist/esm/{BoostSmallCard-ece551a1.js → BoostSmallCard-7397a49f.js} +2 -2
- package/dist/esm/{BoostSmallCard-ece551a1.js.map → BoostSmallCard-7397a49f.js.map} +1 -1
- package/dist/esm/{CertificateDisplayCard-c957fc65.js → CertificateDisplayCard-17349700.js} +34 -26
- package/dist/esm/{CertificateDisplayCard-c957fc65.js.map → CertificateDisplayCard-17349700.js.map} +1 -1
- package/dist/esm/{GenericCard-a4de814a.js → GenericCard-f2ca2e70.js} +2 -2
- package/dist/esm/{GenericCard-a4de814a.js.map → GenericCard-f2ca2e70.js.map} +1 -1
- package/dist/esm/{JobListCard-c0e65ce0.js → JobListCard-8eb5c695.js} +2 -2
- package/dist/esm/{JobListCard-c0e65ce0.js.map → JobListCard-8eb5c695.js.map} +1 -1
- package/dist/esm/{LearnPill-c3773645.js → LearnPill-45f11cf2.js} +2 -2
- package/dist/esm/{LearnPill-c3773645.js.map → LearnPill-45f11cf2.js.map} +1 -1
- package/dist/esm/{Lightbulb-a3c1679f.js → Lightbulb-b6eca510.js} +16 -2
- package/dist/esm/Lightbulb-b6eca510.js.map +1 -0
- package/dist/esm/{AwardRibbon-3e682281.js → QRCodeIcon-e9569804.js} +63 -2
- package/dist/esm/QRCodeIcon-e9569804.js.map +1 -0
- package/dist/esm/{RoundedSquare-80a5d236.js → RoundedSquare-bd85712f.js} +2 -2
- package/dist/esm/{RoundedSquare-80a5d236.js.map → RoundedSquare-bd85712f.js.map} +1 -1
- package/dist/esm/{VCCard-b2d4987a.js → VCCard-c4f21ead.js} +8 -6
- package/dist/esm/{VCCard-b2d4987a.js.map → VCCard-c4f21ead.js.map} +1 -1
- package/dist/esm/{VCDisplayBackFace-2c25ac06.js → VCDisplayBackFace-5bc37282.js} +2 -2
- package/dist/esm/{VCDisplayBackFace-2c25ac06.js.map → VCDisplayBackFace-5bc37282.js.map} +1 -1
- package/dist/esm/{VCDisplayCard-0dffb43a.js → VCDisplayCard-316b0158.js} +3 -3
- package/dist/esm/{VCDisplayCard-0dffb43a.js.map → VCDisplayCard-316b0158.js.map} +1 -1
- package/dist/esm/{VCDisplayCard2-0f7dc0fa.js → VCDisplayCard2-807ce71f.js} +201 -22
- package/dist/esm/VCDisplayCard2-807ce71f.js.map +1 -0
- package/dist/esm/apple.png +0 -0
- package/dist/esm/{constants-acd78b79.js → constants-ee2b8bc3.js} +4 -4
- package/dist/esm/constants-ee2b8bc3.js.map +1 -0
- package/dist/esm/{credential.helpers-7658d821.js → credential.helpers-ca3bdf87.js} +6 -5
- package/dist/{cjs/credential.helpers-69dff6ee.js.map → esm/credential.helpers-ca3bdf87.js.map} +1 -1
- package/dist/esm/id-sleeve.png +0 -0
- package/dist/esm/{index-1a9a2345.js → index-5ebb2b5d.js} +4 -4
- package/dist/esm/index-5ebb2b5d.js.map +1 -0
- package/dist/esm/{index.es-76d64136.js → index.es-e74617b9.js} +1 -1
- package/dist/esm/index.es-e74617b9.js.map +1 -0
- package/dist/esm/index.js +35 -34
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index12.js +4 -4
- package/dist/esm/index13.js +35 -34
- package/dist/esm/index13.js.map +1 -1
- package/dist/esm/index15.js +4 -4
- package/dist/esm/index18.js +4 -4
- package/dist/esm/index2.js +4 -4
- package/dist/esm/index28.js +5 -5
- package/dist/esm/index3.js +4 -4
- package/dist/esm/index35.js +2 -2
- package/dist/esm/index36.js +14 -13
- package/dist/esm/index36.js.map +1 -1
- package/dist/esm/index37.js +9 -8
- package/dist/esm/index37.js.map +1 -1
- package/dist/esm/index38.js +10 -9
- package/dist/esm/index38.js.map +1 -1
- package/dist/esm/index39.js +11 -10
- package/dist/esm/index39.js.map +1 -1
- package/dist/esm/index4.js +4 -4
- package/dist/esm/index40.js +7 -6
- package/dist/esm/index40.js.map +1 -1
- package/dist/esm/index6.js +13 -12
- package/dist/esm/index6.js.map +1 -1
- package/dist/index.d.ts +66 -1
- package/dist/main.css +1 -1
- package/dist/main.js +1 -1
- package/package.json +2 -1
- package/dist/cjs/AwardRibbon-14ba45fb.js.map +0 -1
- package/dist/cjs/Lightbulb-1c28af02.js.map +0 -1
- package/dist/cjs/VCDisplayCard2-159e6248.js.map +0 -1
- package/dist/cjs/accommodation-hands.svg +0 -19
- package/dist/cjs/constants-bf970829.js.map +0 -1
- package/dist/cjs/index-c570c8fb.js.map +0 -1
- package/dist/cjs/index.es-f433af46.js.map +0 -1
- package/dist/cjs/ladder.svg +0 -9
- package/dist/esm/AwardRibbon-3e682281.js.map +0 -1
- package/dist/esm/Lightbulb-a3c1679f.js.map +0 -1
- package/dist/esm/VCDisplayCard2-0f7dc0fa.js.map +0 -1
- package/dist/esm/accommodation-hands.svg +0 -19
- package/dist/esm/constants-acd78b79.js.map +0 -1
- package/dist/esm/index-1a9a2345.js.map +0 -1
- package/dist/esm/index.es-76d64136.js.map +0 -1
- package/dist/esm/ladder.svg +0 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VCDisplayCard-0dffb43a.js","sources":["../../src/components/VCDisplayFrontFace/VCDisplayFrontFace.tsx","../../src/components/VCDisplayCard/VCDisplayCard.tsx"],"sourcesContent":["import React from 'react';\nimport { VCDisplayCardProps } from '../../types';\nimport FatArrow from '../../assets/images/icon.green.fat-arrow.png';\nimport FlipArrowRight from '../../assets/images/ArrowArcRight.svg';\nimport DefaultFace from '../../assets/images/default-face.jpeg';\nimport { VCVerificationCheckWithText } from '../VCVerificationCheck/VCVerificationCheck';\nimport { getImageFromProfile, getNameFromProfile } from '../../helpers/credential.helpers';\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 const issuerNameAbr = issuerName?.slice(0, 1) ?? '';\n\n let issueeImageEl: React.ReactNode | null = null;\n const issuerImgExists = issuerImage && issuerImage !== '';\n const issueeImgExists = issueeImage && issueeImage !== '';\n if (issueeImgExists) {\n issueeImageEl = (\n <div className=\"flex flex-row items-center justify-center h-full w-full rounded-full border-solid border-4 border-white overflow-hidden bg-white\">\n <img\n className=\"h-full w-full object-cover\"\n src={issueeImage || DefaultFace}\n alt=\"Issuee image\"\n />\n </div>\n );\n } else if (!issueeImgExists && subjectImageComponent) {\n issueeImageEl = subjectImageComponent;\n }\n\n let issuerImageEl: React.ReactNode | null = null;\n\n if (issuerImgExists) {\n issuerImageEl = (\n <img className=\"w-4/6 h-4/6 object-cover\" src={issuerImage} alt=\"Issuer image\" />\n );\n } else {\n issuerImageEl = (\n <div className=\"flex flex-row items-center justify-center h-full w-full overflow-hidden bg-emerald-700 text-white font-medium text-3xl\">\n {issuerNameAbr}\n </div>\n );\n }\n\n if (issuerImageComponent) {\n issuerImageEl = issuerImageComponent;\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-316b0158.js","sources":["../../src/components/VCDisplayFrontFace/VCDisplayFrontFace.tsx","../../src/components/VCDisplayCard/VCDisplayCard.tsx"],"sourcesContent":["import React from 'react';\nimport { VCDisplayCardProps } from '../../types';\nimport FatArrow from '../../assets/images/icon.green.fat-arrow.png';\nimport FlipArrowRight from '../../assets/images/ArrowArcRight.svg';\nimport DefaultFace from '../../assets/images/default-face.jpeg';\nimport { VCVerificationCheckWithText } from '../VCVerificationCheck/VCVerificationCheck';\nimport { getImageFromProfile, getNameFromProfile } from '../../helpers/credential.helpers';\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 const issuerNameAbr = issuerName?.slice(0, 1) ?? '';\n\n let issueeImageEl: React.ReactNode | null = null;\n const issuerImgExists = issuerImage && issuerImage !== '';\n const issueeImgExists = issueeImage && issueeImage !== '';\n if (issueeImgExists) {\n issueeImageEl = (\n <div className=\"flex flex-row items-center justify-center h-full w-full rounded-full border-solid border-4 border-white overflow-hidden bg-white\">\n <img\n className=\"h-full w-full object-cover\"\n src={issueeImage || DefaultFace}\n alt=\"Issuee image\"\n />\n </div>\n );\n } else if (!issueeImgExists && subjectImageComponent) {\n issueeImageEl = subjectImageComponent;\n }\n\n let issuerImageEl: React.ReactNode | null = null;\n\n if (issuerImgExists) {\n issuerImageEl = (\n <img className=\"w-4/6 h-4/6 object-cover\" src={issuerImage} alt=\"Issuer image\" />\n );\n } else {\n issuerImageEl = (\n <div className=\"flex flex-row items-center justify-center h-full w-full overflow-hidden bg-emerald-700 text-white font-medium text-3xl\">\n {issuerNameAbr}\n </div>\n );\n }\n\n if (issuerImageComponent) {\n issuerImageEl = issuerImageComponent;\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,13 +1,14 @@
|
|
|
1
1
|
import React, { useRef, useEffect, useState, useLayoutEffect } from 'react';
|
|
2
|
-
import { h, y } from './index.es-
|
|
2
|
+
import { h, y } from './index.es-e74617b9.js';
|
|
3
3
|
import { a as VCVerificationCheckWithSpinner } from './VCVerificationCheck-80249524.js';
|
|
4
4
|
import DefaultFace from './default-face.jpeg';
|
|
5
|
-
import { g as getColorForVerificationStatus, j as format, h as getNameFromProfile, i as getImageFromProfile, k as getCategoryColor, a as getInfoFromCredential } from './credential.helpers-
|
|
6
|
-
import { g as getBaseUrl,
|
|
5
|
+
import { g as getColorForVerificationStatus, j as format, h as getNameFromProfile, i as getImageFromProfile, k as getCategoryColor, a as getInfoFromCredential } from './credential.helpers-ca3bdf87.js';
|
|
6
|
+
import { g as getBaseUrl, c as VideoIcon, d as Camera, G as GenericDocumentIcon, L as LinkIcon, p as prettyBytes, e as capitalize, X, E as ExclamationPoint, A as AcuteCheckmark, I as InfoIcon, f as SkillsBox, h as AlignmentsBox, t as truncateWithEllipsis, P as PersonBadge, i as VerifiedBadge, U as UnknownVerifierBadge, R as RedFlag, a as CertificateDisplayCard, V as VCDisplayCardSkillsCount } from './CertificateDisplayCard-17349700.js';
|
|
7
7
|
import { L as Lightbox } from './Lightbox-a1aab9ea.js';
|
|
8
8
|
import { a as VerificationStatusEnum } from './VCVerificationPill-2297bb5c.js';
|
|
9
|
-
import { A as AwardRibbon } from './
|
|
9
|
+
import { I as IDIcon, Q as QRCodeIcon, A as AwardRibbon } from './QRCodeIcon-e9569804.js';
|
|
10
10
|
import { a as LCCategoryEnum } from './index-43f63ea7.js';
|
|
11
|
+
import IDSleeve from './id-sleeve.png';
|
|
11
12
|
import './CaretRightFilled.svg';
|
|
12
13
|
import 'react-dom';
|
|
13
14
|
import './athletics.svg';
|
|
@@ -419,23 +420,26 @@ const RibbonEnd = ({
|
|
|
419
420
|
};
|
|
420
421
|
|
|
421
422
|
const TruncateTextBox = ({
|
|
422
|
-
headerText,
|
|
423
|
+
headerText = "",
|
|
423
424
|
headerClassName = "",
|
|
424
425
|
text,
|
|
425
426
|
truncateThreshold = 132,
|
|
426
427
|
children,
|
|
427
|
-
className = "truncate-text-box"
|
|
428
|
+
className = "truncate-text-box",
|
|
429
|
+
containerClassName = "",
|
|
430
|
+
textClassName = ""
|
|
428
431
|
}) => {
|
|
429
432
|
const needsTruncate = (text == null ? void 0 : text.length) > truncateThreshold;
|
|
430
433
|
const [showFullText, setShowFullText] = useState(false);
|
|
431
434
|
const truncated = needsTruncate && !showFullText;
|
|
432
435
|
const displayText = truncated ? text.substring(0, truncateThreshold) : text;
|
|
436
|
+
const defaultStyles = "shadow-bottom px-[15px] py-[20px]";
|
|
433
437
|
return /* @__PURE__ */ React.createElement("div", {
|
|
434
|
-
className: `${className} bg-white flex flex-col items-start gap-[10px] rounded-[20px]
|
|
435
|
-
}, /* @__PURE__ */ React.createElement("h3", {
|
|
438
|
+
className: `${className} ${defaultStyles} bg-white flex flex-col items-start gap-[10px] rounded-[20px] w-full ${containerClassName}`
|
|
439
|
+
}, headerText && /* @__PURE__ */ React.createElement("h3", {
|
|
436
440
|
className: `${headerClassName} text-[20px] leading-[20px] text-grayscale-900`
|
|
437
441
|
}, headerText), /* @__PURE__ */ React.createElement("p", {
|
|
438
|
-
className:
|
|
442
|
+
className: `text-[12px] text-grayscale-700 leading-[18px] font-poppins font-[400] mb-0 ${textClassName}`
|
|
439
443
|
}, displayText, truncated && /* @__PURE__ */ React.createElement(React.Fragment, null, "...", " ", /* @__PURE__ */ React.createElement("button", {
|
|
440
444
|
className: "text-indigo-500 font-[700]",
|
|
441
445
|
onClick: () => setShowFullText(true)
|
|
@@ -631,6 +635,153 @@ const VCDisplayCardCategoryType = ({
|
|
|
631
635
|
}, categoryType);
|
|
632
636
|
};
|
|
633
637
|
|
|
638
|
+
const VERIFIER_STATES = {
|
|
639
|
+
selfVerified: "Self Verified",
|
|
640
|
+
trustedVerifier: "Trusted Verifier",
|
|
641
|
+
unknownVerifier: "Unknown Verifier",
|
|
642
|
+
untrustedVerifier: "Untrusted Verifier"
|
|
643
|
+
};
|
|
644
|
+
const VCIDDisplayFrontFace = ({
|
|
645
|
+
credential,
|
|
646
|
+
trustedAppRegistry,
|
|
647
|
+
customThumbComponent
|
|
648
|
+
}) => {
|
|
649
|
+
var _a;
|
|
650
|
+
const { credentialSubject } = getInfoFromCredential(credential, "MMM dd, yyyy", {
|
|
651
|
+
uppercaseDate: false
|
|
652
|
+
});
|
|
653
|
+
const issuerDid = typeof credential.issuer === "string" ? credential.issuer : credential.issuer.id;
|
|
654
|
+
let verifierState;
|
|
655
|
+
if ((credentialSubject == null ? void 0 : credentialSubject.id) === issuerDid && issuerDid && issuerDid !== "did:example:123") {
|
|
656
|
+
verifierState = VERIFIER_STATES.selfVerified;
|
|
657
|
+
} else {
|
|
658
|
+
const appRegistryEntry = trustedAppRegistry == null ? void 0 : trustedAppRegistry.find((registryEntry) => registryEntry.did === issuerDid);
|
|
659
|
+
if (appRegistryEntry) {
|
|
660
|
+
verifierState = appRegistryEntry.isTrusted ? VERIFIER_STATES.trustedVerifier : VERIFIER_STATES.untrustedVerifier;
|
|
661
|
+
} else {
|
|
662
|
+
verifierState = VERIFIER_STATES.unknownVerifier;
|
|
663
|
+
}
|
|
664
|
+
}
|
|
665
|
+
const isSelfVerified = verifierState === VERIFIER_STATES.selfVerified;
|
|
666
|
+
const achievement = "achievement" in (credential == null ? void 0 : credential.credentialSubject) ? (_a = credential == null ? void 0 : credential.credentialSubject) == null ? void 0 : _a.achievement : void 0;
|
|
667
|
+
const description = achievement == null ? void 0 : achievement.description;
|
|
668
|
+
return /* @__PURE__ */ React.createElement("section", {
|
|
669
|
+
className: "vc-front-face w-full flex flex-col items-center gap-[15px]"
|
|
670
|
+
}, customThumbComponent && customThumbComponent, /* @__PURE__ */ React.createElement("div", {
|
|
671
|
+
className: "text-white w-full flex items-center justify-center font-poppins"
|
|
672
|
+
}, /* @__PURE__ */ React.createElement(IDIcon, {
|
|
673
|
+
className: "text-white mr-1"
|
|
674
|
+
}), " ID"), /* @__PURE__ */ React.createElement("div", {
|
|
675
|
+
className: "w-full relative"
|
|
676
|
+
}, /* @__PURE__ */ React.createElement("button", {
|
|
677
|
+
className: "text-grayscale-900 bg-white rounded-full p-[10px] absolute top-[-10px] right-[45%]"
|
|
678
|
+
}, /* @__PURE__ */ React.createElement(QRCodeIcon, {
|
|
679
|
+
className: "text-grayscale-900 "
|
|
680
|
+
})), /* @__PURE__ */ React.createElement("img", {
|
|
681
|
+
src: IDSleeve,
|
|
682
|
+
alt: "id-sleeve",
|
|
683
|
+
className: "w-full object-cover"
|
|
684
|
+
})), /* @__PURE__ */ React.createElement("div", {
|
|
685
|
+
className: "w-full bg-white relative mt-[-70px] px-6 pb-4 pt-4"
|
|
686
|
+
}, description && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(TruncateTextBox, {
|
|
687
|
+
text: description,
|
|
688
|
+
className: "description-box",
|
|
689
|
+
containerClassName: "!p-0 !shadow-none !text-center !w-full",
|
|
690
|
+
textClassName: "!font-poppins !text-base !text-grayscale-700 !text-center !w-full",
|
|
691
|
+
truncateThreshold: 204
|
|
692
|
+
}), /* @__PURE__ */ React.createElement("div", {
|
|
693
|
+
className: "w-full flex items-center justify-center mt-4"
|
|
694
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
695
|
+
className: "h-[2px] w-full bg-gray-200"
|
|
696
|
+
}))), /* @__PURE__ */ React.createElement("div", {
|
|
697
|
+
className: "w-full flex items-center justify-center mt-2"
|
|
698
|
+
}, isSelfVerified && /* @__PURE__ */ React.createElement("span", {
|
|
699
|
+
className: "uppercase font-poppins text-base font-[500] text-green-dark flex gap-[3px] items-center"
|
|
700
|
+
}, /* @__PURE__ */ React.createElement(PersonBadge, {
|
|
701
|
+
className: "w-[20px] h-[20px]"
|
|
702
|
+
}), "Self Verified"), verifierState === VERIFIER_STATES.trustedVerifier && /* @__PURE__ */ React.createElement("span", {
|
|
703
|
+
className: "uppercase font-poppins text-base font-[500] text-blue-light flex gap-[3px] items-center"
|
|
704
|
+
}, /* @__PURE__ */ React.createElement(VerifiedBadge, {
|
|
705
|
+
className: "w-[20px] h-[20px]"
|
|
706
|
+
}), "Trusted Verifier"), verifierState === VERIFIER_STATES.unknownVerifier && /* @__PURE__ */ React.createElement("span", {
|
|
707
|
+
className: "uppercase font-poppins text-base font-[500] text-orange-500 flex gap-[3px] items-center"
|
|
708
|
+
}, /* @__PURE__ */ React.createElement(UnknownVerifierBadge, {
|
|
709
|
+
className: "w-[20px] h-[20px]"
|
|
710
|
+
}), "Unknown Verifier"), verifierState === VERIFIER_STATES.untrustedVerifier && /* @__PURE__ */ React.createElement("span", {
|
|
711
|
+
className: "uppercase font-poppins text-base font-[500] text-red-mastercard flex gap-[3px] items-center"
|
|
712
|
+
}, /* @__PURE__ */ React.createElement(RedFlag, {
|
|
713
|
+
className: "w-[20px] h-[20px]"
|
|
714
|
+
}), "Untrusted Verifier"))));
|
|
715
|
+
};
|
|
716
|
+
|
|
717
|
+
const VCIDDisplayCard = ({
|
|
718
|
+
credential,
|
|
719
|
+
verificationItems,
|
|
720
|
+
getFileMetadata,
|
|
721
|
+
getVideoMetadata,
|
|
722
|
+
onMediaAttachmentClick,
|
|
723
|
+
customThumbComponent,
|
|
724
|
+
customCriteria,
|
|
725
|
+
customDescription,
|
|
726
|
+
customIssueHistoryComponent,
|
|
727
|
+
issueHistory,
|
|
728
|
+
showBackButton = true,
|
|
729
|
+
enableLightbox,
|
|
730
|
+
trustedAppRegistry,
|
|
731
|
+
customSkillsComponent,
|
|
732
|
+
isFrontOverride,
|
|
733
|
+
setIsFrontOverride,
|
|
734
|
+
hideNavButtons
|
|
735
|
+
}) => {
|
|
736
|
+
const [_isFront, _setIsFront] = useState(isFrontOverride != null ? isFrontOverride : true);
|
|
737
|
+
const isFront = isFrontOverride != null ? isFrontOverride : _isFront;
|
|
738
|
+
const setIsFront = setIsFrontOverride != null ? setIsFrontOverride : _setIsFront;
|
|
739
|
+
const backgroundStyle = {
|
|
740
|
+
backgroundColor: "linear-gradient(180deg, rgba(255,208,71,1) 0%, rgba(234,179,8,1) 100%)",
|
|
741
|
+
backgroundImage: "linear-gradient(180deg, rgba(255,208,71,1) 0%, rgba(234,179,8,1) 100%)",
|
|
742
|
+
backgroundSize: "cover",
|
|
743
|
+
backgroundPosition: "center",
|
|
744
|
+
backgroundAttachment: "fixed"
|
|
745
|
+
};
|
|
746
|
+
return /* @__PURE__ */ React.createElement(h, {
|
|
747
|
+
className: "w-full",
|
|
748
|
+
flipKey: isFront
|
|
749
|
+
}, /* @__PURE__ */ React.createElement(y, {
|
|
750
|
+
flipId: "card"
|
|
751
|
+
}, /* @__PURE__ */ React.createElement("section", {
|
|
752
|
+
className: `vc-display-card font-mouse flex flex-col items-center border-solid border-white rounded-[30px] z-10 max-w-[400px] relative bg-white shadow-3xl ${isFront ? "" : "min-h-[800px]"}`
|
|
753
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
754
|
+
className: "relative vc-card-content-container flex flex-col items-center grow min-h-0 w-full rounded-t-[30px] rounded-b-[30px] overflow-hidden",
|
|
755
|
+
style: backgroundStyle
|
|
756
|
+
}, /* @__PURE__ */ React.createElement(y, {
|
|
757
|
+
flipId: "scroll-container"
|
|
758
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
759
|
+
className: "vc-card-content-scroll-container w-full min-h-full flex flex-col justify-start items-center rounded-t-[30px] rounded-b-[30px] scrollbar-hide pt-[20px]"
|
|
760
|
+
}, isFront && /* @__PURE__ */ React.createElement(y, {
|
|
761
|
+
flipId: "face"
|
|
762
|
+
}, /* @__PURE__ */ React.createElement(VCIDDisplayFrontFace, {
|
|
763
|
+
customThumbComponent,
|
|
764
|
+
credential,
|
|
765
|
+
trustedAppRegistry
|
|
766
|
+
})), !isFront && /* @__PURE__ */ React.createElement(y, {
|
|
767
|
+
flipId: "face"
|
|
768
|
+
}, /* @__PURE__ */ React.createElement(VC2BackFace, {
|
|
769
|
+
credential,
|
|
770
|
+
verificationItems,
|
|
771
|
+
issueHistory,
|
|
772
|
+
getFileMetadata,
|
|
773
|
+
getVideoMetadata,
|
|
774
|
+
onMediaAttachmentClick,
|
|
775
|
+
showBackButton: showBackButton && !hideNavButtons,
|
|
776
|
+
showFrontFace: () => setIsFront(true),
|
|
777
|
+
customDescription,
|
|
778
|
+
customCriteria,
|
|
779
|
+
customIssueHistoryComponent,
|
|
780
|
+
enableLightbox,
|
|
781
|
+
customSkillsComponent
|
|
782
|
+
}))))))));
|
|
783
|
+
};
|
|
784
|
+
|
|
634
785
|
const VCDisplayCard2 = ({
|
|
635
786
|
categoryType,
|
|
636
787
|
credential,
|
|
@@ -661,9 +812,12 @@ const VCDisplayCard2 = ({
|
|
|
661
812
|
trustedAppRegistry,
|
|
662
813
|
hideIssueDate,
|
|
663
814
|
onDotsClick,
|
|
664
|
-
customSkillsComponent
|
|
815
|
+
customSkillsComponent,
|
|
816
|
+
isFrontOverride,
|
|
817
|
+
setIsFrontOverride,
|
|
818
|
+
hideNavButtons
|
|
665
819
|
}) => {
|
|
666
|
-
var _a, _b, _c, _d, _e
|
|
820
|
+
var _a, _b, _c, _d, _e;
|
|
667
821
|
const {
|
|
668
822
|
title = "",
|
|
669
823
|
createdAt,
|
|
@@ -673,7 +827,9 @@ const VCDisplayCard2 = ({
|
|
|
673
827
|
} = getInfoFromCredential(credential, "MMM dd, yyyy");
|
|
674
828
|
const issuee = issueeOverride || _issuee;
|
|
675
829
|
const issuer = issuerOverride || _issuer;
|
|
676
|
-
const [
|
|
830
|
+
const [_isFront, _setIsFront] = useState(isFrontOverride != null ? isFrontOverride : true);
|
|
831
|
+
const isFront = isFrontOverride != null ? isFrontOverride : _isFront;
|
|
832
|
+
const setIsFront = setIsFrontOverride != null ? setIsFrontOverride : _setIsFront;
|
|
677
833
|
const [headerHeight, setHeaderHeight] = useState(100);
|
|
678
834
|
const [headerWidth, setHeaderWidth] = useState(0);
|
|
679
835
|
const headerRef = useRef(null);
|
|
@@ -697,13 +853,13 @@ const VCDisplayCard2 = ({
|
|
|
697
853
|
const statusColor = getColorForVerificationStatus(worstVerificationStatus);
|
|
698
854
|
const backgroundStyle = {
|
|
699
855
|
backgroundColor: (_a = credential == null ? void 0 : credential.display) == null ? void 0 : _a.backgroundColor,
|
|
700
|
-
backgroundImage:
|
|
856
|
+
backgroundImage: void 0,
|
|
701
857
|
backgroundSize: "cover",
|
|
702
858
|
backgroundPosition: "center",
|
|
703
859
|
backgroundAttachment: "fixed"
|
|
704
860
|
};
|
|
705
861
|
const _title = titleOverride || title;
|
|
706
|
-
if (((
|
|
862
|
+
if (((_b = credential == null ? void 0 : credential.display) == null ? void 0 : _b.displayType) === "certificate") {
|
|
707
863
|
return /* @__PURE__ */ React.createElement(CertificateDisplayCard, {
|
|
708
864
|
credential,
|
|
709
865
|
categoryType,
|
|
@@ -720,7 +876,30 @@ const VCDisplayCard2 = ({
|
|
|
720
876
|
issuerImageComponent,
|
|
721
877
|
customBodyCardComponent,
|
|
722
878
|
hideIssueDate,
|
|
723
|
-
onDotsClick
|
|
879
|
+
onDotsClick,
|
|
880
|
+
isFrontOverride,
|
|
881
|
+
setIsFrontOverride,
|
|
882
|
+
hideNavButtons
|
|
883
|
+
});
|
|
884
|
+
} else if (((_c = credential == null ? void 0 : credential.display) == null ? void 0 : _c.displayType) === "id" || categoryType === "ID") {
|
|
885
|
+
return /* @__PURE__ */ React.createElement(VCIDDisplayCard, {
|
|
886
|
+
credential,
|
|
887
|
+
verificationItems,
|
|
888
|
+
getFileMetadata,
|
|
889
|
+
getVideoMetadata,
|
|
890
|
+
onMediaAttachmentClick,
|
|
891
|
+
customThumbComponent,
|
|
892
|
+
customCriteria,
|
|
893
|
+
customDescription,
|
|
894
|
+
customIssueHistoryComponent,
|
|
895
|
+
issueHistory,
|
|
896
|
+
showBackButton,
|
|
897
|
+
enableLightbox,
|
|
898
|
+
trustedAppRegistry,
|
|
899
|
+
customSkillsComponent,
|
|
900
|
+
isFrontOverride,
|
|
901
|
+
setIsFrontOverride,
|
|
902
|
+
hideNavButtons
|
|
724
903
|
});
|
|
725
904
|
}
|
|
726
905
|
return /* @__PURE__ */ React.createElement(h, {
|
|
@@ -782,7 +961,7 @@ const VCDisplayCard2 = ({
|
|
|
782
961
|
getFileMetadata,
|
|
783
962
|
getVideoMetadata,
|
|
784
963
|
onMediaAttachmentClick,
|
|
785
|
-
showBackButton,
|
|
964
|
+
showBackButton: showBackButton && !hideNavButtons,
|
|
786
965
|
showFrontFace: () => setIsFront(true),
|
|
787
966
|
customDescription,
|
|
788
967
|
customCriteria,
|
|
@@ -792,7 +971,7 @@ const VCDisplayCard2 = ({
|
|
|
792
971
|
})), isFront && /* @__PURE__ */ React.createElement(VCDisplayCardSkillsCount, {
|
|
793
972
|
skills: credential == null ? void 0 : credential.skills,
|
|
794
973
|
onClick: () => setIsFront(!isFront)
|
|
795
|
-
}), isFront && customFrontButton, isFront && !customFrontButton && /* @__PURE__ */ React.createElement(y, {
|
|
974
|
+
}), !hideNavButtons && /* @__PURE__ */ React.createElement(React.Fragment, null, isFront && customFrontButton, isFront && !customFrontButton && /* @__PURE__ */ React.createElement(y, {
|
|
796
975
|
flipId: "details-back-button"
|
|
797
976
|
}, /* @__PURE__ */ React.createElement("button", {
|
|
798
977
|
type: "button",
|
|
@@ -806,7 +985,7 @@ const VCDisplayCard2 = ({
|
|
|
806
985
|
onClick: () => setIsFront(!isFront)
|
|
807
986
|
}, /* @__PURE__ */ React.createElement("span", {
|
|
808
987
|
className: "flex gap-[10px] items-center"
|
|
809
|
-
}, /* @__PURE__ */ React.createElement(LeftArrow, null), "Back")))))), /* @__PURE__ */ React.createElement("footer", {
|
|
988
|
+
}, /* @__PURE__ */ React.createElement(LeftArrow, null), "Back"))))))), /* @__PURE__ */ React.createElement("footer", {
|
|
810
989
|
className: "vc-card-footer w-full flex justify-between p-[5px] mt-[5px]"
|
|
811
990
|
}, customFooterComponent && customFooterComponent, !customFooterComponent && /* @__PURE__ */ React.createElement(React.Fragment, null, worstVerificationStatus === VerificationStatusEnum.Failed ? /* @__PURE__ */ React.createElement("div", {
|
|
812
991
|
className: "w-[40px]",
|
|
@@ -824,9 +1003,9 @@ const VCDisplayCard2 = ({
|
|
|
824
1003
|
style: { color: statusColor }
|
|
825
1004
|
}, worstVerificationStatus)), /* @__PURE__ */ React.createElement("div", {
|
|
826
1005
|
className: "vc-footer-icon rounded-[20px] h-[40px] w-[40px] flex items-center justify-center overflow-hidden",
|
|
827
|
-
style: { backgroundColor: (
|
|
828
|
-
}, (
|
|
1006
|
+
style: { backgroundColor: (_d = bottomRightIcon == null ? void 0 : bottomRightIcon.color) != null ? _d : "#6366F1" }
|
|
1007
|
+
}, (_e = bottomRightIcon == null ? void 0 : bottomRightIcon.image) != null ? _e : /* @__PURE__ */ React.createElement(AwardRibbon, null)))))));
|
|
829
1008
|
};
|
|
830
1009
|
|
|
831
|
-
export { VCDisplayCard2 as V };
|
|
832
|
-
//# sourceMappingURL=VCDisplayCard2-
|
|
1010
|
+
export { VCDisplayCard2 as V, VCIDDisplayCard as a };
|
|
1011
|
+
//# sourceMappingURL=VCDisplayCard2-807ce71f.js.map
|