@learncard/react 2.12.11 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -5
- package/dist/base.css +2 -1
- package/dist/base.js +1 -1
- package/dist/cjs/{AchievementCard-f6bdb95c.js → AchievementCard-6ef39c2b.js} +3 -3
- package/dist/cjs/{AchievementCard-f6bdb95c.js.map → AchievementCard-6ef39c2b.js.map} +1 -1
- package/dist/cjs/{BoostGenericCard-e3fd4feb.js → BoostGenericCard-87cd2091.js} +8 -8
- package/dist/cjs/BoostGenericCard-87cd2091.js.map +1 -0
- package/dist/cjs/{BoostSmallCard-507de790.js → BoostSmallCard-214f91a5.js} +3 -3
- package/dist/cjs/BoostSmallCard-214f91a5.js.map +1 -0
- package/dist/cjs/{Button-9ebe120c.js → Button-d3a8a860.js} +2 -2
- package/dist/cjs/Button-d3a8a860.js.map +1 -0
- package/dist/cjs/{CertificateDisplayCard-9a7ced55.js → CertificateDisplayCard-d4300c7d.js} +32 -21
- package/dist/cjs/CertificateDisplayCard-d4300c7d.js.map +1 -0
- package/dist/cjs/{CircleCheckButton-05f58196.js → CircleCheckButton-1d10936b.js} +2 -2
- package/dist/cjs/{CircleCheckButton-05f58196.js.map → CircleCheckButton-1d10936b.js.map} +1 -1
- package/dist/cjs/{CourseVerticalCard-0d046145.js → CourseVerticalCard-3c538a36.js} +3 -3
- package/dist/cjs/{CourseVerticalCard-0d046145.js.map → CourseVerticalCard-3c538a36.js.map} +1 -1
- package/dist/cjs/{GenericCard-e2faac81.js → GenericCard-f962750a.js} +2 -2
- package/dist/cjs/{GenericCard-e2faac81.js.map → GenericCard-f962750a.js.map} +1 -1
- package/dist/cjs/{JobHistoryCard-e9ac7a1a.js → JobHistoryCard-54f40e2b.js} +3 -3
- package/dist/cjs/JobHistoryCard-54f40e2b.js.map +1 -0
- package/dist/cjs/{JobListCard-a90be136.js → JobListCard-a48c6cac.js} +3 -3
- package/dist/cjs/{JobListCard-a90be136.js.map → JobListCard-a48c6cac.js.map} +1 -1
- package/dist/cjs/{LearnCardCreditCardBackFace-62330eea.js → LearnCardCreditCardBackFace-92a1818e.js} +2 -2
- package/dist/{esm/LearnCardCreditCardBackFace-56642837.js.map → cjs/LearnCardCreditCardBackFace-92a1818e.js.map} +1 -1
- package/dist/cjs/{LearnCardCreditCardFrontFace-75fb4e44.js → LearnCardCreditCardFrontFace-a4c209e3.js} +2 -2
- package/dist/cjs/LearnCardCreditCardFrontFace-a4c209e3.js.map +1 -0
- package/dist/cjs/{MeritBadgeDisplayCard-a45003f4.js → MeritBadgeDisplayCard-30ef639d.js} +25 -19
- package/dist/cjs/MeritBadgeDisplayCard-30ef639d.js.map +1 -0
- package/dist/cjs/{MeritBadgeSkillsCount-1baf2200.js → MeritBadgeSkillsCount-a6127a40.js} +3 -3
- package/dist/cjs/{MeritBadgeSkillsCount-1baf2200.js.map → MeritBadgeSkillsCount-a6127a40.js.map} +1 -1
- package/dist/cjs/{MiniVCThumbnail-9c510f51.js → MiniVCThumbnail-39058b8e.js} +2 -2
- package/dist/cjs/MiniVCThumbnail-39058b8e.js.map +1 -0
- package/dist/cjs/{Notification-24d4de25.js → Notification-09bf74b7.js} +2 -2
- package/dist/cjs/{Notification-24d4de25.js.map → Notification-09bf74b7.js.map} +1 -1
- package/dist/cjs/{NotificationBoostCard-04dd2405.js → NotificationBoostCard-e6a2824f.js} +4 -4
- package/dist/cjs/NotificationBoostCard-e6a2824f.js.map +1 -0
- package/dist/cjs/{NotificationUserAcceptedBoostCard-1c6d1e33.js → NotificationUserAcceptedBoostCard-e88fc1af.js} +2 -2
- package/dist/cjs/{NotificationUserAcceptedBoostCard-1c6d1e33.js.map → NotificationUserAcceptedBoostCard-e88fc1af.js.map} +1 -1
- package/dist/cjs/{NotificationUserCard-4364506c.js → NotificationUserCard-89a0b8ba.js} +2 -2
- package/dist/cjs/{NotificationUserCard-4364506c.js.map → NotificationUserCard-89a0b8ba.js.map} +1 -1
- package/dist/cjs/{PuzzlePiece-e64f4596.js → PuzzlePiece-48ee8924.js} +3 -3
- package/dist/cjs/PuzzlePiece-48ee8924.js.map +1 -0
- package/dist/cjs/{RoundedPill-542ecd7a.js → RoundedPill-5862fa48.js} +3 -3
- package/dist/cjs/RoundedPill-5862fa48.js.map +1 -0
- package/dist/cjs/{SchoolIDCard-10796199.js → SchoolIDCard-0462e21c.js} +2 -2
- package/dist/cjs/{SchoolIDCard-10796199.js.map → SchoolIDCard-0462e21c.js.map} +1 -1
- package/dist/cjs/{SkillTabCard-353cc2d1.js → SkillTabCard-f913aaf7.js} +3 -3
- package/dist/cjs/{SkillTabCard-353cc2d1.js.map → SkillTabCard-f913aaf7.js.map} +1 -1
- package/dist/cjs/{VCCard-6462d6c7.js → VCCard-6298f49f.js} +3 -3
- package/dist/cjs/{VCCard-6462d6c7.js.map → VCCard-6298f49f.js.map} +1 -1
- package/dist/cjs/{VCDisplayBackFace-47066c07.js → VCDisplayBackFace-65e36d2b.js} +7 -7
- package/dist/cjs/VCDisplayBackFace-65e36d2b.js.map +1 -0
- package/dist/cjs/{VCDisplayCard-ac1d4efb.js → VCDisplayCard-51e917ab.js} +4 -4
- package/dist/cjs/VCDisplayCard-51e917ab.js.map +1 -0
- package/dist/cjs/{VCDisplayCard2-d7d3288b.js → VCDisplayCard2-156a6584.js} +28 -22
- package/dist/cjs/VCDisplayCard2-156a6584.js.map +1 -0
- package/dist/cjs/{VCVerificationPill-7d4dd936.js → VCVerificationPill-d4ee15ca.js} +3 -3
- package/dist/cjs/VCVerificationPill-d4ee15ca.js.map +1 -0
- package/dist/cjs/{VerifierStateBadgeAndText-3d7977c9.js → VerifierStateBadgeAndText-04c90074.js} +3 -3
- package/dist/cjs/{VerifierStateBadgeAndText-3d7977c9.js.map → VerifierStateBadgeAndText-04c90074.js.map} +1 -1
- package/dist/cjs/{credential.helpers-e6e353a6.js → credential.helpers-14544e48.js} +241 -7
- package/dist/cjs/credential.helpers-14544e48.js.map +1 -0
- package/dist/cjs/{i18n-ddbb18e7.js → i18n-0648eec1.js} +3 -1
- package/dist/cjs/i18n-0648eec1.js.map +1 -0
- package/dist/cjs/{index-da255c9a.js → index-a03dec43.js} +3 -1
- package/dist/{esm/index-cb3a593b.js.map → cjs/index-a03dec43.js.map} +1 -1
- package/dist/cjs/index.js +36 -36
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index11.js +3 -3
- package/dist/cjs/index13.js +3 -3
- package/dist/cjs/index14.js +34 -34
- package/dist/cjs/index15.js +1 -1
- package/dist/cjs/index16.js +1 -1
- package/dist/cjs/index17.js +1 -1
- package/dist/cjs/index18.js +1 -1
- package/dist/cjs/index2.js +3 -3
- package/dist/cjs/index22.js +8 -8
- package/dist/cjs/index23.js +1 -1
- package/dist/cjs/index24.js +3 -3
- package/dist/cjs/index25.js +3 -3
- package/dist/cjs/index26.js +1 -1
- package/dist/cjs/index27.js +1 -1
- package/dist/cjs/index29.js +1 -1
- package/dist/cjs/index31.js +1 -1
- package/dist/cjs/index34.js +3 -3
- package/dist/cjs/index39.js +13 -13
- package/dist/cjs/index4.js +8 -8
- package/dist/cjs/index40.js +6 -6
- package/dist/cjs/index41.js +7 -7
- package/dist/cjs/index42.js +9 -9
- package/dist/cjs/index43.js +2 -2
- package/dist/cjs/index46.js +2 -2
- package/dist/cjs/index5.js +3 -3
- package/dist/cjs/index6.js +1 -1
- package/dist/cjs/index7.js +7 -7
- package/dist/cjs/index8.js +2 -2
- package/dist/cjs/{types-91d0677b.js → types-8a7d08fe.js} +2 -2
- package/dist/cjs/{types-91d0677b.js.map → types-8a7d08fe.js.map} +1 -1
- package/dist/cjs/{types.esm-57b8934f.js → types.esm-55f8d7fb.js} +3642 -1570
- package/dist/cjs/types.esm-55f8d7fb.js.map +1 -0
- package/dist/esm/{AchievementCard-d0cf882f.js → AchievementCard-c8df0ca4.js} +3 -3
- package/dist/esm/{AchievementCard-d0cf882f.js.map → AchievementCard-c8df0ca4.js.map} +1 -1
- package/dist/esm/{BoostGenericCard-3481b47c.js → BoostGenericCard-dd2b515a.js} +8 -8
- package/dist/esm/BoostGenericCard-dd2b515a.js.map +1 -0
- package/dist/esm/{BoostSmallCard-3f5d83b9.js → BoostSmallCard-538e22e7.js} +3 -3
- package/dist/esm/BoostSmallCard-538e22e7.js.map +1 -0
- package/dist/esm/{Button-70eedbf6.js → Button-866044a8.js} +2 -2
- package/dist/esm/Button-866044a8.js.map +1 -0
- package/dist/esm/{CertificateDisplayCard-fbd123d1.js → CertificateDisplayCard-46c13c49.js} +32 -21
- package/dist/esm/CertificateDisplayCard-46c13c49.js.map +1 -0
- package/dist/esm/{CircleCheckButton-50702ec6.js → CircleCheckButton-cb929fad.js} +2 -2
- package/dist/esm/{CircleCheckButton-50702ec6.js.map → CircleCheckButton-cb929fad.js.map} +1 -1
- package/dist/esm/{CourseVerticalCard-2544cfbb.js → CourseVerticalCard-34d0cc89.js} +3 -3
- package/dist/esm/{CourseVerticalCard-2544cfbb.js.map → CourseVerticalCard-34d0cc89.js.map} +1 -1
- package/dist/esm/{GenericCard-31644ac4.js → GenericCard-dfa014c7.js} +2 -2
- package/dist/esm/{GenericCard-31644ac4.js.map → GenericCard-dfa014c7.js.map} +1 -1
- package/dist/esm/{JobHistoryCard-e71ab2c7.js → JobHistoryCard-74f98642.js} +3 -3
- package/dist/esm/JobHistoryCard-74f98642.js.map +1 -0
- package/dist/esm/{JobListCard-4fc7fbe4.js → JobListCard-498d59b7.js} +3 -3
- package/dist/esm/{JobListCard-4fc7fbe4.js.map → JobListCard-498d59b7.js.map} +1 -1
- package/dist/esm/{LearnCardCreditCardBackFace-56642837.js → LearnCardCreditCardBackFace-8e2f494a.js} +2 -2
- package/dist/{cjs/LearnCardCreditCardBackFace-62330eea.js.map → esm/LearnCardCreditCardBackFace-8e2f494a.js.map} +1 -1
- package/dist/esm/{LearnCardCreditCardFrontFace-13d29504.js → LearnCardCreditCardFrontFace-73c3d537.js} +2 -2
- package/dist/esm/LearnCardCreditCardFrontFace-73c3d537.js.map +1 -0
- package/dist/esm/{MeritBadgeDisplayCard-2621d029.js → MeritBadgeDisplayCard-9f95dd08.js} +25 -19
- package/dist/esm/MeritBadgeDisplayCard-9f95dd08.js.map +1 -0
- package/dist/esm/{MeritBadgeSkillsCount-b3e3985a.js → MeritBadgeSkillsCount-c20f9f60.js} +3 -3
- package/dist/esm/{MeritBadgeSkillsCount-b3e3985a.js.map → MeritBadgeSkillsCount-c20f9f60.js.map} +1 -1
- package/dist/esm/{MiniVCThumbnail-cc05e1f8.js → MiniVCThumbnail-3800ee40.js} +2 -2
- package/dist/esm/MiniVCThumbnail-3800ee40.js.map +1 -0
- package/dist/esm/{Notification-279ba207.js → Notification-39590182.js} +2 -2
- package/dist/esm/{Notification-279ba207.js.map → Notification-39590182.js.map} +1 -1
- package/dist/esm/{NotificationBoostCard-73efea2d.js → NotificationBoostCard-ff5ec0d7.js} +4 -4
- package/dist/esm/NotificationBoostCard-ff5ec0d7.js.map +1 -0
- package/dist/esm/{NotificationUserAcceptedBoostCard-89fe2317.js → NotificationUserAcceptedBoostCard-f515321d.js} +2 -2
- package/dist/esm/{NotificationUserAcceptedBoostCard-89fe2317.js.map → NotificationUserAcceptedBoostCard-f515321d.js.map} +1 -1
- package/dist/esm/{NotificationUserCard-2c29c86a.js → NotificationUserCard-d4fd260e.js} +2 -2
- package/dist/esm/{NotificationUserCard-2c29c86a.js.map → NotificationUserCard-d4fd260e.js.map} +1 -1
- package/dist/esm/{PuzzlePiece-a3d9cc62.js → PuzzlePiece-9c313d93.js} +3 -3
- package/dist/esm/PuzzlePiece-9c313d93.js.map +1 -0
- package/dist/esm/{RoundedPill-8e97b9e3.js → RoundedPill-ef06f4b8.js} +3 -3
- package/dist/esm/RoundedPill-ef06f4b8.js.map +1 -0
- package/dist/esm/{SchoolIDCard-f82e40bc.js → SchoolIDCard-de65b2bd.js} +2 -2
- package/dist/esm/{SchoolIDCard-f82e40bc.js.map → SchoolIDCard-de65b2bd.js.map} +1 -1
- package/dist/esm/{SkillTabCard-a3f601e8.js → SkillTabCard-4c7bb40f.js} +3 -3
- package/dist/esm/{SkillTabCard-a3f601e8.js.map → SkillTabCard-4c7bb40f.js.map} +1 -1
- package/dist/esm/{VCCard-cd14261b.js → VCCard-1e6261ea.js} +3 -3
- package/dist/esm/{VCCard-cd14261b.js.map → VCCard-1e6261ea.js.map} +1 -1
- package/dist/esm/{VCDisplayBackFace-d8bdf84b.js → VCDisplayBackFace-eb2cad59.js} +7 -7
- package/dist/esm/VCDisplayBackFace-eb2cad59.js.map +1 -0
- package/dist/esm/{VCDisplayCard-213afce8.js → VCDisplayCard-1400714d.js} +4 -4
- package/dist/esm/VCDisplayCard-1400714d.js.map +1 -0
- package/dist/esm/{VCDisplayCard2-f6beca34.js → VCDisplayCard2-e4164d30.js} +28 -22
- package/dist/esm/VCDisplayCard2-e4164d30.js.map +1 -0
- package/dist/esm/{VCVerificationPill-f4a587a5.js → VCVerificationPill-65f7901a.js} +3 -3
- package/dist/esm/VCVerificationPill-65f7901a.js.map +1 -0
- package/dist/esm/{VerifierStateBadgeAndText-f2bbd9fd.js → VerifierStateBadgeAndText-1588afeb.js} +3 -3
- package/dist/esm/{VerifierStateBadgeAndText-f2bbd9fd.js.map → VerifierStateBadgeAndText-1588afeb.js.map} +1 -1
- package/dist/esm/{credential.helpers-30adeb2d.js → credential.helpers-4c72d304.js} +241 -7
- package/dist/esm/credential.helpers-4c72d304.js.map +1 -0
- package/dist/esm/{i18n-35209bfa.js → i18n-b142d48e.js} +3 -1
- package/dist/esm/i18n-b142d48e.js.map +1 -0
- package/dist/esm/{index-cb3a593b.js → index-75c5b01c.js} +2 -2
- package/dist/{cjs/index-da255c9a.js.map → esm/index-75c5b01c.js.map} +1 -1
- package/dist/esm/index.js +36 -36
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index11.js +3 -3
- package/dist/esm/index13.js +3 -3
- package/dist/esm/index14.js +34 -34
- package/dist/esm/index15.js +1 -1
- package/dist/esm/index16.js +1 -1
- package/dist/esm/index17.js +1 -1
- package/dist/esm/index18.js +1 -1
- package/dist/esm/index2.js +3 -3
- package/dist/esm/index22.js +8 -8
- package/dist/esm/index23.js +1 -1
- package/dist/esm/index24.js +3 -3
- package/dist/esm/index25.js +3 -3
- package/dist/esm/index26.js +1 -1
- package/dist/esm/index27.js +1 -1
- package/dist/esm/index29.js +1 -1
- package/dist/esm/index31.js +1 -1
- package/dist/esm/index34.js +3 -3
- package/dist/esm/index39.js +13 -13
- package/dist/esm/index4.js +8 -8
- package/dist/esm/index40.js +6 -6
- package/dist/esm/index41.js +7 -7
- package/dist/esm/index42.js +9 -9
- package/dist/esm/index43.js +2 -2
- package/dist/esm/index46.js +2 -2
- package/dist/esm/index5.js +3 -3
- package/dist/esm/index6.js +1 -1
- package/dist/esm/index7.js +7 -7
- package/dist/esm/index8.js +2 -2
- package/dist/esm/{types-c765e2a4.js → types-23b696f1.js} +2 -2
- package/dist/esm/{types-c765e2a4.js.map → types-23b696f1.js.map} +1 -1
- package/dist/esm/{types.esm-9d538f63.js → types.esm-a70402df.js} +3642 -1570
- package/dist/esm/types.esm-a70402df.js.map +1 -0
- package/dist/main.css +2 -1
- package/dist/main.js +1 -1
- package/package.json +13 -13
- package/src/assets/styles/base.css +18 -2
- package/src/assets/styles/main.css +1 -3
- package/src/assets/styles/theme.css +94 -0
- package/src/assets/styles/theme.test.ts +67 -0
- package/src/components/BoostGenericCard/BoostGenericCard.tsx +3 -3
- package/src/components/BoostSmallCard/BoostSmallCard.tsx +1 -1
- package/src/components/Button/Button.tsx +1 -1
- package/src/components/CertificateDisplayCard/CertificateAwardDate.test.tsx +67 -0
- package/src/components/CertificateDisplayCard/CertificateBackFace.tsx +14 -9
- package/src/components/CertificateDisplayCard/CertificateCornerIcon.tsx +1 -1
- package/src/components/CertificateDisplayCard/CertificateFrontFace.tsx +19 -8
- package/src/components/CertificateDisplayCard/CertificateProfileImageDisplay.tsx +1 -1
- package/src/components/CertificateDisplayCard/MediaAttachmentsBox.tsx +1 -1
- package/src/components/CertificateDisplayCard/VerificationRow.tsx +1 -1
- package/src/components/JobHistoryCard/JobHistoryCard.tsx +2 -2
- package/src/components/JobListCard/JobListCard.tsx +2 -5
- package/src/components/LearnCardCreditCardBackFace/LearnCardCreditCardBackFace.tsx +1 -1
- package/src/components/LearnCardCreditCardFrontFace/LearnCardCreditCardFrontFace.tsx +1 -1
- package/src/components/MeritBadgeDisplayCard/MediaAttachmentsBox.tsx +1 -1
- package/src/components/MeritBadgeDisplayCard/MeritBadgeBackFace.tsx +14 -9
- package/src/components/MeritBadgeDisplayCard/MeritBadgeCornerIcon.tsx +4 -4
- package/src/components/MeritBadgeDisplayCard/MeritBadgeFrontFace.tsx +15 -10
- package/src/components/MeritBadgeDisplayCard/MeritBadgeProfileImageDisplay.tsx +1 -1
- package/src/components/MeritBadgeDisplayCard/VerificationRow.tsx +1 -1
- package/src/components/MiniVCThumbnail/MiniVCThumbnail.tsx +1 -1
- package/src/components/NotificationBoostCard/NotificationBoostCard.tsx +2 -2
- package/src/components/NotificationUserAcceptedBoostCard/NotificationUserAcceptedBoostCard.tsx +1 -1
- package/src/components/NotificationUserCard/NotificationUserCard.tsx +1 -1
- package/src/components/RoundedPill/RoundedPill.tsx +2 -2
- package/src/components/SchoolIdCard/SchoolIDCard.tsx +1 -1
- package/src/components/VCDisplayBackFace/VCDisplayBackFace.tsx +4 -4
- package/src/components/VCDisplayCard/VCDisplayCard.stories.tsx +2 -2
- package/src/components/VCDisplayCard2/IssueHistoryBox.tsx +1 -1
- package/src/components/VCDisplayCard2/MediaAttachmentsBox.tsx +10 -5
- package/src/components/VCDisplayCard2/VC2FrontFaceInfo.tsx +6 -6
- package/src/components/VCDisplayCard2/VCDisplayCard2.tsx +1 -1
- package/src/components/VCDisplayCard2/VCDisplayCard2AvatarFallbacks.stories.tsx +4 -4
- package/src/components/VCDisplayCard2/VCIDDisplayFrontFace.tsx +7 -7
- package/src/components/VCDisplayCard2/VerificationRow.tsx +1 -1
- package/src/components/VCDisplayCard2/__tests__/VC2FrontFaceInfo.test.tsx +1 -1
- package/src/components/VCDisplayFrontFace/VCDisplayFrontFace.tsx +1 -1
- package/src/components/VCVerificationPill/VCVerificationPill.tsx +1 -1
- package/src/components/svgs/PuzzlePiece.tsx +3 -3
- package/src/helpers/credential.helpers.test.ts +96 -0
- package/src/helpers/credential.helpers.tsx +23 -4
- package/src/helpers/useScrollBorders.ts +2 -2
- package/src/i18n/index.tsx +2 -0
- package/dist/cjs/BoostGenericCard-e3fd4feb.js.map +0 -1
- package/dist/cjs/BoostSmallCard-507de790.js.map +0 -1
- package/dist/cjs/Button-9ebe120c.js.map +0 -1
- package/dist/cjs/CertificateDisplayCard-9a7ced55.js.map +0 -1
- package/dist/cjs/JobHistoryCard-e9ac7a1a.js.map +0 -1
- package/dist/cjs/LearnCardCreditCardFrontFace-75fb4e44.js.map +0 -1
- package/dist/cjs/MeritBadgeDisplayCard-a45003f4.js.map +0 -1
- package/dist/cjs/MiniVCThumbnail-9c510f51.js.map +0 -1
- package/dist/cjs/NotificationBoostCard-04dd2405.js.map +0 -1
- package/dist/cjs/PuzzlePiece-e64f4596.js.map +0 -1
- package/dist/cjs/RoundedPill-542ecd7a.js.map +0 -1
- package/dist/cjs/VCDisplayBackFace-47066c07.js.map +0 -1
- package/dist/cjs/VCDisplayCard-ac1d4efb.js.map +0 -1
- package/dist/cjs/VCDisplayCard2-d7d3288b.js.map +0 -1
- package/dist/cjs/VCVerificationPill-7d4dd936.js.map +0 -1
- package/dist/cjs/credential.helpers-e6e353a6.js.map +0 -1
- package/dist/cjs/i18n-ddbb18e7.js.map +0 -1
- package/dist/cjs/types.esm-57b8934f.js.map +0 -1
- package/dist/esm/BoostGenericCard-3481b47c.js.map +0 -1
- package/dist/esm/BoostSmallCard-3f5d83b9.js.map +0 -1
- package/dist/esm/Button-70eedbf6.js.map +0 -1
- package/dist/esm/CertificateDisplayCard-fbd123d1.js.map +0 -1
- package/dist/esm/JobHistoryCard-e71ab2c7.js.map +0 -1
- package/dist/esm/LearnCardCreditCardFrontFace-13d29504.js.map +0 -1
- package/dist/esm/MeritBadgeDisplayCard-2621d029.js.map +0 -1
- package/dist/esm/MiniVCThumbnail-cc05e1f8.js.map +0 -1
- package/dist/esm/NotificationBoostCard-73efea2d.js.map +0 -1
- package/dist/esm/PuzzlePiece-a3d9cc62.js.map +0 -1
- package/dist/esm/RoundedPill-8e97b9e3.js.map +0 -1
- package/dist/esm/VCDisplayBackFace-d8bdf84b.js.map +0 -1
- package/dist/esm/VCDisplayCard-213afce8.js.map +0 -1
- package/dist/esm/VCDisplayCard2-f6beca34.js.map +0 -1
- package/dist/esm/VCVerificationPill-f4a587a5.js.map +0 -1
- package/dist/esm/credential.helpers-30adeb2d.js.map +0 -1
- package/dist/esm/i18n-35209bfa.js.map +0 -1
- package/dist/esm/types.esm-9d538f63.js.map +0 -1
|
@@ -2,8 +2,8 @@ import React from 'react';
|
|
|
2
2
|
import { b as TYPE_TO_MINI_ICON } from './index-e3586083.js';
|
|
3
3
|
import { L as LCSubtypes } from './index-8be2f857.js';
|
|
4
4
|
import { T as Trophy } from './Trophy-fc7fdec4.js';
|
|
5
|
-
import { C as CircleCheckButton } from './CircleCheckButton-
|
|
6
|
-
import { R as RoundedPill } from './RoundedPill-
|
|
5
|
+
import { C as CircleCheckButton } from './CircleCheckButton-cb929fad.js';
|
|
6
|
+
import { R as RoundedPill } from './RoundedPill-ef06f4b8.js';
|
|
7
7
|
|
|
8
8
|
const AchievementCard = ({
|
|
9
9
|
title = "Title Lorem Ipsum",
|
|
@@ -78,4 +78,4 @@ const AchievementCard = ({
|
|
|
78
78
|
};
|
|
79
79
|
|
|
80
80
|
export { AchievementCard as A };
|
|
81
|
-
//# sourceMappingURL=AchievementCard-
|
|
81
|
+
//# sourceMappingURL=AchievementCard-c8df0ca4.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AchievementCard-
|
|
1
|
+
{"version":3,"file":"AchievementCard-c8df0ca4.js","sources":["../../src/components/AchievementCard/AchievementCard.tsx"],"sourcesContent":["import React from 'react';\nimport { AchievementCardProps } from '../../types';\nimport { RoundedPill } from '../RoundedPill';\nimport { CircleCheckButton } from '../CircleCheckButton';\nimport { Trophy } from '../svgs';\nimport { TYPE_TO_MINI_ICON } from '../../constants';\nimport { LCSubtypes } from '../../types';\n\nexport const AchievementCard: React.FC<AchievementCardProps> = ({\n title = 'Title Lorem Ipsum',\n thumbImgSrc,\n claimStatus,\n showSkills = true,\n showChecked,\n checked,\n skillCount,\n showStatus = true,\n onCheckClick,\n onClick = () => {},\n}) => {\n const thumbClass = thumbImgSrc ? 'bg-grayscale-50' : 'bg-indigo-200';\n\n const claimBtnStatusType = claimStatus ? LCSubtypes.achievement : LCSubtypes.locked;\n const skillIconSrc = TYPE_TO_MINI_ICON[LCSubtypes.skill];\n const skillCountTxt = skillCount && skillCount > 1 ? 'Skills' : 'Skill';\n const showSkillCounter = showSkills && skillCount !== 0;\n\n return (\n <div\n className={`flex-col shadow-[0_0_8px_0px_rgba(0,0,0,0.2)] relative $ py-[8px] px-[8px] w-[190px] h-[285px] rounded-[20px] rounded-square-card-container`}\n >\n <section\n className={`relative flex h-[120px] ${thumbClass} flex-col justify-center items-center w-full rounded-[20px]`}\n >\n {thumbImgSrc && (\n <img\n className=\"h-full w-full object-cover rounded-[20px]\"\n src={thumbImgSrc ?? ''}\n alt=\"Credential Achievement Image\"\n />\n )}\n {(!thumbImgSrc || thumbImgSrc === '') && (\n <Trophy\n className=\"achievement-placeholder-trophy flex p-[15px]\"\n color=\"#ffffff\"\n />\n )}\n\n {showSkills && showSkillCounter && (\n <div className=\"absolute px-[10px] text-[14px] flex items-center justify-center text-indigo-600 skill-pill font-bold min-w-[100px] bottom-[10px] right-[9px] rounded-[20px] h-[30px] bg-indigo-50 \">\n <img\n src={skillIconSrc}\n className=\"flex items-center justify-center mr-[4px]\"\n />\n +{skillCount} {skillCountTxt}\n </div>\n )}\n\n {showChecked && (\n <CircleCheckButton\n checked={checked}\n onClick={onCheckClick}\n className=\"absolute top-[5px] left-[5px]\"\n />\n )}\n </section>\n\n <section className=\"achievement-title w-full flex justify-center line-clamp-2\">\n <p className=\"text-[14px] text-grayscale-900 font-bold mt-[10px] text-center\">\n {title}\n </p>\n </section>\n\n <section className=\"achievement-card-footer absolute bottom-[6px] left-[5px]\">\n {showStatus && (\n <RoundedPill\n onClick={onClick}\n showCheckmark\n type={claimBtnStatusType}\n statusText={'Claimed'}\n />\n )}\n </section>\n </div>\n );\n};\n\nexport default AchievementCard;\n"],"names":[],"mappings":";;;;;;;AAQO,MAAM,kBAAkD,CAAC;AAAA,EAC5D,KAAQ,GAAA,mBAAA;AAAA,EACR,WAAA;AAAA,EACA,WAAA;AAAA,EACA,UAAa,GAAA,IAAA;AAAA,EACb,WAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAa,GAAA,IAAA;AAAA,EACb,YAAA;AAAA,EACA,UAAU,MAAM;AAAA,GAAC;AACrB,CAAM,KAAA;AACF,EAAM,MAAA,UAAA,GAAa,cAAc,iBAAoB,GAAA,eAAA,CAAA;AAErD,EAAA,MAAM,kBAAqB,GAAA,WAAA,GAAc,UAAW,CAAA,WAAA,GAAc,UAAW,CAAA,MAAA,CAAA;AAC7E,EAAM,MAAA,YAAA,GAAe,iBAAkB,CAAA,UAAA,CAAW,KAAK,CAAA,CAAA;AACvD,EAAA,MAAM,aAAgB,GAAA,UAAA,IAAc,UAAa,GAAA,CAAA,GAAI,QAAW,GAAA,OAAA,CAAA;AAChE,EAAM,MAAA,gBAAA,GAAmB,cAAc,UAAe,KAAA,CAAA,CAAA;AAEtD,EACI,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACG,SAAW,EAAA,CAAA,2IAAA,CAAA;AAAA,KAAA;AAAA,oBAEX,KAAA,CAAA,aAAA;AAAA,MAAC,SAAA;AAAA,MAAA;AAAA,QACG,SAAA,EAAW,2BAA2B,UAAU,CAAA,2DAAA,CAAA;AAAA,OAAA;AAAA,MAE/C,WACG,oBAAA,KAAA,CAAA,aAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACG,SAAU,EAAA,2CAAA;AAAA,UACV,KAAK,WAAe,IAAA,IAAA,GAAA,WAAA,GAAA,EAAA;AAAA,UACpB,GAAI,EAAA,8BAAA;AAAA,SAAA;AAAA,OACR;AAAA,MAEF,CAAA,CAAC,WAAe,IAAA,WAAA,KAAgB,EAC9B,qBAAA,KAAA,CAAA,aAAA;AAAA,QAAC,MAAA;AAAA,QAAA;AAAA,UACG,SAAU,EAAA,8CAAA;AAAA,UACV,KAAM,EAAA,SAAA;AAAA,SAAA;AAAA,OACV;AAAA,MAGH,UAAc,IAAA,gBAAA,oBACV,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,WAAU,oLACX,EAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACG,GAAK,EAAA,YAAA;AAAA,UACL,SAAU,EAAA,2CAAA;AAAA,SAAA;AAAA,OACZ,EAAA,GAAA,EACA,UAAW,EAAA,GAAA,EAAE,aACnB,CAAA;AAAA,MAGH,WACG,oBAAA,KAAA,CAAA,aAAA;AAAA,QAAC,iBAAA;AAAA,QAAA;AAAA,UACG,OAAA;AAAA,UACA,OAAS,EAAA,YAAA;AAAA,UACT,SAAU,EAAA,+BAAA;AAAA,SAAA;AAAA,OACd;AAAA,KAER;AAAA,oBAEA,KAAA,CAAA,aAAA,CAAC,aAAQ,SAAU,EAAA,2DAAA,EAAA,sCACd,GAAE,EAAA,EAAA,SAAA,EAAU,gEACR,EAAA,EAAA,KACL,CACJ,CAAA;AAAA,oBAEC,KAAA,CAAA,aAAA,CAAA,SAAA,EAAA,EAAQ,SAAU,EAAA,0DAAA,EAAA,EACd,UACG,oBAAA,KAAA,CAAA,aAAA;AAAA,MAAC,WAAA;AAAA,MAAA;AAAA,QACG,OAAA;AAAA,QACA,aAAa,EAAA,IAAA;AAAA,QACb,IAAM,EAAA,kBAAA;AAAA,QACN,UAAY,EAAA,SAAA;AAAA,OAAA;AAAA,KAGxB,CAAA;AAAA,GACJ,CAAA;AAER;;;;"}
|
|
@@ -2,12 +2,12 @@ import React from 'react';
|
|
|
2
2
|
import { W as WalletCategoryTypes } from './index-8be2f857.js';
|
|
3
3
|
import { T as TYPE_TO_IMG_SRC, a as TYPE_TO_WALLET_DARK_COLOR } from './index-e3586083.js';
|
|
4
4
|
import { B as BadgeDisplayIcon, A as AwardDisplayIcon, a as CourseDisplayIcon, I as IDDisplayIcon, C as CertificateDisplayIcon } from './IDDisplayIcon-f6993140.js';
|
|
5
|
-
import { P as PuzzlePiece } from './PuzzlePiece-
|
|
6
|
-
import { c as categorizeSkills } from './credential.helpers-
|
|
5
|
+
import { P as PuzzlePiece } from './PuzzlePiece-9c313d93.js';
|
|
6
|
+
import { c as categorizeSkills } from './credential.helpers-4c72d304.js';
|
|
7
7
|
import { T as ThreeDotVertical } from './ThreeDotVertical-ccbbc8ef.js';
|
|
8
8
|
import { B as BadgeThumbnailImg } from './BadgeThumbnailImg-7d436367.js';
|
|
9
|
-
import { u as useT } from './i18n-
|
|
10
|
-
import { C as CircleCheckButton } from './CircleCheckButton-
|
|
9
|
+
import { u as useT } from './i18n-b142d48e.js';
|
|
10
|
+
import { C as CircleCheckButton } from './CircleCheckButton-cb929fad.js';
|
|
11
11
|
|
|
12
12
|
const AlignmentSkillsCount = ({
|
|
13
13
|
credential,
|
|
@@ -168,7 +168,7 @@ const BoostGenericCard = ({
|
|
|
168
168
|
"button",
|
|
169
169
|
{
|
|
170
170
|
type: "button",
|
|
171
|
-
className: "boost-generic-card-button z-10 flex flex-col
|
|
171
|
+
className: "boost-generic-card-button z-10 flex flex-col grow rounded-[20px]",
|
|
172
172
|
onClick: handleInnerClick
|
|
173
173
|
},
|
|
174
174
|
/* @__PURE__ */ React.createElement("div", { style: __spreadProps(__spreadValues({}, inactiveMediaStyle), { width: "100%" }) }, customThumbComponent || /* @__PURE__ */ React.createElement("section", { className: defaultThumbClass }, (thumbImgSrc == null ? void 0 : thumbImgSrc.trim()) ? /* @__PURE__ */ React.createElement(
|
|
@@ -188,7 +188,7 @@ const BoostGenericCard = ({
|
|
|
188
188
|
/* @__PURE__ */ React.createElement(
|
|
189
189
|
"section",
|
|
190
190
|
{
|
|
191
|
-
className: `flex flex-col
|
|
191
|
+
className: `flex flex-col grow items-center justify-end pt-1 w-full ${linkedCredentialsCount === 0 ? "pb-[20px]" : ""}`
|
|
192
192
|
},
|
|
193
193
|
/* @__PURE__ */ React.createElement("div", { className: "px-1 flex flex-col items-center justify-center w-full" }, !customTitle ? /* @__PURE__ */ React.createElement(
|
|
194
194
|
"p",
|
|
@@ -203,7 +203,7 @@ const BoostGenericCard = ({
|
|
|
203
203
|
title
|
|
204
204
|
},
|
|
205
205
|
title
|
|
206
|
-
) : customTitle, /* @__PURE__ */ React.createElement("div", { className: "mt-1 w-full px-4 text-center" }, /* @__PURE__ */ React.createElement("span", { className: "line-clamp-2 break-
|
|
206
|
+
) : customTitle, /* @__PURE__ */ React.createElement("div", { className: "mt-1 w-full px-4 text-center" }, /* @__PURE__ */ React.createElement("span", { className: "line-clamp-2 wrap-break-word text-[12px] leading-snug text-grayscale-700" }, verifierBadge && /* @__PURE__ */ React.createElement("span", { className: "mr-1 inline-block align-middle" }, verifierBadge), customIssuerName || /* @__PURE__ */ React.createElement("span", { className: "font-bold", style: inactiveTextStyle }, issuerName))), customDateDisplay || /* @__PURE__ */ React.createElement("span", { className: "text-[11px] text-grayscale-700 mt-1" }, dateDisplay), isInSkillsModal && credential && /* @__PURE__ */ React.createElement(
|
|
207
207
|
AlignmentSkillsCount,
|
|
208
208
|
{
|
|
209
209
|
credential,
|
|
@@ -233,4 +233,4 @@ const BoostGenericCard = ({
|
|
|
233
233
|
};
|
|
234
234
|
|
|
235
235
|
export { BoostGenericCard as B, getLifecycleTreatment as g };
|
|
236
|
-
//# sourceMappingURL=BoostGenericCard-
|
|
236
|
+
//# sourceMappingURL=BoostGenericCard-dd2b515a.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BoostGenericCard-dd2b515a.js","sources":["../../src/components/BoostGenericCard/AlignmentSkillsCount.tsx","../../src/helpers/display.helpers.ts","../../src/helpers/lifecycle.helpers.ts","../../src/components/BoostGenericCard/BoostGenericCard.tsx"],"sourcesContent":["import React from 'react';\nimport PuzzlePiece from '../svgs/PuzzlePiece';\nimport { VC } from '@learncard/types';\nimport { categorizeSkills } from '../../helpers/credential.helpers';\n\ntype AlignmentSkillsCountProps = {\n credential?: VC;\n onClick?: () => void;\n className?: string;\n};\n\nconst AlignmentSkillsCount: React.FC<AlignmentSkillsCountProps> = ({\n credential,\n onClick,\n className = '',\n}) => {\n if (!credential) return <></>;\n\n const achievement = (credential?.credentialSubject as any)?.achievement;\n let alignmentCount = achievement?.alignment?.length || 0;\n\n if (alignmentCount === 0 && credential.skills?.length > 0) {\n // fallback to legacy skills field if present and no alignments\n const skillsMap = categorizeSkills(credential.skills ?? []);\n\n // Calculate total count of skills and subskills\n const totalSkills: any = Object.values(skillsMap).reduce(\n (total: any, category: any) => total + category?.length,\n 0\n );\n const totalSubskills: any = Object.values(skillsMap).reduce(\n (total: any, category: any) => total + (category?.totalSubskillsCount || 0),\n 0\n );\n\n const total: any = totalSkills + totalSubskills;\n alignmentCount = total;\n }\n\n return (\n <div\n role={onClick ? ('button' as const) : undefined}\n onClick={onClick}\n className={`px-[10px] py-[2px] flex gap-[3px] items-center rounded-[5px] overflow-hidden bg-violet-100 ${className}`}\n >\n <PuzzlePiece className=\"w-[20px] h-[20px] text-grayscale-800\" version=\"filled\" />\n <p className=\"text-[12px] text-grayscale-800 font-poppins font-[600]\">\n {`${alignmentCount} Skill${alignmentCount !== 1 ? 's' : ''}`}\n </p>\n </div>\n );\n};\n\nexport default AlignmentSkillsCount;\n","import { LCCategoryEnum } from '../types';\n\nimport { BadgeDisplayIcon } from '../components/svgs/BadgeDisplayIcon';\nimport { CertificateDisplayIcon } from '../components/svgs/CertificateDisplayIcon';\nimport { IDDisplayIcon } from '../components/svgs/IDDisplayIcon';\nimport { CourseDisplayIcon } from '../components/svgs/CourseDisplayIcon';\nimport { AwardDisplayIcon } from '../components/svgs/AwardDisplayIcon';\n\nexport enum DisplayTypeEnum {\n Badge = 'badge',\n Certificate = 'certificate',\n ID = 'id',\n Course = 'course',\n Award = 'award',\n}\n\nexport const getDefaultDisplayType = (category: string): DisplayTypeEnum => {\n if (category === LCCategoryEnum.socialBadge || category === LCCategoryEnum.workHistory) {\n return DisplayTypeEnum.Badge;\n }\n\n if (category === LCCategoryEnum.id || category === LCCategoryEnum.membership) {\n return DisplayTypeEnum.ID;\n }\n\n if (\n category === LCCategoryEnum.achievement ||\n category === LCCategoryEnum.qualifications ||\n category === LCCategoryEnum.accommodations ||\n category === LCCategoryEnum.accomplishments ||\n category === LCCategoryEnum.learningHistory\n ) {\n return DisplayTypeEnum.Certificate;\n }\n\n return DisplayTypeEnum.Badge;\n};\n\nexport const getDisplayIcon = (displayType: DisplayTypeEnum): React.FC<{ className?: string }> => {\n switch (displayType) {\n case DisplayTypeEnum.Badge:\n return BadgeDisplayIcon;\n case DisplayTypeEnum.Certificate:\n return CertificateDisplayIcon;\n case DisplayTypeEnum.ID:\n return IDDisplayIcon;\n case DisplayTypeEnum.Course:\n return CourseDisplayIcon;\n case DisplayTypeEnum.Award:\n return AwardDisplayIcon;\n default:\n return BadgeDisplayIcon;\n }\n};\n","import type { CSSProperties } from 'react';\n\nexport type CredentialLifecycleStatus = 'active' | 'revoked' | 'suspended';\n\nexport type LifecycleTreatment = {\n /** True when the credential is revoked or suspended. */\n isInactive: boolean;\n /** Inline filter for media (images / thumbnails); `undefined` when active.\n * Inline style (not a Tailwind class) so it applies regardless of whether the\n * consumer app's Tailwind scans this package or generates the utility. */\n mediaStyle: CSSProperties | undefined;\n /** Inline style for de-emphasizing text; `undefined` when active. */\n textStyle: CSSProperties | undefined;\n /** Pill background color for the status chip (only meaningful when `isInactive`). */\n pillBg: string;\n};\n\nconst REVOKED_COLOR = '#DC2626'; // red-600\nconst SUSPENDED_COLOR = '#D97706'; // amber-600\n\n/**\n * Shared visual treatment for a revoked/suspended credential, used by both the\n * grid card (`BoostGenericCard`) and the list row (`BoostListItem`) so the two\n * views stay in sync. Values are inert (`isInactive: false`, `undefined` styles)\n * for active credentials.\n */\nexport const getLifecycleTreatment = (\n status: CredentialLifecycleStatus = 'active'\n): LifecycleTreatment => {\n const isInactive = status === 'revoked' || status === 'suspended';\n\n return {\n isInactive,\n mediaStyle: isInactive ? { filter: 'grayscale(1) brightness(0.9)' } : undefined,\n textStyle: isInactive ? { filter: 'grayscale(1)', opacity: 0.6 } : undefined,\n pillBg: status === 'suspended' ? SUSPENDED_COLOR : REVOKED_COLOR,\n };\n};\n","import React from 'react';\nimport { BoostGenericCardProps, WalletCategoryTypes } from '../../types';\nimport { TYPE_TO_IMG_SRC, TYPE_TO_WALLET_DARK_COLOR } from '../../constants';\nimport { DisplayTypeEnum, getDisplayIcon } from '../../helpers/display.helpers';\nimport AlignmentSkillsCount from './AlignmentSkillsCount';\nimport ThreeDotVertical from '../svgs/ThreeDotVertical';\nimport { CircleCheckButton } from '../CircleCheckButton';\nimport BadgeThumbnailImg from '../BadgeThumbnailImg/BadgeThumbnailImg';\nimport { getLifecycleTreatment } from '../../helpers/lifecycle.helpers';\nimport { useT } from '../../i18n';\n\nexport const BoostGenericCard: React.FC<BoostGenericCardProps> = ({\n title,\n customTitle,\n thumbImgSrc,\n customThumbClass = '',\n customHeaderClass = '',\n type = WalletCategoryTypes.achievements,\n className,\n onCheckClick,\n showChecked,\n checkStatus,\n customThumbComponent,\n innerOnClick,\n bgImgSrc,\n issuerName,\n customIssuerName,\n dateDisplay,\n customDateDisplay,\n optionsTriggerOnClick,\n verifierBadge,\n credential,\n isInSkillsModal,\n displayType,\n linkedCredentialsCount = 0,\n linkedCredentialsClassName = '',\n checkBtnClass = '',\n lifecycleStatus = 'active',\n}) => {\n const t = useT();\n const thumbClass = TYPE_TO_WALLET_DARK_COLOR[type]\n ? `bg-${TYPE_TO_WALLET_DARK_COLOR[type]}`\n : 'bg-grayscale-50';\n const defaultThumbClass = `small-boost-card-thumb flex h-[110px] w-[110px] my-[10px] mx-auto ${thumbClass} overflow-hidden flex-col justify-center items-center rounded-full ${customThumbClass}`;\n const imgSrc = thumbImgSrc?.trim() !== '' ? thumbImgSrc : TYPE_TO_IMG_SRC[type];\n\n const handleInnerClick = () => innerOnClick?.();\n const handleOptionsClick = () => optionsTriggerOnClick?.();\n\n const DisplayIcon = getDisplayIcon(displayType as DisplayTypeEnum);\n\n // Shared revoked/suspended treatment (see getLifecycleTreatment). Inline styles are\n // used (not Tailwind classes) because the consumer app's Tailwind doesn't scan this\n // package and it ships no utility CSS, so utility classes here have no backing rule.\n const {\n isInactive,\n mediaStyle: inactiveMediaStyle,\n textStyle: inactiveTextStyle,\n pillBg,\n } = getLifecycleTreatment(lifecycleStatus);\n const pillLabel = t(`credential.lifecycle.${lifecycleStatus}`);\n const pillLeft = showChecked ? 'left-[44px]' : 'left-[8px]';\n\n return (\n <div\n className={`boost-generic-card-wrapper flex bg-white flex-col shadow-bottom relative p-0 w-[160px] h-[285px] rounded-[20px] overflow-hidden ${className}`}\n >\n {isInactive && (\n <span\n className={`absolute top-[8px] ${pillLeft} z-20 rounded-full px-[9px] py-[3px] text-[10px] font-extrabold uppercase tracking-wide text-white`}\n style={{ backgroundColor: pillBg }}\n >\n {pillLabel}\n </span>\n )}\n\n {optionsTriggerOnClick && (\n <section\n className=\"absolute cursor-pointer h-[30px] w-[30px] top-[5px] right-[5px] rounded-full bg-white/70 flex items-center justify-center z-20\"\n onClick={handleOptionsClick}\n >\n <ThreeDotVertical className=\"h-[20px] w-[20px] text-grayscale-900\" />\n </section>\n )}\n\n {bgImgSrc && (\n <section\n className=\"absolute top-[-50px] left-0 rounded-b-full overflow-hidden z-0\"\n style={inactiveMediaStyle}\n >\n <img className=\"h-full w-full object-cover\" src={bgImgSrc} />\n </section>\n )}\n\n <button\n type=\"button\"\n className=\"boost-generic-card-button z-10 flex flex-col grow rounded-[20px]\"\n onClick={handleInnerClick}\n >\n {/* Thumbnail — filter on the wrapper so it desaturates a\n customThumbComponent too, not just the default thumb section.\n The explicit width is load-bearing on iOS 18 WebKit: a bare block\n child of a <button> flex container is laid out shrink-to-fit there\n (UA align-items: flex-start per the HTML spec), so without it the\n badge collapses to its 116px circle and the header artwork stops\n running under the options button. iOS 26+/desktop engines compute\n align-items: normal and stretch, which masks the bug (LC-2066).\n width is spread last so nothing can ever override it. */}\n <div style={{ ...inactiveMediaStyle, width: '100%' }}>\n {customThumbComponent || (\n <section className={defaultThumbClass}>\n {thumbImgSrc?.trim() ? (\n <BadgeThumbnailImg\n className=\"w-full h-full rounded-full object-cover\"\n src={thumbImgSrc}\n alt=\"Credential Achievement\"\n />\n ) : (\n <img\n className=\"max-w-full p-0 object-cover rounded-full\"\n src={imgSrc}\n />\n )}\n </section>\n )}\n </div>\n\n {/* Details Section: grows to fill available space */}\n <section\n className={`flex flex-col grow items-center justify-end pt-1 w-full ${\n linkedCredentialsCount === 0 ? 'pb-[20px]' : ''\n }`}\n >\n <div className=\"px-1 flex flex-col items-center justify-center w-full\">\n {/* Title - dynamically size based on length */}\n {!customTitle ? (\n <p\n className={`\n ${customHeaderClass}\n font-medium text-center text-grayscale-900 line-clamp-2\n h-[50px] flex items-center justify-center\n ${\n (title?.length ?? 0) > 35\n ? 'text-[13px] leading-tight'\n : 'text-[16px]'\n }\n `}\n style={inactiveTextStyle}\n title={title}\n >\n {title}\n </p>\n ) : (\n customTitle\n )}\n\n {/* Verifier & Issuer */}\n <div className=\"mt-1 w-full px-4 text-center\">\n <span className=\"line-clamp-2 wrap-break-word text-[12px] leading-snug text-grayscale-700\">\n {verifierBadge && (\n <span className=\"mr-1 inline-block align-middle\">\n {verifierBadge}\n </span>\n )}\n {customIssuerName || (\n <span className=\"font-bold\" style={inactiveTextStyle}>\n {issuerName}\n </span>\n )}\n </span>\n </div>\n\n {/* Date */}\n {customDateDisplay || (\n <span className=\"text-[11px] text-grayscale-700 mt-1\">\n {dateDisplay}\n </span>\n )}\n\n {/* Skills count if in modal */}\n {isInSkillsModal && credential && (\n <AlignmentSkillsCount\n credential={credential}\n onClick={handleInnerClick}\n className=\"mt-[16px]\"\n />\n )}\n </div>\n\n {/* Linked Credentials moved inside details */}\n {linkedCredentialsCount > 0 && (\n <div\n className={`mt-auto flex items-center justify-center py-1 w-full ${linkedCredentialsClassName}`}\n >\n <DisplayIcon className=\"h-[20px] w-[20px] text-grayscale-900\" />\n <span className=\"ml-1 text-sm font-semibold text-grayscale-900\">\n +{linkedCredentialsCount} Linked\n </span>\n </div>\n )}\n </section>\n </button>\n\n {/* Optional Check Button overlay */}\n {showChecked && (\n <div className=\"absolute top-[5px] left-[5px] z-20\">\n <CircleCheckButton\n checked={checkStatus}\n onClick={onCheckClick}\n className={checkBtnClass}\n />\n </div>\n )}\n </div>\n );\n};\n\nexport default BoostGenericCard;\n"],"names":["total"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { U as UserProfilePicture } from './UserProfilePicture-4a00d151.js';
|
|
|
6
6
|
import { B as BadgeThumbnailImg } from './BadgeThumbnailImg-7d436367.js';
|
|
7
7
|
import { W as WalletCategoryTypes } from './index-8be2f857.js';
|
|
8
8
|
import { a as TYPE_TO_WALLET_DARK_COLOR, T as TYPE_TO_IMG_SRC } from './index-e3586083.js';
|
|
9
|
-
import { C as CircleCheckButton } from './CircleCheckButton-
|
|
9
|
+
import { C as CircleCheckButton } from './CircleCheckButton-cb929fad.js';
|
|
10
10
|
|
|
11
11
|
const getDarkBGColor = (type) => {
|
|
12
12
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m;
|
|
@@ -82,7 +82,7 @@ const BoostSmallCard = ({
|
|
|
82
82
|
"div",
|
|
83
83
|
{
|
|
84
84
|
key: issueItem == null ? void 0 : issueItem.id,
|
|
85
|
-
className: "profile-thumb-img border
|
|
85
|
+
className: "profile-thumb-img border border-white border-solid vc-issuee-image h-[35px] w-[35px] rounded-full overflow-hidden mx-[-5px]"
|
|
86
86
|
},
|
|
87
87
|
/* @__PURE__ */ React.createElement(
|
|
88
88
|
UserProfilePicture,
|
|
@@ -157,4 +157,4 @@ const BoostSmallCard = ({
|
|
|
157
157
|
};
|
|
158
158
|
|
|
159
159
|
export { BoostSmallCard as B };
|
|
160
|
-
//# sourceMappingURL=BoostSmallCard-
|
|
160
|
+
//# sourceMappingURL=BoostSmallCard-538e22e7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BoostSmallCard-538e22e7.js","sources":["../../src/helpers/color.helpers.ts","../../src/components/BoostSmallCard/BoostSmallCard.tsx"],"sourcesContent":["import { WalletCategoryTypes } from '../types';\n\nexport const getDarkBGColor = (type: WalletCategoryTypes) => {\n if (!type) return '';\n\n if (type === WalletCategoryTypes?.achievements) {\n return 'bg-orange-500';\n } else if (type === WalletCategoryTypes.qualifications) {\n return 'bg-orange-700';\n } else if (type === WalletCategoryTypes?.learningHistory) {\n return 'bg-emerald-500';\n } else if (type === WalletCategoryTypes?.skills) {\n return 'bg-violet-500';\n } else if (type === WalletCategoryTypes?.jobHistory) {\n return 'bg-blue-500';\n } else if (type === WalletCategoryTypes?.socialBadge) {\n return 'bg-cyan-500';\n } else if (type === WalletCategoryTypes?.relationships) {\n return 'bg-pink-500';\n } else if (type === WalletCategoryTypes?.accommodations) {\n return 'bg-amber-500';\n } else if (type === WalletCategoryTypes?.accomplishments) {\n return 'bg-lime-500';\n } else if (type === WalletCategoryTypes?.events) {\n return 'bg-fuchsia-500';\n } else if (type === WalletCategoryTypes?.membership) {\n return 'bg-teal-500';\n } else if (type === WalletCategoryTypes?.goals) {\n return 'bg-rose-500';\n } else if (type === WalletCategoryTypes?.ids) {\n return 'bg-yellow-500';\n } else if (type === WalletCategoryTypes?.currency) {\n return 'bg-cyan-500';\n }\n\n return 'bg-grayscale-900';\n};\n","import React from 'react';\n\nimport CaretRightFilled from '../../assets/images/CaretRightFilled.svg';\nimport AddAwardLight from '../../assets/images/addawardlight.svg';\nimport ThreeDotVertical from '../svgs/ThreeDotVertical';\nimport UserProfilePicture from '../UserProfilePicture/UserProfilePicture';\nimport { CircleCheckButton } from '../CircleCheckButton';\nimport BadgeThumbnailImg from '../BadgeThumbnailImg/BadgeThumbnailImg';\n\nimport { BoostSmallCardProps, WalletCategoryTypes } from '../../types';\nimport { TYPE_TO_IMG_SRC, TYPE_TO_WALLET_DARK_COLOR } from '../../constants';\nimport { getDarkBGColor } from '../../helpers/color.helpers';\n\nexport const BoostSmallCard: React.FC<BoostSmallCardProps> = ({\n title = 'Title Lorem Ipsum',\n customTitle,\n thumbImgSrc,\n customThumbClass = '',\n customHeaderClass = '',\n type = WalletCategoryTypes.achievements,\n className,\n onCheckClick,\n showChecked,\n checkStatus,\n arrowOnClick,\n buttonOnClick,\n customButtonComponent,\n customBodyClass,\n customBodyComponent,\n customThumbComponent,\n customDraftComponent,\n innerOnClick,\n issueHistory,\n bgImgSrc,\n optionsTriggerOnClick,\n}) => {\n const thumbClass = TYPE_TO_WALLET_DARK_COLOR[type]\n ? `bg-${TYPE_TO_WALLET_DARK_COLOR[type]}`\n : 'bg-grayscale-50';\n const defaultThumbClass = `small-boost-card-thumb flex h-[110px] w-[110px] my-[10px] mx-auto ${thumbClass} overflow-hidden flex-col justify-center items-center rounded-full ${customThumbClass}`;\n const imgSrc = thumbImgSrc?.trim() !== '' ? thumbImgSrc : TYPE_TO_IMG_SRC[type];\n const headerBgColor = getDarkBGColor(type);\n const checkBtnClass = checkStatus ? 'generic-vc-card checked' : 'generic-vc-card unchecked';\n const defaultHeaderClass = `flex generic-card-title w-full justify-center ${customHeaderClass}`;\n const defaultBodyClass = ` boost-small-card-body flex justify-center items-center text-center text-[14px] overflow-hidden text-grayscale-500 py-[5px] px-[10px] ${customBodyClass}`;\n const defaultButtonClass = `cursor-pointer small-boost-boost-btn flex boost-btn-click rounded-[40px] w-[140px] h-[48px] text-white flex justify-center items-center ${headerBgColor}`;\n const innerClickContainerClass = `relative cursor-pointer boost-small-card inner-click-container z-10`;\n\n const issueHistoryDisplay =\n issueHistory && issueHistory?.length > 3 ? issueHistory?.slice(0, 3) : issueHistory;\n const renderIssueHistory = issueHistoryDisplay?.map(issueItem => {\n return (\n <div\n key={issueItem?.id}\n className=\"profile-thumb-img border border-white border-solid vc-issuee-image h-[35px] w-[35px] rounded-full overflow-hidden mx-[-5px]\"\n >\n <UserProfilePicture\n customContainerClass={`h-full w-full object-cover ${\n !issueItem?.thumb ? 'pt-[8px]' : ''\n }`}\n user={{ image: issueItem?.thumb, name: issueItem?.name }}\n alt=\"profile\"\n />\n </div>\n );\n });\n\n const handleInnerClick = () => {\n innerOnClick?.();\n };\n\n const handleOptionsClick = () => {\n optionsTriggerOnClick?.();\n };\n\n return (\n <div\n className={`flex generic-display-card-simple bg-white flex-col shadow-bottom relative $ py-[0px] px-[0px] w-[160px] h-[280px] rounded-[20px] overflow-hidden ${className}`}\n >\n {optionsTriggerOnClick && (\n <section\n className=\"absolute cursor-pointer shadow-bottom h-[30px] w-[30px] top-[5px] right-[5px] rounded-full overflow-hidden z-20 bg-white/70 flex items-center justify-center\"\n onClick={handleOptionsClick}\n >\n <ThreeDotVertical className=\"h-[20px] w-[20px] z-50 text-grayscale-900\" />\n </section>\n )}\n\n {bgImgSrc && (\n <section className=\"absolute top-[-50px] shadow-bottom left-[0px] rounded-b-full overflow-hidden z-0 mt-3\">\n <img className=\"h-full w-full object-cover overflow-hidden\" src={bgImgSrc} />\n </section>\n )}\n\n <div className={innerClickContainerClass} onClick={handleInnerClick}>\n {customThumbComponent}\n {!customThumbComponent && (\n <section className={defaultThumbClass}>\n {thumbImgSrc && thumbImgSrc?.trim() !== '' && (\n <BadgeThumbnailImg\n className=\"generic-display-card-img h-full w-full w-[110px] h-[110px] rounded-full object-cover overflow-hidden\"\n src={thumbImgSrc ?? ''}\n alt=\"Credential Achievement Image\"\n />\n )}\n {(!thumbImgSrc || thumbImgSrc?.trim() === '') && (\n <img\n className=\"max-w-[110px] w-full h-full p-[0px] object-cover rounded-full\"\n src={imgSrc}\n />\n )}\n </section>\n )}\n\n {customTitle && customTitle}\n {!customTitle && (\n <section className={defaultHeaderClass}>\n <p className=\"relative z-[100] small-boost-title text-[16px] leading-[130%] p-[0px] font-medium text-center line-clamp-2\">\n {title}\n </p>\n </section>\n )}\n\n <section className={defaultBodyClass}>\n {customBodyComponent && customBodyComponent}\n {!customBodyComponent &&\n issueHistory &&\n issueHistory?.length > 0 &&\n renderIssueHistory}\n {!customBodyComponent && issueHistory && issueHistory?.length > 3 && (\n <span className=\"small-boost-issue-count ml-[10px] font-semibold\">\n +{issueHistory?.length - 3}\n </span>\n )}\n </section>\n </div>\n\n <section className=\"small-boost-card-footer flex justify-center items-center absolute bottom-[15px] w-full\">\n {customButtonComponent && customButtonComponent}\n\n {!customButtonComponent && (\n <div className=\"flex w-full flex-col items-center justify-center\">\n {customDraftComponent && customDraftComponent}\n <div onClick={buttonOnClick} className={defaultButtonClass}>\n <img className=\"h-[25px] mr-[7px] text-\" src={AddAwardLight} />\n <span className=\"font-mouse text-[25px] tracking-wider\">BOOST</span>\n </div>\n </div>\n )}\n </section>\n {showChecked && (\n <div className=\"check-btn-overlay absolute top-[5px] left-[5px]\">\n <CircleCheckButton\n checked={checkStatus}\n onClick={onCheckClick}\n className={checkBtnClass}\n />\n </div>\n )}\n\n {arrowOnClick && (\n <button\n type=\"button\"\n onClick={arrowOnClick}\n className=\"arrow-btn-overlay absolute top-[52px] right-[2px]\"\n >\n <img\n className=\"h-full w-full object-contai\"\n src={CaretRightFilled ?? ''}\n alt=\"Right Caret\"\n />\n </button>\n )}\n </div>\n );\n};\n\nexport default BoostSmallCard;\n"],"names":[],"mappings":"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"}
|
|
@@ -6,11 +6,11 @@ const Button = ({ text, onClick, className = "" }) => {
|
|
|
6
6
|
{
|
|
7
7
|
type: "button",
|
|
8
8
|
onClick,
|
|
9
|
-
className: `p-4 border rounded text-gray-700 ${className}`
|
|
9
|
+
className: `p-4 border rounded-sm text-gray-700 ${className}`
|
|
10
10
|
},
|
|
11
11
|
text
|
|
12
12
|
);
|
|
13
13
|
};
|
|
14
14
|
|
|
15
15
|
export { Button as B };
|
|
16
|
-
//# sourceMappingURL=Button-
|
|
16
|
+
//# sourceMappingURL=Button-866044a8.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button-866044a8.js","sources":["../../src/components/Button/Button.tsx"],"sourcesContent":["import React, { MouseEventHandler } from 'react';\n\nexport type ButtonProps = {\n text?: string;\n onClick: MouseEventHandler<HTMLButtonElement>;\n className?: string;\n};\n\nexport const Button: React.FC<ButtonProps> = ({ text, onClick, className = '' }) => {\n return (\n <button\n type=\"button\"\n onClick={onClick}\n className={`p-4 border rounded-sm text-gray-700 ${className}`}\n >\n {text}\n </button>\n );\n};\n\nexport default Button;\n"],"names":[],"mappings":";;AAQO,MAAM,SAAgC,CAAC,EAAE,MAAM,OAAS,EAAA,SAAA,GAAY,IAAS,KAAA;AAChF,EACI,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACG,IAAK,EAAA,QAAA;AAAA,MACL,OAAA;AAAA,MACA,SAAA,EAAW,uCAAuC,SAAS,CAAA,CAAA;AAAA,KAAA;AAAA,IAE1D,IAAA;AAAA,GACL,CAAA;AAER;;;;"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React, { useState, useEffect } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { u as useT } from './i18n-b142d48e.js';
|
|
3
|
+
import { I as InfoIcon, c as capitalize, E as ExclamationPoint, A as AcuteCheckmark, d as getBaseUrl, e as VideoIcon, C as Camera, G as GenericDocumentIcon, L as LinkIcon, p as prettyBytes, h as LeftArrow, j as SkillsBox, R as RoundedCorner, k as IssuerSeal, r as resolveProfileDisplay, V as VERIFIER_STATES, l as VerifierStateBadgeAndText, F as FatArrow } from './VerifierStateBadgeAndText-1588afeb.js';
|
|
4
|
+
import { g as getTotalCountOfSkills, c as categorizeSkills, a as getColorForVerificationStatus, b as getInfoFromCredential, d as getCategoryDarkColor, e as getCategoryLightColor, f as getCategoryIcon, h as getImageFromProfile } from './credential.helpers-4c72d304.js';
|
|
5
|
+
import { P as PuzzlePiece } from './PuzzlePiece-9c313d93.js';
|
|
5
6
|
import { U as UserProfilePicture } from './UserProfilePicture-4a00d151.js';
|
|
6
7
|
import { isAppDidWeb } from '@learncard/helpers';
|
|
7
8
|
import { a as LCCategoryEnum } from './index-8be2f857.js';
|
|
8
|
-
import { V as VerificationStatusEnum } from './types.esm-
|
|
9
|
-
import { u as useT } from './i18n-35209bfa.js';
|
|
9
|
+
import { V as VerificationStatusEnum } from './types.esm-a70402df.js';
|
|
10
10
|
import { X, L as Lightbox } from './Lightbox-11f4888d.js';
|
|
11
11
|
import ThreeDots from './DotsThreeOutline.svg';
|
|
12
12
|
|
|
@@ -196,7 +196,7 @@ const VerificationRow = ({ verification }) => {
|
|
|
196
196
|
}
|
|
197
197
|
primaryText = capitalize(primaryText);
|
|
198
198
|
const infoText = "";
|
|
199
|
-
return /* @__PURE__ */ React.createElement("div", { className: "verification-row flex flex-col gap-[5px] font-poppins border-b
|
|
199
|
+
return /* @__PURE__ */ React.createElement("div", { className: "verification-row flex flex-col gap-[5px] font-poppins border-b border-grayscale-200 border-solid w-full py-[10px] last:border-0 last:pb-0" }, /* @__PURE__ */ React.createElement(
|
|
200
200
|
"span",
|
|
201
201
|
{
|
|
202
202
|
className: "font-[700] text-[11px] uppercase flex items-center gap-[3px] select-none",
|
|
@@ -440,7 +440,7 @@ const MediaAttachmentsBox = ({
|
|
|
440
440
|
/* @__PURE__ */ React.createElement(
|
|
441
441
|
"button",
|
|
442
442
|
{
|
|
443
|
-
className: "relative h-[80px] w-[80px] rounded-[15px] overflow-hidden
|
|
443
|
+
className: "relative h-[80px] w-[80px] rounded-[15px] overflow-hidden shrink-0",
|
|
444
444
|
onClick: (e) => {
|
|
445
445
|
e.stopPropagation();
|
|
446
446
|
handleMediaAttachmentClick(media.url, media.type);
|
|
@@ -518,8 +518,10 @@ const CertificateBackFace = ({
|
|
|
518
518
|
customLinkedCredentialsComponent
|
|
519
519
|
}) => {
|
|
520
520
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
521
|
+
const t = useT();
|
|
521
522
|
const { createdAt, credentialSubject } = getInfoFromCredential(credential, "MMM dd, yyyy", {
|
|
522
|
-
uppercaseDate: false
|
|
523
|
+
uppercaseDate: false,
|
|
524
|
+
dateType: "awarded"
|
|
523
525
|
});
|
|
524
526
|
const { description } = (_a = credentialSubject == null ? void 0 : credentialSubject.achievement) != null ? _a : {};
|
|
525
527
|
const criteria = (_c = (_b = credentialSubject == null ? void 0 : credentialSubject.achievement) == null ? void 0 : _b.criteria) == null ? void 0 : _c.narrative;
|
|
@@ -547,13 +549,12 @@ const CertificateBackFace = ({
|
|
|
547
549
|
/* @__PURE__ */ React.createElement(LeftArrow, { className: "text-white", size: "25" }),
|
|
548
550
|
"Details"
|
|
549
551
|
)) : /* @__PURE__ */ React.createElement("h1", { className: "text-white text-center text-[22px] font-jacques" }, "Details"),
|
|
550
|
-
/* @__PURE__ */ React.createElement(TruncateTextBox, { headerText: "About", text: description }, /* @__PURE__ */ React.createElement(
|
|
552
|
+
/* @__PURE__ */ React.createElement(TruncateTextBox, { headerText: "About", text: description }, createdAt && /* @__PURE__ */ React.createElement(
|
|
551
553
|
"span",
|
|
552
554
|
{
|
|
553
|
-
className: `text-grayscale-600 font-poppins text-[12px] font-[600] w-full ${description ? "pt-[10px] border-t
|
|
555
|
+
className: `text-grayscale-600 font-poppins text-[12px] font-[600] w-full ${description ? "pt-[10px] border-t border-solid border-grayscale-200" : ""}`
|
|
554
556
|
},
|
|
555
|
-
"
|
|
556
|
-
createdAt
|
|
557
|
+
t("credential.awardedOn", { date: createdAt })
|
|
557
558
|
)),
|
|
558
559
|
criteria && /* @__PURE__ */ React.createElement(TruncateTextBox, { headerText: "Criteria", text: criteria }),
|
|
559
560
|
customLinkedCredentialsComponent && customLinkedCredentialsComponent,
|
|
@@ -592,7 +593,7 @@ const CertificateCornerIcon = ({
|
|
|
592
593
|
break;
|
|
593
594
|
case "bottom-left":
|
|
594
595
|
iconPositionClassName = "bottom-0 left-0";
|
|
595
|
-
cornerPositionClassName = "top-0 right-0 rotate-
|
|
596
|
+
cornerPositionClassName = "top-0 right-0 rotate-270";
|
|
596
597
|
break;
|
|
597
598
|
case "bottom-right":
|
|
598
599
|
iconPositionClassName = "bottom-0 right-0";
|
|
@@ -723,7 +724,7 @@ const CertificateProfileImageDisplay = ({
|
|
|
723
724
|
avatarFingerprintColor,
|
|
724
725
|
avatarFallbackVariant = "initial"
|
|
725
726
|
}) => {
|
|
726
|
-
const imageClassName = "h-[50px] w-[50px] rounded-full overflow-hidden border-
|
|
727
|
+
const imageClassName = "h-[50px] w-[50px] rounded-full overflow-hidden border-2 border-solid border-grayscale-200";
|
|
727
728
|
const fingerprintClassName = isIssuer ? "h-[38px] w-[38px]" : "h-[36px] w-[36px]";
|
|
728
729
|
const silhouetteClassName = "h-[38px] w-[38px]";
|
|
729
730
|
const profileImage = imageComponent ? /* @__PURE__ */ React.createElement("div", { className: imageClassName }, imageComponent) : /* @__PURE__ */ React.createElement(
|
|
@@ -763,6 +764,7 @@ const CertificateFrontFace = ({
|
|
|
763
764
|
onVerifierClick
|
|
764
765
|
}) => {
|
|
765
766
|
var _a, _b, _c;
|
|
767
|
+
const t = useT();
|
|
766
768
|
const {
|
|
767
769
|
title = "",
|
|
768
770
|
createdAt,
|
|
@@ -770,7 +772,10 @@ const CertificateFrontFace = ({
|
|
|
770
772
|
issuee: _issuee = "",
|
|
771
773
|
credentialSubject,
|
|
772
774
|
imageUrl
|
|
773
|
-
} = getInfoFromCredential(credential, "MMM dd, yyyy", {
|
|
775
|
+
} = getInfoFromCredential(credential, "MMM dd, yyyy", {
|
|
776
|
+
uppercaseDate: false,
|
|
777
|
+
dateType: "awarded"
|
|
778
|
+
});
|
|
774
779
|
const issuee = issueeOverride || _issuee;
|
|
775
780
|
const issuer = issuerOverride || _issuer;
|
|
776
781
|
const { description } = (_a = credentialSubject == null ? void 0 : credentialSubject.achievement) != null ? _a : {};
|
|
@@ -841,12 +846,12 @@ const CertificateFrontFace = ({
|
|
|
841
846
|
/* @__PURE__ */ React.createElement(
|
|
842
847
|
"div",
|
|
843
848
|
{
|
|
844
|
-
className: `flex flex-col gap-[15px] items-center px-[20px] pt-[55px] pb-[20px] border-solid border-
|
|
849
|
+
className: `flex flex-col gap-[15px] items-center px-[20px] pt-[55px] pb-[20px] border-solid border-4 ${borderColor} rounded-[30px]`
|
|
845
850
|
},
|
|
846
851
|
/* @__PURE__ */ React.createElement("div", { className: "flex flex-col gap-[5px] items-center" }, /* @__PURE__ */ React.createElement("h1", { className: "text-grayscale-900 text-center text-[20px] font-jacques" }, title), /* @__PURE__ */ React.createElement(
|
|
847
852
|
"div",
|
|
848
853
|
{
|
|
849
|
-
className: `${textLightColor} uppercase text-[14px] font-notoSans font-
|
|
854
|
+
className: `${textLightColor} uppercase text-[14px] font-notoSans font-semibold`
|
|
850
855
|
},
|
|
851
856
|
formattedDisplayType
|
|
852
857
|
)),
|
|
@@ -867,7 +872,7 @@ const CertificateFrontFace = ({
|
|
|
867
872
|
/* @__PURE__ */ React.createElement("div", { className: "text-[14px] text-grayscale-800 flex flex-col items-center w-full" }, /* @__PURE__ */ React.createElement("span", { className: "font-jacques flex gap-[5px] items-center w-full justify-center text-center break-all" }, issueeName === "0 person" ? "Not yet awarded" : /* @__PURE__ */ React.createElement(React.Fragment, null, !hideAwardedTo && (issueeDisplay.isDidValue ? /* @__PURE__ */ React.createElement("span", { className: "inline-flex items-baseline gap-1" }, /* @__PURE__ */ React.createElement("span", null, /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-900 font-semibold" }, "Digital ID:"), " ", /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-600" }, issueeName))) : (
|
|
868
873
|
// <>{issueeName || <Line width="60" />}</>
|
|
869
874
|
/* @__PURE__ */ React.createElement(React.Fragment, null, issueeName)
|
|
870
|
-
)))), !hideIssueDate && /* @__PURE__ */ React.createElement("span", { className: "font-jacques" }, "
|
|
875
|
+
)))), !hideIssueDate && createdAt && /* @__PURE__ */ React.createElement("span", { className: "font-jacques" }, t("credential.awardedOn", { date: createdAt }))),
|
|
871
876
|
/* @__PURE__ */ React.createElement("div", { className: "flex flex-col gap-[10px] items-center" }, description && /* @__PURE__ */ React.createElement("div", { className: "text-center text-grayscale-700 text-[12px] font-jacques line-clamp-4" }, description), /* @__PURE__ */ React.createElement(
|
|
872
877
|
CertDisplayCardSkillsCount,
|
|
873
878
|
{
|
|
@@ -895,7 +900,7 @@ const CertificateFrontFace = ({
|
|
|
895
900
|
avatarFingerprintColor: issuerDisplay.avatarFingerprintColor,
|
|
896
901
|
avatarFallbackVariant: issuerDisplay.isDidValue ? "fingerprint" : "initial"
|
|
897
902
|
}
|
|
898
|
-
), /* @__PURE__ */ React.createElement("span", { className: "font-jacques text-[12px] text-grayscale-800" }, "Certified by"), issuerDisplay.isDidValue ? /* @__PURE__ */ React.createElement("span", { className: "mb-[3px] pt-[3px] text-grayscale-900 text-[14px] leading-[90%] font-jacques tracking-[0.25px] border-b
|
|
903
|
+
), /* @__PURE__ */ React.createElement("span", { className: "font-jacques text-[12px] text-grayscale-800" }, "Certified by"), issuerDisplay.isDidValue ? /* @__PURE__ */ React.createElement("span", { className: "mb-[3px] pt-[3px] text-grayscale-900 text-[14px] leading-[90%] font-jacques tracking-[0.25px] border-b border-solid border-grayscale-200 w-full text-center line-clamp-2 wrap-break-word scrollbar-hide" }, /* @__PURE__ */ React.createElement("span", { className: "font-semibold" }, issuerDisplay.isDidValue ? "Digital ID: " : ""), /* @__PURE__ */ React.createElement("span", { className: "text-grayscale-600" }, issuerName)) : /* @__PURE__ */ React.createElement("span", { className: "mb-[3px] pt-[3px] text-grayscale-900 text-[25px] leading-[90%] font-sacramento border-b border-solid border-grayscale-200 w-full text-center line-clamp-2 wrap-break-word scrollbar-hide" }, issuerName), /* @__PURE__ */ React.createElement(
|
|
899
904
|
VerifierStateBadgeAndText,
|
|
900
905
|
{
|
|
901
906
|
verifierState,
|
|
@@ -904,7 +909,13 @@ const CertificateFrontFace = ({
|
|
|
904
909
|
}
|
|
905
910
|
)),
|
|
906
911
|
customBodyContentSlot && customBodyContentSlot,
|
|
907
|
-
/* @__PURE__ */ React.createElement(
|
|
912
|
+
/* @__PURE__ */ React.createElement(
|
|
913
|
+
"div",
|
|
914
|
+
{
|
|
915
|
+
className: `${textLightColor} uppercase text-[14px] font-notoSans font-semibold`
|
|
916
|
+
},
|
|
917
|
+
categoryTitle
|
|
918
|
+
)
|
|
908
919
|
),
|
|
909
920
|
categoryType && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(CertificateCornerIcon, { categoryType, position: "top-left" }), /* @__PURE__ */ React.createElement(CertificateCornerIcon, { categoryType, position: "top-right" }), /* @__PURE__ */ React.createElement(CertificateCornerIcon, { categoryType, position: "bottom-left" }), /* @__PURE__ */ React.createElement(CertificateCornerIcon, { categoryType, position: "bottom-right" })),
|
|
910
921
|
/* @__PURE__ */ React.createElement("span", { className: "hidden border-rose-500 text-spice-500 border-spice-500 border-cyan-500 text-cyan-500 border-indigo-500" }),
|
|
@@ -1024,4 +1035,4 @@ const CertificateDisplayCard = ({
|
|
|
1024
1035
|
};
|
|
1025
1036
|
|
|
1026
1037
|
export { AlignmentsBox as A, CertDisplayCardSkillsCount as C, CertificateBackFace as a, CertificateDisplayCard as b, CertificateFrontFace as c };
|
|
1027
|
-
//# sourceMappingURL=CertificateDisplayCard-
|
|
1038
|
+
//# sourceMappingURL=CertificateDisplayCard-46c13c49.js.map
|