@learncard/react 2.9.26 → 2.9.27

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 (106) hide show
  1. package/dist/cjs/{BoostGenericCard-82a9b3df.js → BoostGenericCard-3d532b12.js} +2 -2
  2. package/dist/cjs/{BoostGenericCard-82a9b3df.js.map → BoostGenericCard-3d532b12.js.map} +1 -1
  3. package/dist/cjs/{BoostSmallCard-2141fdd9.js → BoostSmallCard-4e200046.js} +2 -2
  4. package/dist/cjs/{BoostSmallCard-2141fdd9.js.map → BoostSmallCard-4e200046.js.map} +1 -1
  5. package/dist/cjs/{CertificateDisplayCard-0ac85a2b.js → CertificateDisplayCard-1b498a9f.js} +48 -19
  6. package/dist/cjs/CertificateDisplayCard-1b498a9f.js.map +1 -0
  7. package/dist/cjs/{MeritBadgeDisplayCard-e6d6ff8f.js → MeritBadgeDisplayCard-8f843a99.js} +40 -74
  8. package/dist/cjs/MeritBadgeDisplayCard-8f843a99.js.map +1 -0
  9. package/dist/cjs/{MeritBadgeSkillsCount-8c82275d.js → MeritBadgeSkillsCount-e4f0676c.js} +2 -2
  10. package/dist/cjs/{MeritBadgeSkillsCount-8c82275d.js.map → MeritBadgeSkillsCount-e4f0676c.js.map} +1 -1
  11. package/dist/cjs/{NotificationBoostCard-c4679a33.js → NotificationBoostCard-80dbf681.js} +2 -2
  12. package/dist/cjs/{NotificationBoostCard-c4679a33.js.map → NotificationBoostCard-80dbf681.js.map} +1 -1
  13. package/dist/cjs/UserProfilePicture-22944d8f.js +98 -0
  14. package/dist/cjs/UserProfilePicture-22944d8f.js.map +1 -0
  15. package/dist/cjs/{VCCard-2b76ce0d.js → VCCard-630441d8.js} +3 -3
  16. package/dist/cjs/{VCCard-2b76ce0d.js.map → VCCard-630441d8.js.map} +1 -1
  17. package/dist/cjs/{VCDisplayBackFace-d6ef7575.js → VCDisplayBackFace-138a501e.js} +3 -3
  18. package/dist/cjs/{VCDisplayBackFace-d6ef7575.js.map → VCDisplayBackFace-138a501e.js.map} +1 -1
  19. package/dist/cjs/{VCDisplayCard-c1ef1b32.js → VCDisplayCard-f1ef9eba.js} +4 -4
  20. package/dist/cjs/{VCDisplayCard-c1ef1b32.js.map → VCDisplayCard-f1ef9eba.js.map} +1 -1
  21. package/dist/cjs/{VCDisplayCard2-fb48d830.js → VCDisplayCard2-6eab7a9c.js} +32 -17
  22. package/dist/cjs/VCDisplayCard2-6eab7a9c.js.map +1 -0
  23. package/dist/cjs/{VCVerificationPill-db886a9a.js → VCVerificationPill-f36b8355.js} +2 -2
  24. package/dist/cjs/{VCVerificationPill-db886a9a.js.map → VCVerificationPill-f36b8355.js.map} +1 -1
  25. package/dist/cjs/{VerifierStateBadgeAndText-4c22c62f.js → VerifierStateBadgeAndText-568d8e5a.js} +171 -22
  26. package/dist/cjs/VerifierStateBadgeAndText-568d8e5a.js.map +1 -0
  27. package/dist/cjs/{credential.helpers-af8eb27a.js → credential.helpers-5069379a.js} +2 -2
  28. package/dist/cjs/{credential.helpers-af8eb27a.js.map → credential.helpers-5069379a.js.map} +1 -1
  29. package/dist/cjs/index.js +15 -15
  30. package/dist/cjs/index13.js +15 -15
  31. package/dist/cjs/index21.js +6 -6
  32. package/dist/cjs/index24.js +2 -2
  33. package/dist/cjs/index3.js +3 -3
  34. package/dist/cjs/index37.js +1 -1
  35. package/dist/cjs/index38.js +11 -11
  36. package/dist/cjs/index39.js +4 -4
  37. package/dist/cjs/index4.js +2 -2
  38. package/dist/cjs/index40.js +6 -6
  39. package/dist/cjs/index41.js +7 -7
  40. package/dist/cjs/index42.js +1 -1
  41. package/dist/cjs/index45.js +2 -2
  42. package/dist/cjs/index6.js +5 -5
  43. package/dist/cjs/{types.esm-8f32aacf.js → types.esm-9c4dc522.js} +43 -2
  44. package/dist/cjs/types.esm-9c4dc522.js.map +1 -0
  45. package/dist/esm/{BoostGenericCard-381b2a44.js → BoostGenericCard-43c1b5dc.js} +2 -2
  46. package/dist/esm/{BoostGenericCard-381b2a44.js.map → BoostGenericCard-43c1b5dc.js.map} +1 -1
  47. package/dist/esm/{BoostSmallCard-f2192dc1.js → BoostSmallCard-6d63f0b3.js} +2 -2
  48. package/dist/esm/{BoostSmallCard-f2192dc1.js.map → BoostSmallCard-6d63f0b3.js.map} +1 -1
  49. package/dist/esm/{CertificateDisplayCard-1b4b275b.js → CertificateDisplayCard-9edb38cd.js} +48 -19
  50. package/dist/esm/CertificateDisplayCard-9edb38cd.js.map +1 -0
  51. package/dist/esm/{MeritBadgeDisplayCard-580ee309.js → MeritBadgeDisplayCard-634e16d9.js} +40 -74
  52. package/dist/esm/MeritBadgeDisplayCard-634e16d9.js.map +1 -0
  53. package/dist/esm/{MeritBadgeSkillsCount-146a6631.js → MeritBadgeSkillsCount-c3ba45be.js} +2 -2
  54. package/dist/esm/{MeritBadgeSkillsCount-146a6631.js.map → MeritBadgeSkillsCount-c3ba45be.js.map} +1 -1
  55. package/dist/esm/{NotificationBoostCard-fa82a58d.js → NotificationBoostCard-fdfa0cf4.js} +2 -2
  56. package/dist/esm/{NotificationBoostCard-fa82a58d.js.map → NotificationBoostCard-fdfa0cf4.js.map} +1 -1
  57. package/dist/esm/UserProfilePicture-7e131f5d.js +92 -0
  58. package/dist/esm/UserProfilePicture-7e131f5d.js.map +1 -0
  59. package/dist/esm/{VCCard-16b74b58.js → VCCard-00858a44.js} +3 -3
  60. package/dist/esm/{VCCard-16b74b58.js.map → VCCard-00858a44.js.map} +1 -1
  61. package/dist/esm/{VCDisplayBackFace-ad4f5160.js → VCDisplayBackFace-4db2ffad.js} +3 -3
  62. package/dist/esm/{VCDisplayBackFace-ad4f5160.js.map → VCDisplayBackFace-4db2ffad.js.map} +1 -1
  63. package/dist/esm/{VCDisplayCard-3cc14e0b.js → VCDisplayCard-3b542a26.js} +4 -4
  64. package/dist/esm/{VCDisplayCard-3cc14e0b.js.map → VCDisplayCard-3b542a26.js.map} +1 -1
  65. package/dist/esm/{VCDisplayCard2-6165a0fb.js → VCDisplayCard2-8504817d.js} +32 -17
  66. package/dist/esm/VCDisplayCard2-8504817d.js.map +1 -0
  67. package/dist/esm/{VCVerificationPill-43612ba2.js → VCVerificationPill-14a9a963.js} +2 -2
  68. package/dist/esm/{VCVerificationPill-43612ba2.js.map → VCVerificationPill-14a9a963.js.map} +1 -1
  69. package/dist/esm/{VerifierStateBadgeAndText-c2de56ec.js → VerifierStateBadgeAndText-c96ea8d5.js} +171 -21
  70. package/dist/esm/VerifierStateBadgeAndText-c96ea8d5.js.map +1 -0
  71. package/dist/esm/{credential.helpers-6d446cd3.js → credential.helpers-f3dc0ca2.js} +3 -3
  72. package/dist/esm/{credential.helpers-6d446cd3.js.map → credential.helpers-f3dc0ca2.js.map} +1 -1
  73. package/dist/esm/index.js +15 -15
  74. package/dist/esm/index13.js +15 -15
  75. package/dist/esm/index21.js +6 -6
  76. package/dist/esm/index24.js +2 -2
  77. package/dist/esm/index3.js +3 -3
  78. package/dist/esm/index37.js +1 -1
  79. package/dist/esm/index38.js +11 -11
  80. package/dist/esm/index39.js +4 -4
  81. package/dist/esm/index4.js +2 -2
  82. package/dist/esm/index40.js +6 -6
  83. package/dist/esm/index41.js +7 -7
  84. package/dist/esm/index42.js +1 -1
  85. package/dist/esm/index45.js +2 -2
  86. package/dist/esm/index6.js +5 -5
  87. package/dist/esm/{types.esm-b900cd51.js → types.esm-3a3c23e0.js} +43 -2
  88. package/dist/esm/types.esm-3a3c23e0.js.map +1 -0
  89. package/dist/index.d.ts +6 -3
  90. package/dist/main.css +1 -1
  91. package/dist/main.js +1 -1
  92. package/package.json +4 -3
  93. package/dist/cjs/CertificateDisplayCard-0ac85a2b.js.map +0 -1
  94. package/dist/cjs/MeritBadgeDisplayCard-e6d6ff8f.js.map +0 -1
  95. package/dist/cjs/UserProfilePicture-d69fe4f0.js +0 -36
  96. package/dist/cjs/UserProfilePicture-d69fe4f0.js.map +0 -1
  97. package/dist/cjs/VCDisplayCard2-fb48d830.js.map +0 -1
  98. package/dist/cjs/VerifierStateBadgeAndText-4c22c62f.js.map +0 -1
  99. package/dist/cjs/types.esm-8f32aacf.js.map +0 -1
  100. package/dist/esm/CertificateDisplayCard-1b4b275b.js.map +0 -1
  101. package/dist/esm/MeritBadgeDisplayCard-580ee309.js.map +0 -1
  102. package/dist/esm/UserProfilePicture-7b950437.js +0 -30
  103. package/dist/esm/UserProfilePicture-7b950437.js.map +0 -1
  104. package/dist/esm/VCDisplayCard2-6165a0fb.js.map +0 -1
  105. package/dist/esm/VerifierStateBadgeAndText-c2de56ec.js.map +0 -1
  106. package/dist/esm/types.esm-b900cd51.js.map +0 -1
@@ -9,7 +9,7 @@ import Social from './social.png';
9
9
  import Stem from './stem.png';
10
10
  import Trade from './trade.png';
11
11
  import { P as PuzzlePiece } from './PuzzlePiece-a3d9cc62.js';
12
- import { o as object, l as literal, n as number, s as string, u as union } from './types.esm-b900cd51.js';
12
+ import { o as object, l as literal, n as number, s as string, u as union } from './types.esm-3a3c23e0.js';
13
13
 
14
14
  const AcuteCheckmark = ({ className = "" }) => {
15
15
  return /* @__PURE__ */ React.createElement(
@@ -201,20 +201,6 @@ const LeftArrow = ({ className = "", size = "20" }) => {
201
201
  );
202
202
  };
203
203
 
204
- const Line = ({ className = "", width = "109" }) => {
205
- return /* @__PURE__ */ React.createElement(
206
- "svg",
207
- {
208
- width,
209
- height: "6",
210
- viewBox: "0 0 109 6",
211
- fill: "none",
212
- xmlns: "http://www.w3.org/2000/svg"
213
- },
214
- /* @__PURE__ */ React.createElement("rect", { y: "0.575806", width: "109", height: "5", rx: "2.5", fill: "#E2E3E9" })
215
- );
216
- };
217
-
218
204
  const LinkIcon = ({ className = "" }) => {
219
205
  return /* @__PURE__ */ React.createElement(
220
206
  "svg",
@@ -433,9 +419,6 @@ const VideoIcon = ({ className = "", size = "25" }) => {
433
419
  );
434
420
  };
435
421
 
436
- const truncateWithEllipsis = (str, maxLength) => {
437
- return str.length > maxLength ? `${str.substring(0, maxLength)}...` : str;
438
- };
439
422
  const capitalize = (string) => {
440
423
  return string ? string[0].toUpperCase() + string.slice(1) : "";
441
424
  };
@@ -3572,6 +3555,7 @@ var require_types_cjs_development = __commonJS({
3572
3555
  RefreshServiceValidator: /* @__PURE__ */ __name(() => RefreshServiceValidator, "RefreshServiceValidator"),
3573
3556
  RegExpValidator: /* @__PURE__ */ __name(() => RegExpValidator, "RegExpValidator"),
3574
3557
  RelatedValidator: /* @__PURE__ */ __name(() => RelatedValidator, "RelatedValidator"),
3558
+ RenderMethodValidator: /* @__PURE__ */ __name(() => RenderMethodValidator, "RenderMethodValidator"),
3575
3559
  ReplaceSkillFrameworkSkillsInputValidator: /* @__PURE__ */ __name(() => ReplaceSkillFrameworkSkillsInputValidator, "ReplaceSkillFrameworkSkillsInputValidator"),
3576
3560
  ReplaceSkillFrameworkSkillsResultValidator: /* @__PURE__ */ __name(() => ReplaceSkillFrameworkSkillsResultValidator, "ReplaceSkillFrameworkSkillsResultValidator"),
3577
3561
  RequestLearnerContextEventValidator: /* @__PURE__ */ __name(() => RequestLearnerContextEventValidator, "RequestLearnerContextEventValidator"),
@@ -3614,6 +3598,7 @@ var require_types_cjs_development = __commonJS({
3614
3598
  SummaryCredentialKeywordValidator: /* @__PURE__ */ __name(() => SummaryCredentialKeywordValidator, "SummaryCredentialKeywordValidator"),
3615
3599
  SyncFrameworkInputValidator: /* @__PURE__ */ __name(() => SyncFrameworkInputValidator, "SyncFrameworkInputValidator"),
3616
3600
  TagValidator: /* @__PURE__ */ __name(() => TagValidator, "TagValidator"),
3601
+ TemplateRenderMethodValidator: /* @__PURE__ */ __name(() => TemplateRenderMethodValidator, "TemplateRenderMethodValidator"),
3617
3602
  TermsOfUseValidator: /* @__PURE__ */ __name(() => TermsOfUseValidator, "TermsOfUseValidator"),
3618
3603
  UnsignedAchievementCredentialValidator: /* @__PURE__ */ __name(() => UnsignedAchievementCredentialValidator, "UnsignedAchievementCredentialValidator"),
3619
3604
  UnsignedClrCredentialValidator: /* @__PURE__ */ __name(() => UnsignedClrCredentialValidator, "UnsignedClrCredentialValidator"),
@@ -17151,6 +17136,19 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
17151
17136
  genre: external_exports.string().optional(),
17152
17137
  audience: external_exports.string().optional()
17153
17138
  }).catchall(external_exports.any());
17139
+ var TemplateRenderMethodValidator = external_exports.object({
17140
+ type: external_exports.literal("TemplateRenderMethod"),
17141
+ renderSuite: external_exports.string(),
17142
+ template: external_exports.string(),
17143
+ renderProperty: external_exports.array(external_exports.string()).optional(),
17144
+ outputPreference: external_exports.object({
17145
+ mediaType: external_exports.string()
17146
+ }).optional()
17147
+ });
17148
+ var RenderMethodValidator = external_exports.union([
17149
+ TemplateRenderMethodValidator,
17150
+ external_exports.record(external_exports.string(), external_exports.any())
17151
+ ]);
17154
17152
  var UnsignedVCValidator = external_exports.object({
17155
17153
  "@context": ContextValidator,
17156
17154
  id: external_exports.string().optional(),
@@ -17174,7 +17172,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
17174
17172
  validUntil: external_exports.string().optional(),
17175
17173
  status: CredentialStatusValidator.or(CredentialStatusValidator.array()).optional(),
17176
17174
  termsOfUse: TermsOfUseValidator.or(TermsOfUseValidator.array()).optional(),
17177
- evidence: external_exports.union([VC2EvidenceValidator, external_exports.array(VC2EvidenceValidator)]).optional()
17175
+ evidence: external_exports.union([VC2EvidenceValidator, external_exports.array(VC2EvidenceValidator)]).optional(),
17176
+ renderMethod: external_exports.union([RenderMethodValidator, external_exports.array(RenderMethodValidator)]).optional()
17178
17177
  }).catchall(external_exports.any());
17179
17178
  var ProofValidator = external_exports.object({
17180
17179
  type: external_exports.string(),
@@ -17483,16 +17482,43 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
17483
17482
  proof: ProofValidator.or(ProofValidator.array())
17484
17483
  });
17485
17484
  var StatusCheckEntryValidator = external_exports.object({
17485
+ /**
17486
+ * The `credentialStatus.type` as it appeared on the credential.
17487
+ * One of `BitstringStatusListEntry`, `StatusList2021Entry`,
17488
+ * `RevocationList2020Status`, or any future custom status type.
17489
+ */
17486
17490
  entryType: external_exports.string(),
17491
+ /**
17492
+ * The claimed purpose of the entry. Standard values are
17493
+ * `"revocation"` and `"suspension"`; the spec allows arbitrary
17494
+ * strings.
17495
+ */
17487
17496
  statusPurpose: external_exports.string(),
17497
+ /**
17498
+ * Whether the bit at the credential's index in the status list
17499
+ * bitstring was set.
17500
+ */
17488
17501
  isSet: external_exports.boolean(),
17502
+ /** URL of the status list credential, when known. */
17489
17503
  statusListCredential: external_exports.string().optional(),
17504
+ /** Original (string) index within the status list. */
17490
17505
  statusListIndex: external_exports.string().optional()
17491
17506
  });
17492
17507
  var VerificationCheckValidator = external_exports.object({
17493
17508
  checks: external_exports.string().array(),
17494
17509
  warnings: external_exports.string().array(),
17495
17510
  errors: external_exports.string().array(),
17511
+ /**
17512
+ * Per-entry results for the `credentialStatus` check, populated
17513
+ * by `@learncard/didkit-plugin` when the verified credential
17514
+ * carries one or more `credentialStatus` entries. Empty / absent
17515
+ * for credentials without a status entry.
17516
+ *
17517
+ * Marked `.optional()` because the underlying `ssi-ldp`
17518
+ * serializer omits the field when empty (`skip_serializing_if`),
17519
+ * so older WASM builds that pre-date the structured-status
17520
+ * change still validate against this schema.
17521
+ */
17496
17522
  status: StatusCheckEntryValidator.array().optional()
17497
17523
  });
17498
17524
  var VerificationStatusValidator = external_exports.enum(["Success", "Failed", "Error"]);
@@ -19621,6 +19647,130 @@ var isAppDidWeb = /* @__PURE__ */ __name((did) => {
19621
19647
  return LCN_APP_DID_WEB_REGEX.test(did);
19622
19648
  }, "isAppDidWeb");
19623
19649
 
19650
+ const isDid = (str) => /^did:/i.test(str);
19651
+ const LC_NETWORK_USER_RE = /^did:web:network\.learncard\.com:users:(.+)$/i;
19652
+ const isLearnCardNetworkDid = (did) => LC_NETWORK_USER_RE.test(did);
19653
+ const formatDidDisplayName = (did) => {
19654
+ if (!did) return "";
19655
+ const lcMatch = did.match(LC_NETWORK_USER_RE);
19656
+ if (lcMatch) return lcMatch[1];
19657
+ const parts = did.split(":");
19658
+ if (parts[0] !== "did" || parts.length < 3) return did;
19659
+ const method = parts[1];
19660
+ if (method === "web") {
19661
+ return parts.slice(2).join(".");
19662
+ }
19663
+ const material = parts.slice(2).join(":");
19664
+ if (material.length > 12) {
19665
+ return `${material.slice(0, 4)}\u2026${material.slice(-4)}`;
19666
+ }
19667
+ return material;
19668
+ };
19669
+ const getAvatarLetterFromDid = (did) => {
19670
+ var _a, _b, _c, _d, _e, _f;
19671
+ if (!did) return "";
19672
+ const lcMatch = did.match(LC_NETWORK_USER_RE);
19673
+ if (lcMatch) return (_a = lcMatch[1][0]) != null ? _a : "";
19674
+ const parts = did.split(":");
19675
+ if (parts[0] !== "did" || parts.length < 3) return (_b = did[0]) != null ? _b : "";
19676
+ const method = parts[1];
19677
+ if (method === "web") {
19678
+ return (_d = ((_c = parts[2]) != null ? _c : "")[0]) != null ? _d : "";
19679
+ }
19680
+ return (_f = ((_e = parts[2]) != null ? _e : "")[0]) != null ? _f : "";
19681
+ };
19682
+ const hashString = (str) => {
19683
+ let hash = 0;
19684
+ for (let i = 0; i < str.length; i++) {
19685
+ hash = str.charCodeAt(i) + ((hash << 5) - hash);
19686
+ }
19687
+ return hash;
19688
+ };
19689
+ const AVATAR_PALETTE = [
19690
+ "bg-indigo-600",
19691
+ "bg-emerald-700",
19692
+ "bg-cyan-800",
19693
+ "bg-spice-600",
19694
+ "bg-indigo-700",
19695
+ "bg-emerald-600"
19696
+ ];
19697
+ const DID_AVATAR_PALETTE = [
19698
+ { avatarColor: "bg-lime-400", avatarFingerprintColor: "text-black" },
19699
+ { avatarColor: "bg-green-500", avatarFingerprintColor: "text-white" },
19700
+ { avatarColor: "bg-indigo-600", avatarFingerprintColor: "text-cyan-200" },
19701
+ { avatarColor: "bg-pink-500", avatarFingerprintColor: "text-yellow-300" },
19702
+ { avatarColor: "bg-yellow-300", avatarFingerprintColor: "text-blue-600" },
19703
+ { avatarColor: "bg-fuchsia-300", avatarFingerprintColor: "text-black" },
19704
+ { avatarColor: "bg-emerald-800", avatarFingerprintColor: "text-white" },
19705
+ { avatarColor: "bg-cyan-300", avatarFingerprintColor: "text-red-600" },
19706
+ { avatarColor: "bg-grayscale-900", avatarFingerprintColor: "text-lime-400" },
19707
+ { avatarColor: "bg-rose-600", avatarFingerprintColor: "text-white" },
19708
+ { avatarColor: "bg-blue-800", avatarFingerprintColor: "text-cyan-400" },
19709
+ { avatarColor: "bg-orange-600", avatarFingerprintColor: "text-yellow-300" },
19710
+ { avatarColor: "bg-teal-300", avatarFingerprintColor: "text-violet-600" },
19711
+ { avatarColor: "bg-grayscale-200", avatarFingerprintColor: "text-sky-500" },
19712
+ { avatarColor: "bg-emerald-700", avatarFingerprintColor: "text-yellow-300" },
19713
+ { avatarColor: "bg-fuchsia-500", avatarFingerprintColor: "text-pink-200" }
19714
+ ];
19715
+ const getDidAvatarColorPair = (did) => {
19716
+ if (!did) {
19717
+ return {
19718
+ avatarColor: "bg-emerald-700",
19719
+ avatarFingerprintColor: "text-white"
19720
+ };
19721
+ }
19722
+ return DID_AVATAR_PALETTE[Math.abs(hashString(did)) % DID_AVATAR_PALETTE.length];
19723
+ };
19724
+ const getAvatarColorFromString = (str) => {
19725
+ if (!str) return "bg-emerald-700";
19726
+ return AVATAR_PALETTE[Math.abs(hashString(str)) % AVATAR_PALETTE.length];
19727
+ };
19728
+ const resolveProfileDisplay = (profile, fallbackLabel) => {
19729
+ var _a;
19730
+ let rawName = "";
19731
+ let rawId = "";
19732
+ if (typeof profile === "string") {
19733
+ rawName = profile;
19734
+ } else if (profile && typeof profile === "object") {
19735
+ rawName = profile.name || profile.displayName || "";
19736
+ rawId = profile.id || "";
19737
+ }
19738
+ if (rawName && !isDid(rawName)) {
19739
+ return {
19740
+ displayName: rawName,
19741
+ avatarLetter: (_a = rawName[0]) != null ? _a : "",
19742
+ avatarColor: getAvatarColorFromString(rawName),
19743
+ avatarFingerprintColor: "text-white",
19744
+ isMissing: false,
19745
+ isDidValue: false,
19746
+ isLCNetwork: false
19747
+ };
19748
+ }
19749
+ const didStr = isDid(rawName) ? rawName : rawId;
19750
+ if (didStr && isDid(didStr)) {
19751
+ const lcNetwork = isLearnCardNetworkDid(didStr);
19752
+ const avatarColors = getDidAvatarColorPair(didStr);
19753
+ return {
19754
+ displayName: formatDidDisplayName(didStr),
19755
+ avatarLetter: getAvatarLetterFromDid(didStr),
19756
+ avatarColor: avatarColors.avatarColor,
19757
+ avatarFingerprintColor: avatarColors.avatarFingerprintColor,
19758
+ isMissing: false,
19759
+ isDidValue: !lcNetwork,
19760
+ isLCNetwork: lcNetwork
19761
+ };
19762
+ }
19763
+ return {
19764
+ displayName: fallbackLabel,
19765
+ avatarLetter: "",
19766
+ avatarColor: "bg-grayscale-200",
19767
+ avatarFingerprintColor: "text-white",
19768
+ isMissing: true,
19769
+ isDidValue: false,
19770
+ isLCNetwork: false
19771
+ };
19772
+ };
19773
+
19624
19774
  const VERIFIER_STATES = {
19625
19775
  selfVerified: "Self Issued",
19626
19776
  trustedVerifier: "Trusted Issuer",
@@ -19637,5 +19787,5 @@ const VerifierStateBadgeAndText = ({
19637
19787
  return /* @__PURE__ */ React.createElement("div", { className: `flex justify-center ${className}` }, effectiveState === VERIFIER_STATES.selfVerified && /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-0.5 font-poppins font-[500] text-[12px] leading-tight text-green-dark" }, /* @__PURE__ */ React.createElement(PersonBadge, null), /* @__PURE__ */ React.createElement("span", { className: "whitespace-nowrap" }, "Self Issued")), effectiveState === VERIFIER_STATES.trustedVerifier && /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-0.5 font-poppins font-[500] text-[12px] leading-tight text-green-600" }, /* @__PURE__ */ React.createElement(VerifiedBadge, null), /* @__PURE__ */ React.createElement("span", { className: "whitespace-nowrap" }, unknownVerifierTitle != null ? unknownVerifierTitle : "Trusted Issuer")), effectiveState === VERIFIER_STATES.unknownVerifier && /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-0.5 font-poppins font-[500] text-[12px] leading-tight text-orange-500" }, /* @__PURE__ */ React.createElement(UnknownVerifierBadge, null), /* @__PURE__ */ React.createElement("span", { className: "whitespace-nowrap" }, unknownVerifierTitle != null ? unknownVerifierTitle : VERIFIER_STATES.unknownVerifier)), effectiveState === VERIFIER_STATES.appIssuer && /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-0.5 font-poppins font-[500] text-[12px] leading-tight text-cyan-600" }, /* @__PURE__ */ React.createElement(VerifiedBadge, null), /* @__PURE__ */ React.createElement("span", { className: "whitespace-nowrap" }, "App Issuer")), effectiveState === VERIFIER_STATES.untrustedVerifier && /* @__PURE__ */ React.createElement("div", { className: "flex items-center gap-0.5 font-poppins font-[500] text-[12px] leading-tight text-red-mastercard" }, /* @__PURE__ */ React.createElement(RedFlag, null), /* @__PURE__ */ React.createElement("span", { className: "whitespace-nowrap" }, "Untrusted Issuer")));
19638
19788
  };
19639
19789
 
19640
- export { AcuteCheckmark as A, Camera as C, ExclamationPoint as E, FatArrow as F, GenericDocumentIcon as G, InfoIcon as I, LinkIcon as L, PersonBadge as P, RoundedCorner as R, SelectedSkills as S, UnknownVerifierBadge as U, VERIFIER_STATES as V, VerifierStateBadgeAndText as a, VideoIcon as b, capitalize as c, LeftArrow as d, SkillsBox as e, IssuerSeal as f, getBaseUrl as g, Line as h, isAppDidWeb as i, VerifiedBadge as j, RedFlag as k, prettyBytes as p, truncateWithEllipsis as t };
19641
- //# sourceMappingURL=VerifierStateBadgeAndText-c2de56ec.js.map
19790
+ export { AcuteCheckmark as A, Camera as C, ExclamationPoint as E, FatArrow as F, GenericDocumentIcon as G, InfoIcon as I, LinkIcon as L, PersonBadge as P, RoundedCorner as R, SelectedSkills as S, UnknownVerifierBadge as U, VERIFIER_STATES as V, VerifierStateBadgeAndText as a, VideoIcon as b, capitalize as c, LeftArrow as d, SkillsBox as e, IssuerSeal as f, getBaseUrl as g, VerifiedBadge as h, isAppDidWeb as i, RedFlag as j, prettyBytes as p, resolveProfileDisplay as r };
19791
+ //# sourceMappingURL=VerifierStateBadgeAndText-c96ea8d5.js.map