@metropolle/design-system 1.2026.0-1.24.1601 → 1.2026.0-1.24.2030
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/css/components.css
CHANGED
|
@@ -4305,18 +4305,23 @@ html[data-theme="light"] .mds-verification-check-card--passed .mds-verification-
|
|
|
4305
4305
|
}
|
|
4306
4306
|
|
|
4307
4307
|
.mds-verification-score-badge .mds-verification-score-number {
|
|
4308
|
+
display: block;
|
|
4308
4309
|
font-family: 'OCR-B', 'OCR B Std', 'Courier New', monospace;
|
|
4309
4310
|
font-size: 2.5rem;
|
|
4310
4311
|
font-weight: bold;
|
|
4311
4312
|
line-height: 1;
|
|
4312
4313
|
color: #00d4aa;
|
|
4314
|
+
text-align: center;
|
|
4313
4315
|
}
|
|
4314
4316
|
|
|
4315
4317
|
.mds-verification-score-badge .mds-verification-score-label {
|
|
4316
|
-
|
|
4318
|
+
display: block;
|
|
4319
|
+
font-size: 0.75rem;
|
|
4317
4320
|
text-transform: uppercase;
|
|
4318
4321
|
letter-spacing: 0.1em;
|
|
4319
4322
|
color: var(--mds-color-text-secondary, rgba(255, 255, 255, 0.6));
|
|
4323
|
+
text-align: center;
|
|
4324
|
+
margin-top: 4px;
|
|
4320
4325
|
}
|
|
4321
4326
|
|
|
4322
4327
|
.mds-verification-score-info {
|
|
@@ -4367,6 +4372,16 @@ html[data-theme="light"] .mds-verification-check-card--passed .mds-verification-
|
|
|
4367
4372
|
min-width: 0;
|
|
4368
4373
|
}
|
|
4369
4374
|
|
|
4375
|
+
.mds-verification-check-item .mds-btn {
|
|
4376
|
+
flex-shrink: 0;
|
|
4377
|
+
margin-left: auto;
|
|
4378
|
+
}
|
|
4379
|
+
|
|
4380
|
+
.mds-verification-check-item .mds-btn--sm {
|
|
4381
|
+
padding: 6px 12px;
|
|
4382
|
+
font-size: 0.75rem;
|
|
4383
|
+
}
|
|
4384
|
+
|
|
4370
4385
|
html[data-theme="light"] .mds-verification-score-header {
|
|
4371
4386
|
background: rgba(0, 180, 140, 0.05);
|
|
4372
4387
|
border-color: rgba(0, 180, 140, 0.15);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProfileCard.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/ProfileCard/ProfileCard.tsx"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,OAAO,KAAsC,MAAM,OAAO,CAAC;AAO3D,MAAM,WAAW,eAAe;IAE9B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IAGjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAG/B,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;CACxC;AAGD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,2BAA2B;IAC3B,IAAI,EAAE,eAAe,CAAC;IAEtB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE7B,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,gCAAgC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,8BAA8B;IAC9B,WAAW,CAAC,EAAE;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,CAAC,CAAC,EAAE,MAAM,CAAC;QACX,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF,8BAA8B;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,8CAA8C;IAC9C,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE5B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAyJD,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,OAAgB,EAChB,UAAU,EACV,UAAkB,EAClB,WAAW,EACX,gBAAwB,EACxB,SAAS,EACT,SAAc,EACd,aAAa,GACd,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"ProfileCard.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/ProfileCard/ProfileCard.tsx"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,OAAO,KAAsC,MAAM,OAAO,CAAC;AAO3D,MAAM,WAAW,eAAe;IAE9B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IAGjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAG/B,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;CACxC;AAGD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,2BAA2B;IAC3B,IAAI,EAAE,eAAe,CAAC;IAEtB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE7B,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,gCAAgC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,8BAA8B;IAC9B,WAAW,CAAC,EAAE;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,CAAC,CAAC,EAAE,MAAM,CAAC;QACX,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF,8BAA8B;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,8CAA8C;IAC9C,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE5B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAyJD,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,OAAgB,EAChB,UAAU,EACV,UAAkB,EAClB,WAAW,EACX,gBAAwB,EACxB,SAAS,EACT,SAAc,EACd,aAAa,GACd,EAAE,gBAAgB,2CAuUlB;AAED,eAAe,WAAW,CAAC"}
|
package/dist/react/index.esm.js
CHANGED
|
@@ -1542,14 +1542,23 @@ function ProfileCard({ user, variant = 'full', photoWidth, showSocial = false, s
|
|
|
1542
1542
|
return () => observer.disconnect();
|
|
1543
1543
|
}, []);
|
|
1544
1544
|
// Dynamic info texts for rotating display
|
|
1545
|
-
|
|
1545
|
+
// FEAT-090: Use verification_score checks when available, fallback to legacy
|
|
1546
|
+
const infoTexts = user.verification_score ? [
|
|
1547
|
+
`Verification Level ${user.verification_score.score}`,
|
|
1548
|
+
`User #${user.registration_sequence?.toLocaleString() || '—'}`,
|
|
1549
|
+
`Member since ${new Date(user.created_at).getFullYear()}`,
|
|
1550
|
+
// Show passed verification checks
|
|
1551
|
+
...user.verification_score.checks
|
|
1552
|
+
.filter(check => check.passed)
|
|
1553
|
+
.map(check => check.description),
|
|
1554
|
+
] : [
|
|
1546
1555
|
`Member since ${new Date(user.created_at).getFullYear()}`,
|
|
1547
1556
|
...(user.registration_sequence ? [`User #${user.registration_sequence.toLocaleString()}`] : []),
|
|
1548
1557
|
...(user.verified >= 1 ? ['Email Verified'] : []),
|
|
1549
1558
|
...(user.verified >= 2 ? ['Identity Verified'] : []),
|
|
1550
1559
|
...(user.verified >= 3 ? ['Area Verified'] : []),
|
|
1551
1560
|
// PROC-013: Show MFA status when enabled (highlight security-conscious users)
|
|
1552
|
-
...(user.mfa_enabled === true ? ['2FA
|
|
1561
|
+
...(user.mfa_enabled === true ? ['2FA Enabled'] : []),
|
|
1553
1562
|
];
|
|
1554
1563
|
// Rotate info text
|
|
1555
1564
|
useEffect(() => {
|
|
@@ -1611,11 +1620,11 @@ function ProfileCard({ user, variant = 'full', photoWidth, showSocial = false, s
|
|
|
1611
1620
|
e.stopPropagation();
|
|
1612
1621
|
setShowVerifiedPopup(!showVerifiedPopup);
|
|
1613
1622
|
setShowSocialPopup(false);
|
|
1614
|
-
}, title: "Verification Status", children: Icons.shield }), showVerifiedPopup && (jsxRuntimeExports.
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
|
|
1623
|
+
}, title: "Verification Status", children: Icons.shield }), showVerifiedPopup && (jsxRuntimeExports.jsx("div", { className: "mds-profile-card__verified-popup", children: user.verification_score ? (
|
|
1624
|
+
// FEAT-090: New 5-point verification score
|
|
1625
|
+
jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsxs("div", { className: "mds-profile-card__verified-header", children: ["Verification Level ", user.verification_score.score] }), jsxRuntimeExports.jsx("div", { className: "mds-profile-card__verified-checks", children: user.verification_score.checks.map((check) => (jsxRuntimeExports.jsx(VerificationCheckItem, { description: check.description, passed: check.passed }, check.name))) }), jsxRuntimeExports.jsxs("div", { className: "mds-profile-card__verified-footer", children: [user.registration_sequence && (jsxRuntimeExports.jsxs("span", { className: "mds-profile-card__verified-sequence", children: ["User #", user.registration_sequence.toLocaleString()] })), jsxRuntimeExports.jsxs("span", { className: "mds-profile-card__verified-date", children: ["since ", memberSince] })] })] })) : (
|
|
1626
|
+
// Legacy: Old verification levels
|
|
1627
|
+
jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsxs("div", { className: "mds-profile-card__verified-header", children: ["Verification Level ", user.verified] }), jsxRuntimeExports.jsxs("div", { className: "mds-profile-card__verified-stats", children: [jsxRuntimeExports.jsx(StatItem, { label: "Email", verified: user.verified >= 1 }), jsxRuntimeExports.jsx(StatItem, { label: "Identity", verified: user.verified >= 2 }), jsxRuntimeExports.jsx(StatItem, { label: "Area", verified: user.verified >= 3 })] }), jsxRuntimeExports.jsxs("div", { className: "mds-profile-card__verified-footer", children: [user.registration_sequence && (jsxRuntimeExports.jsxs("span", { className: "mds-profile-card__verified-sequence", children: ["User #", user.registration_sequence.toLocaleString()] })), jsxRuntimeExports.jsxs("span", { className: "mds-profile-card__verified-date", children: ["since ", memberSince] })] })] })) }))] }), showRotatingInfo && (jsxRuntimeExports.jsx("div", { className: "mds-profile-card__info-dots", children: infoTexts.map((_, index) => (jsxRuntimeExports.jsx("span", { className: `mds-profile-card__info-dot ${index === currentInfoIndex ? 'active' : ''}` }, index))) }))] }))] })] }));
|
|
1619
1628
|
}
|
|
1620
1629
|
|
|
1621
1630
|
const variantElementMap = {
|