@learncard/react 2.9.4 → 2.9.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/dist/cjs/{BoostGenericCard-6ddf7b44.js → BoostGenericCard-8bfbd19d.js} +9 -6
  2. package/dist/cjs/BoostGenericCard-8bfbd19d.js.map +1 -0
  3. package/dist/cjs/{CertificateDisplayCard-96418fdf.js → CertificateDisplayCard-3629a31d.js} +26 -9
  4. package/dist/{esm/CertificateDisplayCard-e7317610.js.map → cjs/CertificateDisplayCard-3629a31d.js.map} +1 -1
  5. package/dist/cjs/{MeritBadgeDisplayCard-1ed86e80.js → MeritBadgeDisplayCard-6909f9c4.js} +20 -7
  6. package/dist/cjs/MeritBadgeDisplayCard-6909f9c4.js.map +1 -0
  7. package/dist/cjs/{MeritBadgeSkillsCount-82621c9e.js → MeritBadgeSkillsCount-6ab76512.js} +2 -2
  8. package/dist/cjs/{MeritBadgeSkillsCount-82621c9e.js.map → MeritBadgeSkillsCount-6ab76512.js.map} +1 -1
  9. package/dist/cjs/{VCCard-ef996fff.js → VCCard-71a11dcb.js} +3 -3
  10. package/dist/cjs/{VCCard-ef996fff.js.map → VCCard-71a11dcb.js.map} +1 -1
  11. package/dist/cjs/{VCDisplayBackFace-ce51e28d.js → VCDisplayBackFace-a1d472dd.js} +3 -3
  12. package/dist/cjs/{VCDisplayBackFace-ce51e28d.js.map → VCDisplayBackFace-a1d472dd.js.map} +1 -1
  13. package/dist/cjs/{VCDisplayCard-a2cb79e0.js → VCDisplayCard-b401b6cb.js} +3 -3
  14. package/dist/cjs/{VCDisplayCard-a2cb79e0.js.map → VCDisplayCard-b401b6cb.js.map} +1 -1
  15. package/dist/cjs/{VCDisplayCard2-08ec8bfb.js → VCDisplayCard2-7e83002e.js} +42 -17
  16. package/dist/cjs/VCDisplayCard2-7e83002e.js.map +1 -0
  17. package/dist/cjs/{VCVerificationPill-d8e62475.js → VCVerificationPill-9ab86092.js} +2 -2
  18. package/dist/cjs/{VCVerificationPill-d8e62475.js.map → VCVerificationPill-9ab86092.js.map} +1 -1
  19. package/dist/cjs/{VerifierStateBadgeAndText-e46d8393.js → VerifierStateBadgeAndText-103557ca.js} +5 -3
  20. package/dist/{esm/VerifierStateBadgeAndText-490c08dc.js.map → cjs/VerifierStateBadgeAndText-103557ca.js.map} +1 -1
  21. package/dist/cjs/{credential.helpers-d7126a07.js → credential.helpers-a8529046.js} +2 -2
  22. package/dist/cjs/{credential.helpers-d7126a07.js.map → credential.helpers-a8529046.js.map} +1 -1
  23. package/dist/cjs/index.js +12 -12
  24. package/dist/cjs/index13.js +12 -12
  25. package/dist/cjs/index21.js +5 -5
  26. package/dist/cjs/index3.js +3 -3
  27. package/dist/cjs/index38.js +10 -10
  28. package/dist/cjs/index39.js +4 -4
  29. package/dist/cjs/index40.js +5 -5
  30. package/dist/cjs/index41.js +6 -6
  31. package/dist/cjs/index42.js +1 -1
  32. package/dist/cjs/index45.js +2 -2
  33. package/dist/cjs/index6.js +4 -4
  34. package/dist/cjs/{types.esm-45113962.js → types.esm-15986537.js} +138 -12
  35. package/dist/{esm/types.esm-e1539e26.js.map → cjs/types.esm-15986537.js.map} +1 -1
  36. package/dist/esm/{BoostGenericCard-b02195eb.js → BoostGenericCard-46743965.js} +9 -6
  37. package/dist/esm/BoostGenericCard-46743965.js.map +1 -0
  38. package/dist/esm/{CertificateDisplayCard-e7317610.js → CertificateDisplayCard-bba13104.js} +26 -9
  39. package/dist/{cjs/CertificateDisplayCard-96418fdf.js.map → esm/CertificateDisplayCard-bba13104.js.map} +1 -1
  40. package/dist/esm/{MeritBadgeDisplayCard-e1928020.js → MeritBadgeDisplayCard-e212372b.js} +20 -7
  41. package/dist/esm/MeritBadgeDisplayCard-e212372b.js.map +1 -0
  42. package/dist/esm/{MeritBadgeSkillsCount-d67d5a0f.js → MeritBadgeSkillsCount-44a3cd70.js} +2 -2
  43. package/dist/esm/{MeritBadgeSkillsCount-d67d5a0f.js.map → MeritBadgeSkillsCount-44a3cd70.js.map} +1 -1
  44. package/dist/esm/{VCCard-252d83bf.js → VCCard-e29637d6.js} +3 -3
  45. package/dist/esm/{VCCard-252d83bf.js.map → VCCard-e29637d6.js.map} +1 -1
  46. package/dist/esm/{VCDisplayBackFace-17bbcf84.js → VCDisplayBackFace-2a9a838b.js} +3 -3
  47. package/dist/esm/{VCDisplayBackFace-17bbcf84.js.map → VCDisplayBackFace-2a9a838b.js.map} +1 -1
  48. package/dist/esm/{VCDisplayCard-36ca1b3e.js → VCDisplayCard-3a8c0544.js} +3 -3
  49. package/dist/esm/{VCDisplayCard-36ca1b3e.js.map → VCDisplayCard-3a8c0544.js.map} +1 -1
  50. package/dist/esm/{VCDisplayCard2-cda19c00.js → VCDisplayCard2-f02476ef.js} +42 -17
  51. package/dist/esm/VCDisplayCard2-f02476ef.js.map +1 -0
  52. package/dist/esm/{VCVerificationPill-fd5cbfc1.js → VCVerificationPill-2c293962.js} +2 -2
  53. package/dist/esm/{VCVerificationPill-fd5cbfc1.js.map → VCVerificationPill-2c293962.js.map} +1 -1
  54. package/dist/esm/{VerifierStateBadgeAndText-490c08dc.js → VerifierStateBadgeAndText-796c26ac.js} +5 -3
  55. package/dist/{cjs/VerifierStateBadgeAndText-e46d8393.js.map → esm/VerifierStateBadgeAndText-796c26ac.js.map} +1 -1
  56. package/dist/esm/{credential.helpers-0728c97f.js → credential.helpers-ac4e6c0f.js} +2 -2
  57. package/dist/esm/{credential.helpers-0728c97f.js.map → credential.helpers-ac4e6c0f.js.map} +1 -1
  58. package/dist/esm/index.js +12 -12
  59. package/dist/esm/index13.js +12 -12
  60. package/dist/esm/index21.js +5 -5
  61. package/dist/esm/index3.js +3 -3
  62. package/dist/esm/index38.js +10 -10
  63. package/dist/esm/index39.js +4 -4
  64. package/dist/esm/index40.js +5 -5
  65. package/dist/esm/index41.js +6 -6
  66. package/dist/esm/index42.js +1 -1
  67. package/dist/esm/index45.js +2 -2
  68. package/dist/esm/index6.js +4 -4
  69. package/dist/esm/{types.esm-e1539e26.js → types.esm-adb59560.js} +138 -12
  70. package/dist/{cjs/types.esm-45113962.js.map → esm/types.esm-adb59560.js.map} +1 -1
  71. package/dist/index.d.ts +18 -1
  72. package/dist/main.css +1 -1
  73. package/dist/main.js +1 -1
  74. package/package.json +3 -3
  75. package/dist/cjs/BoostGenericCard-6ddf7b44.js.map +0 -1
  76. package/dist/cjs/MeritBadgeDisplayCard-1ed86e80.js.map +0 -1
  77. package/dist/cjs/VCDisplayCard2-08ec8bfb.js.map +0 -1
  78. package/dist/esm/BoostGenericCard-b02195eb.js.map +0 -1
  79. package/dist/esm/MeritBadgeDisplayCard-e1928020.js.map +0 -1
  80. package/dist/esm/VCDisplayCard2-cda19c00.js.map +0 -1
@@ -3,7 +3,7 @@ import { W as WalletCategoryTypes } from './index-28917993.js';
3
3
  import { a as TYPE_TO_IMG_SRC, b as TYPE_TO_WALLET_DARK_COLOR } from './index-cbe3a76a.js';
4
4
  import { B as BadgeDisplayIcon, A as AwardDisplayIcon, a as CourseDisplayIcon, I as IDDisplayIcon, C as CertificateDisplayIcon } from './IDDisplayIcon-d87174fd.js';
5
5
  import { P as PuzzlePiece } from './PuzzlePiece-a3d9cc62.js';
6
- import { c as categorizeSkills } from './credential.helpers-0728c97f.js';
6
+ import { c as categorizeSkills } from './credential.helpers-ac4e6c0f.js';
7
7
  import { T as ThreeDotVertical } from './ThreeDotVertical-ccbbc8ef.js';
8
8
  import { C as CircleCheckButton } from './CircleCheckButton-23a9c7d4.js';
9
9
 
@@ -85,6 +85,7 @@ const BoostGenericCard = ({
85
85
  linkedCredentialsClassName = "",
86
86
  checkBtnClass = ""
87
87
  }) => {
88
+ var _a;
88
89
  const thumbClass = TYPE_TO_WALLET_DARK_COLOR[type] ? `bg-${TYPE_TO_WALLET_DARK_COLOR[type]}` : "bg-grayscale-50";
89
90
  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}`;
90
91
  const imgSrc = (thumbImgSrc == null ? void 0 : thumbImgSrc.trim()) !== "" ? thumbImgSrc : TYPE_TO_IMG_SRC[type];
@@ -136,12 +137,14 @@ const BoostGenericCard = ({
136
137
  {
137
138
  className: `
138
139
  ${customHeaderClass}
139
- text-[16px] font-medium text-center text-grayscale-900 line-clamp-2
140
- h-[40px] flex items-center justify-center
141
- `
140
+ font-medium text-center text-grayscale-900 line-clamp-2
141
+ h-[50px] flex items-center justify-center
142
+ ${((_a = title == null ? void 0 : title.length) != null ? _a : 0) > 35 ? "text-[13px] leading-tight" : "text-[16px]"}
143
+ `,
144
+ title
142
145
  },
143
146
  title
144
- ) : customTitle, customIssuerName || /* @__PURE__ */ React.createElement("span", { className: "text-[12px] text-grayscale-700 mt-1" }, "by ", /* @__PURE__ */ React.createElement("span", { className: "font-bold" }, issuerName)), customDateDisplay || /* @__PURE__ */ React.createElement("p", { className: "text-[12px] text-grayscale-700 mt-1 flex items-center" }, verifierBadge, dateDisplay), isInSkillsModal && credential && /* @__PURE__ */ React.createElement(
147
+ ) : customTitle, customIssuerName || /* @__PURE__ */ React.createElement("span", { className: "text-[12px] text-grayscale-700 mt-1" }, "by ", /* @__PURE__ */ React.createElement("span", { className: "font-bold" }, issuerName)), customDateDisplay || /* @__PURE__ */ React.createElement("div", { className: "text-[11px] text-grayscale-700 mt-1 flex flex-col items-center" }, verifierBadge, /* @__PURE__ */ React.createElement("span", null, dateDisplay)), isInSkillsModal && credential && /* @__PURE__ */ React.createElement(
145
148
  AlignmentSkillsCount,
146
149
  {
147
150
  credential,
@@ -171,4 +174,4 @@ const BoostGenericCard = ({
171
174
  };
172
175
 
173
176
  export { BoostGenericCard as B };
174
- //# sourceMappingURL=BoostGenericCard-b02195eb.js.map
177
+ //# sourceMappingURL=BoostGenericCard-46743965.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoostGenericCard-46743965.js","sources":["../../src/components/BoostGenericCard/AlignmentSkillsCount.tsx","../../src/helpers/display.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.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 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';\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}) => {\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 return (\n <div\n className={`flex bg-white flex-col shadow-bottom relative p-0 w-[160px] h-[265px] rounded-[20px] overflow-hidden ${className}`}\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 className=\"absolute top-[-50px] left-0 rounded-b-full overflow-hidden z-0\">\n <img className=\"h-full w-full object-cover\" src={bgImgSrc} />\n </section>\n )}\n\n <button\n type=\"button\"\n className=\"z-10 flex flex-col flex-grow\"\n onClick={handleInnerClick}\n >\n {/* Thumbnail */}\n {customThumbComponent || (\n <section className={defaultThumbClass}>\n {thumbImgSrc?.trim() ? (\n <img\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\n {/* Details Section: grows to fill available space */}\n <section\n className={`flex flex-col flex-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 ${(title?.length ?? 0) > 35 ? 'text-[13px] leading-tight' : 'text-[16px]'}\n `}\n title={title}\n >\n {title}\n </p>\n ) : (\n customTitle\n )}\n\n {/* Issuer */}\n {customIssuerName || (\n <span className=\"text-[12px] text-grayscale-700 mt-1\">\n by <span className=\"font-bold\">{issuerName}</span>\n </span>\n )}\n\n {/* Date & Verifier */}\n {customDateDisplay || (\n <div className=\"text-[11px] text-grayscale-700 mt-1 flex flex-col items-center\">\n {verifierBadge}\n <span>{dateDisplay}</span>\n </div>\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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"}
@@ -1,10 +1,10 @@
1
1
  import React, { useState, useEffect } from 'react';
2
- import { I as InfoIcon, c as capitalize, E as ExclamationPoint, A as AcuteCheckmark, g as getBaseUrl, b as VideoIcon, C as Camera, G as GenericDocumentIcon, L as LinkIcon, p as prettyBytes, d as LeftArrow, e as SkillsBox, R as RoundedCorner, f as IssuerSeal, V as VERIFIER_STATES, h as Line, a as VerifierStateBadgeAndText, F as FatArrow } from './VerifierStateBadgeAndText-490c08dc.js';
3
- import { g as getTotalCountOfSkills, c as categorizeSkills, a as getColorForVerificationStatus, b as getInfoFromCredential, d as getCategoryDarkColor, e as getCategoryLightColor, f as getCategoryIcon, h as getNameFromProfile, i as getImageFromProfile } from './credential.helpers-0728c97f.js';
2
+ import { I as InfoIcon, c as capitalize, E as ExclamationPoint, A as AcuteCheckmark, g as getBaseUrl, b as VideoIcon, C as Camera, G as GenericDocumentIcon, L as LinkIcon, p as prettyBytes, d as LeftArrow, e as SkillsBox, R as RoundedCorner, f as IssuerSeal, V as VERIFIER_STATES, h as Line, a as VerifierStateBadgeAndText, F as FatArrow } from './VerifierStateBadgeAndText-796c26ac.js';
3
+ import { g as getTotalCountOfSkills, c as categorizeSkills, a as getColorForVerificationStatus, b as getInfoFromCredential, d as getCategoryDarkColor, e as getCategoryLightColor, f as getCategoryIcon, h as getNameFromProfile, i as getImageFromProfile } from './credential.helpers-ac4e6c0f.js';
4
4
  import { P as PuzzlePiece } from './PuzzlePiece-a3d9cc62.js';
5
5
  import { U as UserProfilePicture } from './UserProfilePicture-7b950437.js';
6
6
  import { a as LCCategoryEnum } from './index-28917993.js';
7
- import { V as VerificationStatusEnum } from './types.esm-e1539e26.js';
7
+ import { V as VerificationStatusEnum } from './types.esm-adb59560.js';
8
8
  import { X, L as Lightbox } from './Lightbox-f0338a0c.js';
9
9
  import CaretRightFilled from './CaretRightFilled.svg';
10
10
  import ThreeDots from './DotsThreeOutline.svg';
@@ -640,7 +640,10 @@ const CertificateFrontFace = ({
640
640
  handleViewBackFace,
641
641
  showDetailsBtn = false,
642
642
  formattedDisplayType,
643
- customBodyContentSlot
643
+ customBodyContentSlot,
644
+ unknownVerifierTitle,
645
+ hideAwardedTo: hideAwardedToProp,
646
+ hideFrontFaceDetails
644
647
  }) => {
645
648
  var _a, _b, _c;
646
649
  const {
@@ -685,6 +688,8 @@ const CertificateFrontFace = ({
685
688
  let verifierState;
686
689
  if ((credentialSubject == null ? void 0 : credentialSubject.id) === issuerDid && issuerDid && issuerDid !== "did:example:123") {
687
690
  verifierState = VERIFIER_STATES.selfVerified;
691
+ } else if (unknownVerifierTitle) {
692
+ verifierState = VERIFIER_STATES.trustedVerifier;
688
693
  } else {
689
694
  if ((knownDIDRegistry == null ? void 0 : knownDIDRegistry.source) === "trusted") {
690
695
  verifierState = VERIFIER_STATES.trustedVerifier;
@@ -697,7 +702,7 @@ const CertificateFrontFace = ({
697
702
  }
698
703
  }
699
704
  const isSelfVerified = verifierState === VERIFIER_STATES.selfVerified;
700
- const hideAwardedTo = (issueeName == null ? void 0 : issueeName.includes("did:key")) || (issueeName == null ? void 0 : issueeName.includes("did:example:123"));
705
+ const hideAwardedTo = hideAwardedToProp != null ? hideAwardedToProp : (issueeName == null ? void 0 : issueeName.includes("did:key")) || (issueeName == null ? void 0 : issueeName.includes("did:example:123"));
701
706
  return /* @__PURE__ */ React.createElement(
702
707
  "section",
703
708
  {
@@ -752,7 +757,13 @@ const CertificateFrontFace = ({
752
757
  },
753
758
  "Details"
754
759
  )),
755
- /* @__PURE__ */ React.createElement("div", { className: "flex flex-col gap-[5px] items-center w-full" }, /* @__PURE__ */ React.createElement("span", { className: "font-jacques text-[12px] text-grayscale-800" }, "Certified by"), /* @__PURE__ */ React.createElement("span", { className: "mb-[3px] pt-[3px] text-grayscale-900 text-[25px] leading-[90%] font-sacramento border-b-[1px] border-solid border-grayscale-200 w-full text-center overflow-ellipsis whitespace-normal scrollbar-hide" }, issuerName), /* @__PURE__ */ React.createElement(VerifierStateBadgeAndText, { verifierState })),
760
+ /* @__PURE__ */ React.createElement("div", { className: "flex flex-col gap-[5px] items-center w-full" }, /* @__PURE__ */ React.createElement("span", { className: "font-jacques text-[12px] text-grayscale-800" }, "Certified by"), /* @__PURE__ */ React.createElement("span", { className: "mb-[3px] pt-[3px] text-grayscale-900 text-[25px] leading-[90%] font-sacramento border-b-[1px] border-solid border-grayscale-200 w-full text-center overflow-ellipsis whitespace-normal scrollbar-hide" }, issuerName), /* @__PURE__ */ React.createElement(
761
+ VerifierStateBadgeAndText,
762
+ {
763
+ verifierState,
764
+ unknownVerifierTitle
765
+ }
766
+ )),
756
767
  customBodyContentSlot && customBodyContentSlot,
757
768
  /* @__PURE__ */ React.createElement("div", { className: `${textLightColor} uppercase text-[14px] font-notoSans font-[600]` }, categoryTitle)
758
769
  ),
@@ -798,7 +809,10 @@ const CertificateDisplayCard = ({
798
809
  showDetailsBtn = false,
799
810
  formattedDisplayType,
800
811
  customLinkedCredentialsComponent,
801
- customBodyContentSlot
812
+ customBodyContentSlot,
813
+ unknownVerifierTitle,
814
+ hideAwardedTo,
815
+ hideFrontFaceDetails
802
816
  }) => {
803
817
  const [_isFront, _setIsFront] = useState(isFrontOverride != null ? isFrontOverride : true);
804
818
  const isFront = isFrontOverride != null ? isFrontOverride : _isFront;
@@ -819,7 +833,10 @@ const CertificateDisplayCard = ({
819
833
  isFront,
820
834
  showDetailsBtn,
821
835
  formattedDisplayType,
822
- customBodyContentSlot
836
+ customBodyContentSlot,
837
+ unknownVerifierTitle,
838
+ hideAwardedTo,
839
+ hideFrontFaceDetails
823
840
  }
824
841
  ), !isFront && /* @__PURE__ */ React.createElement(
825
842
  CertificateBackFace,
@@ -876,4 +893,4 @@ const CertificateDisplayCard = ({
876
893
  };
877
894
 
878
895
  export { AlignmentsBox as A, CertDisplayCardSkillsCount as C, CertificateBackFace as a, CertificateDisplayCard as b, CertificateFrontFace as c };
879
- //# sourceMappingURL=CertificateDisplayCard-e7317610.js.map
896
+ //# sourceMappingURL=CertificateDisplayCard-bba13104.js.map