@learncard/react 2.5.11 → 2.5.12

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 (74) hide show
  1. package/dist/cjs/NotificationBoostCard-3b3bd47d.js +121 -0
  2. package/dist/cjs/NotificationBoostCard-3b3bd47d.js.map +1 -0
  3. package/dist/cjs/NotificationUserAcceptedBoostCard-423b9320.js +74 -0
  4. package/dist/cjs/NotificationUserAcceptedBoostCard-423b9320.js.map +1 -0
  5. package/dist/cjs/NotificationUserCard-d4dab06c.js +94 -0
  6. package/dist/cjs/NotificationUserCard-d4dab06c.js.map +1 -0
  7. package/dist/cjs/{VCCard-61320a9b.js → VCCard-9e1cd423.js} +3 -3
  8. package/dist/cjs/{VCCard-61320a9b.js.map → VCCard-9e1cd423.js.map} +1 -1
  9. package/dist/cjs/{VCDisplayBackFace-2429f8b5.js → VCDisplayBackFace-89b40163.js} +3 -3
  10. package/dist/cjs/{VCDisplayBackFace-2429f8b5.js.map → VCDisplayBackFace-89b40163.js.map} +1 -1
  11. package/dist/cjs/{VCDisplayCard-4443f928.js → VCDisplayCard-129d6f10.js} +3 -3
  12. package/dist/cjs/{VCDisplayCard-4443f928.js.map → VCDisplayCard-129d6f10.js.map} +1 -1
  13. package/dist/cjs/{VCDisplayCard2-f7e5790b.js → VCDisplayCard2-59f99f6d.js} +3 -3
  14. package/dist/cjs/{VCDisplayCard2-f7e5790b.js.map → VCDisplayCard2-59f99f6d.js.map} +1 -1
  15. package/dist/cjs/{VCVerificationPill-a0a7fedc.js → VCVerificationPill-a6f26ac9.js} +2 -2
  16. package/dist/cjs/{VCVerificationPill-a0a7fedc.js.map → VCVerificationPill-a6f26ac9.js.map} +1 -1
  17. package/dist/cjs/{credential.helpers-2ff85fe0.js → credential.helpers-2ceeae3c.js} +2 -2
  18. package/dist/cjs/{credential.helpers-2ff85fe0.js.map → credential.helpers-2ceeae3c.js.map} +1 -1
  19. package/dist/cjs/index.js +15 -7
  20. package/dist/cjs/index.js.map +1 -1
  21. package/dist/cjs/index12.js +15 -7
  22. package/dist/cjs/index12.js.map +1 -1
  23. package/dist/cjs/index21.js +9 -2
  24. package/dist/cjs/index21.js.map +1 -1
  25. package/dist/cjs/index22.js +7 -1
  26. package/dist/cjs/index22.js.map +1 -1
  27. package/dist/cjs/index23.js +5 -2
  28. package/dist/cjs/index23.js.map +1 -1
  29. package/dist/cjs/index34.js +7 -7
  30. package/dist/cjs/index35.js +4 -4
  31. package/dist/cjs/index36.js +5 -5
  32. package/dist/cjs/index37.js +3 -3
  33. package/dist/cjs/index38.js +1 -1
  34. package/dist/cjs/index41.js +2 -2
  35. package/dist/cjs/{types.esm-e3c8220c.js → types.esm-16460488.js} +28 -2
  36. package/dist/cjs/{types.esm-e3c8220c.js.map → types.esm-16460488.js.map} +1 -1
  37. package/dist/esm/NotificationBoostCard-134edf94.js +112 -0
  38. package/dist/esm/NotificationBoostCard-134edf94.js.map +1 -0
  39. package/dist/esm/NotificationUserAcceptedBoostCard-8c13bd3f.js +66 -0
  40. package/dist/esm/NotificationUserAcceptedBoostCard-8c13bd3f.js.map +1 -0
  41. package/dist/esm/NotificationUserCard-dbcc80f9.js +86 -0
  42. package/dist/esm/NotificationUserCard-dbcc80f9.js.map +1 -0
  43. package/dist/esm/{VCCard-93463171.js → VCCard-261f5864.js} +3 -3
  44. package/dist/esm/{VCCard-93463171.js.map → VCCard-261f5864.js.map} +1 -1
  45. package/dist/esm/{VCDisplayBackFace-ff5f979f.js → VCDisplayBackFace-a1801ec8.js} +3 -3
  46. package/dist/esm/{VCDisplayBackFace-ff5f979f.js.map → VCDisplayBackFace-a1801ec8.js.map} +1 -1
  47. package/dist/esm/{VCDisplayCard-c7fdd5a0.js → VCDisplayCard-2e5a9776.js} +3 -3
  48. package/dist/esm/{VCDisplayCard-c7fdd5a0.js.map → VCDisplayCard-2e5a9776.js.map} +1 -1
  49. package/dist/esm/{VCDisplayCard2-18a26510.js → VCDisplayCard2-44f7f2cb.js} +3 -3
  50. package/dist/esm/{VCDisplayCard2-18a26510.js.map → VCDisplayCard2-44f7f2cb.js.map} +1 -1
  51. package/dist/esm/{VCVerificationPill-f35ca77c.js → VCVerificationPill-e6c31a42.js} +2 -2
  52. package/dist/esm/{VCVerificationPill-f35ca77c.js.map → VCVerificationPill-e6c31a42.js.map} +1 -1
  53. package/dist/esm/{credential.helpers-99fba5b1.js → credential.helpers-8701c176.js} +2 -2
  54. package/dist/esm/{credential.helpers-99fba5b1.js.map → credential.helpers-8701c176.js.map} +1 -1
  55. package/dist/esm/index.js +12 -7
  56. package/dist/esm/index.js.map +1 -1
  57. package/dist/esm/index12.js +12 -7
  58. package/dist/esm/index12.js.map +1 -1
  59. package/dist/esm/index21.js +4 -2
  60. package/dist/esm/index21.js.map +1 -1
  61. package/dist/esm/index22.js +2 -1
  62. package/dist/esm/index22.js.map +1 -1
  63. package/dist/esm/index23.js +4 -2
  64. package/dist/esm/index23.js.map +1 -1
  65. package/dist/esm/index34.js +7 -7
  66. package/dist/esm/index35.js +4 -4
  67. package/dist/esm/index36.js +5 -5
  68. package/dist/esm/index37.js +3 -3
  69. package/dist/esm/index38.js +1 -1
  70. package/dist/esm/index41.js +2 -2
  71. package/dist/esm/{types.esm-0d948838.js → types.esm-e0b82727.js} +28 -2
  72. package/dist/esm/{types.esm-0d948838.js.map → types.esm-e0b82727.js.map} +1 -1
  73. package/dist/index.d.ts +7 -1
  74. package/package.json +1 -1
@@ -0,0 +1,121 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var X = require('./X.svg');
5
+ var types = require('./types-c83b33ec.js');
6
+ var notifications = require('./notifications-56c6fc94.js');
7
+ var DefaultFace = require('./default-face.jpeg');
8
+ var Checkmark = require('./Checkmark-f611aa4d.js');
9
+ var ArrowArcLeft = require('./ArrowArcLeft.svg');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
+ var X__default = /*#__PURE__*/_interopDefaultLegacy(X);
15
+ var DefaultFace__default = /*#__PURE__*/_interopDefaultLegacy(DefaultFace);
16
+ var ArrowArcLeft__default = /*#__PURE__*/_interopDefaultLegacy(ArrowArcLeft);
17
+
18
+ const NotificationBoostCard = ({
19
+ title,
20
+ customThumbComponent,
21
+ className,
22
+ thumbImage,
23
+ notificationType = notifications.NotificationTypeEnum.Achievement,
24
+ issueDate,
25
+ issuerInfo,
26
+ claimStatus = false,
27
+ loadingState = false,
28
+ handleButtonClick,
29
+ handleCancelClick,
30
+ handleCardClick,
31
+ showIssuerInfo = true,
32
+ isArchived
33
+ }) => {
34
+ var _a, _b;
35
+ const [isClaimed, setIsClaimed] = React.useState(claimStatus || false);
36
+ const [isLoading, setIsLoading] = React.useState(loadingState || false);
37
+ React.useEffect(() => {
38
+ setIsClaimed(claimStatus);
39
+ }, [claimStatus]);
40
+ React.useEffect(() => {
41
+ setIsLoading(loadingState);
42
+ }, [loadingState]);
43
+ const {
44
+ iconCircleStyles,
45
+ textStyles,
46
+ viewButtonStyles,
47
+ claimedButtonStyles,
48
+ unclaimedButtonStyles,
49
+ typeText
50
+ } = types.NotificationTypeStyles[notificationType];
51
+ const claimButtonStyles = isClaimed ? claimedButtonStyles : unclaimedButtonStyles;
52
+ let buttonText = "";
53
+ if (isClaimed) {
54
+ buttonText = "Claimed";
55
+ } else if (!isClaimed) {
56
+ buttonText = "Claim";
57
+ }
58
+ return /* @__PURE__ */ React__default["default"].createElement("div", {
59
+ className: `flex justify-start max-w-[600px] items-start relative w-full rounded-3xl shadow-bottom py-[10px] px-[10px] bg-white ${className}`
60
+ }, /* @__PURE__ */ React__default["default"].createElement("div", {
61
+ className: "notification-card-left-side px-[0px] flex"
62
+ }, !customThumbComponent && /* @__PURE__ */ React__default["default"].createElement("div", {
63
+ onClick: handleCardClick,
64
+ className: `overflow-hidden cursor-pointer w-[90px] h-[90px] rounded-full flex items-start ${iconCircleStyles} notification-card-thumbnail`
65
+ }, /* @__PURE__ */ React__default["default"].createElement("img", {
66
+ src: thumbImage,
67
+ alt: "Notification Thumb",
68
+ className: "w-full h-full w-[100px] h-[100px] object-cover"
69
+ })), customThumbComponent && { customThumbComponent }), /* @__PURE__ */ React__default["default"].createElement("div", {
70
+ className: "flex flex-col justify-center items-start relative w-full"
71
+ }, /* @__PURE__ */ React__default["default"].createElement("div", {
72
+ className: "text-left ml-3 flex flex-col items-start justify-start w-full"
73
+ }, /* @__PURE__ */ React__default["default"].createElement("h4", {
74
+ onClick: handleCardClick,
75
+ className: "cursor-pointer font-bold tracking-wide line-clamp-2 text-black text-[14px] pr-[20px] notification-card-title",
76
+ "data-testid": "notification-title"
77
+ }, title), /* @__PURE__ */ React__default["default"].createElement("p", {
78
+ className: `font-semibold p-0 mt-[10px] leading-none tracking-wide line-clamp-1 text-[12px] notification-card-type-text ${textStyles}`,
79
+ "data-testid": "notification-type"
80
+ }, typeText, " ", issueDate && /* @__PURE__ */ React__default["default"].createElement("span", {
81
+ className: "text-grayscale-600 normal-case font-normal text-[12px] notification-card-type-issue-date",
82
+ "data-testid": "notification-cred-issue-date"
83
+ }, "\u2022 ", issueDate)), showIssuerInfo && /* @__PURE__ */ React__default["default"].createElement("div", {
84
+ className: "notification-card-issuer-info flex items-center mt-[10px]"
85
+ }, /* @__PURE__ */ React__default["default"].createElement("div", {
86
+ className: "profile-thumb-img border-[2px] border-white border-solid vc-issuee-image h-[35px] w-[35px] rounded-full overflow-hidden mx-[-5px]"
87
+ }, /* @__PURE__ */ React__default["default"].createElement("img", {
88
+ className: "h-full w-full object-cover",
89
+ src: (issuerInfo == null ? void 0 : issuerInfo.image) || DefaultFace__default["default"],
90
+ alt: "profile"
91
+ })), /* @__PURE__ */ React__default["default"].createElement("div", {
92
+ className: "notification-issuer-info-text flex items-center px-[10px]"
93
+ }, /* @__PURE__ */ React__default["default"].createElement("p", {
94
+ className: "text-[13px] text-gray-700 font-medium"
95
+ }, "From ", (issuerInfo == null ? void 0 : issuerInfo.fullName) || (issuerInfo == null ? void 0 : issuerInfo.displayName)))), /* @__PURE__ */ React__default["default"].createElement("div", {
96
+ className: "flex items-center justify-between mt-3 w-full"
97
+ }, /* @__PURE__ */ React__default["default"].createElement("button", {
98
+ className: `notification-claim-btn flex items-center mr-[15px] w-[143px] justify-center flex-1 rounded-[24px] border-2 border-solid font-semibold py-2 px-3 tracking-wide ${claimButtonStyles}`,
99
+ onClick: handleButtonClick,
100
+ role: "button",
101
+ name: "notification-claim-button"
102
+ }, isClaimed && /* @__PURE__ */ React__default["default"].createElement(Checkmark.Checkmark, {
103
+ className: "h-[24px] p-0 m-0"
104
+ }), " ", isLoading ? "Loading..." : buttonText), /* @__PURE__ */ React__default["default"].createElement("button", {
105
+ onClick: handleCancelClick,
106
+ className: `rounded-[24px] flex items-center justify-center h-[42px] w-[42px] shadow-bottom bg-white font-semibold mr-2 p-[0px] tracking-wide ${viewButtonStyles}`,
107
+ role: "button",
108
+ name: "notification-view-button"
109
+ }, !isArchived && /* @__PURE__ */ React__default["default"].createElement("img", {
110
+ src: (_a = X__default["default"]) != null ? _a : "",
111
+ alt: "Cancel",
112
+ className: "notification-card-x"
113
+ }), isArchived && /* @__PURE__ */ React__default["default"].createElement("img", {
114
+ src: (_b = ArrowArcLeft__default["default"]) != null ? _b : "",
115
+ alt: "Cancel",
116
+ className: "notification-card-x"
117
+ }))))));
118
+ };
119
+
120
+ exports.NotificationBoostCard = NotificationBoostCard;
121
+ //# sourceMappingURL=NotificationBoostCard-3b3bd47d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationBoostCard-3b3bd47d.js","sources":["../../src/components/NotificationBoostCard/NotificationBoostCard.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport X from '../../assets/images/X.svg';\nimport { NotificationBoostCardProps } from './types';\nimport { NotificationTypeStyles } from '../Notification/types';\nimport { NotificationTypeEnum } from '../../constants/notifications';\nimport DefaultFace from '../../assets/images/default-face.jpeg';\nimport Checkmark from '../svgs/Checkmark';\nimport ArrowArcLeft from '../../assets/images/ArrowArcLeft.svg';\n\nexport const NotificationBoostCard: React.FC<NotificationBoostCardProps> = ({\n title,\n customThumbComponent,\n className,\n thumbImage,\n notificationType = NotificationTypeEnum.Achievement,\n issueDate,\n issuerInfo,\n claimStatus = false,\n loadingState = false,\n handleButtonClick,\n handleCancelClick,\n handleCardClick,\n showIssuerInfo = true,\n isArchived,\n}) => {\n const [isClaimed, setIsClaimed] = useState<boolean>(claimStatus || false);\n const [isLoading, setIsLoading] = useState<boolean>(loadingState || false);\n\n useEffect(() => {\n setIsClaimed(claimStatus);\n }, [claimStatus]);\n\n useEffect(() => {\n setIsLoading(loadingState);\n }, [loadingState]);\n\n const {\n iconCircleStyles,\n textStyles,\n viewButtonStyles,\n claimedButtonStyles,\n unclaimedButtonStyles,\n typeText,\n } = NotificationTypeStyles[notificationType];\n\n const claimButtonStyles = isClaimed ? claimedButtonStyles : unclaimedButtonStyles;\n\n let buttonText: string = '';\n\n if (isClaimed) {\n buttonText = 'Claimed';\n } else if (!isClaimed) {\n buttonText = 'Claim';\n }\n\n return (\n <div\n className={`flex justify-start max-w-[600px] items-start relative w-full rounded-3xl shadow-bottom py-[10px] px-[10px] bg-white ${className}`}\n >\n <div className=\"notification-card-left-side px-[0px] flex\">\n {!customThumbComponent && (\n <div\n onClick={handleCardClick}\n className={`overflow-hidden cursor-pointer w-[90px] h-[90px] rounded-full flex items-start ${iconCircleStyles} notification-card-thumbnail`}\n >\n <img\n src={thumbImage}\n alt=\"Notification Thumb\"\n className=\"w-full h-full w-[100px] h-[100px] object-cover\"\n />\n </div>\n )}\n {customThumbComponent && { customThumbComponent }}\n </div>\n <div className=\"flex flex-col justify-center items-start relative w-full\">\n <div className=\"text-left ml-3 flex flex-col items-start justify-start w-full\">\n <h4\n onClick={handleCardClick}\n className=\"cursor-pointer font-bold tracking-wide line-clamp-2 text-black text-[14px] pr-[20px] notification-card-title\"\n data-testid=\"notification-title\"\n >\n {title}\n </h4>\n <p\n className={`font-semibold p-0 mt-[10px] leading-none tracking-wide line-clamp-1 text-[12px] notification-card-type-text ${textStyles}`}\n data-testid=\"notification-type\"\n >\n {typeText}{' '}\n {issueDate && (\n <span\n className=\"text-grayscale-600 normal-case font-normal text-[12px] notification-card-type-issue-date\"\n data-testid=\"notification-cred-issue-date\"\n >\n • {issueDate}\n </span>\n )}\n </p>\n\n {showIssuerInfo && (\n <div className=\"notification-card-issuer-info flex items-center mt-[10px]\">\n <div className=\"profile-thumb-img border-[2px] border-white border-solid vc-issuee-image h-[35px] w-[35px] rounded-full overflow-hidden mx-[-5px]\">\n <img\n className=\"h-full w-full object-cover\"\n src={issuerInfo?.image || DefaultFace}\n alt=\"profile\"\n />\n </div>\n <div className=\"notification-issuer-info-text flex items-center px-[10px]\">\n <p className=\"text-[13px] text-gray-700 font-medium\">\n From {issuerInfo?.fullName || issuerInfo?.displayName}\n </p>\n </div>\n </div>\n )}\n\n <div className=\"flex items-center justify-between mt-3 w-full\">\n <button\n className={`notification-claim-btn flex items-center mr-[15px] w-[143px] justify-center flex-1 rounded-[24px] border-2 border-solid font-semibold py-2 px-3 tracking-wide ${claimButtonStyles}`}\n onClick={handleButtonClick}\n role=\"button\"\n name=\"notification-claim-button\"\n >\n {isClaimed && <Checkmark className=\"h-[24px] p-0 m-0\" />}{' '}\n {isLoading ? 'Loading...' : buttonText}\n </button>\n\n <button\n onClick={handleCancelClick}\n className={`rounded-[24px] flex items-center justify-center h-[42px] w-[42px] shadow-bottom bg-white font-semibold mr-2 p-[0px] tracking-wide ${viewButtonStyles}`}\n role=\"button\"\n name=\"notification-view-button\"\n >\n {!isArchived && (\n <img src={X ?? ''} alt=\"Cancel\" className=\"notification-card-x\" />\n )}\n {isArchived && (\n <img\n src={ArrowArcLeft ?? ''}\n alt=\"Cancel\"\n className=\"notification-card-x\"\n />\n )}\n </button>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default NotificationBoostCard;\n"],"names":["NotificationTypeEnum","useState","useEffect","NotificationTypeStyles","React","DefaultFace","Checkmark","X","ArrowArcLeft"],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var X = require('./X.svg');
5
+ var types = require('./types-e4d9a257.js');
6
+ var notifications = require('./notifications-56c6fc94.js');
7
+ var ArrowArcLeft = require('./ArrowArcLeft.svg');
8
+
9
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
+
11
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
+ var X__default = /*#__PURE__*/_interopDefaultLegacy(X);
13
+ var ArrowArcLeft__default = /*#__PURE__*/_interopDefaultLegacy(ArrowArcLeft);
14
+
15
+ const NotificationUserAcceptedBoostCard = ({
16
+ title,
17
+ customThumbComponent,
18
+ className,
19
+ thumbImage,
20
+ notificationType = notifications.UserNotificationTypeEnum.AcceptedBoost,
21
+ issueDate,
22
+ loadingState = false,
23
+ handleCancelClick,
24
+ isArchived
25
+ }) => {
26
+ var _a, _b;
27
+ const [isLoading, setIsLoading] = React.useState(loadingState || false);
28
+ React.useEffect(() => {
29
+ setIsLoading(loadingState);
30
+ }, [loadingState]);
31
+ const { textStyles, viewButtonStyles, typeText } = types.UserNotificationTypeStyles[notificationType];
32
+ return /* @__PURE__ */ React__default["default"].createElement("div", {
33
+ className: `flex justify-start max-w-[600px] items-start relative w-full rounded-3xl shadow-bottom py-[10px] px-[10px] bg-white ${className}`
34
+ }, /* @__PURE__ */ React__default["default"].createElement("div", {
35
+ className: "notification-card-left-side px-[0px] flex"
36
+ }, !customThumbComponent && /* @__PURE__ */ React__default["default"].createElement("div", {
37
+ className: `overflow-hidden w-[50px] h-[50px] rounded-full flex items-start notification-card-thumbnail`
38
+ }, /* @__PURE__ */ React__default["default"].createElement("img", {
39
+ src: thumbImage,
40
+ alt: "Notification Thumb",
41
+ className: "w-full h-full w-[50px] h-[50px] object-cover"
42
+ })), customThumbComponent && { customThumbComponent }), /* @__PURE__ */ React__default["default"].createElement("div", {
43
+ className: "flex flex-col justify-center items-start relative w-full"
44
+ }, /* @__PURE__ */ React__default["default"].createElement("div", {
45
+ className: "text-left ml-3 flex flex-col items-start justify-start w-full"
46
+ }, /* @__PURE__ */ React__default["default"].createElement("h4", {
47
+ className: "font-bold tracking-wide line-clamp-2 text-black text-[14px] pr-[20px] notification-card-title",
48
+ "data-testid": "notification-title"
49
+ }, title), /* @__PURE__ */ React__default["default"].createElement("p", {
50
+ className: `font-semibold p-0 mt-[10px] leading-none tracking-wide line-clamp-1 text-[12px] notification-card-type-text ${textStyles}`,
51
+ "data-testid": "notification-type"
52
+ }, typeText, " ", issueDate && /* @__PURE__ */ React__default["default"].createElement("span", {
53
+ className: "text-grayscale-600 normal-case font-normal text-[12px] notification-card-type-issue-date",
54
+ "data-testid": "notification-cred-issue-date"
55
+ }, typeText && "\u2022", " ", issueDate)), /* @__PURE__ */ React__default["default"].createElement("div", {
56
+ className: "flex items-center justify-end w-full mt-3"
57
+ }, /* @__PURE__ */ React__default["default"].createElement("button", {
58
+ onClick: handleCancelClick,
59
+ className: `rounded-[24px] flex items-center justify-center h-[42px] w-[42px] shadow-bottom bg-white font-semibold mr-2 p-[0px] tracking-wide ${viewButtonStyles}`,
60
+ role: "button",
61
+ name: "notification-view-button"
62
+ }, !isArchived && /* @__PURE__ */ React__default["default"].createElement("img", {
63
+ src: (_a = X__default["default"]) != null ? _a : "",
64
+ alt: "Cancel",
65
+ className: "notification-card-x"
66
+ }), isArchived && /* @__PURE__ */ React__default["default"].createElement("img", {
67
+ src: (_b = ArrowArcLeft__default["default"]) != null ? _b : "",
68
+ alt: "Cancel",
69
+ className: "notification-card-x"
70
+ }))))));
71
+ };
72
+
73
+ exports.NotificationUserAcceptedBoostCard = NotificationUserAcceptedBoostCard;
74
+ //# sourceMappingURL=NotificationUserAcceptedBoostCard-423b9320.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationUserAcceptedBoostCard-423b9320.js","sources":["../../src/components/NotificationUserAcceptedBoostCard/NotificationUserAcceptedBoostCard.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport X from '../../assets/images/X.svg';\nimport { NotificationUserAcceptedBoostCardProps } from './types';\nimport { UserNotificationTypeStyles } from '../NotificationUserCard/types';\n\nimport { UserNotificationTypeEnum } from '../../constants/notifications';\nimport ArrowArcLeft from '../../assets/images/ArrowArcLeft.svg';\n\nexport const NotificationUserAcceptedBoostCard: React.FC<\n NotificationUserAcceptedBoostCardProps\n> = ({\n title,\n customThumbComponent,\n className,\n thumbImage,\n notificationType = UserNotificationTypeEnum.AcceptedBoost,\n issueDate,\n loadingState = false,\n handleCancelClick,\n isArchived,\n}) => {\n const [isLoading, setIsLoading] = useState<boolean>(loadingState || false);\n\n useEffect(() => {\n setIsLoading(loadingState);\n }, [loadingState]);\n\n const { textStyles, viewButtonStyles, typeText } = UserNotificationTypeStyles[notificationType];\n\n return (\n <div\n className={`flex justify-start max-w-[600px] items-start relative w-full rounded-3xl shadow-bottom py-[10px] px-[10px] bg-white ${className}`}\n >\n <div className=\"notification-card-left-side px-[0px] flex\">\n {!customThumbComponent && (\n <div\n className={`overflow-hidden w-[50px] h-[50px] rounded-full flex items-start notification-card-thumbnail`}\n >\n <img\n src={thumbImage}\n alt=\"Notification Thumb\"\n className=\"w-full h-full w-[50px] h-[50px] object-cover\"\n />\n </div>\n )}\n {customThumbComponent && { customThumbComponent }}\n </div>\n <div className=\"flex flex-col justify-center items-start relative w-full\">\n <div className=\"text-left ml-3 flex flex-col items-start justify-start w-full\">\n <h4\n className=\"font-bold tracking-wide line-clamp-2 text-black text-[14px] pr-[20px] notification-card-title\"\n data-testid=\"notification-title\"\n >\n {title}\n </h4>\n <p\n className={`font-semibold p-0 mt-[10px] leading-none tracking-wide line-clamp-1 text-[12px] notification-card-type-text ${textStyles}`}\n data-testid=\"notification-type\"\n >\n {typeText}{' '}\n {issueDate && (\n <span\n className=\"text-grayscale-600 normal-case font-normal text-[12px] notification-card-type-issue-date\"\n data-testid=\"notification-cred-issue-date\"\n >\n {typeText && '•'} {issueDate}\n </span>\n )}\n </p>\n\n <div className=\"flex items-center justify-end w-full mt-3\">\n <button\n onClick={handleCancelClick}\n className={`rounded-[24px] flex items-center justify-center h-[42px] w-[42px] shadow-bottom bg-white font-semibold mr-2 p-[0px] tracking-wide ${viewButtonStyles}`}\n role=\"button\"\n name=\"notification-view-button\"\n >\n {!isArchived && (\n <img src={X ?? ''} alt=\"Cancel\" className=\"notification-card-x\" />\n )}\n {isArchived && (\n <img\n src={ArrowArcLeft ?? ''}\n alt=\"Cancel\"\n className=\"notification-card-x\"\n />\n )}\n </button>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default NotificationUserAcceptedBoostCard;\n"],"names":["UserNotificationTypeEnum","useState","useEffect","UserNotificationTypeStyles","React","X","ArrowArcLeft"],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var X = require('./X.svg');
5
+ var types = require('./types-e4d9a257.js');
6
+ var notifications = require('./notifications-56c6fc94.js');
7
+ var Checkmark = require('./Checkmark-f611aa4d.js');
8
+ var ArrowArcLeft = require('./ArrowArcLeft.svg');
9
+
10
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
+
12
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
+ var X__default = /*#__PURE__*/_interopDefaultLegacy(X);
14
+ var ArrowArcLeft__default = /*#__PURE__*/_interopDefaultLegacy(ArrowArcLeft);
15
+
16
+ const NotificationUserCard = ({
17
+ title,
18
+ customThumbComponent,
19
+ className,
20
+ thumbImage,
21
+ issueDate,
22
+ acceptStatus = false,
23
+ loadingState = false,
24
+ handleButtonClick,
25
+ handleCancelClick,
26
+ isArchived
27
+ }) => {
28
+ var _a, _b;
29
+ const [isAccepted, setisAccepted] = React.useState(acceptStatus || false);
30
+ const [isLoading, setIsLoading] = React.useState(loadingState || false);
31
+ React.useEffect(() => {
32
+ setisAccepted(acceptStatus);
33
+ }, [acceptStatus]);
34
+ React.useEffect(() => {
35
+ setIsLoading(loadingState);
36
+ }, [loadingState]);
37
+ const { textStyles, viewButtonStyles, claimedButtonStyles, unclaimedButtonStyles, typeText } = types.UserNotificationTypeStyles[notifications.UserNotificationTypeEnum.ConnectionRequest];
38
+ const claimButtonStyles = isAccepted ? claimedButtonStyles : unclaimedButtonStyles;
39
+ let buttonText = "";
40
+ if (isAccepted) {
41
+ buttonText = "Accepted";
42
+ } else if (!isAccepted) {
43
+ buttonText = "Accept";
44
+ }
45
+ return /* @__PURE__ */ React__default["default"].createElement("div", {
46
+ className: `flex justify-start max-w-[600px] items-start relative w-full rounded-3xl shadow-bottom py-[10px] px-[10px] bg-white ${className}`
47
+ }, /* @__PURE__ */ React__default["default"].createElement("div", {
48
+ className: "notification-card-left-side px-[0px] flex"
49
+ }, !customThumbComponent && /* @__PURE__ */ React__default["default"].createElement("div", {
50
+ className: `overflow-hidden cursor-pointer w-[68px] h-[68px] rounded-full flex items-start notification-card-thumbnail`
51
+ }, /* @__PURE__ */ React__default["default"].createElement("img", {
52
+ src: thumbImage,
53
+ alt: "Notification Thumb",
54
+ className: "w-full h-full w-[68px] h-[68px] object-cover"
55
+ })), customThumbComponent && { customThumbComponent }), /* @__PURE__ */ React__default["default"].createElement("div", {
56
+ className: "flex flex-col justify-center items-start relative w-full"
57
+ }, /* @__PURE__ */ React__default["default"].createElement("div", {
58
+ className: "text-left ml-3 flex flex-col items-start justify-start w-full"
59
+ }, /* @__PURE__ */ React__default["default"].createElement("h4", {
60
+ className: "cursor-pointer font-bold tracking-wide line-clamp-2 text-black text-[14px] pr-[20px] notification-card-title",
61
+ "data-testid": "notification-title"
62
+ }, title), /* @__PURE__ */ React__default["default"].createElement("p", {
63
+ className: `font-semibold p-0 mt-[10px] leading-none tracking-wide line-clamp-1 text-[12px] notification-card-type-text ${textStyles}`,
64
+ "data-testid": "notification-type"
65
+ }, typeText, " ", issueDate && /* @__PURE__ */ React__default["default"].createElement("span", {
66
+ className: "text-grayscale-600 normal-case font-normal text-[12px] notification-card-type-issue-date",
67
+ "data-testid": "notification-cred-issue-date"
68
+ }, "\u2022 ", issueDate)), /* @__PURE__ */ React__default["default"].createElement("div", {
69
+ className: "flex items-center justify-between mt-3 w-full"
70
+ }, /* @__PURE__ */ React__default["default"].createElement("button", {
71
+ className: `notification-claim-btn flex items-center mr-[15px] w-[143px] justify-center flex-1 rounded-[24px] border-2 border-solid font-semibold py-2 px-3 tracking-wide ${claimButtonStyles}`,
72
+ onClick: handleButtonClick,
73
+ role: "button",
74
+ name: "notification-claim-button"
75
+ }, isAccepted && /* @__PURE__ */ React__default["default"].createElement(Checkmark.Checkmark, {
76
+ className: "h-[24px] p-0 m-0"
77
+ }), " ", isLoading ? "Loading..." : buttonText), /* @__PURE__ */ React__default["default"].createElement("button", {
78
+ onClick: handleCancelClick,
79
+ className: `rounded-[24px] flex items-center justify-center h-[42px] w-[42px] shadow-bottom bg-white font-semibold mr-2 p-[0px] tracking-wide ${viewButtonStyles}`,
80
+ role: "button",
81
+ name: "notification-view-button"
82
+ }, !isArchived && /* @__PURE__ */ React__default["default"].createElement("img", {
83
+ src: (_a = X__default["default"]) != null ? _a : "",
84
+ alt: "Cancel",
85
+ className: "notification-card-x"
86
+ }), isArchived && /* @__PURE__ */ React__default["default"].createElement("img", {
87
+ src: (_b = ArrowArcLeft__default["default"]) != null ? _b : "",
88
+ alt: "Cancel",
89
+ className: "notification-card-x"
90
+ }))))));
91
+ };
92
+
93
+ exports.NotificationUserCard = NotificationUserCard;
94
+ //# sourceMappingURL=NotificationUserCard-d4dab06c.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationUserCard-d4dab06c.js","sources":["../../src/components/NotificationUserCard/NotificationUserCard.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport X from '../../assets/images/X.svg';\nimport { NotificationUserCardProps, UserNotificationTypeStyles } from './types';\n\nimport { UserNotificationTypeEnum } from '../../constants/notifications';\nimport DefaultFace from '../../assets/images/default-face.jpeg';\nimport Checkmark from '../svgs/Checkmark';\nimport ArrowArcLeft from '../../assets/images/ArrowArcLeft.svg';\n\nexport const NotificationUserCard: React.FC<NotificationUserCardProps> = ({\n title,\n customThumbComponent,\n className,\n thumbImage,\n issueDate,\n acceptStatus = false,\n loadingState = false,\n handleButtonClick,\n handleCancelClick,\n isArchived,\n}) => {\n const [isAccepted, setisAccepted] = useState<boolean>(acceptStatus || false);\n const [isLoading, setIsLoading] = useState<boolean>(loadingState || false);\n\n useEffect(() => {\n setisAccepted(acceptStatus);\n }, [acceptStatus]);\n\n useEffect(() => {\n setIsLoading(loadingState);\n }, [loadingState]);\n\n const { textStyles, viewButtonStyles, claimedButtonStyles, unclaimedButtonStyles, typeText } =\n UserNotificationTypeStyles[UserNotificationTypeEnum.ConnectionRequest];\n\n const claimButtonStyles = isAccepted ? claimedButtonStyles : unclaimedButtonStyles;\n\n let buttonText: string = '';\n\n if (isAccepted) {\n buttonText = 'Accepted';\n } else if (!isAccepted) {\n buttonText = 'Accept';\n }\n\n return (\n <div\n className={`flex justify-start max-w-[600px] items-start relative w-full rounded-3xl shadow-bottom py-[10px] px-[10px] bg-white ${className}`}\n >\n <div className=\"notification-card-left-side px-[0px] flex\">\n {!customThumbComponent && (\n <div\n className={`overflow-hidden cursor-pointer w-[68px] h-[68px] rounded-full flex items-start notification-card-thumbnail`}\n >\n <img\n src={thumbImage}\n alt=\"Notification Thumb\"\n className=\"w-full h-full w-[68px] h-[68px] object-cover\"\n />\n </div>\n )}\n {customThumbComponent && { customThumbComponent }}\n </div>\n <div className=\"flex flex-col justify-center items-start relative w-full\">\n <div className=\"text-left ml-3 flex flex-col items-start justify-start w-full\">\n <h4\n className=\"cursor-pointer font-bold tracking-wide line-clamp-2 text-black text-[14px] pr-[20px] notification-card-title\"\n data-testid=\"notification-title\"\n >\n {title}\n </h4>\n <p\n className={`font-semibold p-0 mt-[10px] leading-none tracking-wide line-clamp-1 text-[12px] notification-card-type-text ${textStyles}`}\n data-testid=\"notification-type\"\n >\n {typeText}{' '}\n {issueDate && (\n <span\n className=\"text-grayscale-600 normal-case font-normal text-[12px] notification-card-type-issue-date\"\n data-testid=\"notification-cred-issue-date\"\n >\n • {issueDate}\n </span>\n )}\n </p>\n\n <div className=\"flex items-center justify-between mt-3 w-full\">\n <button\n className={`notification-claim-btn flex items-center mr-[15px] w-[143px] justify-center flex-1 rounded-[24px] border-2 border-solid font-semibold py-2 px-3 tracking-wide ${claimButtonStyles}`}\n onClick={handleButtonClick}\n role=\"button\"\n name=\"notification-claim-button\"\n >\n {isAccepted && <Checkmark className=\"h-[24px] p-0 m-0\" />}{' '}\n {isLoading ? 'Loading...' : buttonText}\n </button>\n\n <button\n onClick={handleCancelClick}\n className={`rounded-[24px] flex items-center justify-center h-[42px] w-[42px] shadow-bottom bg-white font-semibold mr-2 p-[0px] tracking-wide ${viewButtonStyles}`}\n role=\"button\"\n name=\"notification-view-button\"\n >\n {!isArchived && (\n <img src={X ?? ''} alt=\"Cancel\" className=\"notification-card-x\" />\n )}\n {isArchived && (\n <img\n src={ArrowArcLeft ?? ''}\n alt=\"Cancel\"\n className=\"notification-card-x\"\n />\n )}\n </button>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default NotificationUserCard;\n"],"names":["useState","useEffect","UserNotificationTypeStyles","UserNotificationTypeEnum","React","Checkmark","X","ArrowArcLeft"],"mappings":"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"}
@@ -2,8 +2,8 @@
2
2
 
3
3
  var React = require('react');
4
4
  var core = require('@learncard/core');
5
- var VCDisplayCard = require('./VCDisplayCard-4443f928.js');
6
- var VCDisplayCard2 = require('./VCDisplayCard2-f7e5790b.js');
5
+ var VCDisplayCard = require('./VCDisplayCard-129d6f10.js');
6
+ var VCDisplayCard2 = require('./VCDisplayCard2-59f99f6d.js');
7
7
 
8
8
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
9
 
@@ -76,4 +76,4 @@ const VCCard = ({
76
76
  };
77
77
 
78
78
  exports.VCCard = VCCard;
79
- //# sourceMappingURL=VCCard-61320a9b.js.map
79
+ //# sourceMappingURL=VCCard-9e1cd423.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VCCard-61320a9b.js","sources":["../../src/components/VCCard/VCCard.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport { initLearnCard } from '@learncard/core';\nimport { VC, Profile, VerificationItem } from '@learncard/types';\n\nimport { VCDisplayCard } from '../VCDisplayCard';\nimport {\n VCDisplayCard2,\n MediaMetadata,\n VideoMetadata,\n CredentialIconType,\n} from '../VCDisplayCard2';\n\nexport type VCCardProps = {\n credential: VC;\n issueeOverride?: Profile;\n className?: string;\n version?: '1' | '2';\n\n /* Only used for version 2 */\n subjectImageComponent?: React.ReactNode;\n // convertTagsToSkills?: (tags: string[]) => { [skill: string]: string[] };\n handleXClick?: () => void;\n getFileMetadata?: (url: string) => MediaMetadata;\n getVideoMetadata?: (url: string) => VideoMetadata;\n onMediaAttachmentClick?: (url: string) => void;\n bottomRightIcon?: CredentialIconType;\n};\n\nexport const VCCard: React.FC<VCCardProps> = ({\n credential,\n issueeOverride,\n className = '',\n version = '1',\n subjectImageComponent,\n // convertTagsToSkills,\n handleXClick,\n getFileMetadata,\n getVideoMetadata,\n onMediaAttachmentClick,\n bottomRightIcon,\n}) => {\n const [loading, setLoading] = useState(true);\n const [vcVerification, setVCVerification] = useState<VerificationItem[]>([]);\n\n useEffect(() => {\n const verify = async () => {\n const wallet = await initLearnCard();\n const verification = await wallet.invoke.verifyCredential(credential, {}, true);\n setVCVerification(verification);\n setLoading(false);\n };\n\n verify();\n }, [credential]);\n\n if (version === '1') {\n return (\n <VCDisplayCard\n credential={credential}\n issueeOverride={issueeOverride}\n className={className}\n loading={loading}\n verification={vcVerification}\n />\n );\n }\n return (\n <VCDisplayCard2\n credential={credential}\n issueeOverride={issueeOverride}\n verificationInProgress={loading}\n verificationItems={vcVerification}\n subjectImageComponent={subjectImageComponent}\n // convertTagsToSkills={convertTagsToSkills}\n handleXClick={handleXClick}\n getFileMetadata={getFileMetadata}\n getVideoMetadata={getVideoMetadata}\n onMediaAttachmentClick={onMediaAttachmentClick}\n bottomRightIcon={bottomRightIcon}\n />\n );\n};\n\nexport default VCCard;\n"],"names":["useState","useEffect","initLearnCard","React","VCDisplayCard","VCDisplayCard2"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BO,MAAM,SAAgC,CAAC;AAAA,EAC1C,UAAA;AAAA,EACA,cAAA;AAAA,EACA,SAAY,GAAA,EAAA;AAAA,EACZ,OAAU,GAAA,GAAA;AAAA,EACV,qBAAA;AAAA,EAEA,YAAA;AAAA,EACA,eAAA;AAAA,EACA,gBAAA;AAAA,EACA,sBAAA;AAAA,EACA,eAAA;AACJ,CAAM,KAAA;AACF,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAIA,eAAS,IAAI,CAAA,CAAA;AAC3C,EAAA,MAAM,CAAC,cAAgB,EAAA,iBAAiB,CAAI,GAAAA,cAAA,CAA6B,EAAE,CAAA,CAAA;AAE3E,EAAAC,eAAA,CAAU,MAAM;AACZ,IAAA,MAAM,SAAS,MAAY,OAAA,CAAA,KAAA,CAAA,EAAA,IAAA,EAAA,aAAA;AACvB,MAAM,MAAA,MAAA,GAAS,MAAMC,kBAAc,EAAA,CAAA;AACnC,MAAM,MAAA,YAAA,GAAe,MAAM,MAAO,CAAA,MAAA,CAAO,iBAAiB,UAAY,EAAA,IAAI,IAAI,CAAA,CAAA;AAC9E,MAAA,iBAAA,CAAkB,YAAY,CAAA,CAAA;AAC9B,MAAA,UAAA,CAAW,KAAK,CAAA,CAAA;AAAA,KACpB,CAAA,CAAA;AAEA,IAAO,MAAA,EAAA,CAAA;AAAA,GACX,EAAG,CAAC,UAAU,CAAC,CAAA,CAAA;AAEf,EAAA,IAAI,YAAY,GAAK,EAAA;AACjB,IAAA,uBACKC,yBAAA,CAAA,aAAA,CAAAC,2BAAA,EAAA;AAAA,MACG,UAAA;AAAA,MACA,cAAA;AAAA,MACA,SAAA;AAAA,MACA,OAAA;AAAA,MACA,YAAc,EAAA,cAAA;AAAA,KAClB,CAAA,CAAA;AAAA,GAER;AACA,EAAA,uBACKD,yBAAA,CAAA,aAAA,CAAAE,6BAAA,EAAA;AAAA,IACG,UAAA;AAAA,IACA,cAAA;AAAA,IACA,sBAAwB,EAAA,OAAA;AAAA,IACxB,iBAAmB,EAAA,cAAA;AAAA,IACnB,qBAAA;AAAA,IAEA,YAAA;AAAA,IACA,eAAA;AAAA,IACA,gBAAA;AAAA,IACA,sBAAA;AAAA,IACA,eAAA;AAAA,GACJ,CAAA,CAAA;AAER;;;;"}
1
+ {"version":3,"file":"VCCard-9e1cd423.js","sources":["../../src/components/VCCard/VCCard.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport { initLearnCard } from '@learncard/core';\nimport { VC, Profile, VerificationItem } from '@learncard/types';\n\nimport { VCDisplayCard } from '../VCDisplayCard';\nimport {\n VCDisplayCard2,\n MediaMetadata,\n VideoMetadata,\n CredentialIconType,\n} from '../VCDisplayCard2';\n\nexport type VCCardProps = {\n credential: VC;\n issueeOverride?: Profile;\n className?: string;\n version?: '1' | '2';\n\n /* Only used for version 2 */\n subjectImageComponent?: React.ReactNode;\n // convertTagsToSkills?: (tags: string[]) => { [skill: string]: string[] };\n handleXClick?: () => void;\n getFileMetadata?: (url: string) => MediaMetadata;\n getVideoMetadata?: (url: string) => VideoMetadata;\n onMediaAttachmentClick?: (url: string) => void;\n bottomRightIcon?: CredentialIconType;\n};\n\nexport const VCCard: React.FC<VCCardProps> = ({\n credential,\n issueeOverride,\n className = '',\n version = '1',\n subjectImageComponent,\n // convertTagsToSkills,\n handleXClick,\n getFileMetadata,\n getVideoMetadata,\n onMediaAttachmentClick,\n bottomRightIcon,\n}) => {\n const [loading, setLoading] = useState(true);\n const [vcVerification, setVCVerification] = useState<VerificationItem[]>([]);\n\n useEffect(() => {\n const verify = async () => {\n const wallet = await initLearnCard();\n const verification = await wallet.invoke.verifyCredential(credential, {}, true);\n setVCVerification(verification);\n setLoading(false);\n };\n\n verify();\n }, [credential]);\n\n if (version === '1') {\n return (\n <VCDisplayCard\n credential={credential}\n issueeOverride={issueeOverride}\n className={className}\n loading={loading}\n verification={vcVerification}\n />\n );\n }\n return (\n <VCDisplayCard2\n credential={credential}\n issueeOverride={issueeOverride}\n verificationInProgress={loading}\n verificationItems={vcVerification}\n subjectImageComponent={subjectImageComponent}\n // convertTagsToSkills={convertTagsToSkills}\n handleXClick={handleXClick}\n getFileMetadata={getFileMetadata}\n getVideoMetadata={getVideoMetadata}\n onMediaAttachmentClick={onMediaAttachmentClick}\n bottomRightIcon={bottomRightIcon}\n />\n );\n};\n\nexport default VCCard;\n"],"names":["useState","useEffect","initLearnCard","React","VCDisplayCard","VCDisplayCard2"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BO,MAAM,SAAgC,CAAC;AAAA,EAC1C,UAAA;AAAA,EACA,cAAA;AAAA,EACA,SAAY,GAAA,EAAA;AAAA,EACZ,OAAU,GAAA,GAAA;AAAA,EACV,qBAAA;AAAA,EAEA,YAAA;AAAA,EACA,eAAA;AAAA,EACA,gBAAA;AAAA,EACA,sBAAA;AAAA,EACA,eAAA;AACJ,CAAM,KAAA;AACF,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAIA,eAAS,IAAI,CAAA,CAAA;AAC3C,EAAA,MAAM,CAAC,cAAgB,EAAA,iBAAiB,CAAI,GAAAA,cAAA,CAA6B,EAAE,CAAA,CAAA;AAE3E,EAAAC,eAAA,CAAU,MAAM;AACZ,IAAA,MAAM,SAAS,MAAY,OAAA,CAAA,KAAA,CAAA,EAAA,IAAA,EAAA,aAAA;AACvB,MAAM,MAAA,MAAA,GAAS,MAAMC,kBAAc,EAAA,CAAA;AACnC,MAAM,MAAA,YAAA,GAAe,MAAM,MAAO,CAAA,MAAA,CAAO,iBAAiB,UAAY,EAAA,IAAI,IAAI,CAAA,CAAA;AAC9E,MAAA,iBAAA,CAAkB,YAAY,CAAA,CAAA;AAC9B,MAAA,UAAA,CAAW,KAAK,CAAA,CAAA;AAAA,KACpB,CAAA,CAAA;AAEA,IAAO,MAAA,EAAA,CAAA;AAAA,GACX,EAAG,CAAC,UAAU,CAAC,CAAA,CAAA;AAEf,EAAA,IAAI,YAAY,GAAK,EAAA;AACjB,IAAA,uBACKC,yBAAA,CAAA,aAAA,CAAAC,2BAAA,EAAA;AAAA,MACG,UAAA;AAAA,MACA,cAAA;AAAA,MACA,SAAA;AAAA,MACA,OAAA;AAAA,MACA,YAAc,EAAA,cAAA;AAAA,KAClB,CAAA,CAAA;AAAA,GAER;AACA,EAAA,uBACKD,yBAAA,CAAA,aAAA,CAAAE,6BAAA,EAAA;AAAA,IACG,UAAA;AAAA,IACA,cAAA;AAAA,IACA,sBAAwB,EAAA,OAAA;AAAA,IACxB,iBAAmB,EAAA,cAAA;AAAA,IACnB,qBAAA;AAAA,IAEA,YAAA;AAAA,IACA,eAAA;AAAA,IACA,gBAAA;AAAA,IACA,sBAAA;AAAA,IACA,eAAA;AAAA,GACJ,CAAA,CAAA;AAER;;;;"}
@@ -2,9 +2,9 @@
2
2
 
3
3
  var React = require('react');
4
4
  var VCVerificationCheck = require('./VCVerificationCheck-08011d1a.js');
5
- var VCVerificationPill = require('./VCVerificationPill-a0a7fedc.js');
5
+ var VCVerificationPill = require('./VCVerificationPill-a6f26ac9.js');
6
6
  var FlipArrowRight = require('./ArrowArcRight.svg');
7
- var credential_helpers = require('./credential.helpers-2ff85fe0.js');
7
+ var credential_helpers = require('./credential.helpers-2ceeae3c.js');
8
8
 
9
9
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
10
 
@@ -84,4 +84,4 @@ const VCDisplayBackFace = ({
84
84
  };
85
85
 
86
86
  exports.VCDisplayBackFace = VCDisplayBackFace;
87
- //# sourceMappingURL=VCDisplayBackFace-2429f8b5.js.map
87
+ //# sourceMappingURL=VCDisplayBackFace-89b40163.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VCDisplayBackFace-2429f8b5.js","sources":["../../src/components/VCDisplayBackFace/VCDisplayBackFace.tsx"],"sourcesContent":["import React from 'react';\nimport { VCDisplayCardProps } from '../../types';\nimport { VCVerificationCheckWithText } from '../VCVerificationCheck/VCVerificationCheck';\nimport VCVerificationPill from '../VCVerificationPill/VCVerificationPill';\nimport FlipArrowRight from '../../assets/images/ArrowArcRight.svg';\nimport { getNameFromProfile } from '../../helpers/credential.helpers';\n\nexport const VCDisplayBackFace: React.FC<VCDisplayCardProps> = ({\n issuer,\n credentialSubject,\n className = '',\n loading,\n verification = [],\n handleClick,\n overrideDetailsComponent,\n}) => {\n const descriptionText = credentialSubject?.achievement?.description;\n const criteriaText = credentialSubject?.achievement?.criteria?.narrative;\n const issuerUrl = typeof issuer === 'object' ? issuer.url : '';\n const issuerName = getNameFromProfile(issuer ?? '');\n const defaultDetails = (\n <>\n <div className=\"width-full\">\n <h6 className=\"line-clamp-1 text-grayscale-900 font-bold uppercase text-xs tracking-wider subpixel-antialiased\">\n Description\n </h6>\n <p className=\"line-clamp-3 subpixel-antialiased text-grayscale-600 text-[14px] lc-line-clamp\">\n {descriptionText}\n </p>\n </div>\n\n <div className=\"width-full mt-[10px]\">\n <h6 className=\"line-clamp-1 text-grayscale-900 font-bold uppercase text-xs tracking-wider subpixel-antialiased\">\n Criteria\n </h6>\n <p className=\"line-clamp-3 subpixel-antialiased text-grayscale-600 text-[14px] lc-line-clamp\">\n {criteriaText}\n </p>\n </div>\n\n <div className=\"width-full mt-[10px] line-clamp-1 overflow-hidden vc-issuer-name-info\">\n <h6 className=\"line-clamp-1 text-grayscale-900 font-bold uppercase text-xs tracking-wider subpixel-antialiased\">\n Issuer\n </h6>\n <p className=\"max-w-[344px] line-clamp-1 subpixel-antialiased text-grayscale-600 text-[14px] block overflow-ellipsis break-all\">\n {issuerName}\n </p>\n </div>\n\n {issuerUrl && (\n <p className=\"text-indigo-500 font-bold text-xs width-full text-center mt-8\">\n {issuerUrl}\n </p>\n )}\n </>\n );\n\n const renderDetails = overrideDetailsComponent ? overrideDetailsComponent : defaultDetails;\n\n return (\n <div\n className={`z-[9] vc-display-main-card-back flex overflow-hidden flex-col items-center justify-between relative max-w-[400px] h-[100%] max-h-[1100px] min-h-[600px] p-7 rounded-3xl shadow-3xl bg-emerald-700 vc-display-card-full-container ${className}`}\n >\n <section className=\"flex max-h-[150px] items-end bg-white rounded-bl-[50%] rounded-br-[50%] absolute top-0 w-[110%] h-[55%] min-h-[400px]\"></section>\n <section className=\"flex flex-col items-center justify-center w-full z-10 text-left credential-details-container max-w-[100%] relative\">\n <section className=\"flex flex-row items-start justify-start w-full line-clamp-2\">\n <h3\n className=\"text-2xl line-clamp-2 tracking-wide leading-snug text-left text-emerald-700\"\n data-testid=\"vc-credential-details-title tracking-wide subpixel-antialiased\"\n >\n Credential Details\n </h3>\n </section>\n\n <section className=\"flex flex-col mt-2 w-full my-2 min-h-[200px] credential-details-info\">\n {renderDetails}\n </section>\n\n <div className=\"w-full mt-2\"></div>\n\n <button\n onClick={handleClick}\n className=\"vc-flip-btn bg-white my-3 border-2 text-indigo-500 font-semibold py-2 px-4 shadow-3xl rounded-full\"\n >\n <span className=\"flex justify-center\">\n <img\n className=\"h-8 w-8 my-0 mx-4 scale-x-[-1]\"\n src={FlipArrowRight ?? ''}\n alt=\"Flip Card\"\n />\n </span>\n </button>\n\n <section className=\"flex-col items-center justify-center checklist-container justify-center w-[100%] width-full mt-[20px]\">\n <VCVerificationCheckWithText loading={loading} />\n <section>\n {verification.map(item => (\n <VCVerificationPill\n key={item.check}\n status={item.status}\n message={item.message}\n details={item.details}\n />\n ))}\n </section>\n </section>\n </section>\n </div>\n );\n};\n\nexport default VCDisplayBackFace;\n"],"names":["getNameFromProfile","React","FlipArrowRight","VCVerificationCheckWithText","VCVerificationPill"],"mappings":"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"}
1
+ {"version":3,"file":"VCDisplayBackFace-89b40163.js","sources":["../../src/components/VCDisplayBackFace/VCDisplayBackFace.tsx"],"sourcesContent":["import React from 'react';\nimport { VCDisplayCardProps } from '../../types';\nimport { VCVerificationCheckWithText } from '../VCVerificationCheck/VCVerificationCheck';\nimport VCVerificationPill from '../VCVerificationPill/VCVerificationPill';\nimport FlipArrowRight from '../../assets/images/ArrowArcRight.svg';\nimport { getNameFromProfile } from '../../helpers/credential.helpers';\n\nexport const VCDisplayBackFace: React.FC<VCDisplayCardProps> = ({\n issuer,\n credentialSubject,\n className = '',\n loading,\n verification = [],\n handleClick,\n overrideDetailsComponent,\n}) => {\n const descriptionText = credentialSubject?.achievement?.description;\n const criteriaText = credentialSubject?.achievement?.criteria?.narrative;\n const issuerUrl = typeof issuer === 'object' ? issuer.url : '';\n const issuerName = getNameFromProfile(issuer ?? '');\n const defaultDetails = (\n <>\n <div className=\"width-full\">\n <h6 className=\"line-clamp-1 text-grayscale-900 font-bold uppercase text-xs tracking-wider subpixel-antialiased\">\n Description\n </h6>\n <p className=\"line-clamp-3 subpixel-antialiased text-grayscale-600 text-[14px] lc-line-clamp\">\n {descriptionText}\n </p>\n </div>\n\n <div className=\"width-full mt-[10px]\">\n <h6 className=\"line-clamp-1 text-grayscale-900 font-bold uppercase text-xs tracking-wider subpixel-antialiased\">\n Criteria\n </h6>\n <p className=\"line-clamp-3 subpixel-antialiased text-grayscale-600 text-[14px] lc-line-clamp\">\n {criteriaText}\n </p>\n </div>\n\n <div className=\"width-full mt-[10px] line-clamp-1 overflow-hidden vc-issuer-name-info\">\n <h6 className=\"line-clamp-1 text-grayscale-900 font-bold uppercase text-xs tracking-wider subpixel-antialiased\">\n Issuer\n </h6>\n <p className=\"max-w-[344px] line-clamp-1 subpixel-antialiased text-grayscale-600 text-[14px] block overflow-ellipsis break-all\">\n {issuerName}\n </p>\n </div>\n\n {issuerUrl && (\n <p className=\"text-indigo-500 font-bold text-xs width-full text-center mt-8\">\n {issuerUrl}\n </p>\n )}\n </>\n );\n\n const renderDetails = overrideDetailsComponent ? overrideDetailsComponent : defaultDetails;\n\n return (\n <div\n className={`z-[9] vc-display-main-card-back flex overflow-hidden flex-col items-center justify-between relative max-w-[400px] h-[100%] max-h-[1100px] min-h-[600px] p-7 rounded-3xl shadow-3xl bg-emerald-700 vc-display-card-full-container ${className}`}\n >\n <section className=\"flex max-h-[150px] items-end bg-white rounded-bl-[50%] rounded-br-[50%] absolute top-0 w-[110%] h-[55%] min-h-[400px]\"></section>\n <section className=\"flex flex-col items-center justify-center w-full z-10 text-left credential-details-container max-w-[100%] relative\">\n <section className=\"flex flex-row items-start justify-start w-full line-clamp-2\">\n <h3\n className=\"text-2xl line-clamp-2 tracking-wide leading-snug text-left text-emerald-700\"\n data-testid=\"vc-credential-details-title tracking-wide subpixel-antialiased\"\n >\n Credential Details\n </h3>\n </section>\n\n <section className=\"flex flex-col mt-2 w-full my-2 min-h-[200px] credential-details-info\">\n {renderDetails}\n </section>\n\n <div className=\"w-full mt-2\"></div>\n\n <button\n onClick={handleClick}\n className=\"vc-flip-btn bg-white my-3 border-2 text-indigo-500 font-semibold py-2 px-4 shadow-3xl rounded-full\"\n >\n <span className=\"flex justify-center\">\n <img\n className=\"h-8 w-8 my-0 mx-4 scale-x-[-1]\"\n src={FlipArrowRight ?? ''}\n alt=\"Flip Card\"\n />\n </span>\n </button>\n\n <section className=\"flex-col items-center justify-center checklist-container justify-center w-[100%] width-full mt-[20px]\">\n <VCVerificationCheckWithText loading={loading} />\n <section>\n {verification.map(item => (\n <VCVerificationPill\n key={item.check}\n status={item.status}\n message={item.message}\n details={item.details}\n />\n ))}\n </section>\n </section>\n </section>\n </div>\n );\n};\n\nexport default VCDisplayBackFace;\n"],"names":["getNameFromProfile","React","FlipArrowRight","VCVerificationCheckWithText","VCVerificationPill"],"mappings":";;;;;;;;;;;;;AAOO,MAAM,oBAAkD,CAAC;AAAA,EAC5D,MAAA;AAAA,EACA,iBAAA;AAAA,EACA,SAAY,GAAA,EAAA;AAAA,EACZ,OAAA;AAAA,EACA,eAAe,EAAC;AAAA,EAChB,WAAA;AAAA,EACA,wBAAA;AACJ,CAAM,KAAA;AAfN,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AAgBI,EAAM,MAAA,eAAA,GAAA,CAAkB,EAAmB,GAAA,iBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,iBAAA,CAAA,WAAA,KAAnB,IAAgC,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,WAAA,CAAA;AACxD,EAAA,MAAM,YAAe,GAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,iBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,iBAAA,CAAmB,WAAnB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAgC,aAAhC,IAA0C,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,SAAA,CAAA;AAC/D,EAAA,MAAM,SAAY,GAAA,OAAO,MAAW,KAAA,QAAA,GAAW,OAAO,GAAM,GAAA,EAAA,CAAA;AAC5D,EAAM,MAAA,UAAA,GAAaA,qCAAmB,CAAA,MAAA,IAAA,IAAA,GAAA,MAAA,GAAU,EAAE,CAAA,CAAA;AAClD,EAAM,MAAA,cAAA,qHAEGC,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,YAAA;AAAA,GAAA,kBACVA,yBAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAA,IAAG,SAAU,EAAA,iGAAA;AAAA,GAAkG,EAAA,aAEhH,mBACCA,yBAAA,CAAA,aAAA,CAAA,GAAA,EAAA;AAAA,IAAE,SAAU,EAAA,gFAAA;AAAA,GACR,EAAA,eACL,CACJ,CAAA,kBAECA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,sBAAA;AAAA,GAAA,kBACVA,yBAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAA,IAAG,SAAU,EAAA,kGAAA;AAAA,GAAmG,EAAA,UAEjH,mBACCA,yBAAA,CAAA,aAAA,CAAA,GAAA,EAAA;AAAA,IAAE,SAAU,EAAA,gFAAA;AAAA,GACR,EAAA,YACL,CACJ,CAAA,kBAECA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,uEAAA;AAAA,GAAA,kBACVA,yBAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAA,IAAG,SAAU,EAAA,iGAAA;AAAA,GAAkG,EAAA,QAEhH,mBACCA,yBAAA,CAAA,aAAA,CAAA,GAAA,EAAA;AAAA,IAAE,SAAU,EAAA,kHAAA;AAAA,GAAA,EACR,UACL,CACJ,CAEC,EAAA,SAAA,oBACIA,yBAAA,CAAA,aAAA,CAAA,GAAA,EAAA;AAAA,IAAE,SAAU,EAAA,+DAAA;AAAA,GAAA,EACR,SACL,CAER,CAAA,CAAA;AAGJ,EAAM,MAAA,aAAA,GAAgB,2BAA2B,wBAA2B,GAAA,cAAA,CAAA;AAE5E,EAAA,uBACKA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IACG,WAAW,CAAoO,iOAAA,EAAA,SAAA,CAAA,CAAA;AAAA,GAAA,kBAE9OA,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,uHAAA;AAAA,GAAwH,mBAC1IA,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,oHAAA;AAAA,GAAA,kBACdA,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,6DAAA;AAAA,GAAA,kBACdA,yBAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAA,IACG,SAAU,EAAA,6EAAA;AAAA,IACV,aAAY,EAAA,gEAAA;AAAA,GACf,EAAA,oBAED,CACJ,CAAA,kBAECA,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,sEAAA;AAAA,GACd,EAAA,aACL,mBAECA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,aAAA;AAAA,GAAc,mBAE5BA,yBAAA,CAAA,aAAA,CAAA,QAAA,EAAA;AAAA,IACG,OAAS,EAAA,WAAA;AAAA,IACT,SAAU,EAAA,oGAAA;AAAA,GAAA,kBAETA,yBAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAA,IAAK,SAAU,EAAA,qBAAA;AAAA,GAAA,kBACXA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IACG,SAAU,EAAA,gCAAA;AAAA,IACV,MAAK,EAAkB,GAAAC,kCAAA,KAAA,IAAA,GAAA,EAAA,GAAA,EAAA;AAAA,IACvB,GAAI,EAAA,WAAA;AAAA,GACR,CACJ,CACJ,CAAA,kBAECD,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,uGAAA;AAAA,GAAA,kBACdA,yBAAA,CAAA,aAAA,CAAAE,+CAAA,EAAA;AAAA,IAA4B,OAAA;AAAA,GAAkB,mBAC9CF,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA,IAAA,EACI,YAAa,CAAA,GAAA,CAAI,0BACbA,yBAAA,CAAA,aAAA,CAAAG,qCAAA,EAAA;AAAA,IACG,KAAK,IAAK,CAAA,KAAA;AAAA,IACV,QAAQ,IAAK,CAAA,MAAA;AAAA,IACb,SAAS,IAAK,CAAA,OAAA;AAAA,IACd,SAAS,IAAK,CAAA,OAAA;AAAA,GAClB,CACH,CACL,CACJ,CACJ,CACJ,CAAA,CAAA;AAER;;;;"}
@@ -5,8 +5,8 @@ var FlippyCard = require('./FlippyCard-209549c5.js');
5
5
  var FatArrow = require('./icon.green.fat-arrow.png');
6
6
  var DefaultFace = require('./default-face.jpeg');
7
7
  var VCVerificationCheck = require('./VCVerificationCheck-08011d1a.js');
8
- var credential_helpers = require('./credential.helpers-2ff85fe0.js');
9
- var VCDisplayBackFace = require('./VCDisplayBackFace-2429f8b5.js');
8
+ var credential_helpers = require('./credential.helpers-2ceeae3c.js');
9
+ var VCDisplayBackFace = require('./VCDisplayBackFace-89b40163.js');
10
10
 
11
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
12
 
@@ -188,4 +188,4 @@ const VCDisplayCard = ({
188
188
  };
189
189
 
190
190
  exports.VCDisplayCard = VCDisplayCard;
191
- //# sourceMappingURL=VCDisplayCard-4443f928.js.map
191
+ //# sourceMappingURL=VCDisplayCard-129d6f10.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VCDisplayCard-4443f928.js","sources":["../../src/components/VCDisplayFrontFace/VCDisplayFrontFace.tsx","../../src/components/VCDisplayCard/VCDisplayCard.tsx"],"sourcesContent":["import React from 'react';\nimport { VCDisplayCardProps } from '../../types';\nimport FatArrow from '../../assets/images/icon.green.fat-arrow.png';\nimport FlipArrowRight from '../../assets/images/ArrowArcRight.svg';\nimport DefaultFace from '../../assets/images/default-face.jpeg';\nimport { VCVerificationCheckWithText } from '../VCVerificationCheck/VCVerificationCheck';\nimport { getImageFromProfile, getNameFromProfile } from '../../helpers/credential.helpers';\n\nconst VCDisplayFrontFace: React.FC<VCDisplayCardProps> = ({\n title,\n createdAt,\n issuer,\n issuee,\n subjectImageComponent,\n issuerImageComponent,\n hideProfileBubbles = false,\n credentialSubject,\n className = '',\n loading,\n handleClick,\n overrideCardImageComponent,\n overrideCardTitle,\n customHeaderComponent,\n}) => {\n const credentialAchievementImage =\n credentialSubject?.achievement?.image?.id || credentialSubject?.achievement?.image;\n const issuerName = getNameFromProfile(issuer ?? '');\n const issueeName = getNameFromProfile(issuee ?? '');\n const issuerImage = getImageFromProfile(issuer ?? '');\n const issueeImage = getImageFromProfile(issuee ?? '');\n\n const issuerNameAbr = issuerName?.slice(0, 1) ?? '';\n\n let issueeImageEl: React.ReactNode | null = null;\n const issuerImgExists = issuerImage && issuerImage !== '';\n const issueeImgExists = issueeImage && issueeImage !== '';\n if (issueeImgExists) {\n issueeImageEl = (\n <div className=\"flex flex-row items-center justify-center h-full w-full rounded-full border-solid border-4 border-white overflow-hidden bg-white\">\n <img\n className=\"h-full w-full object-cover\"\n src={issueeImage || DefaultFace}\n alt=\"Issuee image\"\n />\n </div>\n );\n } else if (!issueeImgExists && subjectImageComponent) {\n issueeImageEl = subjectImageComponent;\n }\n\n let issuerImageEl: React.ReactNode | null = null;\n\n if (issuerImgExists) {\n issuerImageEl = (\n <img className=\"w-4/6 h-4/6 object-cover\" src={issuerImage} alt=\"Issuer image\" />\n );\n } else {\n issuerImageEl = (\n <div className=\"flex flex-row items-center justify-center h-full w-full overflow-hidden bg-emerald-700 text-white font-medium text-3xl\">\n {issuerNameAbr}\n </div>\n );\n }\n\n if (issuerImageComponent) {\n issuerImageEl = issuerImageComponent;\n }\n\n const credImg = credentialAchievementImage ? (\n <img\n className=\"h-full w-full object-cover\"\n src={credentialAchievementImage ?? ''}\n alt=\"Credential Achievement Image\"\n />\n ) : (\n <></>\n );\n\n const renderCardImg = overrideCardImageComponent ? overrideCardImageComponent : credImg;\n const cardTitle = overrideCardTitle ? overrideCardTitle : title;\n\n return (\n <div\n className={`z-[9] vc-display-main-card-front flex overflow-hidden flex-col items-center justify-between relative max-w-[400px] h-[100%] min-h-[600px] p-7 rounded-3xl shadow-3xl bg-emerald-700 vc-display-card-full-container ${className}`}\n >\n <section className=\"bg-white rounded-bl-[50%] rounded-br-[50%] absolute top-0 w-[110%] h-[77%]\"></section>\n <section className=\"flex flex-col items-center justify-center z-10 text-center credential-thumb-img\">\n <section className=\"max-w-[100px] max-h-[100px]\">{renderCardImg}</section>\n\n <section className=\"flex flex-row w-full line-clamp-2\">\n <div className=\"flex flex-row w-full line-clamp-2 py-4 vc-flippy-card-title-front \">\n <h3\n className=\"vc-thumbnail-title w-full text-2xl line-clamp-2 tracking-wide leading-snug text-center vc-display-title text-gray-900 font-medium\"\n data-testid=\"vc-thumbnail-title\"\n >\n {cardTitle ?? ''}\n </h3>\n </div>\n\n {customHeaderComponent && customHeaderComponent}\n </section>\n\n <section className=\"flex flex-row items-center justify-center mt-2 w-full my-2 vc-card-issuer-thumbs\">\n {!hideProfileBubbles && (\n <>\n <div className=\"flex items-center justify-center h-16 w-16 shadow-3xl rounded-full overflow-hidden bg-white\">\n {issuerImageEl}\n </div>\n <img\n className=\"h-8 w-8 my-0 mx-4\"\n src={FatArrow ?? ''}\n alt=\"fat arrow icon\"\n />\n <div className=\"flex items-center justify-center h-16 w-16 shadow-3xl rounded-full overflow-hidden bg-white\">\n {issueeImageEl}\n </div>\n </>\n )}\n </section>\n\n <div className=\"w-full mt-2 vc-card-issued-to-info\">\n <p\n className=\"text-sm font-light text-center line-clamp-2 vc-display-issue-details text-gray-900\"\n data-testid=\"vc-thumbnail-createdAt\"\n >\n Issued to <span className=\"font-bold text-gray-900\">{issueeName}</span> on{' '}\n {createdAt ?? ''} by{' '}\n <span className=\"font-bold text-gray-900\"> {issuerName}</span>\n </p>\n </div>\n\n <button\n onClick={handleClick}\n className=\"cursor-alias bg-white my-3 border-0 text-indigo-500 font-semibold py-2 px-4 sl\"\n >\n <span className=\"flex justify-center\">\n <p className=\"flex items-center\">View Details</p>\n </span>\n </button>\n </section>\n\n <div className=\"flex items-center justify-center w-full\">\n <VCVerificationCheckWithText loading={loading} />\n </div>\n </div>\n );\n};\n\nexport default VCDisplayFrontFace;\n","import React, { useState } from 'react';\nimport { AchievementCredential, VC, Profile, VerificationItem } from '@learncard/types';\n\nimport FlippyCard from '../FlippyCard/FlippyCard';\nimport VCDisplayFrontFace from '../VCDisplayFrontFace/VCDisplayFrontFace';\nimport VCDisplayBackFace from '../VCDisplayBackFace/VCDisplayBackFace';\n\nimport { getInfoFromCredential } from '../../helpers/credential.helpers';\n\nconst FRONT_FACE = 'front';\nconst BACK_FACE = 'back';\n\nexport type VCDisplayCardPropsReal = {\n credential: VC | AchievementCredential;\n issueeOverride?: Profile;\n issuerOverride?: Profile;\n className?: string;\n hideProfileBubbles?: boolean;\n loading?: boolean;\n verification?: VerificationItem[];\n subjectImageComponent?: React.ReactNode;\n issuerImageComponent?: React.ReactNode;\n overrideDetailsComponent?: React.ReactNode;\n overrideCardTitle?: string;\n overrideCardImageComponent?: React.ReactNode;\n customHeaderComponent?: React.ReactNode;\n};\n\nexport const VCDisplayCard: React.FC<VCDisplayCardPropsReal> = ({\n credential,\n issueeOverride,\n issuerOverride,\n className = '',\n loading = false,\n verification = [],\n hideProfileBubbles = false,\n subjectImageComponent,\n issuerImageComponent,\n overrideDetailsComponent,\n overrideCardTitle,\n overrideCardImageComponent,\n customHeaderComponent,\n}) => {\n const [flipState, setFlipState] = useState(FRONT_FACE);\n const {\n title,\n createdAt,\n issuer: _issuer,\n issuee: _issuee,\n credentialSubject,\n } = getInfoFromCredential(credential);\n const issuee = issueeOverride || _issuee;\n const issuer = issuerOverride || _issuer;\n\n const handleFlip = () => {\n if (flipState === FRONT_FACE) {\n setFlipState(BACK_FACE);\n }\n if (flipState === BACK_FACE) {\n setFlipState(FRONT_FACE);\n }\n };\n\n return (\n <FlippyCard flipState={flipState}>\n <VCDisplayFrontFace\n title={title}\n credentialSubject={credentialSubject}\n customHeaderComponent={customHeaderComponent}\n issuer={issuer}\n issuee={issuee}\n subjectImageComponent={subjectImageComponent}\n issuerImageComponent={issuerImageComponent}\n overrideCardImageComponent={overrideCardImageComponent}\n overrideCardTitle={overrideCardTitle}\n hideProfileBubbles={hideProfileBubbles}\n createdAt={createdAt}\n className={className}\n loading={loading}\n handleClick={handleFlip}\n />\n <VCDisplayBackFace\n title={title}\n credentialSubject={credentialSubject}\n overrideDetailsComponent={overrideDetailsComponent}\n issuer={issuer}\n issuee={issuee}\n createdAt={createdAt}\n className={className}\n loading={loading}\n verification={verification}\n handleClick={handleFlip}\n />\n </FlippyCard>\n );\n};\n\nexport default VCDisplayCard;\n"],"names":["getNameFromProfile","getImageFromProfile","React","DefaultFace","FatArrow","VCVerificationCheckWithText","useState","getInfoFromCredential","FlippyCard","VCDisplayBackFace"],"mappings":";;;;;;;;;;;;;;;;AAQA,MAAM,qBAAmD,CAAC;AAAA,EACtD,KAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,qBAAA;AAAA,EACA,oBAAA;AAAA,EACA,kBAAqB,GAAA,KAAA;AAAA,EACrB,iBAAA;AAAA,EACA,SAAY,GAAA,EAAA;AAAA,EACZ,OAAA;AAAA,EACA,WAAA;AAAA,EACA,0BAAA;AAAA,EACA,iBAAA;AAAA,EACA,qBAAA;AACJ,CAAM,KAAA;AAvBN,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AAwBI,EAAM,MAAA,0BAAA,GAAA,CAAA,CACF,kEAAmB,WAAnB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAgC,UAAhC,IAAuC,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,EAAA,MAAA,CAAM,EAAmB,GAAA,iBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,iBAAA,CAAA,WAAA,KAAnB,IAAgC,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,CAAA,CAAA;AACjF,EAAM,MAAA,UAAA,GAAaA,qCAAmB,CAAA,MAAA,IAAA,IAAA,GAAA,MAAA,GAAU,EAAE,CAAA,CAAA;AAClD,EAAM,MAAA,UAAA,GAAaA,qCAAmB,CAAA,MAAA,IAAA,IAAA,GAAA,MAAA,GAAU,EAAE,CAAA,CAAA;AAClD,EAAM,MAAA,WAAA,GAAcC,sCAAoB,CAAA,MAAA,IAAA,IAAA,GAAA,MAAA,GAAU,EAAE,CAAA,CAAA;AACpD,EAAM,MAAA,WAAA,GAAcA,sCAAoB,CAAA,MAAA,IAAA,IAAA,GAAA,MAAA,GAAU,EAAE,CAAA,CAAA;AAEpD,EAAA,MAAM,aAAgB,GAAA,CAAA,EAAA,GAAA,UAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,UAAA,CAAY,KAAM,CAAA,CAAA,EAAG,OAArB,IAA2B,GAAA,EAAA,GAAA,EAAA,CAAA;AAEjD,EAAA,IAAI,aAAwC,GAAA,IAAA,CAAA;AAC5C,EAAM,MAAA,eAAA,GAAkB,eAAe,WAAgB,KAAA,EAAA,CAAA;AACvD,EAAM,MAAA,eAAA,GAAkB,eAAe,WAAgB,KAAA,EAAA,CAAA;AACvD,EAAA,IAAI,eAAiB,EAAA;AACjB,IAAA,aAAA,mBACKC,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,MAAI,SAAU,EAAA,kIAAA;AAAA,KAAA,kBACVA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,MACG,SAAU,EAAA,4BAAA;AAAA,MACV,KAAK,WAAe,IAAAC,+BAAA;AAAA,MACpB,GAAI,EAAA,cAAA;AAAA,KACR,CACJ,CAAA,CAAA;AAAA,GAER,MAAA,IAAW,CAAC,eAAA,IAAmB,qBAAuB,EAAA;AAClD,IAAgB,aAAA,GAAA,qBAAA,CAAA;AAAA,GACpB;AAEA,EAAA,IAAI,aAAwC,GAAA,IAAA,CAAA;AAE5C,EAAA,IAAI,eAAiB,EAAA;AACjB,IAAA,aAAA,mBACKD,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,MAAI,SAAU,EAAA,0BAAA;AAAA,MAA2B,GAAK,EAAA,WAAA;AAAA,MAAa,GAAI,EAAA,cAAA;AAAA,KAAe,CAAA,CAAA;AAAA,GAEhF,MAAA;AACH,IAAA,aAAA,mBACKA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,MAAI,SAAU,EAAA,wHAAA;AAAA,KAAA,EACV,aACL,CAAA,CAAA;AAAA,GAER;AAEA,EAAA,IAAI,oBAAsB,EAAA;AACtB,IAAgB,aAAA,GAAA,oBAAA,CAAA;AAAA,GACpB;AAEA,EAAM,MAAA,OAAA,GAAU,6CACXA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IACG,SAAU,EAAA,4BAAA;AAAA,IACV,KAAK,0BAA8B,IAAA,IAAA,GAAA,0BAAA,GAAA,EAAA;AAAA,IACnC,GAAI,EAAA,8BAAA;AAAA,GACR,oBAEEA,yBAAA,CAAA,aAAA,CAAAA,yBAAA,CAAA,QAAA,EAAA,IAAA,CAAA,CAAA;AAGN,EAAM,MAAA,aAAA,GAAgB,6BAA6B,0BAA6B,GAAA,OAAA,CAAA;AAChF,EAAM,MAAA,SAAA,GAAY,oBAAoB,iBAAoB,GAAA,KAAA,CAAA;AAE1D,EAAA,uBACKA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IACG,WAAW,CAAsN,mNAAA,EAAA,SAAA,CAAA,CAAA;AAAA,GAAA,kBAEhOA,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,4EAAA;AAAA,GAA6E,mBAC/FA,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,iFAAA;AAAA,GAAA,kBACdA,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,6BAAA;AAAA,GAA+B,EAAA,aAAc,mBAE/DA,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,oCAAA;AAAA,GAAA,kBACdA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,oEAAA;AAAA,GAAA,kBACVA,yBAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAA,IACG,SAAU,EAAA,mIAAA;AAAA,IACV,aAAY,EAAA,oBAAA;AAAA,GAAA,EAEX,gCAAa,EAClB,CACJ,GAEC,qBAAyB,IAAA,qBAC9B,mBAECA,yBAAA,CAAA,aAAA,CAAA,SAAA,EAAA;AAAA,IAAQ,SAAU,EAAA,kFAAA;AAAA,GACd,EAAA,CAAC,kBACE,oBAAAA,yBAAA,CAAA,aAAA,CAAAA,yBAAA,CAAA,QAAA,EAAA,IAAA,kBACKA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,6FAAA;AAAA,GACV,EAAA,aACL,mBACCA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IACG,SAAU,EAAA,mBAAA;AAAA,IACV,MAAK,EAAY,GAAAE,4BAAA,KAAA,IAAA,GAAA,EAAA,GAAA,EAAA;AAAA,IACjB,GAAI,EAAA,gBAAA;AAAA,GACR,mBACCF,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,6FAAA;AAAA,GAAA,EACV,aACL,CACJ,CAER,CAAA,kBAECA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,oCAAA;AAAA,GAAA,kBACVA,yBAAA,CAAA,aAAA,CAAA,GAAA,EAAA;AAAA,IACG,SAAU,EAAA,oFAAA;AAAA,IACV,aAAY,EAAA,wBAAA;AAAA,GAAA,EACf,8BACcA,yBAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAA,IAAK,SAAU,EAAA,yBAAA;AAAA,GAA2B,EAAA,UAAW,GAAO,KAAI,EAAA,GAAA,EAC1E,gCAAa,EAAG,EAAA,KAAA,EAAI,qBACpBA,yBAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAA,IAAK,SAAU,EAAA,yBAAA;AAAA,GAAA,EAA0B,GAAE,EAAA,UAAW,CAC3D,CACJ,mBAECA,yBAAA,CAAA,aAAA,CAAA,QAAA,EAAA;AAAA,IACG,OAAS,EAAA,WAAA;AAAA,IACT,SAAU,EAAA,gFAAA;AAAA,GAAA,kBAETA,yBAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAA,IAAK,SAAU,EAAA,qBAAA;AAAA,GAAA,kBACXA,yBAAA,CAAA,aAAA,CAAA,GAAA,EAAA;AAAA,IAAE,SAAU,EAAA,mBAAA;AAAA,GAAA,EAAoB,cAAY,CACjD,CACJ,CACJ,mBAECA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IAAI,SAAU,EAAA,yCAAA;AAAA,GAAA,kBACVA,yBAAA,CAAA,aAAA,CAAAG,+CAAA,EAAA;AAAA,IAA4B,OAAA;AAAA,GAAkB,CACnD,CACJ,CAAA,CAAA;AAER,CAAA;;ACzIA,MAAM,UAAa,GAAA,OAAA,CAAA;AACnB,MAAM,SAAY,GAAA,MAAA,CAAA;AAkBX,MAAM,gBAAkD,CAAC;AAAA,EAC5D,UAAA;AAAA,EACA,cAAA;AAAA,EACA,cAAA;AAAA,EACA,SAAY,GAAA,EAAA;AAAA,EACZ,OAAU,GAAA,KAAA;AAAA,EACV,eAAe,EAAC;AAAA,EAChB,kBAAqB,GAAA,KAAA;AAAA,EACrB,qBAAA;AAAA,EACA,oBAAA;AAAA,EACA,wBAAA;AAAA,EACA,iBAAA;AAAA,EACA,0BAAA;AAAA,EACA,qBAAA;AACJ,CAAM,KAAA;AACF,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAIC,eAAS,UAAU,CAAA,CAAA;AACrD,EAAM,MAAA;AAAA,IACF,KAAA;AAAA,IACA,SAAA;AAAA,IACA,MAAQ,EAAA,OAAA;AAAA,IACR,MAAQ,EAAA,OAAA;AAAA,IACR,iBAAA;AAAA,GACJ,GAAIC,yCAAsB,UAAU,CAAA,CAAA;AACpC,EAAA,MAAM,SAAS,cAAkB,IAAA,OAAA,CAAA;AACjC,EAAA,MAAM,SAAS,cAAkB,IAAA,OAAA,CAAA;AAEjC,EAAA,MAAM,aAAa,MAAM;AACrB,IAAA,IAAI,cAAc,UAAY,EAAA;AAC1B,MAAA,YAAA,CAAa,SAAS,CAAA,CAAA;AAAA,KAC1B;AACA,IAAA,IAAI,cAAc,SAAW,EAAA;AACzB,MAAA,YAAA,CAAa,UAAU,CAAA,CAAA;AAAA,KAC3B;AAAA,GACJ,CAAA;AAEA,EAAA,uBACKL,yBAAA,CAAA,aAAA,CAAAM,qBAAA,EAAA;AAAA,IAAW,SAAA;AAAA,GAAA,kBACPN,yBAAA,CAAA,aAAA,CAAA,kBAAA,EAAA;AAAA,IACG,KAAA;AAAA,IACA,iBAAA;AAAA,IACA,qBAAA;AAAA,IACA,MAAA;AAAA,IACA,MAAA;AAAA,IACA,qBAAA;AAAA,IACA,oBAAA;AAAA,IACA,0BAAA;AAAA,IACA,iBAAA;AAAA,IACA,kBAAA;AAAA,IACA,SAAA;AAAA,IACA,SAAA;AAAA,IACA,OAAA;AAAA,IACA,WAAa,EAAA,UAAA;AAAA,GACjB,mBACCA,yBAAA,CAAA,aAAA,CAAAO,mCAAA,EAAA;AAAA,IACG,KAAA;AAAA,IACA,iBAAA;AAAA,IACA,wBAAA;AAAA,IACA,MAAA;AAAA,IACA,MAAA;AAAA,IACA,SAAA;AAAA,IACA,SAAA;AAAA,IACA,OAAA;AAAA,IACA,YAAA;AAAA,IACA,WAAa,EAAA,UAAA;AAAA,GACjB,CACJ,CAAA,CAAA;AAER;;;;"}
1
+ {"version":3,"file":"VCDisplayCard-129d6f10.js","sources":["../../src/components/VCDisplayFrontFace/VCDisplayFrontFace.tsx","../../src/components/VCDisplayCard/VCDisplayCard.tsx"],"sourcesContent":["import React from 'react';\nimport { VCDisplayCardProps } from '../../types';\nimport FatArrow from '../../assets/images/icon.green.fat-arrow.png';\nimport FlipArrowRight from '../../assets/images/ArrowArcRight.svg';\nimport DefaultFace from '../../assets/images/default-face.jpeg';\nimport { VCVerificationCheckWithText } from '../VCVerificationCheck/VCVerificationCheck';\nimport { getImageFromProfile, getNameFromProfile } from '../../helpers/credential.helpers';\n\nconst VCDisplayFrontFace: React.FC<VCDisplayCardProps> = ({\n title,\n createdAt,\n issuer,\n issuee,\n subjectImageComponent,\n issuerImageComponent,\n hideProfileBubbles = false,\n credentialSubject,\n className = '',\n loading,\n handleClick,\n overrideCardImageComponent,\n overrideCardTitle,\n customHeaderComponent,\n}) => {\n const credentialAchievementImage =\n credentialSubject?.achievement?.image?.id || credentialSubject?.achievement?.image;\n const issuerName = getNameFromProfile(issuer ?? '');\n const issueeName = getNameFromProfile(issuee ?? '');\n const issuerImage = getImageFromProfile(issuer ?? '');\n const issueeImage = getImageFromProfile(issuee ?? '');\n\n const issuerNameAbr = issuerName?.slice(0, 1) ?? '';\n\n let issueeImageEl: React.ReactNode | null = null;\n const issuerImgExists = issuerImage && issuerImage !== '';\n const issueeImgExists = issueeImage && issueeImage !== '';\n if (issueeImgExists) {\n issueeImageEl = (\n <div className=\"flex flex-row items-center justify-center h-full w-full rounded-full border-solid border-4 border-white overflow-hidden bg-white\">\n <img\n className=\"h-full w-full object-cover\"\n src={issueeImage || DefaultFace}\n alt=\"Issuee image\"\n />\n </div>\n );\n } else if (!issueeImgExists && subjectImageComponent) {\n issueeImageEl = subjectImageComponent;\n }\n\n let issuerImageEl: React.ReactNode | null = null;\n\n if (issuerImgExists) {\n issuerImageEl = (\n <img className=\"w-4/6 h-4/6 object-cover\" src={issuerImage} alt=\"Issuer image\" />\n );\n } else {\n issuerImageEl = (\n <div className=\"flex flex-row items-center justify-center h-full w-full overflow-hidden bg-emerald-700 text-white font-medium text-3xl\">\n {issuerNameAbr}\n </div>\n );\n }\n\n if (issuerImageComponent) {\n issuerImageEl = issuerImageComponent;\n }\n\n const credImg = credentialAchievementImage ? (\n <img\n className=\"h-full w-full object-cover\"\n src={credentialAchievementImage ?? ''}\n alt=\"Credential Achievement Image\"\n />\n ) : (\n <></>\n );\n\n const renderCardImg = overrideCardImageComponent ? overrideCardImageComponent : credImg;\n const cardTitle = overrideCardTitle ? overrideCardTitle : title;\n\n return (\n <div\n className={`z-[9] vc-display-main-card-front flex overflow-hidden flex-col items-center justify-between relative max-w-[400px] h-[100%] min-h-[600px] p-7 rounded-3xl shadow-3xl bg-emerald-700 vc-display-card-full-container ${className}`}\n >\n <section className=\"bg-white rounded-bl-[50%] rounded-br-[50%] absolute top-0 w-[110%] h-[77%]\"></section>\n <section className=\"flex flex-col items-center justify-center z-10 text-center credential-thumb-img\">\n <section className=\"max-w-[100px] max-h-[100px]\">{renderCardImg}</section>\n\n <section className=\"flex flex-row w-full line-clamp-2\">\n <div className=\"flex flex-row w-full line-clamp-2 py-4 vc-flippy-card-title-front \">\n <h3\n className=\"vc-thumbnail-title w-full text-2xl line-clamp-2 tracking-wide leading-snug text-center vc-display-title text-gray-900 font-medium\"\n data-testid=\"vc-thumbnail-title\"\n >\n {cardTitle ?? ''}\n </h3>\n </div>\n\n {customHeaderComponent && customHeaderComponent}\n </section>\n\n <section className=\"flex flex-row items-center justify-center mt-2 w-full my-2 vc-card-issuer-thumbs\">\n {!hideProfileBubbles && (\n <>\n <div className=\"flex items-center justify-center h-16 w-16 shadow-3xl rounded-full overflow-hidden bg-white\">\n {issuerImageEl}\n </div>\n <img\n className=\"h-8 w-8 my-0 mx-4\"\n src={FatArrow ?? ''}\n alt=\"fat arrow icon\"\n />\n <div className=\"flex items-center justify-center h-16 w-16 shadow-3xl rounded-full overflow-hidden bg-white\">\n {issueeImageEl}\n </div>\n </>\n )}\n </section>\n\n <div className=\"w-full mt-2 vc-card-issued-to-info\">\n <p\n className=\"text-sm font-light text-center line-clamp-2 vc-display-issue-details text-gray-900\"\n data-testid=\"vc-thumbnail-createdAt\"\n >\n Issued to <span className=\"font-bold text-gray-900\">{issueeName}</span> on{' '}\n {createdAt ?? ''} by{' '}\n <span className=\"font-bold text-gray-900\"> {issuerName}</span>\n </p>\n </div>\n\n <button\n onClick={handleClick}\n className=\"cursor-alias bg-white my-3 border-0 text-indigo-500 font-semibold py-2 px-4 sl\"\n >\n <span className=\"flex justify-center\">\n <p className=\"flex items-center\">View Details</p>\n </span>\n </button>\n </section>\n\n <div className=\"flex items-center justify-center w-full\">\n <VCVerificationCheckWithText loading={loading} />\n </div>\n </div>\n );\n};\n\nexport default VCDisplayFrontFace;\n","import React, { useState } from 'react';\nimport { AchievementCredential, VC, Profile, VerificationItem } from '@learncard/types';\n\nimport FlippyCard from '../FlippyCard/FlippyCard';\nimport VCDisplayFrontFace from '../VCDisplayFrontFace/VCDisplayFrontFace';\nimport VCDisplayBackFace from '../VCDisplayBackFace/VCDisplayBackFace';\n\nimport { getInfoFromCredential } from '../../helpers/credential.helpers';\n\nconst FRONT_FACE = 'front';\nconst BACK_FACE = 'back';\n\nexport type VCDisplayCardPropsReal = {\n credential: VC | AchievementCredential;\n issueeOverride?: Profile;\n issuerOverride?: Profile;\n className?: string;\n hideProfileBubbles?: boolean;\n loading?: boolean;\n verification?: VerificationItem[];\n subjectImageComponent?: React.ReactNode;\n issuerImageComponent?: React.ReactNode;\n overrideDetailsComponent?: React.ReactNode;\n overrideCardTitle?: string;\n overrideCardImageComponent?: React.ReactNode;\n customHeaderComponent?: React.ReactNode;\n};\n\nexport const VCDisplayCard: React.FC<VCDisplayCardPropsReal> = ({\n credential,\n issueeOverride,\n issuerOverride,\n className = '',\n loading = false,\n verification = [],\n hideProfileBubbles = false,\n subjectImageComponent,\n issuerImageComponent,\n overrideDetailsComponent,\n overrideCardTitle,\n overrideCardImageComponent,\n customHeaderComponent,\n}) => {\n const [flipState, setFlipState] = useState(FRONT_FACE);\n const {\n title,\n createdAt,\n issuer: _issuer,\n issuee: _issuee,\n credentialSubject,\n } = getInfoFromCredential(credential);\n const issuee = issueeOverride || _issuee;\n const issuer = issuerOverride || _issuer;\n\n const handleFlip = () => {\n if (flipState === FRONT_FACE) {\n setFlipState(BACK_FACE);\n }\n if (flipState === BACK_FACE) {\n setFlipState(FRONT_FACE);\n }\n };\n\n return (\n <FlippyCard flipState={flipState}>\n <VCDisplayFrontFace\n title={title}\n credentialSubject={credentialSubject}\n customHeaderComponent={customHeaderComponent}\n issuer={issuer}\n issuee={issuee}\n subjectImageComponent={subjectImageComponent}\n issuerImageComponent={issuerImageComponent}\n overrideCardImageComponent={overrideCardImageComponent}\n overrideCardTitle={overrideCardTitle}\n hideProfileBubbles={hideProfileBubbles}\n createdAt={createdAt}\n className={className}\n loading={loading}\n handleClick={handleFlip}\n />\n <VCDisplayBackFace\n title={title}\n credentialSubject={credentialSubject}\n overrideDetailsComponent={overrideDetailsComponent}\n issuer={issuer}\n issuee={issuee}\n createdAt={createdAt}\n className={className}\n loading={loading}\n verification={verification}\n handleClick={handleFlip}\n />\n </FlippyCard>\n );\n};\n\nexport default VCDisplayCard;\n"],"names":["getNameFromProfile","getImageFromProfile","React","DefaultFace","FatArrow","VCVerificationCheckWithText","useState","getInfoFromCredential","FlippyCard","VCDisplayBackFace"],"mappings":"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"}
@@ -3,9 +3,9 @@
3
3
  var React = require('react');
4
4
  var VCVerificationCheck = require('./VCVerificationCheck-08011d1a.js');
5
5
  var DefaultFace = require('./default-face.jpeg');
6
- var credential_helpers = require('./credential.helpers-2ff85fe0.js');
6
+ var credential_helpers = require('./credential.helpers-2ceeae3c.js');
7
7
  require('./index-a961acab.js');
8
- var types_esm = require('./types.esm-e3c8220c.js');
8
+ var types_esm = require('./types.esm-16460488.js');
9
9
  var AwardRibbon = require('./AwardRibbon-14ba45fb.js');
10
10
  var index = require('./index-d836b84d.js');
11
11
 
@@ -992,4 +992,4 @@ const VCDisplayCard2 = ({
992
992
  };
993
993
 
994
994
  exports.VCDisplayCard2 = VCDisplayCard2;
995
- //# sourceMappingURL=VCDisplayCard2-f7e5790b.js.map
995
+ //# sourceMappingURL=VCDisplayCard2-59f99f6d.js.map