@learncard/react 2.3.1 → 2.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/LearnCardCreditCardBackFace-ecb49e43.js +72 -0
- package/dist/cjs/LearnCardCreditCardBackFace-ecb49e43.js.map +1 -0
- package/dist/cjs/LearnCardCreditCardFrontFace-7d383319.js +70 -0
- package/dist/cjs/LearnCardCreditCardFrontFace-7d383319.js.map +1 -0
- package/dist/cjs/QRCodeCard-9f777402.js +35 -0
- package/dist/cjs/QRCodeCard-9f777402.js.map +1 -0
- package/dist/cjs/{VCCard-0e8b348d.js → VCCard-5495759e.js} +81 -49
- package/dist/{esm/VCCard-2b326e89.js.map → cjs/VCCard-5495759e.js.map} +1 -1
- package/dist/cjs/{VCDisplayBackFace-e8fb0c83.js → VCDisplayBackFace-d0d79b7a.js} +2 -2
- package/dist/cjs/{VCDisplayBackFace-e8fb0c83.js.map → VCDisplayBackFace-d0d79b7a.js.map} +1 -1
- package/dist/cjs/{VCDisplayCard-dfda9090.js → VCDisplayCard-36a39706.js} +2 -2
- package/dist/cjs/{VCDisplayCard-dfda9090.js.map → VCDisplayCard-36a39706.js.map} +1 -1
- package/dist/cjs/{VCVerificationPill-994d1dee.js → VCVerificationPill-84826845.js} +6 -1
- package/dist/cjs/VCVerificationPill-84826845.js.map +1 -0
- package/dist/cjs/index-82de573c.js +774 -0
- package/dist/cjs/index-82de573c.js.map +1 -0
- package/dist/cjs/index.js +11 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index10.js +4 -8
- package/dist/cjs/index10.js.map +1 -1
- package/dist/cjs/index11.js +3 -17
- package/dist/cjs/index11.js.map +1 -1
- package/dist/cjs/index12.js +3 -5
- package/dist/cjs/index12.js.map +1 -1
- package/dist/cjs/index13.js +8 -8
- package/dist/cjs/index14.js +21 -0
- package/dist/cjs/index14.js.map +1 -1
- package/dist/cjs/index15.js +5 -4
- package/dist/cjs/index15.js.map +1 -1
- package/dist/cjs/index16.js +7 -3
- package/dist/cjs/index16.js.map +1 -1
- package/dist/cjs/index17.js +0 -6
- package/dist/cjs/index17.js.map +1 -1
- package/dist/cjs/index18.js +13 -0
- package/dist/cjs/index18.js.map +1 -0
- package/dist/cjs/index19.js +13 -0
- package/dist/cjs/index19.js.map +1 -0
- package/dist/cjs/index20.js +11 -0
- package/dist/cjs/index20.js.map +1 -0
- package/dist/cjs/index5.js +11 -4
- package/dist/cjs/index5.js.map +1 -1
- package/dist/cjs/index6.js +2 -2
- package/dist/cjs/index7.js +3 -3
- package/dist/cjs/index8.js +2 -4
- package/dist/cjs/index8.js.map +1 -1
- package/dist/cjs/index9.js +3 -3
- package/dist/esm/LearnCardCreditCardBackFace-4f7eaaa9.js +66 -0
- package/dist/esm/LearnCardCreditCardBackFace-4f7eaaa9.js.map +1 -0
- package/dist/esm/LearnCardCreditCardFrontFace-269b2847.js +64 -0
- package/dist/esm/LearnCardCreditCardFrontFace-269b2847.js.map +1 -0
- package/dist/esm/QRCodeCard-11e192b2.js +29 -0
- package/dist/esm/QRCodeCard-11e192b2.js.map +1 -0
- package/dist/esm/{VCCard-2b326e89.js → VCCard-e39551a6.js} +81 -49
- package/dist/{cjs/VCCard-0e8b348d.js.map → esm/VCCard-e39551a6.js.map} +1 -1
- package/dist/esm/{VCDisplayBackFace-21fb6c1b.js → VCDisplayBackFace-4ffe5733.js} +2 -2
- package/dist/esm/{VCDisplayBackFace-21fb6c1b.js.map → VCDisplayBackFace-4ffe5733.js.map} +1 -1
- package/dist/esm/{VCDisplayCard-7abdc260.js → VCDisplayCard-6b0274f9.js} +2 -2
- package/dist/esm/{VCDisplayCard-7abdc260.js.map → VCDisplayCard-6b0274f9.js.map} +1 -1
- package/dist/esm/{VCVerificationPill-a2885f77.js → VCVerificationPill-14ba1e6c.js} +6 -1
- package/dist/esm/VCVerificationPill-14ba1e6c.js.map +1 -0
- package/dist/esm/index-aa1098e1.js +768 -0
- package/dist/esm/index-aa1098e1.js.map +1 -0
- package/dist/esm/index.js +8 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index10.js +2 -1
- package/dist/esm/index10.js.map +1 -1
- package/dist/esm/index11.js +2 -16
- package/dist/esm/index11.js.map +1 -1
- package/dist/esm/index12.js +2 -4
- package/dist/esm/index12.js.map +1 -1
- package/dist/esm/index13.js +1 -7
- package/dist/esm/index13.js.map +1 -1
- package/dist/esm/index14.js +16 -0
- package/dist/esm/index14.js.map +1 -1
- package/dist/esm/index15.js +4 -3
- package/dist/esm/index15.js.map +1 -1
- package/dist/esm/index16.js +6 -1
- package/dist/esm/index16.js.map +1 -1
- package/dist/esm/index17.js +0 -1
- package/dist/esm/index17.js.map +1 -1
- package/dist/esm/index18.js +5 -0
- package/dist/esm/index18.js.map +1 -0
- package/dist/esm/index19.js +4 -0
- package/dist/esm/index19.js.map +1 -0
- package/dist/esm/index20.js +3 -0
- package/dist/esm/index20.js.map +1 -0
- package/dist/esm/index5.js +8 -4
- package/dist/esm/index5.js.map +1 -1
- package/dist/esm/index6.js +1 -1
- package/dist/esm/index7.js +2 -2
- package/dist/esm/index8.js +1 -2
- package/dist/esm/index8.js.map +1 -1
- package/dist/esm/index9.js +2 -2
- package/dist/index.d.ts +107 -3
- package/dist/main.css +1 -1
- package/dist/main.js +1 -1
- package/package.json +4 -3
- package/dist/cjs/VCVerificationPill-994d1dee.js.map +0 -1
- package/dist/esm/VCVerificationPill-a2885f77.js.map +0 -1
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
var ContactlessSymbol = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjYiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAyNiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIgMTEuNTc1MUMyLjk5NzE1IDEzLjMxNjEgNC4zOTMxNiAxNy42MTA0IDIgMjAuODYwMU04LjU4MTE4IDguMjM4MzRDMTAuMDc2OSAxMC45OTQ4IDEyLjE3MDkgMTguMDQ1NiA4LjU4MTE4IDI0LjE5NjlNMTQuNDE0NSA0Ljc1NjQ4QzE2LjM1ODkgOC40ODAxNCAxOS4wODEyIDE4LjE5MDcgMTQuNDE0NSAyNy4yNDM1TTIwLjY5NjUgMkMyMy4xODk0IDYuNDAwNjkgMjYuNjc5NCAxOC4xNjE3IDIwLjY5NjUgMzAiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+Cg==";
|
|
4
|
+
|
|
5
|
+
const LearnCardCreditCardBackFace = ({
|
|
6
|
+
className,
|
|
7
|
+
card,
|
|
8
|
+
user
|
|
9
|
+
}) => {
|
|
10
|
+
var _a, _b, _c, _d;
|
|
11
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
12
|
+
className: `flex justify-center items-center max-w-[375px] rounded-[20px] ${className}`
|
|
13
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
14
|
+
className: `flex flex-col justify-start items-start w-full min-h-[220px] rounded-[20px] shadow-3xl bg-grayscale-900 relative overflow-hidden credit-card-front-face`
|
|
15
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
16
|
+
className: "flex justify-between items-center w-full px-3 pt-4 text-white"
|
|
17
|
+
}, /* @__PURE__ */ React.createElement("p", {
|
|
18
|
+
className: "text-[6px]"
|
|
19
|
+
}, "Please visit LearnCard app or learncard.com for assistance"), /* @__PURE__ */ React.createElement("p", {
|
|
20
|
+
className: "text-[6px]"
|
|
21
|
+
}, "854-000-000-24")), /* @__PURE__ */ React.createElement("div", {
|
|
22
|
+
className: "w-full h-8 bg-white mt-1"
|
|
23
|
+
}), /* @__PURE__ */ React.createElement("div", {
|
|
24
|
+
className: "flex justify-end items-center w-full px-3 mt-1 text-white"
|
|
25
|
+
}, /* @__PURE__ */ React.createElement("p", {
|
|
26
|
+
className: "text-[6px]"
|
|
27
|
+
}, "IDEMIA 0 00000 00000 0/00")), /* @__PURE__ */ React.createElement("div", {
|
|
28
|
+
className: "flex flex-row justify-between items-center px-3 pt-2 w-full text-white"
|
|
29
|
+
}, /* @__PURE__ */ React.createElement("div", null, (user == null ? void 0 : user.username) && /* @__PURE__ */ React.createElement("p", {
|
|
30
|
+
className: "text-[10px] font-medium",
|
|
31
|
+
"data-testid": "credit-card-backface-username"
|
|
32
|
+
}, user == null ? void 0 : user.username), /* @__PURE__ */ React.createElement("p", {
|
|
33
|
+
className: "text-sm tracking-wider",
|
|
34
|
+
"data-testid": "credit-card-backface-fullname"
|
|
35
|
+
}, (_a = user == null ? void 0 : user.fullName) != null ? _a : ""), (card == null ? void 0 : card.cardIssueDate) && /* @__PURE__ */ React.createElement("p", {
|
|
36
|
+
className: "text-[10px] tracking-wider",
|
|
37
|
+
"data-testid": "credit-card-backface-issueDate"
|
|
38
|
+
}, "MEMBER SINCE ", card == null ? void 0 : card.cardIssueDate)), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("img", {
|
|
39
|
+
src: ContactlessSymbol,
|
|
40
|
+
alt: "contactless icon"
|
|
41
|
+
}))), /* @__PURE__ */ React.createElement("div", {
|
|
42
|
+
className: "flex flex-row justify-between items-center px-3 pt-2 w-full text-white"
|
|
43
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
44
|
+
className: "flex flex-col"
|
|
45
|
+
}, /* @__PURE__ */ React.createElement("p", {
|
|
46
|
+
className: "text-sm tracking-wider",
|
|
47
|
+
"data-testid": "credit-card-backface-cardNum"
|
|
48
|
+
}, (_b = card == null ? void 0 : card.cardNumber) != null ? _b : ""), /* @__PURE__ */ React.createElement("div", {
|
|
49
|
+
className: "flex flex-row justify-between items-center"
|
|
50
|
+
}, /* @__PURE__ */ React.createElement("p", {
|
|
51
|
+
className: "text-[10px] tracking-wider",
|
|
52
|
+
"data-testid": "credit-card-backface-expDate"
|
|
53
|
+
}, "EXP ", (_c = card == null ? void 0 : card.cardExpirationDate) != null ? _c : ""), (card == null ? void 0 : card.cardSecurityCode) && /* @__PURE__ */ React.createElement("p", {
|
|
54
|
+
className: "text-[10px] tracking-wider",
|
|
55
|
+
"data-testid": "credit-card-backface-secCode"
|
|
56
|
+
}, "SEC ", (_d = card == null ? void 0 : card.cardSecurityCode) != null ? _d : ""))), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("div", {
|
|
57
|
+
className: "h-[33px] w-[55px] rounded-[60px] bg-gradient-to-r from-[#F4F5F5] to-[#E3E5E8]"
|
|
58
|
+
}))), /* @__PURE__ */ React.createElement("div", {
|
|
59
|
+
className: "flex justify-start items-center w-full px-3 py-2 text-white"
|
|
60
|
+
}, /* @__PURE__ */ React.createElement("p", {
|
|
61
|
+
className: "text-[6px]"
|
|
62
|
+
}, "Issued by the bank of Tennessee pursuant to license by Mastercard International"))));
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
export { LearnCardCreditCardBackFace as L };
|
|
66
|
+
//# sourceMappingURL=LearnCardCreditCardBackFace-4f7eaaa9.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearnCardCreditCardBackFace-4f7eaaa9.js","sources":["../../src/assets/images/contactless-symbol.svg","../../src/components/LearnCardCreditCardBackFace/LearnCardCreditCardBackFace.tsx"],"sourcesContent":["export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjYiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAyNiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIgMTEuNTc1MUMyLjk5NzE1IDEzLjMxNjEgNC4zOTMxNiAxNy42MTA0IDIgMjAuODYwMU04LjU4MTE4IDguMjM4MzRDMTAuMDc2OSAxMC45OTQ4IDEyLjE3MDkgMTguMDQ1NiA4LjU4MTE4IDI0LjE5NjlNMTQuNDE0NSA0Ljc1NjQ4QzE2LjM1ODkgOC40ODAxNCAxOS4wODEyIDE4LjE5MDcgMTQuNDE0NSAyNy4yNDM1TTIwLjY5NjUgMkMyMy4xODk0IDYuNDAwNjkgMjYuNjc5NCAxOC4xNjE3IDIwLjY5NjUgMzAiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+Cg==\"","import React from 'react';\n\nimport ContactlessSymbol from '../../assets/images/contactless-symbol.svg';\n\nimport { LearnCardCreditCardBackFaceProps } from './types';\n\nexport const LearnCardCreditCardBackFace: React.FC<LearnCardCreditCardBackFaceProps> = ({\n className,\n card,\n user,\n}) => {\n return (\n <div\n className={`flex justify-center items-center max-w-[375px] rounded-[20px] ${className}`}\n >\n <div\n className={`flex flex-col justify-start items-start w-full min-h-[220px] rounded-[20px] shadow-3xl bg-grayscale-900 relative overflow-hidden credit-card-front-face`}\n >\n <div className=\"flex justify-between items-center w-full px-3 pt-4 text-white\">\n <p className=\"text-[6px]\">\n Please visit LearnCard app or learncard.com for assistance\n </p>\n <p className=\"text-[6px]\">854-000-000-24</p>\n </div>\n\n <div className=\"w-full h-8 bg-white mt-1\" />\n\n <div className=\"flex justify-end items-center w-full px-3 mt-1 text-white\">\n <p className=\"text-[6px]\">IDEMIA 0 00000 00000 0/00</p>\n </div>\n\n <div className=\"flex flex-row justify-between items-center px-3 pt-2 w-full text-white\">\n <div>\n {user?.username && (\n <p\n className=\"text-[10px] font-medium\"\n data-testid=\"credit-card-backface-username\"\n >\n {user?.username}\n </p>\n )}\n\n <p\n className=\"text-sm tracking-wider\"\n data-testid=\"credit-card-backface-fullname\"\n >\n {user?.fullName ?? ''}\n </p>\n {card?.cardIssueDate && (\n <p\n className=\"text-[10px] tracking-wider\"\n data-testid=\"credit-card-backface-issueDate\"\n >\n MEMBER SINCE {card?.cardIssueDate}\n </p>\n )}\n </div>\n <div>\n <img src={ContactlessSymbol} alt=\"contactless icon\" />\n </div>\n </div>\n\n <div className=\"flex flex-row justify-between items-center px-3 pt-2 w-full text-white\">\n <div className=\"flex flex-col\">\n <p\n className=\"text-sm tracking-wider\"\n data-testid=\"credit-card-backface-cardNum\"\n >\n {card?.cardNumber ?? ''}\n </p>\n <div className=\"flex flex-row justify-between items-center\">\n <p\n className=\"text-[10px] tracking-wider\"\n data-testid=\"credit-card-backface-expDate\"\n >\n EXP {card?.cardExpirationDate ?? ''}\n </p>\n {card?.cardSecurityCode && (\n <p\n className=\"text-[10px] tracking-wider\"\n data-testid=\"credit-card-backface-secCode\"\n >\n SEC {card?.cardSecurityCode ?? ''}\n </p>\n )}\n </div>\n </div>\n <div>\n <div className=\"h-[33px] w-[55px] rounded-[60px] bg-gradient-to-r from-[#F4F5F5] to-[#E3E5E8]\" />\n </div>\n </div>\n\n <div className=\"flex justify-start items-center w-full px-3 py-2 text-white\">\n <p className=\"text-[6px]\">\n Issued by the bank of Tennessee pursuant to license by Mastercard\n International\n </p>\n </div>\n </div>\n </div>\n );\n};\n\nexport default LearnCardCreditCardBackFace;\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Q as QRCodeSVG } from './index-aa1098e1.js';
|
|
3
|
+
|
|
4
|
+
var CardChip = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDIiIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCA0MiAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMS4xNyIgeT0iMC41IiB3aWR0aD0iMzkuMzc4NCIgaGVpZ2h0PSIyOC4wNzgiIHJ4PSI0LjUiIGZpbGw9InVybCgjcGFpbnQwX2xpbmVhcl81NDdfMTQ0NikiIGZpbGwtb3BhY2l0eT0iMC4wMyIvPgo8cmVjdCB4PSIxLjE3IiB5PSIwLjUiIHdpZHRoPSIzOS4zNzg0IiBoZWlnaHQ9IjI4LjA3OCIgcng9IjQuNSIgZmlsbD0id2hpdGUiIGZpbGwtb3BhY2l0eT0iMC4zIi8+CjxyZWN0IHg9IjEuMTciIHk9IjAuNSIgd2lkdGg9IjM5LjM3ODQiIGhlaWdodD0iMjguMDc4IiByeD0iNC41IiBzdHJva2U9InVybCgjcGFpbnQxX2xpbmVhcl81NDdfMTQ0NikiLz4KPHJlY3QgeD0iMS4xNyIgeT0iMC41IiB3aWR0aD0iMzkuMzc4NCIgaGVpZ2h0PSIyOC4wNzgiIHJ4PSI0LjUiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS1vcGFjaXR5PSIwLjgiLz4KPHBhdGggZD0iTTAuNjIzNDQ1IDEwLjA2NDFIMTQuMzU0MUMxNS4yMjM1IDcuMzc2MjIgMTcuNjY3OSAxLjgzNzc3IDIwLjQ5MDcgMS4xODY3N0MyMS41MzkxIDEuNTU2NjUgMjMuOTg4NiAyLjg4ODI1IDI1LjQgNS4yNTU1M00wLjYyMzQ0NCAxOS4zODUySDE0LjM1NDFDMTQuMzU0MSAyNC4wMDE0IDE4LjQ0NTIgMjcuMzc0OCAyMC40OTA3IDI4LjQ4NDVDMjMuOTI3MiAyNy4zNiAyNi41NzYyIDIxLjk0OTggMjcuNDcxMSAxOS4zODUySDQxLjA0ODRNNDEuMDQ4NCAxMi4yODM0SDI3LjQ3MTFDMjYuODU3NSAxMS4xMjQ0IDI1Ljk5ODMgOC40NTEzNiAyNy40NzExIDcuMDMwOTkiIHN0cm9rZT0idXJsKCNwYWludDJfbGluZWFyXzU0N18xNDQ2KSIvPgo8cGF0aCBkPSJNMC42MjM0NDUgMTAuMDY0MUgxNC4zNTQxQzE1LjIyMzUgNy4zNzYyMiAxNy42Njc5IDEuODM3NzcgMjAuNDkwNyAxLjE4Njc3QzIxLjUzOTEgMS41NTY2NSAyMy45ODg2IDIuODg4MjUgMjUuNCA1LjI1NTUzTTAuNjIzNDQ0IDE5LjM4NTJIMTQuMzU0MUMxNC4zNTQxIDI0LjAwMTQgMTguNDQ1MiAyNy4zNzQ4IDIwLjQ5MDcgMjguNDg0NUMyMy45MjcyIDI3LjM2IDI2LjU3NjIgMjEuOTQ5OCAyNy40NzExIDE5LjM4NTJINDEuMDQ4NE00MS4wNDg0IDEyLjI4MzRIMjcuNDcxMUMyNi44NTc1IDExLjEyNDQgMjUuOTk4MyA4LjQ1MTM2IDI3LjQ3MTEgNy4wMzA5OSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLW9wYWNpdHk9IjAuOCIvPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzU0N18xNDQ2IiB4MT0iMC42Njk5OTgiIHkxPSIwIiB4Mj0iMzcuMDM2OSIgeTI9IjI4Ljg0MDQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0FCQUJBQiIvPgo8c3RvcCBvZmZzZXQ9IjAuMzEyNSIgc3RvcC1jb2xvcj0id2hpdGUiLz4KPHN0b3Agb2Zmc2V0PSIwLjYzMDIwOCIgc3RvcC1jb2xvcj0iI0JEQkRCRCIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM1RTVFNUUiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDFfbGluZWFyXzU0N18xNDQ2IiB4MT0iMi4xODgzOCIgeTE9IjAuNDc0MDk2IiB4Mj0iNDAuMDI2MyIgeTI9IjI1Ljc0MDQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iIzdEN0Q3RCIvPgo8c3RvcCBvZmZzZXQ9IjAuNDk0NzkyIiBzdG9wLWNvbG9yPSJ3aGl0ZSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMxQzFDMUMiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDJfbGluZWFyXzU0N18xNDQ2IiB4MT0iMi4xNDM1OCIgeTE9IjEuNjMxODQiIHgyPSIzOC40ODYzIiB5Mj0iMjcuNTEyMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjN0Q3RDdEIi8+CjxzdG9wIG9mZnNldD0iMC40OTQ3OTIiIHN0b3AtY29sb3I9IndoaXRlIi8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzFDMUMxQyIvPgo8L2xpbmVhckdyYWRpZW50Pgo8L2RlZnM+Cjwvc3ZnPgo=";
|
|
5
|
+
|
|
6
|
+
var MasterCardLogo = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzgiIGhlaWdodD0iMjMiIHZpZXdCb3g9IjAgMCAzOCAyMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE5LjYzOCAyLjQ1Mzg5QzE3LjYyOSAwLjg2MTY1MiAxNS4xNDIxIC0wLjAwMzA5NTUxIDEyLjU4MTEgOC4zMjYzNWUtMDZDOS41NDc3NSA4LjMyNjM1ZS0wNiA2LjYzODYgMS4yMDgxMSA0LjQ5MzY4IDMuMzU4NTNDMi4zNDg3NSA1LjUwODk2IDEuMTQzNzQgOC40MjU1NyAxLjE0Mzc0IDExLjQ2NjdDMS4xNDM3NCAxNC41MDc5IDIuMzQ4NzUgMTcuNDI0NSA0LjQ5MzY4IDE5LjU3NDlDNi42Mzg2IDIxLjcyNTQgOS41NDc3NSAyMi45MzM1IDEyLjU4MTEgMjIuOTMzNUMxNS4xMzk3IDIyLjkzMzYgMTcuNjI0NCAyMi4wNzM2IDE5LjYzOCAyMC40OTFDMTguMjc4OSAxOS40MTcxIDE3LjE4MDYgMTguMDQ4IDE2LjQyNTggMTYuNDg2OEMxNS42NzA5IDE0LjkyNTcgMTUuMjc5MyAxMy4yMTMxIDE1LjI4MDQgMTEuNDc4MkMxNS4yNzc2IDkuNzQxMzQgMTUuNjY4NCA4LjAyNjU1IDE2LjQyMzMgNi40NjMyNUMxNy4xNzgyIDQuODk5OTUgMTguMjc3NCAzLjUyOSAxOS42MzggMi40NTM4OVoiIGZpbGw9IiNBRjAwMTQiLz4KPHBhdGggZD0iTTE4LjQ5NDMgMi40NTM4OUMxNi40ODUyIDAuODYxNjUyIDEzLjk5ODQgLTAuMDAzMDk1NTEgMTEuNDM3NCA4LjMyNjM1ZS0wNkM4LjQwNDAxIDguMzI2MzVlLTA2IDUuNDk0ODcgMS4yMDgxMSAzLjM0OTk0IDMuMzU4NTNDMS4yMDUwMSA1LjUwODk2IDAgOC40MjU1NyAwIDExLjQ2NjdDMCAxNC41MDc5IDEuMjA1MDEgMTcuNDI0NSAzLjM0OTk0IDE5LjU3NDlDNS40OTQ4NyAyMS43MjU0IDguNDA0MDEgMjIuOTMzNSAxMS40Mzc0IDIyLjkzMzVDMTMuOTk2IDIyLjkzMzYgMTYuNDgwNyAyMi4wNzM2IDE4LjQ5NDMgMjAuNDkxQzE3LjEzNTIgMTkuNDE3MSAxNi4wMzY4IDE4LjA0OCAxNS4yODIgMTYuNDg2OEMxNC41MjcyIDE0LjkyNTcgMTQuMTM1NiAxMy4yMTMxIDE0LjEzNjYgMTEuNDc4MkMxNC4xMzM4IDkuNzQxMzQgMTQuNTI0NiA4LjAyNjU1IDE1LjI3OTUgNi40NjMyNUMxNi4wMzQ0IDQuODk5OTUgMTcuMTMzNiAzLjUyOSAxOC40OTQzIDIuNDUzODlaIiBmaWxsPSIjRUIwMDFCIi8+CjxnIGZpbHRlcj0idXJsKCNmaWx0ZXIwX2RfNTQ3XzE0OTUpIj4KPHBhdGggZD0iTTI1LjU2MjYgMEMyMi45OTg4IDAuMDAwNTgyMjcxIDIwLjUwOTUgMC44NjQ3OCAxOC40OTQzIDIuNDUzODhDMTkuODU1NSAzLjUyNjY0IDIwLjk1NiA0Ljg5NTI0IDIxLjcxMjggNi40NTY0OEMyMi40Njk3IDguMDE3NzMgMjIuODYzMSA5LjczMDg3IDIyLjg2MzQgMTEuNDY2N0MyMi44NjMxIDEzLjIwMjYgMjIuNDY5NyAxNC45MTU3IDIxLjcxMjggMTYuNDc3QzIwLjk1NiAxOC4wMzgyIDE5Ljg1NTUgMTkuNDA2OCAxOC40OTQzIDIwLjQ3OTZDMjAuNTExIDIyLjA2NDYgMjMuMDAwMSAyMi45MjQ3IDI1LjU2MjYgMjIuOTIyQzI4LjU5NiAyMi45MjIgMzEuNTA1MSAyMS43MTM5IDMzLjY1MDEgMTkuNTYzNUMzNS43OTUgMTcuNDEzIDM3IDE0LjQ5NjQgMzcgMTEuNDU1M0MzNi45OTcgOC40MTYwOCAzNS43OTA2IDUuNTAyNDIgMzMuNjQ2IDMuMzU0NDdDMzEuNTAxNCAxLjIwNjUzIDI4LjU5NCAtMS41MTk1OWUtMDYgMjUuNTYyNiAwWiIgZmlsbD0iI0Y3OUUxQiIvPgo8L2c+CjxwYXRoIGQ9Ik0xOC40OTQzIDIuNDU0MTFIMTguNTA2TDE4LjQ5NDMgMi40NDIzOFYyLjQ1NDExWiIgZmlsbD0iI0Y3OUUxQiIvPgo8cGF0aCBkPSJNMTQuMTM2NiAxMS40NjY3QzE0LjEzNTYgMTMuMjAxNiAxNC41MjcyIDE0LjkxNDIgMTUuMjgyIDE2LjQ3NTNDMTYuMDM2OCAxOC4wMzY1IDE3LjEzNTIgMTkuNDA1NiAxOC40OTQzIDIwLjQ3OTVDMTkuODU1NSAxOS40MDY4IDIwLjk1NiAxOC4wMzgyIDIxLjcxMjggMTYuNDc2OUMyMi40Njk3IDE0LjkxNTcgMjIuODYzMSAxMy4yMDI2IDIyLjg2MzQgMTEuNDY2N0MyMi44NjMxIDkuNzMwODQgMjIuNDY5NyA4LjAxNzcgMjEuNzEyOCA2LjQ1NjQ2QzIwLjk1NiA0Ljg5NTIyIDE5Ljg1NTUgMy41MjY2MiAxOC40OTQzIDIuNDUzODZDMTcuMTM1MiAzLjUyNzc3IDE2LjAzNjggNC44OTY4OSAxNS4yODIgNi40NTgwNkMxNC41MjcyIDguMDE5MjQgMTQuMTM1NiA5LjczMTc4IDE0LjEzNjYgMTEuNDY2N1oiIGZpbGw9IiNGRjVGMDAiLz4KPGRlZnM+CjxmaWx0ZXIgaWQ9ImZpbHRlcjBfZF81NDdfMTQ5NSIgeD0iMTguNDk0MyIgeT0iMCIgd2lkdGg9IjE5LjUwNTciIGhlaWdodD0iMjIuOTIxOSIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiPgo8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPgo8ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCIgcmVzdWx0PSJoYXJkQWxwaGEiLz4KPGZlT2Zmc2V0IGR4PSIxIi8+CjxmZUNvbXBvc2l0ZSBpbjI9ImhhcmRBbHBoYSIgb3BlcmF0b3I9Im91dCIvPgo8ZmVDb2xvck1hdHJpeCB0eXBlPSJtYXRyaXgiIHZhbHVlcz0iMCAwIDAgMCAwLjg5MTY2NyAwIDAgMCAwIDAuNTMwOTQ3IDAgMCAwIDAgMCAwIDAgMCAxIDAiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfNTQ3XzE0OTUiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfNTQ3XzE0OTUiIHJlc3VsdD0ic2hhcGUiLz4KPC9maWx0ZXI+CjwvZGVmcz4KPC9zdmc+Cg==";
|
|
7
|
+
|
|
8
|
+
const LearnCardCreditCardFrontFace = ({
|
|
9
|
+
userImage,
|
|
10
|
+
qrCodeValue,
|
|
11
|
+
className,
|
|
12
|
+
showActionButton = false,
|
|
13
|
+
actionButtonText = "Open Card",
|
|
14
|
+
onClick = () => {
|
|
15
|
+
}
|
|
16
|
+
}) => {
|
|
17
|
+
var _a, _b;
|
|
18
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
19
|
+
className: `flex justify-center items-center max-w-[375px] rounded-[20px] ${className}`
|
|
20
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
21
|
+
className: `flex flex-row justify-center items-start pt-9 w-full min-h-[220px] rounded-[20px] shadow-3xl relative overflow-hidden credit-card-front-face`
|
|
22
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
23
|
+
className: "absolute top-[-40px] left-0 w-[55%] h-[140%] rounded-tr-[150px] rounded-br-[150px] bg-grayscale-900 credit-card-bubble"
|
|
24
|
+
}), showActionButton && /* @__PURE__ */ React.createElement("button", {
|
|
25
|
+
className: "absolute top-2 right-4 bg-grayscale-500 border-[2px] rounded-3xl border-solid border-color-grayscale-900 min-w-[110px] p-[2px] font-bold text-xs tracking-wide leading-snug text-center text-white",
|
|
26
|
+
onClick,
|
|
27
|
+
"data-testid": "credit-card-frontface-button"
|
|
28
|
+
}, actionButtonText), /* @__PURE__ */ React.createElement("div", {
|
|
29
|
+
className: "flex flex-row justify-between items-start w-full h-full relative"
|
|
30
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
31
|
+
className: "flex flex-1 flex-col"
|
|
32
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
33
|
+
className: "pl-8"
|
|
34
|
+
}, /* @__PURE__ */ React.createElement("p", {
|
|
35
|
+
className: "w-full text-xs text-white font-bold tracking-[7px] mb-2 credit-card-front-face-title"
|
|
36
|
+
}, "LEARNCARD"), /* @__PURE__ */ React.createElement("img", {
|
|
37
|
+
src: (_a = CardChip) != null ? _a : "",
|
|
38
|
+
alt: "card chip",
|
|
39
|
+
className: "h-[30px] w-[42px]"
|
|
40
|
+
})), userImage && /* @__PURE__ */ React.createElement("div", {
|
|
41
|
+
className: "inline-block relative overflow-hidden rounded-full shadow-3xl h-0 bg-white w-1/2 pb-[50%] mt-2 ml-4"
|
|
42
|
+
}, /* @__PURE__ */ React.createElement("img", {
|
|
43
|
+
className: "w-full h-full absolute rounded-full object-cover border-solid border-2 border-white",
|
|
44
|
+
src: userImage,
|
|
45
|
+
alt: "user image",
|
|
46
|
+
"data-testid": "credit-card-frontface-userImg"
|
|
47
|
+
}))), qrCodeValue && /* @__PURE__ */ React.createElement("div", {
|
|
48
|
+
className: "flex flex-1 justify-center items-center relative pl-10 credit-card-qr-code-container"
|
|
49
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
50
|
+
className: "h-auto relative qr-code-container"
|
|
51
|
+
}, /* @__PURE__ */ React.createElement(QRCodeSVG, {
|
|
52
|
+
className: "h-full w-full",
|
|
53
|
+
value: qrCodeValue,
|
|
54
|
+
"data-testid": "credit-card-qr-code",
|
|
55
|
+
bgColor: "transparent"
|
|
56
|
+
}))), /* @__PURE__ */ React.createElement("img", {
|
|
57
|
+
src: (_b = MasterCardLogo) != null ? _b : "",
|
|
58
|
+
alt: "mastercard icon",
|
|
59
|
+
className: "absolute bottom-[-8px] right-4 learn-card-mastercard-logo"
|
|
60
|
+
}))));
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
export { LearnCardCreditCardFrontFace as L };
|
|
64
|
+
//# sourceMappingURL=LearnCardCreditCardFrontFace-269b2847.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearnCardCreditCardFrontFace-269b2847.js","sources":["../../src/assets/images/card-chip.svg","../../src/assets/images/master-card-logo.svg","../../src/components/LearnCardCreditCardFrontFace/LearnCardCreditCardFrontFace.tsx"],"sourcesContent":["export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDIiIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCA0MiAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMS4xNyIgeT0iMC41IiB3aWR0aD0iMzkuMzc4NCIgaGVpZ2h0PSIyOC4wNzgiIHJ4PSI0LjUiIGZpbGw9InVybCgjcGFpbnQwX2xpbmVhcl81NDdfMTQ0NikiIGZpbGwtb3BhY2l0eT0iMC4wMyIvPgo8cmVjdCB4PSIxLjE3IiB5PSIwLjUiIHdpZHRoPSIzOS4zNzg0IiBoZWlnaHQ9IjI4LjA3OCIgcng9IjQuNSIgZmlsbD0id2hpdGUiIGZpbGwtb3BhY2l0eT0iMC4zIi8+CjxyZWN0IHg9IjEuMTciIHk9IjAuNSIgd2lkdGg9IjM5LjM3ODQiIGhlaWdodD0iMjguMDc4IiByeD0iNC41IiBzdHJva2U9InVybCgjcGFpbnQxX2xpbmVhcl81NDdfMTQ0NikiLz4KPHJlY3QgeD0iMS4xNyIgeT0iMC41IiB3aWR0aD0iMzkuMzc4NCIgaGVpZ2h0PSIyOC4wNzgiIHJ4PSI0LjUiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS1vcGFjaXR5PSIwLjgiLz4KPHBhdGggZD0iTTAuNjIzNDQ1IDEwLjA2NDFIMTQuMzU0MUMxNS4yMjM1IDcuMzc2MjIgMTcuNjY3OSAxLjgzNzc3IDIwLjQ5MDcgMS4xODY3N0MyMS41MzkxIDEuNTU2NjUgMjMuOTg4NiAyLjg4ODI1IDI1LjQgNS4yNTU1M00wLjYyMzQ0NCAxOS4zODUySDE0LjM1NDFDMTQuMzU0MSAyNC4wMDE0IDE4LjQ0NTIgMjcuMzc0OCAyMC40OTA3IDI4LjQ4NDVDMjMuOTI3MiAyNy4zNiAyNi41NzYyIDIxLjk0OTggMjcuNDcxMSAxOS4zODUySDQxLjA0ODRNNDEuMDQ4NCAxMi4yODM0SDI3LjQ3MTFDMjYuODU3NSAxMS4xMjQ0IDI1Ljk5ODMgOC40NTEzNiAyNy40NzExIDcuMDMwOTkiIHN0cm9rZT0idXJsKCNwYWludDJfbGluZWFyXzU0N18xNDQ2KSIvPgo8cGF0aCBkPSJNMC42MjM0NDUgMTAuMDY0MUgxNC4zNTQxQzE1LjIyMzUgNy4zNzYyMiAxNy42Njc5IDEuODM3NzcgMjAuNDkwNyAxLjE4Njc3QzIxLjUzOTEgMS41NTY2NSAyMy45ODg2IDIuODg4MjUgMjUuNCA1LjI1NTUzTTAuNjIzNDQ0IDE5LjM4NTJIMTQuMzU0MUMxNC4zNTQxIDI0LjAwMTQgMTguNDQ1MiAyNy4zNzQ4IDIwLjQ5MDcgMjguNDg0NUMyMy45MjcyIDI3LjM2IDI2LjU3NjIgMjEuOTQ5OCAyNy40NzExIDE5LjM4NTJINDEuMDQ4NE00MS4wNDg0IDEyLjI4MzRIMjcuNDcxMUMyNi44NTc1IDExLjEyNDQgMjUuOTk4MyA4LjQ1MTM2IDI3LjQ3MTEgNy4wMzA5OSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLW9wYWNpdHk9IjAuOCIvPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzU0N18xNDQ2IiB4MT0iMC42Njk5OTgiIHkxPSIwIiB4Mj0iMzcuMDM2OSIgeTI9IjI4Ljg0MDQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0FCQUJBQiIvPgo8c3RvcCBvZmZzZXQ9IjAuMzEyNSIgc3RvcC1jb2xvcj0id2hpdGUiLz4KPHN0b3Agb2Zmc2V0PSIwLjYzMDIwOCIgc3RvcC1jb2xvcj0iI0JEQkRCRCIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM1RTVFNUUiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDFfbGluZWFyXzU0N18xNDQ2IiB4MT0iMi4xODgzOCIgeTE9IjAuNDc0MDk2IiB4Mj0iNDAuMDI2MyIgeTI9IjI1Ljc0MDQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iIzdEN0Q3RCIvPgo8c3RvcCBvZmZzZXQ9IjAuNDk0NzkyIiBzdG9wLWNvbG9yPSJ3aGl0ZSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMxQzFDMUMiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDJfbGluZWFyXzU0N18xNDQ2IiB4MT0iMi4xNDM1OCIgeTE9IjEuNjMxODQiIHgyPSIzOC40ODYzIiB5Mj0iMjcuNTEyMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjN0Q3RDdEIi8+CjxzdG9wIG9mZnNldD0iMC40OTQ3OTIiIHN0b3AtY29sb3I9IndoaXRlIi8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzFDMUMxQyIvPgo8L2xpbmVhckdyYWRpZW50Pgo8L2RlZnM+Cjwvc3ZnPgo=\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzgiIGhlaWdodD0iMjMiIHZpZXdCb3g9IjAgMCAzOCAyMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE5LjYzOCAyLjQ1Mzg5QzE3LjYyOSAwLjg2MTY1MiAxNS4xNDIxIC0wLjAwMzA5NTUxIDEyLjU4MTEgOC4zMjYzNWUtMDZDOS41NDc3NSA4LjMyNjM1ZS0wNiA2LjYzODYgMS4yMDgxMSA0LjQ5MzY4IDMuMzU4NTNDMi4zNDg3NSA1LjUwODk2IDEuMTQzNzQgOC40MjU1NyAxLjE0Mzc0IDExLjQ2NjdDMS4xNDM3NCAxNC41MDc5IDIuMzQ4NzUgMTcuNDI0NSA0LjQ5MzY4IDE5LjU3NDlDNi42Mzg2IDIxLjcyNTQgOS41NDc3NSAyMi45MzM1IDEyLjU4MTEgMjIuOTMzNUMxNS4xMzk3IDIyLjkzMzYgMTcuNjI0NCAyMi4wNzM2IDE5LjYzOCAyMC40OTFDMTguMjc4OSAxOS40MTcxIDE3LjE4MDYgMTguMDQ4IDE2LjQyNTggMTYuNDg2OEMxNS42NzA5IDE0LjkyNTcgMTUuMjc5MyAxMy4yMTMxIDE1LjI4MDQgMTEuNDc4MkMxNS4yNzc2IDkuNzQxMzQgMTUuNjY4NCA4LjAyNjU1IDE2LjQyMzMgNi40NjMyNUMxNy4xNzgyIDQuODk5OTUgMTguMjc3NCAzLjUyOSAxOS42MzggMi40NTM4OVoiIGZpbGw9IiNBRjAwMTQiLz4KPHBhdGggZD0iTTE4LjQ5NDMgMi40NTM4OUMxNi40ODUyIDAuODYxNjUyIDEzLjk5ODQgLTAuMDAzMDk1NTEgMTEuNDM3NCA4LjMyNjM1ZS0wNkM4LjQwNDAxIDguMzI2MzVlLTA2IDUuNDk0ODcgMS4yMDgxMSAzLjM0OTk0IDMuMzU4NTNDMS4yMDUwMSA1LjUwODk2IDAgOC40MjU1NyAwIDExLjQ2NjdDMCAxNC41MDc5IDEuMjA1MDEgMTcuNDI0NSAzLjM0OTk0IDE5LjU3NDlDNS40OTQ4NyAyMS43MjU0IDguNDA0MDEgMjIuOTMzNSAxMS40Mzc0IDIyLjkzMzVDMTMuOTk2IDIyLjkzMzYgMTYuNDgwNyAyMi4wNzM2IDE4LjQ5NDMgMjAuNDkxQzE3LjEzNTIgMTkuNDE3MSAxNi4wMzY4IDE4LjA0OCAxNS4yODIgMTYuNDg2OEMxNC41MjcyIDE0LjkyNTcgMTQuMTM1NiAxMy4yMTMxIDE0LjEzNjYgMTEuNDc4MkMxNC4xMzM4IDkuNzQxMzQgMTQuNTI0NiA4LjAyNjU1IDE1LjI3OTUgNi40NjMyNUMxNi4wMzQ0IDQuODk5OTUgMTcuMTMzNiAzLjUyOSAxOC40OTQzIDIuNDUzODlaIiBmaWxsPSIjRUIwMDFCIi8+CjxnIGZpbHRlcj0idXJsKCNmaWx0ZXIwX2RfNTQ3XzE0OTUpIj4KPHBhdGggZD0iTTI1LjU2MjYgMEMyMi45OTg4IDAuMDAwNTgyMjcxIDIwLjUwOTUgMC44NjQ3OCAxOC40OTQzIDIuNDUzODhDMTkuODU1NSAzLjUyNjY0IDIwLjk1NiA0Ljg5NTI0IDIxLjcxMjggNi40NTY0OEMyMi40Njk3IDguMDE3NzMgMjIuODYzMSA5LjczMDg3IDIyLjg2MzQgMTEuNDY2N0MyMi44NjMxIDEzLjIwMjYgMjIuNDY5NyAxNC45MTU3IDIxLjcxMjggMTYuNDc3QzIwLjk1NiAxOC4wMzgyIDE5Ljg1NTUgMTkuNDA2OCAxOC40OTQzIDIwLjQ3OTZDMjAuNTExIDIyLjA2NDYgMjMuMDAwMSAyMi45MjQ3IDI1LjU2MjYgMjIuOTIyQzI4LjU5NiAyMi45MjIgMzEuNTA1MSAyMS43MTM5IDMzLjY1MDEgMTkuNTYzNUMzNS43OTUgMTcuNDEzIDM3IDE0LjQ5NjQgMzcgMTEuNDU1M0MzNi45OTcgOC40MTYwOCAzNS43OTA2IDUuNTAyNDIgMzMuNjQ2IDMuMzU0NDdDMzEuNTAxNCAxLjIwNjUzIDI4LjU5NCAtMS41MTk1OWUtMDYgMjUuNTYyNiAwWiIgZmlsbD0iI0Y3OUUxQiIvPgo8L2c+CjxwYXRoIGQ9Ik0xOC40OTQzIDIuNDU0MTFIMTguNTA2TDE4LjQ5NDMgMi40NDIzOFYyLjQ1NDExWiIgZmlsbD0iI0Y3OUUxQiIvPgo8cGF0aCBkPSJNMTQuMTM2NiAxMS40NjY3QzE0LjEzNTYgMTMuMjAxNiAxNC41MjcyIDE0LjkxNDIgMTUuMjgyIDE2LjQ3NTNDMTYuMDM2OCAxOC4wMzY1IDE3LjEzNTIgMTkuNDA1NiAxOC40OTQzIDIwLjQ3OTVDMTkuODU1NSAxOS40MDY4IDIwLjk1NiAxOC4wMzgyIDIxLjcxMjggMTYuNDc2OUMyMi40Njk3IDE0LjkxNTcgMjIuODYzMSAxMy4yMDI2IDIyLjg2MzQgMTEuNDY2N0MyMi44NjMxIDkuNzMwODQgMjIuNDY5NyA4LjAxNzcgMjEuNzEyOCA2LjQ1NjQ2QzIwLjk1NiA0Ljg5NTIyIDE5Ljg1NTUgMy41MjY2MiAxOC40OTQzIDIuNDUzODZDMTcuMTM1MiAzLjUyNzc3IDE2LjAzNjggNC44OTY4OSAxNS4yODIgNi40NTgwNkMxNC41MjcyIDguMDE5MjQgMTQuMTM1NiA5LjczMTc4IDE0LjEzNjYgMTEuNDY2N1oiIGZpbGw9IiNGRjVGMDAiLz4KPGRlZnM+CjxmaWx0ZXIgaWQ9ImZpbHRlcjBfZF81NDdfMTQ5NSIgeD0iMTguNDk0MyIgeT0iMCIgd2lkdGg9IjE5LjUwNTciIGhlaWdodD0iMjIuOTIxOSIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiPgo8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPgo8ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCIgcmVzdWx0PSJoYXJkQWxwaGEiLz4KPGZlT2Zmc2V0IGR4PSIxIi8+CjxmZUNvbXBvc2l0ZSBpbjI9ImhhcmRBbHBoYSIgb3BlcmF0b3I9Im91dCIvPgo8ZmVDb2xvck1hdHJpeCB0eXBlPSJtYXRyaXgiIHZhbHVlcz0iMCAwIDAgMCAwLjg5MTY2NyAwIDAgMCAwIDAuNTMwOTQ3IDAgMCAwIDAgMCAwIDAgMCAxIDAiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfNTQ3XzE0OTUiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfNTQ3XzE0OTUiIHJlc3VsdD0ic2hhcGUiLz4KPC9maWx0ZXI+CjwvZGVmcz4KPC9zdmc+Cg==\"","import React from 'react';\nimport { QRCodeSVG } from 'qrcode.react';\n\nimport { LearnCardCreditCardFrontFaceProps } from './types';\n\nimport CardChip from '../../assets/images/card-chip.svg';\nimport MasterCardLogo from '../../assets/images/master-card-logo.svg';\n\nexport const LearnCardCreditCardFrontFace: React.FC<LearnCardCreditCardFrontFaceProps> = ({\n userImage,\n qrCodeValue,\n className,\n showActionButton = false,\n actionButtonText = 'Open Card',\n onClick = () => {},\n}) => {\n return (\n <div\n className={`flex justify-center items-center max-w-[375px] rounded-[20px] ${className}`}\n >\n <div\n className={`flex flex-row justify-center items-start pt-9 w-full min-h-[220px] rounded-[20px] shadow-3xl relative overflow-hidden credit-card-front-face`}\n >\n <div className=\"absolute top-[-40px] left-0 w-[55%] h-[140%] rounded-tr-[150px] rounded-br-[150px] bg-grayscale-900 credit-card-bubble\" />\n {showActionButton && (\n <button\n className=\"absolute top-2 right-4 bg-grayscale-500 border-[2px] rounded-3xl border-solid border-color-grayscale-900 min-w-[110px] p-[2px] font-bold text-xs tracking-wide leading-snug text-center text-white\"\n onClick={onClick}\n data-testid=\"credit-card-frontface-button\"\n >\n {actionButtonText}\n </button>\n )}\n <div className=\"flex flex-row justify-between items-start w-full h-full relative\">\n <div className=\"flex flex-1 flex-col\">\n <div className=\"pl-8\">\n <p className=\"w-full text-xs text-white font-bold tracking-[7px] mb-2 credit-card-front-face-title\">\n LEARNCARD\n </p>\n <img\n src={CardChip ?? ''}\n alt=\"card chip\"\n className=\"h-[30px] w-[42px]\"\n />\n </div>\n\n {userImage && (\n <div className=\"inline-block relative overflow-hidden rounded-full shadow-3xl h-0 bg-white w-1/2 pb-[50%] mt-2 ml-4\">\n <img\n className=\"w-full h-full absolute rounded-full object-cover border-solid border-2 border-white\"\n src={userImage}\n alt=\"user image\"\n data-testid=\"credit-card-frontface-userImg\"\n />\n </div>\n )}\n </div>\n\n {qrCodeValue && (\n <div className=\"flex flex-1 justify-center items-center relative pl-10 credit-card-qr-code-container\">\n <div className=\"h-auto relative qr-code-container\">\n {/* <div className=\"qr-code-upper-left-yellow\" />\n <div className=\"qr-code-upper-right-pink-square\" />\n <div className=\"qr-code-bottom-left-purple-square\" />\n <div className=\"qr-code-green-blob\" />\n <div className=\"qr-code-green-blob-2\" />\n <div className=\"qr-code-blue-blob\" />\n <div className=\"qr-code-orange-blob\" /> */}\n <QRCodeSVG\n className=\"h-full w-full\"\n value={qrCodeValue}\n data-testid=\"credit-card-qr-code\"\n bgColor=\"transparent\"\n // fgColor=\"#999999\"\n />\n </div>\n </div>\n )}\n\n <img\n src={MasterCardLogo ?? ''}\n alt=\"mastercard icon\"\n className=\"absolute bottom-[-8px] right-4 learn-card-mastercard-logo\"\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default LearnCardCreditCardFrontFace;\n"],"names":[],"mappings":";;;AAsGA,eAAe,4wFAA4wF;;ACxC3xF,qBAAe,wxHAAwxH;;AC1D3xH,MAAC,4BAA4B,GAAG,CAAC;AAC7C,EAAE,SAAS;AACX,EAAE,WAAW;AACb,EAAE,SAAS;AACX,EAAE,gBAAgB,GAAG,KAAK;AAC1B,EAAE,gBAAgB,GAAG,WAAW;AAChC,EAAE,OAAO,GAAG,MAAM;AAClB,GAAG;AACH,CAAC,KAAK;AACN,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACb,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACpD,IAAI,SAAS,EAAE,CAAC,8DAA8D,EAAE,SAAS,CAAC,CAAC;AAC3F,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,CAAC,4IAA4I,CAAC;AAC7J,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,wHAAwH;AACvI,GAAG,CAAC,EAAE,gBAAgB,oBAAoB,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE;AACxE,IAAI,SAAS,EAAE,oMAAoM;AACnN,IAAI,OAAO;AACX,IAAI,aAAa,EAAE,8BAA8B;AACjD,GAAG,EAAE,gBAAgB,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACnE,IAAI,SAAS,EAAE,kEAAkE;AACjF,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,sBAAsB;AACrC,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,MAAM;AACrB,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE;AAC9C,IAAI,SAAS,EAAE,sFAAsF;AACrG,GAAG,EAAE,WAAW,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAC9D,IAAI,GAAG,EAAE,CAAC,EAAE,GAAG,QAAQ,KAAK,IAAI,GAAG,EAAE,GAAG,EAAE;AAC1C,IAAI,GAAG,EAAE,WAAW;AACpB,IAAI,SAAS,EAAE,mBAAmB;AAClC,GAAG,CAAC,CAAC,EAAE,SAAS,oBAAoB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAC/D,IAAI,SAAS,EAAE,qGAAqG;AACpH,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,qFAAqF;AACpG,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,GAAG,EAAE,YAAY;AACrB,IAAI,aAAa,EAAE,+BAA+B;AAClD,GAAG,CAAC,CAAC,CAAC,EAAE,WAAW,oBAAoB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAClE,IAAI,SAAS,EAAE,sFAAsF;AACrG,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,mCAAmC;AAClD,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE;AACpD,IAAI,SAAS,EAAE,eAAe;AAC9B,IAAI,KAAK,EAAE,WAAW;AACtB,IAAI,aAAa,EAAE,qBAAqB;AACxC,IAAI,OAAO,EAAE,aAAa;AAC1B,GAAG,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACnD,IAAI,GAAG,EAAE,CAAC,EAAE,GAAG,cAAc,KAAK,IAAI,GAAG,EAAE,GAAG,EAAE;AAChD,IAAI,GAAG,EAAE,iBAAiB;AAC1B,IAAI,SAAS,EAAE,2DAA2D;AAC1E,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACR;;;;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Q as QRCodeSVG } from './index-aa1098e1.js';
|
|
3
|
+
|
|
4
|
+
const QRCodeCard = ({
|
|
5
|
+
userHandle,
|
|
6
|
+
qrCodeValue,
|
|
7
|
+
className
|
|
8
|
+
}) => {
|
|
9
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
10
|
+
className: `flex flex-col justify-center items-start pt-9 rounded-[20px] shadow-3xl max-w-[400px] bg-white relative pb-8 overflow-hidden ${className}`
|
|
11
|
+
}, qrCodeValue && /* @__PURE__ */ React.createElement("div", {
|
|
12
|
+
className: "flex justify-center items-center w-full relative px-8 mb-5"
|
|
13
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
14
|
+
className: "max-w-[90%] w-full h-auto relative"
|
|
15
|
+
}, /* @__PURE__ */ React.createElement(QRCodeSVG, {
|
|
16
|
+
className: "h-full w-full",
|
|
17
|
+
value: qrCodeValue,
|
|
18
|
+
"data-testid": "qrcode-card",
|
|
19
|
+
bgColor: "transparent"
|
|
20
|
+
}))), userHandle && /* @__PURE__ */ React.createElement("p", {
|
|
21
|
+
className: "flex items-center justify-center text-center w-full mb-3 font-semibold text-lg text-gray-500",
|
|
22
|
+
"data-testid": "qrcode-card-user-handle"
|
|
23
|
+
}, userHandle), /* @__PURE__ */ React.createElement("p", {
|
|
24
|
+
className: "flex items-center justify-center w-full text-xl text-black font-bold tracking-[9px]"
|
|
25
|
+
}, "LEARNCARD"));
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
export { QRCodeCard as Q };
|
|
29
|
+
//# sourceMappingURL=QRCodeCard-11e192b2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QRCodeCard-11e192b2.js","sources":["../../src/components/QRCodeCard/QRCodeCard.tsx"],"sourcesContent":["import React from 'react';\nimport { QRCodeSVG } from 'qrcode.react';\n\nimport { QRCodeCardProps } from './types';\n\nexport const QRCodeCard: React.FC<QRCodeCardProps> = ({\n userHandle,\n qrCodeValue,\n className,\n}) => {\n return (\n <div\n className={`flex flex-col justify-center items-start pt-9 rounded-[20px] shadow-3xl max-w-[400px] bg-white relative pb-8 overflow-hidden ${className}`}\n >\n {qrCodeValue && (\n <div className=\"flex justify-center items-center w-full relative px-8 mb-5\">\n <div className=\"max-w-[90%] w-full h-auto relative\">\n <QRCodeSVG\n className=\"h-full w-full\"\n value={qrCodeValue}\n data-testid=\"qrcode-card\"\n bgColor=\"transparent\"\n />\n </div>\n </div>\n )}\n\n {userHandle && (\n <p\n className=\"flex items-center justify-center text-center w-full mb-3 font-semibold text-lg text-gray-500\"\n data-testid=\"qrcode-card-user-handle\"\n >\n {userHandle}\n </p>\n )}\n\n <p className=\"flex items-center justify-center w-full text-xl text-black font-bold tracking-[9px]\">\n LEARNCARD\n </p>\n </div>\n );\n};\n\nexport default QRCodeCard;\n"],"names":[],"mappings":";;;AAEY,MAAC,UAAU,GAAG,CAAC;AAC3B,EAAE,UAAU;AACZ,EAAE,WAAW;AACb,EAAE,SAAS;AACX,CAAC,KAAK;AACN,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACpD,IAAI,SAAS,EAAE,CAAC,6HAA6H,EAAE,SAAS,CAAC,CAAC;AAC1J,GAAG,EAAE,WAAW,oBAAoB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAC/D,IAAI,SAAS,EAAE,4DAA4D;AAC3E,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,oCAAoC;AACnD,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE;AACpD,IAAI,SAAS,EAAE,eAAe;AAC9B,IAAI,KAAK,EAAE,WAAW;AACtB,IAAI,aAAa,EAAE,aAAa;AAChC,IAAI,OAAO,EAAE,aAAa;AAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,oBAAoB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE;AAC/D,IAAI,SAAS,EAAE,8FAA8F;AAC7G,IAAI,aAAa,EAAE,yBAAyB;AAC5C,GAAG,EAAE,UAAU,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE;AAC3D,IAAI,SAAS,EAAE,qFAAqF;AACpG,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;AACnB;;;;"}
|
|
@@ -8,7 +8,7 @@ import zlib from 'zlib';
|
|
|
8
8
|
import * as crypto__default from 'crypto';
|
|
9
9
|
import crypto__default__default from 'crypto';
|
|
10
10
|
import * as process$1 from 'process';
|
|
11
|
-
import { V as VCDisplayCard } from './VCDisplayCard-
|
|
11
|
+
import { V as VCDisplayCard } from './VCDisplayCard-6b0274f9.js';
|
|
12
12
|
|
|
13
13
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
14
14
|
|
|
@@ -132534,15 +132534,15 @@ var getIDXPlugin = /* @__PURE__ */ __name((_0, _1) => __async$1(void 0, [_0, _1]
|
|
|
132534
132534
|
};
|
|
132535
132535
|
}), "getIDXPlugin");
|
|
132536
132536
|
var isHex = /* @__PURE__ */ __name((str) => /^[0-9a-f]+$/i.test(str), "isHex");
|
|
132537
|
-
var getDidKeyPlugin = /* @__PURE__ */ __name((key2) => __async$1(void 0, null, function* () {
|
|
132537
|
+
var getDidKeyPlugin = /* @__PURE__ */ __name((wallet, key2) => __async$1(void 0, null, function* () {
|
|
132538
132538
|
if (key2.length === 0)
|
|
132539
132539
|
throw new Error("Please don't use an empty string for a key!");
|
|
132540
132540
|
if (!isHex(key2))
|
|
132541
132541
|
throw new Error("Key must be a hexadecimal string!");
|
|
132542
132542
|
if (key2.length > 64)
|
|
132543
132543
|
throw new Error("Key must be less than 64 characters");
|
|
132544
|
-
const keypair =
|
|
132545
|
-
const did =
|
|
132544
|
+
const keypair = wallet.pluginMethods.generateEd25519KeyFromBytes(toUint8Array(key2.padStart(64, "0")));
|
|
132545
|
+
const did = wallet.pluginMethods.keyToDid("key", keypair);
|
|
132546
132546
|
return {
|
|
132547
132547
|
pluginMethods: {
|
|
132548
132548
|
getSubjectDid: () => did,
|
|
@@ -132564,55 +132564,57 @@ var ExpirationPlugin = /* @__PURE__ */ __name((wallet) => ({
|
|
|
132564
132564
|
})
|
|
132565
132565
|
}
|
|
132566
132566
|
}), "ExpirationPlugin");
|
|
132567
|
-
var issueCredential2 = /* @__PURE__ */ __name((
|
|
132568
|
-
|
|
132569
|
-
|
|
132570
|
-
|
|
132571
|
-
|
|
132572
|
-
|
|
132573
|
-
|
|
132574
|
-
|
|
132567
|
+
var issueCredential2 = /* @__PURE__ */ __name((initWallet) => {
|
|
132568
|
+
return (wallet, credential) => __async$1(void 0, null, function* () {
|
|
132569
|
+
const kp = wallet.pluginMethods.getSubjectKeypair();
|
|
132570
|
+
if (!kp)
|
|
132571
|
+
throw new Error("Cannot issue credential: Could not get subject keypair");
|
|
132572
|
+
const options = {
|
|
132573
|
+
verificationMethod: yield initWallet.pluginMethods.keyToVerificationMethod("key", kp),
|
|
132574
|
+
proofPurpose: "assertionMethod"
|
|
132575
|
+
};
|
|
132576
|
+
return initWallet.pluginMethods.issueCredential(credential, options, kp);
|
|
132577
|
+
});
|
|
132578
|
+
}, "issueCredential");
|
|
132579
|
+
var verifyCredential2 = /* @__PURE__ */ __name((initWallet) => {
|
|
132580
|
+
return (_wallet, credential) => __async$1(void 0, null, function* () {
|
|
132581
|
+
return initWallet.pluginMethods.verifyCredential(credential);
|
|
132575
132582
|
});
|
|
132576
|
-
|
|
132577
|
-
|
|
132578
|
-
|
|
132579
|
-
|
|
132580
|
-
|
|
132581
|
-
|
|
132582
|
-
|
|
132583
|
-
|
|
132584
|
-
|
|
132585
|
-
|
|
132586
|
-
|
|
132587
|
-
|
|
132588
|
-
|
|
132589
|
-
|
|
132590
|
-
|
|
132591
|
-
|
|
132592
|
-
|
|
132583
|
+
}, "verifyCredential");
|
|
132584
|
+
var issuePresentation2 = /* @__PURE__ */ __name((initWallet) => {
|
|
132585
|
+
return (wallet, credential) => __async$1(void 0, null, function* () {
|
|
132586
|
+
const did = wallet.pluginMethods.getSubjectDid();
|
|
132587
|
+
if (!did)
|
|
132588
|
+
throw new Error("Cannot create presentation: No holder key found");
|
|
132589
|
+
const holder = did;
|
|
132590
|
+
const kp = wallet.pluginMethods.getSubjectKeypair();
|
|
132591
|
+
if (!kp)
|
|
132592
|
+
throw new Error("Cannot issue credential: Could not get subject keypair");
|
|
132593
|
+
const options = {
|
|
132594
|
+
verificationMethod: yield initWallet.pluginMethods.keyToVerificationMethod("key", kp),
|
|
132595
|
+
proofPurpose: "assertionMethod"
|
|
132596
|
+
};
|
|
132597
|
+
const presentation = {
|
|
132598
|
+
"@context": ["https://www.w3.org/2018/credentials/v1"],
|
|
132599
|
+
type: ["VerifiablePresentation"],
|
|
132600
|
+
holder,
|
|
132601
|
+
verifiableCredential: credential
|
|
132602
|
+
};
|
|
132603
|
+
return initWallet.pluginMethods.issuePresentation(presentation, options, kp);
|
|
132593
132604
|
});
|
|
132594
|
-
|
|
132595
|
-
|
|
132596
|
-
|
|
132597
|
-
|
|
132598
|
-
verifiableCredential: credential
|
|
132605
|
+
}, "issuePresentation");
|
|
132606
|
+
var verifyPresentation2 = /* @__PURE__ */ __name((initWallet) => {
|
|
132607
|
+
return (_wallet, presentation) => __async$1(void 0, null, function* () {
|
|
132608
|
+
return initWallet.pluginMethods.verifyPresentation(presentation);
|
|
132599
132609
|
});
|
|
132600
|
-
|
|
132601
|
-
}), "issuePresentation");
|
|
132602
|
-
var verifyPresentation2 = /* @__PURE__ */ __name((presentation) => __async$1(void 0, null, function* () {
|
|
132603
|
-
return JSON.parse(yield verifyPresentation(JSON.stringify(presentation), "{}"));
|
|
132604
|
-
}), "verifyPresentation");
|
|
132610
|
+
}, "verifyPresentation");
|
|
132605
132611
|
var getVCPlugin = /* @__PURE__ */ __name((wallet) => __async$1(void 0, null, function* () {
|
|
132606
132612
|
return {
|
|
132607
132613
|
pluginMethods: __spreadProps(__spreadValues({}, wallet.pluginMethods), {
|
|
132608
|
-
issueCredential: issueCredential2,
|
|
132609
|
-
verifyCredential: (
|
|
132610
|
-
|
|
132611
|
-
|
|
132612
|
-
issuePresentation: issuePresentation2,
|
|
132613
|
-
verifyPresentation: (_wallet, presentation) => __async$1(void 0, null, function* () {
|
|
132614
|
-
return verifyPresentation2(presentation);
|
|
132615
|
-
}),
|
|
132614
|
+
issueCredential: issueCredential2(wallet),
|
|
132615
|
+
verifyCredential: verifyCredential2(wallet),
|
|
132616
|
+
issuePresentation: issuePresentation2(wallet),
|
|
132617
|
+
verifyPresentation: verifyPresentation2(wallet),
|
|
132616
132618
|
getTestVc: (_wallet, subject = "did:example:d23dd687a7dc6787646f2eb98d0") => {
|
|
132617
132619
|
const did = _wallet.pluginMethods.getSubjectDid();
|
|
132618
132620
|
return {
|
|
@@ -135653,6 +135655,11 @@ var UnsignedAchievementCredentialValidator = UnsignedVCValidator.extend({
|
|
|
135653
135655
|
UnsignedAchievementCredentialValidator.extend({
|
|
135654
135656
|
proof: ProofValidator.or(ProofValidator.array())
|
|
135655
135657
|
});
|
|
135658
|
+
mod.object({
|
|
135659
|
+
checks: mod.string().array(),
|
|
135660
|
+
warnings: mod.string().array(),
|
|
135661
|
+
errors: mod.string().array()
|
|
135662
|
+
});
|
|
135656
135663
|
var VerificationStatusValidator = mod.enum(["Success", "Failed", "Error"]);
|
|
135657
135664
|
var VerificationStatusEnum = VerificationStatusValidator.enum;
|
|
135658
135665
|
mod.object({
|
|
@@ -137223,13 +137230,38 @@ var defaultCeramicIDXArgs = {
|
|
|
137223
137230
|
ceramicEndpoint: "https://ceramic-node.welibrary.io:7007",
|
|
137224
137231
|
defaultContentFamily: "SuperSkills"
|
|
137225
137232
|
};
|
|
137233
|
+
var getDidKitPlugin = /* @__PURE__ */ __name((input) => __async$1(void 0, null, function* () {
|
|
137234
|
+
yield didkit_default(input);
|
|
137235
|
+
return {
|
|
137236
|
+
pluginMethods: {
|
|
137237
|
+
generateEd25519KeyFromBytes: (_wallet, bytes) => JSON.parse(generateEd25519KeyFromBytes(bytes)),
|
|
137238
|
+
keyToDid: (_wallet, type, keypair) => keyToDID(type, JSON.stringify(keypair)),
|
|
137239
|
+
keyToVerificationMethod: (_wallet, type, keypair) => __async$1(void 0, null, function* () {
|
|
137240
|
+
return keyToVerificationMethod(type, JSON.stringify(keypair));
|
|
137241
|
+
}),
|
|
137242
|
+
issueCredential: (_wallet, credential, options, keypair) => __async$1(void 0, null, function* () {
|
|
137243
|
+
return JSON.parse(yield issueCredential(JSON.stringify(credential), JSON.stringify(options), JSON.stringify(keypair)));
|
|
137244
|
+
}),
|
|
137245
|
+
verifyCredential: (_wallet, credential) => __async$1(void 0, null, function* () {
|
|
137246
|
+
return JSON.parse(yield verifyCredential(JSON.stringify(credential), "{}"));
|
|
137247
|
+
}),
|
|
137248
|
+
issuePresentation: (presentation, options, keypair) => __async$1(void 0, null, function* () {
|
|
137249
|
+
return issuePresentation(JSON.stringify(presentation), JSON.stringify(options), JSON.stringify(keypair));
|
|
137250
|
+
}),
|
|
137251
|
+
verifyPresentation: (_wallet, presentation) => __async$1(void 0, null, function* () {
|
|
137252
|
+
return JSON.parse(yield verifyPresentation(JSON.stringify(presentation), "{}"));
|
|
137253
|
+
})
|
|
137254
|
+
}
|
|
137255
|
+
};
|
|
137256
|
+
}), "getDidKitPlugin");
|
|
137226
137257
|
var walletFromKey = /* @__PURE__ */ __name((_0, ..._1) => __async$1(void 0, [_0, ..._1], function* (key2, {
|
|
137227
137258
|
ceramicIdx = defaultCeramicIDXArgs,
|
|
137228
137259
|
didkit,
|
|
137229
137260
|
defaultContents = []
|
|
137230
137261
|
} = {}) {
|
|
137231
137262
|
yield didkit_default(didkit);
|
|
137232
|
-
const
|
|
137263
|
+
const didkitWallet = yield (yield generateWallet(defaultContents)).addPlugin(yield getDidKitPlugin(didkit));
|
|
137264
|
+
const didkeyWallet = yield didkitWallet.addPlugin(yield getDidKeyPlugin(didkitWallet, key2));
|
|
137233
137265
|
const didkeyAndVCWallet = yield didkeyWallet.addPlugin(yield getVCPlugin(didkeyWallet));
|
|
137234
137266
|
const idxWallet = yield didkeyAndVCWallet.addPlugin(yield getIDXPlugin(didkeyAndVCWallet, ceramicIdx));
|
|
137235
137267
|
const wallet = yield idxWallet.addPlugin(ExpirationPlugin(idxWallet));
|
|
@@ -137316,4 +137348,4 @@ const VCCard = ({ credential, issueeOverride, className = "" }) => {
|
|
|
137316
137348
|
};
|
|
137317
137349
|
|
|
137318
137350
|
export { VCCard as V };
|
|
137319
|
-
//# sourceMappingURL=VCCard-
|
|
137351
|
+
//# sourceMappingURL=VCCard-e39551a6.js.map
|