@learncard/react 2.3.33 → 2.3.35
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/AchievementCard-5176ae52.js +67 -0
- package/dist/cjs/AchievementCard-5176ae52.js.map +1 -0
- package/dist/cjs/CircleCheckButton-d0667cda.js +30 -0
- package/dist/cjs/CircleCheckButton-d0667cda.js.map +1 -0
- package/dist/cjs/{CircleIcon-45ef66fd.js → CircleIcon-ee5316e3.js} +4 -35
- package/dist/cjs/CircleIcon-ee5316e3.js.map +1 -0
- package/dist/cjs/{CourseCard-c3c13b2c.js → CourseCard-93680a14.js} +8 -8
- package/dist/cjs/CourseCard-93680a14.js.map +1 -0
- package/dist/cjs/CourseVerticalCard-8baa9517.js +97 -0
- package/dist/cjs/CourseVerticalCard-8baa9517.js.map +1 -0
- package/dist/cjs/{JobListCard-065f9225.js → JobListCard-b07e7c5b.js} +18 -26
- package/dist/cjs/JobListCard-b07e7c5b.js.map +1 -0
- package/dist/cjs/LearnPill-24d24a71.js +40 -0
- package/dist/cjs/LearnPill-24d24a71.js.map +1 -0
- package/dist/cjs/{Notification-92b06ed9.js → Notification-10b40c07.js} +8 -8
- package/dist/cjs/{Notification-92b06ed9.js.map → Notification-10b40c07.js.map} +1 -1
- package/dist/cjs/RoundedPill-64590d8d.js +106 -0
- package/dist/cjs/RoundedPill-64590d8d.js.map +1 -0
- package/dist/cjs/RoundedSquare-211d713f.js +54 -0
- package/dist/cjs/RoundedSquare-211d713f.js.map +1 -0
- package/dist/cjs/SkillTabCard-0ccad5eb.js +39 -0
- package/dist/cjs/SkillTabCard-0ccad5eb.js.map +1 -0
- package/dist/cjs/{SmallAchievementCard-dc95ef2b.js → SmallAchievementCard-c76701ce.js} +2 -1
- package/dist/cjs/SmallAchievementCard-c76701ce.js.map +1 -0
- package/dist/cjs/{Checkmark-66ed153f.js → User-b16d5499.js} +58 -58
- package/dist/cjs/User-b16d5499.js.map +1 -0
- package/dist/cjs/constants-43b3df0c.js +60 -0
- package/dist/cjs/constants-43b3df0c.js.map +1 -0
- package/dist/cjs/gradcaplight.svg +3 -0
- package/dist/cjs/icons-61ee0fb7.js +45 -0
- package/dist/cjs/icons-61ee0fb7.js.map +1 -0
- package/dist/cjs/index-732996e9.js +26 -0
- package/dist/cjs/index-732996e9.js.map +1 -0
- package/dist/cjs/index.js +39 -21
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index10.js +14 -2
- package/dist/cjs/index10.js.map +1 -1
- package/dist/cjs/index11.js +3 -3
- package/dist/cjs/index12.js +5 -5
- package/dist/cjs/index13.js +13 -3
- package/dist/cjs/index13.js.map +1 -1
- package/dist/cjs/index14.js +2 -18
- package/dist/cjs/index14.js.map +1 -1
- package/dist/cjs/index15.js +3 -2
- package/dist/cjs/index15.js.map +1 -1
- package/dist/cjs/index16.js +5 -3
- package/dist/cjs/index16.js.map +1 -1
- package/dist/cjs/index17.js +3 -3
- package/dist/cjs/index18.js +14 -3
- package/dist/cjs/index18.js.map +1 -1
- package/dist/cjs/index19.js +28 -3
- package/dist/cjs/index19.js.map +1 -1
- package/dist/cjs/index2.js +26 -2
- package/dist/cjs/index2.js.map +1 -1
- package/dist/cjs/index20.js +2 -9
- package/dist/cjs/index20.js.map +1 -1
- package/dist/cjs/index21.js +3 -16
- package/dist/cjs/index21.js.map +1 -1
- package/dist/cjs/index22.js +3 -10
- package/dist/cjs/index22.js.map +1 -1
- package/dist/cjs/index23.js +15 -14
- package/dist/cjs/index23.js.map +1 -1
- package/dist/cjs/index24.js +7 -4
- package/dist/cjs/index24.js.map +1 -1
- package/dist/cjs/index25.js +3 -4
- package/dist/cjs/index25.js.map +1 -1
- package/dist/cjs/index26.js +9 -5
- package/dist/cjs/index26.js.map +1 -1
- package/dist/cjs/index27.js +13 -2
- package/dist/cjs/index27.js.map +1 -1
- package/dist/cjs/index28.js +19 -0
- package/dist/cjs/index28.js.map +1 -0
- package/dist/cjs/index29.js +23 -0
- package/dist/cjs/index29.js.map +1 -0
- package/dist/cjs/index3.js +2 -9
- package/dist/cjs/index3.js.map +1 -1
- package/dist/cjs/index30.js +9 -0
- package/dist/cjs/index30.js.map +1 -0
- package/dist/cjs/index31.js +13 -0
- package/dist/cjs/index31.js.map +1 -0
- package/dist/cjs/index32.js +14 -0
- package/dist/cjs/index32.js.map +1 -0
- package/dist/cjs/index33.js +14 -0
- package/dist/cjs/index33.js.map +1 -0
- package/dist/cjs/index4.js +13 -5
- package/dist/cjs/index4.js.map +1 -1
- package/dist/cjs/index5.js +14 -2
- package/dist/cjs/index5.js.map +1 -1
- package/dist/cjs/index6.js +1 -92
- package/dist/cjs/index6.js.map +1 -1
- package/dist/cjs/index7.js +17 -6
- package/dist/cjs/index7.js.map +1 -1
- package/dist/cjs/index8.js +2 -3
- package/dist/cjs/index8.js.map +1 -1
- package/dist/cjs/index9.js +110 -0
- package/dist/cjs/index9.js.map +1 -1
- package/dist/esm/AchievementCard-45a42963.js +61 -0
- package/dist/esm/AchievementCard-45a42963.js.map +1 -0
- package/dist/esm/CircleCheckButton-251f4bbd.js +24 -0
- package/dist/esm/CircleCheckButton-251f4bbd.js.map +1 -0
- package/dist/esm/{CircleIcon-7c21af00.js → CircleIcon-c96790bf.js} +4 -27
- package/dist/esm/CircleIcon-c96790bf.js.map +1 -0
- package/dist/esm/{CourseCard-b9e42233.js → CourseCard-f3a2c5c0.js} +6 -6
- package/dist/esm/CourseCard-f3a2c5c0.js.map +1 -0
- package/dist/esm/CourseVerticalCard-11cf10a3.js +87 -0
- package/dist/esm/CourseVerticalCard-11cf10a3.js.map +1 -0
- package/dist/esm/{JobListCard-261c8028.js → JobListCard-51b725a9.js} +18 -23
- package/dist/esm/JobListCard-51b725a9.js.map +1 -0
- package/dist/esm/LearnPill-f4a13a3d.js +34 -0
- package/dist/esm/LearnPill-f4a13a3d.js.map +1 -0
- package/dist/esm/{Notification-ddbb3c37.js → Notification-ac50790d.js} +2 -2
- package/dist/esm/{Notification-ddbb3c37.js.map → Notification-ac50790d.js.map} +1 -1
- package/dist/esm/RoundedPill-b4f1607a.js +99 -0
- package/dist/esm/RoundedPill-b4f1607a.js.map +1 -0
- package/dist/esm/{RoundedSquare-c3706147.js → RoundedSquare-16480fc1.js} +6 -34
- package/dist/esm/RoundedSquare-16480fc1.js.map +1 -0
- package/dist/esm/SkillTabCard-29010c5a.js +33 -0
- package/dist/esm/SkillTabCard-29010c5a.js.map +1 -0
- package/dist/esm/{SmallAchievementCard-44f6fef8.js → SmallAchievementCard-2d87ac82.js} +2 -1
- package/dist/esm/SmallAchievementCard-2d87ac82.js.map +1 -0
- package/dist/esm/{Checkmark-fb8086c5.js → User-d3aa7eb3.js} +58 -58
- package/dist/esm/User-d3aa7eb3.js.map +1 -0
- package/dist/esm/constants-3c35c9bd.js +43 -0
- package/dist/esm/constants-3c35c9bd.js.map +1 -0
- package/dist/esm/gradcaplight.svg +3 -0
- package/dist/esm/icons-e7cf7735.js +30 -0
- package/dist/esm/icons-e7cf7735.js.map +1 -0
- package/dist/esm/index-e5252279.js +23 -0
- package/dist/esm/index-e5252279.js.map +1 -0
- package/dist/esm/index.js +22 -12
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index10.js +12 -1
- package/dist/esm/index10.js.map +1 -1
- package/dist/esm/index11.js +2 -2
- package/dist/esm/index12.js +4 -3
- package/dist/esm/index12.js.map +1 -1
- package/dist/esm/index13.js +12 -2
- package/dist/esm/index13.js.map +1 -1
- package/dist/esm/index14.js +1 -14
- package/dist/esm/index14.js.map +1 -1
- package/dist/esm/index15.js +2 -1
- package/dist/esm/index15.js.map +1 -1
- package/dist/esm/index16.js +3 -1
- package/dist/esm/index16.js.map +1 -1
- package/dist/esm/index17.js +2 -2
- package/dist/esm/index18.js +12 -2
- package/dist/esm/index18.js.map +1 -1
- package/dist/esm/index19.js +23 -2
- package/dist/esm/index19.js.map +1 -1
- package/dist/esm/index2.js +25 -1
- package/dist/esm/index2.js.map +1 -1
- package/dist/esm/index20.js +1 -2
- package/dist/esm/index20.js.map +1 -1
- package/dist/esm/index21.js +1 -15
- package/dist/esm/index21.js.map +1 -1
- package/dist/esm/index22.js +2 -9
- package/dist/esm/index22.js.map +1 -1
- package/dist/esm/index23.js +14 -13
- package/dist/esm/index23.js.map +1 -1
- package/dist/esm/index24.js +2 -4
- package/dist/esm/index24.js.map +1 -1
- package/dist/esm/index25.js +2 -3
- package/dist/esm/index25.js.map +1 -1
- package/dist/esm/index26.js +2 -3
- package/dist/esm/index26.js.map +1 -1
- package/dist/esm/index27.js +12 -1
- package/dist/esm/index27.js.map +1 -1
- package/dist/esm/index28.js +11 -0
- package/dist/esm/index28.js.map +1 -0
- package/dist/esm/index29.js +15 -0
- package/dist/esm/index29.js.map +1 -0
- package/dist/esm/index3.js +1 -7
- package/dist/esm/index3.js.map +1 -1
- package/dist/esm/index30.js +6 -0
- package/dist/esm/index30.js.map +1 -0
- package/dist/esm/index31.js +5 -0
- package/dist/esm/index31.js.map +1 -0
- package/dist/esm/index32.js +5 -0
- package/dist/esm/index32.js.map +1 -0
- package/dist/esm/index33.js +6 -0
- package/dist/esm/index33.js.map +1 -0
- package/dist/esm/index4.js +12 -4
- package/dist/esm/index4.js.map +1 -1
- package/dist/esm/index5.js +12 -1
- package/dist/esm/index5.js.map +1 -1
- package/dist/esm/index6.js +1 -55
- package/dist/esm/index6.js.map +1 -1
- package/dist/esm/index7.js +16 -4
- package/dist/esm/index7.js.map +1 -1
- package/dist/esm/index8.js +1 -2
- package/dist/esm/index8.js.map +1 -1
- package/dist/esm/index9.js +65 -0
- package/dist/esm/index9.js.map +1 -1
- package/dist/index.d.ts +110 -30
- package/dist/main.css +1 -1
- package/dist/main.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/Checkmark-66ed153f.js.map +0 -1
- package/dist/cjs/CircleIcon-45ef66fd.js.map +0 -1
- package/dist/cjs/CourseCard-c3c13b2c.js.map +0 -1
- package/dist/cjs/JobListCard-065f9225.js.map +0 -1
- package/dist/cjs/RoundedSquare-718776c6.js +0 -91
- package/dist/cjs/RoundedSquare-718776c6.js.map +0 -1
- package/dist/cjs/SmallAchievementCard-dc95ef2b.js.map +0 -1
- package/dist/esm/Checkmark-fb8086c5.js.map +0 -1
- package/dist/esm/CircleIcon-7c21af00.js.map +0 -1
- package/dist/esm/CourseCard-b9e42233.js.map +0 -1
- package/dist/esm/JobListCard-261c8028.js.map +0 -1
- package/dist/esm/RoundedSquare-c3706147.js.map +0 -1
- package/dist/esm/SmallAchievementCard-44f6fef8.js.map +0 -1
package/dist/cjs/index9.js
CHANGED
|
@@ -2,13 +2,123 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var AchievementCard = require('./AchievementCard-5176ae52.js');
|
|
6
|
+
var Button = require('./Button-a7af702b.js');
|
|
7
|
+
var CircleCheckButton = require('./CircleCheckButton-d0667cda.js');
|
|
8
|
+
var CircleIcon = require('./CircleIcon-ee5316e3.js');
|
|
9
|
+
var CourseCard = require('./CourseCard-93680a14.js');
|
|
10
|
+
var CourseVerticalCard = require('./CourseVerticalCard-8baa9517.js');
|
|
11
|
+
var FlippyCard = require('./FlippyCard-33e03a9e.js');
|
|
12
|
+
var JobListCard = require('./JobListCard-b07e7c5b.js');
|
|
13
|
+
var LearnCardCreditCardBackFace = require('./LearnCardCreditCardBackFace-87cc8b9f.js');
|
|
5
14
|
var LearnCardCreditCardFrontFace = require('./LearnCardCreditCardFrontFace-4452fd7a.js');
|
|
15
|
+
var LearnPill = require('./LearnPill-24d24a71.js');
|
|
16
|
+
var CircleSpinner = require('./CircleSpinner-093cce04.js');
|
|
17
|
+
var MiniVCThumbnail = require('./MiniVCThumbnail-a78e44f2.js');
|
|
18
|
+
var Notification = require('./Notification-10b40c07.js');
|
|
19
|
+
var QRCodeCard = require('./QRCodeCard-efaa58e1.js');
|
|
20
|
+
var RoundedPill = require('./RoundedPill-64590d8d.js');
|
|
21
|
+
var RoundedSquare = require('./RoundedSquare-211d713f.js');
|
|
22
|
+
var constants = require('./constants-43b3df0c.js');
|
|
23
|
+
var SchoolIDCard = require('./SchoolIDCard-32a47ae5.js');
|
|
24
|
+
var SkillTabCard = require('./SkillTabCard-0ccad5eb.js');
|
|
25
|
+
var SkillVerticalCard = require('./SkillVerticalCard-3eb3a8e9.js');
|
|
26
|
+
var SkillsCard = require('./SkillsCard-4b6dbb4f.js');
|
|
27
|
+
var SkillsStatsCard = require('./SkillsStatsCard-97a35a88.js');
|
|
28
|
+
var SmallAchievementCard = require('./SmallAchievementCard-c76701ce.js');
|
|
29
|
+
var VCCard = require('./VCCard-b63f75fc.js');
|
|
30
|
+
var VCDisplayBackFace = require('./VCDisplayBackFace-4ae2b5c5.js');
|
|
31
|
+
var VCDisplayCard = require('./VCDisplayCard-b67f991b.js');
|
|
32
|
+
var VCThumbnail = require('./VCThumbnail-584d0b5f.js');
|
|
33
|
+
var VCVerificationCheck = require('./VCVerificationCheck-04f3f7bc.js');
|
|
34
|
+
var VCVerificationPill = require('./VCVerificationPill-1d535a72.js');
|
|
35
|
+
var User = require('./User-b16d5499.js');
|
|
36
|
+
var Trophy = require('./Trophy-9ede7f2b.js');
|
|
6
37
|
require('react');
|
|
38
|
+
require('./index-732996e9.js');
|
|
39
|
+
require('./icons-61ee0fb7.js');
|
|
40
|
+
require('./coins.svg');
|
|
41
|
+
require('./user.svg');
|
|
42
|
+
require('./trophy.svg');
|
|
43
|
+
require('./briefcase.svg');
|
|
44
|
+
require('./graduation.svg');
|
|
45
|
+
require('./lightbulb.svg');
|
|
46
|
+
require('./minipuzzle.svg');
|
|
47
|
+
require('./minitrophy.svg');
|
|
48
|
+
require('./gradcaplight.svg');
|
|
49
|
+
require('./lhplaceholder.png');
|
|
50
|
+
require('./minijob.svg');
|
|
51
|
+
require('./contactless-symbol.svg');
|
|
7
52
|
require('./index-82de573c.js');
|
|
8
53
|
require('./card-chip.svg');
|
|
9
54
|
require('./master-card-logo.svg');
|
|
55
|
+
require('./verified-check.png');
|
|
56
|
+
require('./walletcurrency.webp');
|
|
57
|
+
require('./walletids.webp');
|
|
58
|
+
require('./walletjobhistory.webp');
|
|
59
|
+
require('./walletlearninghistory.webp');
|
|
60
|
+
require('./walletskills.webp');
|
|
61
|
+
require('./walletTrophy.webp');
|
|
62
|
+
require('./minitrophycolored.svg');
|
|
63
|
+
require('./minigradcapcolored.svg');
|
|
64
|
+
require('./minipuzzlecolored.svg');
|
|
65
|
+
require('./skillplaceholder.png');
|
|
66
|
+
require('./skillgraph.svg');
|
|
67
|
+
require('@learncard/core');
|
|
68
|
+
require('./ArrowArcRight.svg');
|
|
69
|
+
require('./icon.green.fat-arrow.png');
|
|
70
|
+
require('./default-face.jpeg');
|
|
71
|
+
require('./vc.check.svg');
|
|
72
|
+
require('./RedXCircle.svg');
|
|
73
|
+
require('./GreenCheckCircle.svg');
|
|
74
|
+
require('./YellowWarningCircle.svg');
|
|
10
75
|
|
|
11
76
|
|
|
12
77
|
|
|
78
|
+
exports.AchievementCard = AchievementCard.AchievementCard;
|
|
79
|
+
exports.Button = Button.Button;
|
|
80
|
+
exports.CircleCheckButton = CircleCheckButton.CircleCheckButton;
|
|
81
|
+
exports.CircleIcon = CircleIcon.CircleIcon;
|
|
82
|
+
exports.CountCircle = CircleIcon.CountCircle;
|
|
83
|
+
exports.CourseCard = CourseCard.CourseCard;
|
|
84
|
+
exports.CourseVerticalCard = CourseVerticalCard.CourseVerticalCard;
|
|
85
|
+
exports.FlippyCard = FlippyCard.FlippyCard;
|
|
86
|
+
exports.JobListCard = JobListCard.JobListCard;
|
|
87
|
+
exports.JobListingBubble = JobListCard.JobListingBubble;
|
|
88
|
+
exports.LearnCardCreditCardBackFace = LearnCardCreditCardBackFace.LearnCardCreditCardBackFace;
|
|
13
89
|
exports.LearnCardCreditCardFrontFace = LearnCardCreditCardFrontFace.LearnCardCreditCardFrontFace;
|
|
90
|
+
exports.LearnPill = LearnPill.LearnPill;
|
|
91
|
+
exports.CircleLoadingState = CircleSpinner.CircleLoadingState;
|
|
92
|
+
exports.MiniVCThumbnail = MiniVCThumbnail.MiniVCThumbnail;
|
|
93
|
+
exports.Notification = Notification.Notification;
|
|
94
|
+
exports.NotificationTypeStyles = Notification.NotificationTypeStyles;
|
|
95
|
+
exports.QRCodeCard = QRCodeCard.QRCodeCard;
|
|
96
|
+
exports.CheckmarkSvg = RoundedPill.CheckmarkSvg;
|
|
97
|
+
exports.RoundedPill = RoundedPill.RoundedPill;
|
|
98
|
+
exports.RoundedSquare = RoundedSquare.RoundedSquare;
|
|
99
|
+
exports.TYPE_TO_IMG_SRC = constants.TYPE_TO_IMG_SRC;
|
|
100
|
+
exports.TYPE_TO_MINI_ICON = constants.TYPE_TO_MINI_ICON;
|
|
101
|
+
exports.TYPE_TO_WALLET_COLOR = constants.TYPE_TO_WALLET_COLOR;
|
|
102
|
+
exports.WALLET_SUBTYPES = constants.WALLET_SUBTYPES;
|
|
103
|
+
exports.SchoolIDCard = SchoolIDCard.SchoolIDCard;
|
|
104
|
+
exports.SkillTabCard = SkillTabCard.SkillTabCard;
|
|
105
|
+
exports.SkillVerticalCard = SkillVerticalCard.SkillVerticalCard;
|
|
106
|
+
exports.SkillsCard = SkillsCard.SkillsCard;
|
|
107
|
+
exports.SkillsMeterSegment = SkillsCard.SkillsMeterSegment;
|
|
108
|
+
exports.SkillsStatsCard = SkillsStatsCard.SkillsStatsCard;
|
|
109
|
+
exports.SmallAchievementCard = SmallAchievementCard.SmallAchievementCard;
|
|
110
|
+
exports.VCCard = VCCard.VCCard;
|
|
111
|
+
exports.VCDisplayBackFace = VCDisplayBackFace.VCDisplayBackFace;
|
|
112
|
+
exports.VCDisplayCard = VCDisplayCard.VCDisplayCard;
|
|
113
|
+
exports.VCThumbnail = VCThumbnail.VCThumbnail;
|
|
114
|
+
exports.VCVerificationCheck = VCVerificationCheck.VCVerificationCheck;
|
|
115
|
+
exports.VCVerificationCheckWithText = VCVerificationCheck.VCVerificationCheckWithText;
|
|
116
|
+
exports.ValidationStateIndicator = VCVerificationPill.ValidationStateIndicator;
|
|
117
|
+
exports.Briefcase = User.Briefcase;
|
|
118
|
+
exports.Checkmark = User.Checkmark;
|
|
119
|
+
exports.Coins = User.Coins;
|
|
120
|
+
exports.Graduation = User.Graduation;
|
|
121
|
+
exports.Lightbulb = User.Lightbulb;
|
|
122
|
+
exports.User = User.User;
|
|
123
|
+
exports.Trophy = Trophy.Trophy;
|
|
14
124
|
//# sourceMappingURL=index9.js.map
|
package/dist/cjs/index9.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index9.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index9.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { L as LCSubtypes } from './index-e5252279.js';
|
|
3
|
+
import { T as TYPE_TO_MINI_ICON } from './constants-3c35c9bd.js';
|
|
4
|
+
import { T as Trophy } from './Trophy-702610b8.js';
|
|
5
|
+
import { C as CircleCheckButton } from './CircleCheckButton-251f4bbd.js';
|
|
6
|
+
import { R as RoundedPill } from './RoundedPill-b4f1607a.js';
|
|
7
|
+
|
|
8
|
+
const AchievementCard = ({
|
|
9
|
+
title = "Title Lorem Ipsum",
|
|
10
|
+
thumbImgSrc,
|
|
11
|
+
claimStatus,
|
|
12
|
+
showSkills = true,
|
|
13
|
+
showChecked,
|
|
14
|
+
checked,
|
|
15
|
+
skillCount,
|
|
16
|
+
showStatus = true,
|
|
17
|
+
onCheckClick,
|
|
18
|
+
onClick = () => {
|
|
19
|
+
}
|
|
20
|
+
}) => {
|
|
21
|
+
const thumbClass = thumbImgSrc ? "bg-grayscale-50" : "bg-indigo-200";
|
|
22
|
+
const claimBtnStatusType = claimStatus ? LCSubtypes.achievement : LCSubtypes.locked;
|
|
23
|
+
const skillIconSrc = TYPE_TO_MINI_ICON[LCSubtypes.skill];
|
|
24
|
+
const skillCountTxt = skillCount && skillCount > 1 ? "Skills" : "Skill";
|
|
25
|
+
const showSkillCounter = showSkills && skillCount !== 0;
|
|
26
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
27
|
+
className: `flex-col shadow-[0_0_8px_0px_rgba(0,0,0,0.2)] relative $ py-[8px] px-[8px] w-[190px] h-[265px] rounded-[20px] rounded-square-card-container`
|
|
28
|
+
}, /* @__PURE__ */ React.createElement("section", {
|
|
29
|
+
className: `relative flex h-[120px] ${thumbClass} flex-col justify-center items-center w-full rounded-[20px]`
|
|
30
|
+
}, thumbImgSrc && /* @__PURE__ */ React.createElement("img", {
|
|
31
|
+
className: "h-full w-full object-cover rounded-[20px]",
|
|
32
|
+
src: thumbImgSrc != null ? thumbImgSrc : "",
|
|
33
|
+
alt: "Credential Achievement Image"
|
|
34
|
+
}), (!thumbImgSrc || thumbImgSrc === "") && /* @__PURE__ */ React.createElement(Trophy, {
|
|
35
|
+
className: "achievement-placeholder-trophy flex p-[15px]",
|
|
36
|
+
color: "#ffffff"
|
|
37
|
+
}), showSkills && showSkillCounter && /* @__PURE__ */ React.createElement("div", {
|
|
38
|
+
className: "absolute px-[10px] text-[14px] flex items-center justify-center text-indigo-600 skill-pill font-bold min-w-[100px] bottom-[10px] right-[9px] rounded-[20px] h-[30px] bg-indigo-50 "
|
|
39
|
+
}, /* @__PURE__ */ React.createElement("img", {
|
|
40
|
+
src: skillIconSrc,
|
|
41
|
+
className: "flex items-center justify-center mr-[4px]"
|
|
42
|
+
}), "+", skillCount, " ", skillCountTxt), showChecked && /* @__PURE__ */ React.createElement(CircleCheckButton, {
|
|
43
|
+
checked,
|
|
44
|
+
onClick: onCheckClick,
|
|
45
|
+
className: "absolute top-[5px] left-[5px]"
|
|
46
|
+
})), /* @__PURE__ */ React.createElement("section", {
|
|
47
|
+
className: "achievement-title w-full flex justify-center line-clamp-2"
|
|
48
|
+
}, /* @__PURE__ */ React.createElement("p", {
|
|
49
|
+
className: "text-[14px] text-grayscale-900 font-bold mt-[10px] text-center"
|
|
50
|
+
}, title)), /* @__PURE__ */ React.createElement("section", {
|
|
51
|
+
className: "achievement-card-footer absolute bottom-[6px] left-[5px]"
|
|
52
|
+
}, showStatus && /* @__PURE__ */ React.createElement(RoundedPill, {
|
|
53
|
+
onClick,
|
|
54
|
+
showCheckmark: true,
|
|
55
|
+
type: claimBtnStatusType,
|
|
56
|
+
statusText: "Claimed"
|
|
57
|
+
})));
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export { AchievementCard as A };
|
|
61
|
+
//# sourceMappingURL=AchievementCard-45a42963.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AchievementCard-45a42963.js","sources":["../../src/components/AchievementCard/AchievementCard.tsx"],"sourcesContent":["import React from 'react';\nimport { AchievementCardProps } from '../../types';\nimport { RoundedPill } from '../RoundedPill';\nimport { CircleCheckButton } from '../CircleCheckButton';\nimport { Trophy } from '../svgs';\nimport { TYPE_TO_MINI_ICON } from '../RoundedSquare';\nimport { LCSubtypes } from '../../types';\n\nexport const AchievementCard: React.FC<AchievementCardProps> = ({\n title = 'Title Lorem Ipsum',\n thumbImgSrc,\n claimStatus,\n showSkills = true,\n showChecked,\n checked,\n skillCount,\n showStatus = true,\n onCheckClick,\n onClick = () => {},\n}) => {\n const thumbClass = thumbImgSrc ? 'bg-grayscale-50' : 'bg-indigo-200';\n\n const claimBtnStatusType = claimStatus ? LCSubtypes.achievement : LCSubtypes.locked;\n const skillIconSrc = TYPE_TO_MINI_ICON[LCSubtypes.skill];\n const skillCountTxt = skillCount && skillCount > 1 ? 'Skills' : 'Skill';\n const showSkillCounter = showSkills && skillCount !== 0;\n\n return (\n <div\n className={`flex-col shadow-[0_0_8px_0px_rgba(0,0,0,0.2)] relative $ py-[8px] px-[8px] w-[190px] h-[265px] rounded-[20px] rounded-square-card-container`}\n >\n <section\n className={`relative flex h-[120px] ${thumbClass} flex-col justify-center items-center w-full rounded-[20px]`}\n >\n {thumbImgSrc && (\n <img\n className=\"h-full w-full object-cover rounded-[20px]\"\n src={thumbImgSrc ?? ''}\n alt=\"Credential Achievement Image\"\n />\n )}\n {(!thumbImgSrc || thumbImgSrc === '') && (\n <Trophy\n className=\"achievement-placeholder-trophy flex p-[15px]\"\n color=\"#ffffff\"\n />\n )}\n\n {showSkills && showSkillCounter && (\n <div className=\"absolute px-[10px] text-[14px] flex items-center justify-center text-indigo-600 skill-pill font-bold min-w-[100px] bottom-[10px] right-[9px] rounded-[20px] h-[30px] bg-indigo-50 \">\n <img\n src={skillIconSrc}\n className=\"flex items-center justify-center mr-[4px]\"\n />\n +{skillCount} {skillCountTxt}\n </div>\n )}\n\n {showChecked && (\n <CircleCheckButton\n checked={checked}\n onClick={onCheckClick}\n className=\"absolute top-[5px] left-[5px]\"\n />\n )}\n </section>\n\n <section className=\"achievement-title w-full flex justify-center line-clamp-2\">\n <p className=\"text-[14px] text-grayscale-900 font-bold mt-[10px] text-center\">\n {title}\n </p>\n </section>\n\n <section className=\"achievement-card-footer absolute bottom-[6px] left-[5px]\">\n {showStatus && (\n <RoundedPill\n onClick={onClick}\n showCheckmark\n type={claimBtnStatusType}\n statusText={'Claimed'}\n />\n )}\n </section>\n </div>\n );\n};\n\nexport default AchievementCard;\n"],"names":[],"mappings":";;;;;;;AAMY,MAAC,eAAe,GAAG,CAAC;AAChC,EAAE,KAAK,GAAG,mBAAmB;AAC7B,EAAE,WAAW;AACb,EAAE,WAAW;AACb,EAAE,UAAU,GAAG,IAAI;AACnB,EAAE,WAAW;AACb,EAAE,OAAO;AACT,EAAE,UAAU;AACZ,EAAE,UAAU,GAAG,IAAI;AACnB,EAAE,YAAY;AACd,EAAE,OAAO,GAAG,MAAM;AAClB,GAAG;AACH,CAAC,KAAK;AACN,EAAE,MAAM,UAAU,GAAG,WAAW,GAAG,iBAAiB,GAAG,eAAe,CAAC;AACvE,EAAE,MAAM,kBAAkB,GAAG,WAAW,GAAG,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC;AACtF,EAAE,MAAM,YAAY,GAAG,iBAAiB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AAC3D,EAAE,MAAM,aAAa,GAAG,UAAU,IAAI,UAAU,GAAG,CAAC,GAAG,QAAQ,GAAG,OAAO,CAAC;AAC1E,EAAE,MAAM,gBAAgB,GAAG,UAAU,IAAI,UAAU,KAAK,CAAC,CAAC;AAC1D,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACpD,IAAI,SAAS,EAAE,CAAC,2IAA2I,CAAC;AAC5J,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE;AACpD,IAAI,SAAS,EAAE,CAAC,wBAAwB,EAAE,UAAU,CAAC,2DAA2D,CAAC;AACjH,GAAG,EAAE,WAAW,oBAAoB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAC/D,IAAI,SAAS,EAAE,2CAA2C;AAC1D,IAAI,GAAG,EAAE,WAAW,IAAI,IAAI,GAAG,WAAW,GAAG,EAAE;AAC/C,IAAI,GAAG,EAAE,8BAA8B;AACvC,GAAG,CAAC,EAAE,CAAC,CAAC,WAAW,IAAI,WAAW,KAAK,EAAE,qBAAqB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AAC1F,IAAI,SAAS,EAAE,8CAA8C;AAC7D,IAAI,KAAK,EAAE,SAAS;AACpB,GAAG,CAAC,EAAE,UAAU,IAAI,gBAAgB,oBAAoB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACnF,IAAI,SAAS,EAAE,oLAAoL;AACnM,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,GAAG,EAAE,YAAY;AACrB,IAAI,SAAS,EAAE,2CAA2C;AAC1D,GAAG,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,CAAC,EAAE,WAAW,oBAAoB,KAAK,CAAC,aAAa,CAAC,iBAAiB,EAAE;AAClH,IAAI,OAAO;AACX,IAAI,OAAO,EAAE,YAAY;AACzB,IAAI,SAAS,EAAE,+BAA+B;AAC9C,GAAG,CAAC,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE;AACtD,IAAI,SAAS,EAAE,2DAA2D;AAC1E,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE;AAC9C,IAAI,SAAS,EAAE,gEAAgE;AAC/E,GAAG,EAAE,KAAK,CAAC,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE;AAC7D,IAAI,SAAS,EAAE,0DAA0D;AACzE,GAAG,EAAE,UAAU,oBAAoB,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE;AACpE,IAAI,OAAO;AACX,IAAI,aAAa,EAAE,IAAI;AACvB,IAAI,IAAI,EAAE,kBAAkB;AAC5B,IAAI,UAAU,EAAE,SAAS;AACzB,GAAG,CAAC,CAAC,CAAC,CAAC;AACP;;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { C as CheckmarkSvg } from './RoundedPill-b4f1607a.js';
|
|
3
|
+
|
|
4
|
+
const CircleCheckButton = ({
|
|
5
|
+
checked,
|
|
6
|
+
onClick,
|
|
7
|
+
bgColor,
|
|
8
|
+
className = ""
|
|
9
|
+
}) => {
|
|
10
|
+
const backgroundColor = checked ? "bg-emerald-700" : bgColor ? bgColor : "bg-gray-50";
|
|
11
|
+
const handleClick = () => {
|
|
12
|
+
onClick == null ? void 0 : onClick();
|
|
13
|
+
};
|
|
14
|
+
return /* @__PURE__ */ React.createElement("button", {
|
|
15
|
+
type: "button",
|
|
16
|
+
onClick: handleClick,
|
|
17
|
+
className: `w-[32px] h-[32px] flex items-center justify-center border-4 border-gray-50 rounded-full text-gray-700 ${backgroundColor} ${className}`
|
|
18
|
+
}, /* @__PURE__ */ React.createElement(CheckmarkSvg, {
|
|
19
|
+
color: "#ffffff"
|
|
20
|
+
}));
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export { CircleCheckButton as C };
|
|
24
|
+
//# sourceMappingURL=CircleCheckButton-251f4bbd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CircleCheckButton-251f4bbd.js","sources":["../../src/components/CircleCheckButton/CircleCheckButton.tsx"],"sourcesContent":["import React from 'react';\nimport { CircleCheckButtonProps } from '../../types';\nimport { CheckmarkSvg } from '../RoundedPill';\n\nexport const CircleCheckButton: React.FC<CircleCheckButtonProps> = ({\n checked,\n onClick,\n bgColor,\n className = '',\n}) => {\n const backgroundColor = checked ? 'bg-emerald-700' : bgColor ? bgColor : 'bg-gray-50';\n\n const handleClick = () => {\n onClick?.();\n };\n\n return (\n <button\n type=\"button\"\n onClick={handleClick}\n className={`w-[32px] h-[32px] flex items-center justify-center border-4 border-gray-50 rounded-full text-gray-700 ${backgroundColor} ${className}`}\n >\n <CheckmarkSvg color=\"#ffffff\" />\n </button>\n );\n};\n\nexport default CircleCheckButton;\n"],"names":[],"mappings":";;;AAEY,MAAC,iBAAiB,GAAG,CAAC;AAClC,EAAE,OAAO;AACT,EAAE,OAAO;AACT,EAAE,OAAO;AACT,EAAE,SAAS,GAAG,EAAE;AAChB,CAAC,KAAK;AACN,EAAE,MAAM,eAAe,GAAG,OAAO,GAAG,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,YAAY,CAAC;AACxF,EAAE,MAAM,WAAW,GAAG,MAAM;AAC5B,IAAI,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,EAAE,CAAC;AACzC,GAAG,CAAC;AACJ,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE;AACvD,IAAI,IAAI,EAAE,QAAQ;AAClB,IAAI,OAAO,EAAE,WAAW;AACxB,IAAI,SAAS,EAAE,CAAC,uGAAuG,EAAE,eAAe,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AACvJ,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE;AACvD,IAAI,KAAK,EAAE,SAAS;AACpB,GAAG,CAAC,CAAC,CAAC;AACN;;;;"}
|
|
@@ -1,29 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import trophy from './trophy.svg';
|
|
5
|
-
import briefcase from './briefcase.svg';
|
|
6
|
-
import graduation from './graduation.svg';
|
|
7
|
-
import lightbulb from './lightbulb.svg';
|
|
8
|
-
|
|
9
|
-
var Icons = /* @__PURE__ */ ((Icons2) => {
|
|
10
|
-
Icons2[Icons2["coinsIcon"] = 0] = "coinsIcon";
|
|
11
|
-
Icons2[Icons2["userIcon"] = 1] = "userIcon";
|
|
12
|
-
Icons2[Icons2["trophyIcon"] = 2] = "trophyIcon";
|
|
13
|
-
Icons2[Icons2["briefcaseIcon"] = 3] = "briefcaseIcon";
|
|
14
|
-
Icons2[Icons2["graduationIcon"] = 4] = "graduationIcon";
|
|
15
|
-
Icons2[Icons2["lightbulbIcon"] = 5] = "lightbulbIcon";
|
|
16
|
-
return Icons2;
|
|
17
|
-
})(Icons || {});
|
|
18
|
-
|
|
19
|
-
const ICONS_TO_SOURCE = {
|
|
20
|
-
[Icons.coinsIcon]: coins,
|
|
21
|
-
[Icons.userIcon]: user,
|
|
22
|
-
[Icons.trophyIcon]: trophy,
|
|
23
|
-
[Icons.briefcaseIcon]: briefcase,
|
|
24
|
-
[Icons.graduationIcon]: graduation,
|
|
25
|
-
[Icons.lightbulbIcon]: lightbulb
|
|
26
|
-
};
|
|
2
|
+
import { I as Icons } from './index-e5252279.js';
|
|
3
|
+
import { I as ICONS_TO_SOURCE } from './icons-e7cf7735.js';
|
|
27
4
|
|
|
28
5
|
const CountCircle = ({
|
|
29
6
|
size = "auto",
|
|
@@ -79,5 +56,5 @@ const CircleIcon = ({
|
|
|
79
56
|
})));
|
|
80
57
|
};
|
|
81
58
|
|
|
82
|
-
export { CountCircle as C,
|
|
83
|
-
//# sourceMappingURL=CircleIcon-
|
|
59
|
+
export { CountCircle as C, CircleIcon as a };
|
|
60
|
+
//# sourceMappingURL=CircleIcon-c96790bf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CircleIcon-c96790bf.js","sources":["../../src/components/CircleIcon/CircleIcon.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Icons } from '../../types';\nimport { ICONS_TO_SOURCE } from '../../constants/icons';\n\nexport type CircleIconProps = {\n iconSrc?: string;\n count?: string | number;\n onClick?: () => void;\n bgColor?: string;\n innerPadding?: string;\n size?: string;\n hideCount?: boolean;\n borderColor?: string;\n};\n\nexport type CountCircleProps = {\n size?: string;\n count?: string | number;\n innerPadding?: string;\n onClick?: () => {};\n bgColor?: string;\n className?: string;\n};\n\nexport const CountCircle: React.FC<CountCircleProps> = ({\n size = 'auto',\n count = '28',\n innerPadding = '3px 5px',\n className,\n onClick = () => {},\n bgColor = 'bg-grayscale-50',\n}) => {\n const style = {\n width: size,\n height: size,\n padding: innerPadding,\n };\n\n return (\n <section\n onClick={onClick}\n className={`${bgColor} rounded-full circle-icon-wrapper text-center absolute right-[-15px] top-[-15px] min-w-[25px] ${className}`}\n style={style}\n >\n <div className={`h-full`}>\n <p className=\"h-full line-clamp-1 font-semibold text-grayscale-900 text-[12px]\">\n {count}\n </p>\n </div>\n </section>\n );\n};\n\nexport const CircleIcon: React.FC<CircleIconProps> = ({\n iconSrc = ICONS_TO_SOURCE[Icons.coinsIcon],\n size = '52px',\n count = '28',\n innerPadding = '6px',\n onClick = () => {},\n bgColor = 'bg-grayscale-900',\n hideCount = true,\n}) => {\n const style = {\n width: size,\n height: size,\n padding: innerPadding,\n };\n\n return (\n <section\n onClick={onClick}\n className={`${bgColor} rounded-full circle-icon-wrapper p-[0px] m-[0px]`}\n style={style}\n >\n <div className={`relative w-full h-full`}>\n {!hideCount && <CountCircle count={count} />}\n <img className=\"h-full w-full object-cover\" src={iconSrc ?? ''} alt=\"Icon image\" />\n </div>\n </section>\n );\n};\n\nexport default CircleIcon;\n"],"names":[],"mappings":";;;;AAGY,MAAC,WAAW,GAAG,CAAC;AAC5B,EAAE,IAAI,GAAG,MAAM;AACf,EAAE,KAAK,GAAG,IAAI;AACd,EAAE,YAAY,GAAG,SAAS;AAC1B,EAAE,SAAS;AACX,EAAE,OAAO,GAAG,MAAM;AAClB,GAAG;AACH,EAAE,OAAO,GAAG,iBAAiB;AAC7B,CAAC,KAAK;AACN,EAAE,MAAM,KAAK,GAAG;AAChB,IAAI,KAAK,EAAE,IAAI;AACf,IAAI,MAAM,EAAE,IAAI;AAChB,IAAI,OAAO,EAAE,YAAY;AACzB,GAAG,CAAC;AACJ,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE;AACxD,IAAI,OAAO;AACX,IAAI,SAAS,EAAE,CAAC,EAAE,OAAO,CAAC,8FAA8F,EAAE,SAAS,CAAC,CAAC;AACrI,IAAI,KAAK;AACT,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,CAAC,MAAM,CAAC;AACvB,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE;AAC9C,IAAI,SAAS,EAAE,kEAAkE;AACjF,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACd,EAAE;AACU,MAAC,UAAU,GAAG,CAAC;AAC3B,EAAE,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC;AAC5C,EAAE,IAAI,GAAG,MAAM;AACf,EAAE,KAAK,GAAG,IAAI;AACd,EAAE,YAAY,GAAG,KAAK;AACtB,EAAE,OAAO,GAAG,MAAM;AAClB,GAAG;AACH,EAAE,OAAO,GAAG,kBAAkB;AAC9B,EAAE,SAAS,GAAG,IAAI;AAClB,CAAC,KAAK;AACN,EAAE,MAAM,KAAK,GAAG;AAChB,IAAI,KAAK,EAAE,IAAI;AACf,IAAI,MAAM,EAAE,IAAI;AAChB,IAAI,OAAO,EAAE,YAAY;AACzB,GAAG,CAAC;AACJ,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE;AACxD,IAAI,OAAO;AACX,IAAI,SAAS,EAAE,CAAC,EAAE,OAAO,CAAC,iDAAiD,CAAC;AAC5E,IAAI,KAAK;AACT,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,CAAC,sBAAsB,CAAC;AACvC,GAAG,EAAE,CAAC,SAAS,oBAAoB,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE;AACpE,IAAI,KAAK;AACT,GAAG,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACjD,IAAI,SAAS,EAAE,4BAA4B;AAC3C,IAAI,GAAG,EAAE,OAAO,IAAI,IAAI,GAAG,OAAO,GAAG,EAAE;AACvC,IAAI,GAAG,EAAE,YAAY;AACrB,GAAG,CAAC,CAAC,CAAC,CAAC;AACP;;;;"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import CourseCardPlaceholder from './lhplaceholder.png';
|
|
3
|
-
import
|
|
3
|
+
import trophylight from './minitrophy.svg';
|
|
4
4
|
import MiniJobIcon from './minijob.svg';
|
|
5
|
-
import
|
|
5
|
+
import puzzlelight from './minipuzzle.svg';
|
|
6
6
|
|
|
7
7
|
const TYPE_TO_COURSE_MINI_ICON = {
|
|
8
8
|
["job"]: MiniJobIcon,
|
|
9
|
-
["achievement"]:
|
|
10
|
-
["skill"]:
|
|
9
|
+
["achievement"]: trophylight,
|
|
10
|
+
["skill"]: puzzlelight
|
|
11
11
|
};
|
|
12
12
|
const TYPE_TO_COLOR = {
|
|
13
13
|
["job"]: "bg-emerald-700",
|
|
@@ -59,7 +59,7 @@ const CourseCard = ({
|
|
|
59
59
|
}, "\u2022"), /* @__PURE__ */ React.createElement("span", {
|
|
60
60
|
className: "text-grayscale-500"
|
|
61
61
|
}, semester)), /* @__PURE__ */ React.createElement("p", {
|
|
62
|
-
className: "course-card-title text-sm font-semibold"
|
|
62
|
+
className: "course-card-title text-sm font-semibold line-clamp-2"
|
|
63
63
|
}, title), /* @__PURE__ */ React.createElement("div", {
|
|
64
64
|
className: "course-card-counts-container flex items-center mt-[5px]"
|
|
65
65
|
}, /* @__PURE__ */ React.createElement(CourseCardStatBubble, {
|
|
@@ -78,4 +78,4 @@ const CourseCard = ({
|
|
|
78
78
|
};
|
|
79
79
|
|
|
80
80
|
export { CourseCard as C };
|
|
81
|
-
//# sourceMappingURL=CourseCard-
|
|
81
|
+
//# sourceMappingURL=CourseCard-f3a2c5c0.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CourseCard-f3a2c5c0.js","sources":["../../src/components/CourseCard/CourseCard.tsx"],"sourcesContent":["import React from 'react';\nimport { CourseCardProps } from '../../types';\nimport CourseCardPlaceholder from '../../assets/images/lhplaceholder.png';\n\nimport MiniTrophyIcon from '../../assets/images/minitrophy.svg';\nimport MiniJobIcon from '../../assets/images/minijob.svg';\nimport MiniPuzzleIcon from '../../assets/images/minipuzzle.svg';\n\nconst TYPE_TO_COURSE_MINI_ICON: any = {\n ['job']: MiniJobIcon,\n ['achievement']: MiniTrophyIcon,\n ['skill']: MiniPuzzleIcon,\n};\n\nconst TYPE_TO_COLOR: any = {\n ['job']: 'bg-emerald-700',\n ['achievement']: 'bg-spice-500',\n ['skill']: 'bg-indigo-500',\n};\n\ntype CourseCardStatBubbleProps = {\n count: number | string;\n type: string;\n className?: string;\n};\n\nconst CourseCardStatBubble: React.FC<CourseCardStatBubbleProps> = ({\n count = 0,\n type = 'job',\n className,\n}) => {\n const imgSrc = TYPE_TO_COURSE_MINI_ICON[type];\n const bgColor = TYPE_TO_COLOR[type];\n\n return (\n <div\n className={`course-card-stat-bubble px-[10px] rounded-[30px] flex ${bgColor} min-w-[48px] max-w-[80px] h-[30px] items-center ${className}`}\n >\n <img src={imgSrc} className=\"pr-[5px]\" />\n <span className=\"flex items-center text-sm text-white\">{count}</span>\n </div>\n );\n};\n\nexport const CourseCard: React.FC<CourseCardProps> = ({\n status = 'Enrolled',\n title = 'MECH 1340 Digital Fundamentals and Programmable Logic Controllers',\n semester = 'Fall 2022',\n jobCount = 1,\n achievementCount = 4,\n thumbSrc,\n skillCount = 9,\n className,\n onClick = () => {},\n}) => {\n return (\n <div\n onClick={onClick}\n className={`flex shadow-[0_0_8px_0px_rgba(0,0,0,0.2)] relative $ py-[10px] px-[15px] max-w-[400px] h-[130px] rounded-[20px] ${className}`}\n >\n <img\n src={CourseCardPlaceholder}\n className=\"course-card-img w-[100px] h-[111px] mr-[10px]\"\n />\n\n <div className=\"course-card-detail-info flex flex-col justify-between\">\n <div className=\"text-sm\">\n <span className=\"text-emerald-700 font-semibold\">{status}</span>\n <span className=\"spacer-dot mx-[3px]\">•</span>\n <span className=\"text-grayscale-500\">{semester}</span>\n </div>\n <p className=\"course-card-title text-sm font-semibold line-clamp-2\">{title}</p>\n <div className=\"course-card-counts-container flex items-center mt-[5px]\">\n <CourseCardStatBubble type={'job'} count={jobCount} className={'mr-[5px]'} />\n <CourseCardStatBubble\n type={'achievement'}\n count={achievementCount}\n className={'mr-[5px]'}\n />\n <CourseCardStatBubble\n type={'skill'}\n count={skillCount}\n className={'mr-[0px]'}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default CourseCard;\n"],"names":["MiniTrophyIcon","MiniPuzzleIcon"],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import CourseCardPlaceholder from './lhplaceholder.png';
|
|
3
|
+
import trophylight from './minitrophy.svg';
|
|
4
|
+
import MiniJobIcon from './minijob.svg';
|
|
5
|
+
import puzzlelight from './minipuzzle.svg';
|
|
6
|
+
import { L as LCSubtypes } from './index-e5252279.js';
|
|
7
|
+
import { C as CircleCheckButton } from './CircleCheckButton-251f4bbd.js';
|
|
8
|
+
import { R as RoundedPill } from './RoundedPill-b4f1607a.js';
|
|
9
|
+
|
|
10
|
+
const TYPE_TO_COURSE_MINI_ICON = {
|
|
11
|
+
["job"]: MiniJobIcon,
|
|
12
|
+
["achievement"]: trophylight,
|
|
13
|
+
["skill"]: puzzlelight
|
|
14
|
+
};
|
|
15
|
+
const TYPE_TO_COLOR = {
|
|
16
|
+
["job"]: "bg-emerald-700",
|
|
17
|
+
["achievement"]: "bg-spice-500",
|
|
18
|
+
["skill"]: "bg-indigo-500"
|
|
19
|
+
};
|
|
20
|
+
const CourseCardStatBubble = ({
|
|
21
|
+
count = 0,
|
|
22
|
+
type = LCSubtypes.job,
|
|
23
|
+
className
|
|
24
|
+
}) => {
|
|
25
|
+
const imgSrc = TYPE_TO_COURSE_MINI_ICON[type];
|
|
26
|
+
const bgColor = TYPE_TO_COLOR[type];
|
|
27
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
28
|
+
className: `course-card-stat-bubble px-[10px] rounded-[30px] flex ${bgColor} min-w-[48px] max-w-[80px] h-[30px] items-center ${className}`
|
|
29
|
+
}, /* @__PURE__ */ React.createElement("img", {
|
|
30
|
+
src: imgSrc,
|
|
31
|
+
className: "pr-[5px]"
|
|
32
|
+
}), /* @__PURE__ */ React.createElement("span", {
|
|
33
|
+
className: "flex items-center text-sm text-white"
|
|
34
|
+
}, count));
|
|
35
|
+
};
|
|
36
|
+
const CourseVerticalCard = ({
|
|
37
|
+
className,
|
|
38
|
+
title,
|
|
39
|
+
thumbImgSrc,
|
|
40
|
+
showStatus,
|
|
41
|
+
claimStatus = false,
|
|
42
|
+
achievementCount = 0,
|
|
43
|
+
skillCount = 0,
|
|
44
|
+
checked,
|
|
45
|
+
showChecked,
|
|
46
|
+
onCheckClick,
|
|
47
|
+
onClick
|
|
48
|
+
}) => {
|
|
49
|
+
const claimBtnStatusType = claimStatus ? LCSubtypes.course : LCSubtypes.locked;
|
|
50
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
51
|
+
onClick,
|
|
52
|
+
className: `flex flex-col shadow-[0_0_8px_0px_rgba(0,0,0,0.2)] relative $ py-[8px] px-[8px] w-[190px] h-[265px] rounded-[20px] ${className}`
|
|
53
|
+
}, /* @__PURE__ */ React.createElement("section", {
|
|
54
|
+
className: `relative flex h-[120px] flex-col justify-center items-center w-full rounded-[20px]`
|
|
55
|
+
}, /* @__PURE__ */ React.createElement("img", {
|
|
56
|
+
src: CourseCardPlaceholder,
|
|
57
|
+
className: "course-card-img h-full w-full object-cover rounded-[20px]"
|
|
58
|
+
}), showChecked && /* @__PURE__ */ React.createElement(CircleCheckButton, {
|
|
59
|
+
checked,
|
|
60
|
+
onClick: onCheckClick,
|
|
61
|
+
className: "absolute top-[5px] left-[5px]"
|
|
62
|
+
})), /* @__PURE__ */ React.createElement("div", {
|
|
63
|
+
className: "course-card-detail-info flex flex-col justify-between"
|
|
64
|
+
}, /* @__PURE__ */ React.createElement("p", {
|
|
65
|
+
className: "course-card-title text-sm text-center font-semibold line-clamp-2 mt-[4px]"
|
|
66
|
+
}, title), /* @__PURE__ */ React.createElement("div", {
|
|
67
|
+
className: "course-card-counts-container flex items-center justify-center my-[5px]"
|
|
68
|
+
}, /* @__PURE__ */ React.createElement(CourseCardStatBubble, {
|
|
69
|
+
type: "achievement",
|
|
70
|
+
count: achievementCount,
|
|
71
|
+
className: "mr-[5px]"
|
|
72
|
+
}), /* @__PURE__ */ React.createElement(CourseCardStatBubble, {
|
|
73
|
+
type: "skill",
|
|
74
|
+
count: skillCount,
|
|
75
|
+
className: "mr-[0px]"
|
|
76
|
+
}))), showStatus && /* @__PURE__ */ React.createElement("div", {
|
|
77
|
+
className: "course-card-footer absolute bottom-[6px] left-[5px]"
|
|
78
|
+
}, /* @__PURE__ */ React.createElement(RoundedPill, {
|
|
79
|
+
onClick,
|
|
80
|
+
showCheckmark: true,
|
|
81
|
+
type: claimBtnStatusType,
|
|
82
|
+
statusText: "Passed"
|
|
83
|
+
})));
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export { CourseVerticalCard as C };
|
|
87
|
+
//# sourceMappingURL=CourseVerticalCard-11cf10a3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CourseVerticalCard-11cf10a3.js","sources":["../../src/components/CourseVerticalCard/CourseVerticalCard.tsx"],"sourcesContent":["import React from 'react';\nimport { CourseCardVerticalProps } from '../../types';\nimport { CircleCheckButton } from '../CircleCheckButton';\nimport CourseCardPlaceholder from '../../assets/images/lhplaceholder.png';\nimport { RoundedPill } from '../RoundedPill';\nimport MiniTrophyIcon from '../../assets/images/minitrophy.svg';\nimport MiniJobIcon from '../../assets/images/minijob.svg';\nimport MiniPuzzleIcon from '../../assets/images/minipuzzle.svg';\nimport { LCSubtypes } from '../../types';\n\nconst TYPE_TO_COURSE_MINI_ICON: any = {\n ['job']: MiniJobIcon,\n ['achievement']: MiniTrophyIcon,\n ['skill']: MiniPuzzleIcon,\n};\n\nconst TYPE_TO_COLOR: any = {\n ['job']: 'bg-emerald-700',\n ['achievement']: 'bg-spice-500',\n ['skill']: 'bg-indigo-500',\n};\n\ntype CourseCardStatBubbleProps = {\n count: number | string;\n type: string;\n className?: string;\n};\n\nconst CourseCardStatBubble: React.FC<CourseCardStatBubbleProps> = ({\n count = 0,\n type = LCSubtypes.job,\n className,\n}) => {\n const imgSrc = TYPE_TO_COURSE_MINI_ICON[type];\n const bgColor = TYPE_TO_COLOR[type];\n\n return (\n <div\n className={`course-card-stat-bubble px-[10px] rounded-[30px] flex ${bgColor} min-w-[48px] max-w-[80px] h-[30px] items-center ${className}`}\n >\n <img src={imgSrc} className=\"pr-[5px]\" />\n <span className=\"flex items-center text-sm text-white\">{count}</span>\n </div>\n );\n};\n\nexport const CourseVerticalCard: React.FC<CourseCardVerticalProps> = ({\n className,\n title,\n thumbImgSrc,\n showStatus,\n claimStatus = false,\n achievementCount = 0,\n skillCount = 0,\n checked,\n showChecked,\n onCheckClick,\n onClick,\n}) => {\n const claimBtnStatusType = claimStatus ? LCSubtypes.course : LCSubtypes.locked;\n\n return (\n <div\n onClick={onClick}\n className={`flex flex-col shadow-[0_0_8px_0px_rgba(0,0,0,0.2)] relative $ py-[8px] px-[8px] w-[190px] h-[265px] rounded-[20px] ${className}`}\n >\n <section\n className={`relative flex h-[120px] flex-col justify-center items-center w-full rounded-[20px]`}\n >\n <img\n src={CourseCardPlaceholder}\n className=\"course-card-img h-full w-full object-cover rounded-[20px]\"\n />\n\n {showChecked && (\n <CircleCheckButton\n checked={checked}\n onClick={onCheckClick}\n className=\"absolute top-[5px] left-[5px]\"\n />\n )}\n </section>\n\n <div className=\"course-card-detail-info flex flex-col justify-between\">\n <p className=\"course-card-title text-sm text-center font-semibold line-clamp-2 mt-[4px]\">\n {title}\n </p>\n <div className=\"course-card-counts-container flex items-center justify-center my-[5px]\">\n <CourseCardStatBubble\n type={'achievement'}\n count={achievementCount}\n className={'mr-[5px]'}\n />\n <CourseCardStatBubble\n type={'skill'}\n count={skillCount}\n className={'mr-[0px]'}\n />\n </div>\n </div>\n {showStatus && (\n <div className=\"course-card-footer absolute bottom-[6px] left-[5px]\">\n <RoundedPill\n onClick={onClick}\n showCheckmark\n type={claimBtnStatusType}\n statusText={'Passed'}\n />\n </div>\n )}\n </div>\n );\n};\n\nexport default CourseVerticalCard;\n"],"names":["MiniTrophyIcon","MiniPuzzleIcon"],"mappings":"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"}
|
|
@@ -1,35 +1,30 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import MiniPuzzleIcon from './minipuzzlecolored.svg';
|
|
2
|
+
import { L as LCSubtypes } from './index-e5252279.js';
|
|
3
|
+
import { T as TYPE_TO_MINI_ICON } from './constants-3c35c9bd.js';
|
|
5
4
|
|
|
6
|
-
const TYPE_TO_COURSE_MINI_ICON = {
|
|
7
|
-
job: MiniGradIcon,
|
|
8
|
-
achievement: MiniTrophyIcon,
|
|
9
|
-
skill: MiniPuzzleIcon
|
|
10
|
-
};
|
|
11
5
|
const TYPE_TO_COLOR = {
|
|
12
|
-
|
|
6
|
+
course: "bg-emerald-50",
|
|
13
7
|
achievement: "bg-spice-50",
|
|
14
8
|
skill: "bg-indigo-50"
|
|
15
9
|
};
|
|
16
10
|
const TYPE_TO_TEXT_COLOR = {
|
|
17
|
-
|
|
11
|
+
course: "text-emerald-700",
|
|
18
12
|
achievement: "text-spice-500",
|
|
19
13
|
skill: "text-indigo-600"
|
|
20
14
|
};
|
|
21
15
|
const JobListingBubble = ({
|
|
22
16
|
count = 0,
|
|
23
|
-
type =
|
|
17
|
+
type = LCSubtypes.skill,
|
|
24
18
|
className
|
|
25
19
|
}) => {
|
|
26
|
-
const imgSrc =
|
|
20
|
+
const imgSrc = TYPE_TO_MINI_ICON[type];
|
|
27
21
|
const bgColor = TYPE_TO_COLOR[type];
|
|
28
22
|
const textColor = TYPE_TO_TEXT_COLOR[type];
|
|
29
23
|
return /* @__PURE__ */ React.createElement("div", {
|
|
30
|
-
className: `
|
|
24
|
+
className: `job-card-stat-bubble px-[10px] px-[5px] flex-nowrap rounded-[30px] flex ${bgColor} min-w-[48px] min-w-[90px] h-[30px] justify-center items-center ${className}`
|
|
31
25
|
}, /* @__PURE__ */ React.createElement("img", {
|
|
32
|
-
src: imgSrc
|
|
26
|
+
src: imgSrc,
|
|
27
|
+
className: "mr-[3px]"
|
|
33
28
|
}), /* @__PURE__ */ React.createElement("span", {
|
|
34
29
|
className: `flex items-center text-sm ${textColor} font-bold`
|
|
35
30
|
}, count));
|
|
@@ -70,7 +65,7 @@ const JobListCard = ({
|
|
|
70
65
|
if (locationRequirement && location)
|
|
71
66
|
locationText = `${locationRequirement} \u2022 ${location}`;
|
|
72
67
|
return /* @__PURE__ */ React.createElement("div", {
|
|
73
|
-
className: `flex flex-col justify-between shadow-[0_0_8px_0px_rgba(0,0,0,0.2)] relative $ py-[10px] px-[15px] max-w-[400px] h-[260px] rounded-[20px] ${className}`
|
|
68
|
+
className: `flex flex-col justify-between shadow-[0_0_8px_0px_rgba(0,0,0,0.2)] relative $ py-[10px] px-[15px] max-w-[400px] min-h-[260px] rounded-[20px] ${className}`
|
|
74
69
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
75
70
|
className: "job-listing-top flex"
|
|
76
71
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
@@ -93,19 +88,19 @@ const JobListCard = ({
|
|
|
93
88
|
}, locationText))), /* @__PURE__ */ React.createElement("div", {
|
|
94
89
|
className: "job-listing-qualifications mt-[10px]"
|
|
95
90
|
}, /* @__PURE__ */ React.createElement("div", {
|
|
96
|
-
className: "course-card-counts-container flex items-center"
|
|
91
|
+
className: "course-card-counts-container flex items-center flex-wrap"
|
|
97
92
|
}, ((_m = qualificationDisplay == null ? void 0 : qualificationDisplay.courses) == null ? void 0 : _m.fulfilledCount) && /* @__PURE__ */ React.createElement(JobListingBubble, {
|
|
98
|
-
type:
|
|
93
|
+
type: LCSubtypes.course,
|
|
99
94
|
count: courseCountDisplay,
|
|
100
|
-
className: "mr-[5px]"
|
|
95
|
+
className: "mr-[5px] min-w-[100px]"
|
|
101
96
|
}), ((_n = qualificationDisplay == null ? void 0 : qualificationDisplay.achievements) == null ? void 0 : _n.fulfilledCount) && /* @__PURE__ */ React.createElement(JobListingBubble, {
|
|
102
|
-
type:
|
|
97
|
+
type: LCSubtypes.achievement,
|
|
103
98
|
count: achievementsCountDisplay,
|
|
104
|
-
className: "mr-[5px]"
|
|
99
|
+
className: "mr-[5px] min-w-[100px]"
|
|
105
100
|
}), ((_o = qualificationDisplay == null ? void 0 : qualificationDisplay.skills) == null ? void 0 : _o.fulfilledCount) && /* @__PURE__ */ React.createElement(JobListingBubble, {
|
|
106
|
-
type:
|
|
101
|
+
type: LCSubtypes.skill,
|
|
107
102
|
count: skillsCountDisplay,
|
|
108
|
-
className: "mr-[0px]"
|
|
103
|
+
className: "mr-[0px min-w-[100px]]"
|
|
109
104
|
}))), /* @__PURE__ */ React.createElement("button", {
|
|
110
105
|
type: "button",
|
|
111
106
|
onClick,
|
|
@@ -114,4 +109,4 @@ const JobListCard = ({
|
|
|
114
109
|
};
|
|
115
110
|
|
|
116
111
|
export { JobListingBubble as J, JobListCard as a };
|
|
117
|
-
//# sourceMappingURL=JobListCard-
|
|
112
|
+
//# sourceMappingURL=JobListCard-51b725a9.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JobListCard-51b725a9.js","sources":["../../src/components/JobListCard/JobListCard.tsx"],"sourcesContent":["import React from 'react';\nimport { JobListCardProps } from '../../types';\nimport { TYPE_TO_MINI_ICON } from '../RoundedSquare';\nimport { LCSubtypes } from '../../types';\n\nconst TYPE_TO_COLOR: any = {\n course: 'bg-emerald-50',\n achievement: 'bg-spice-50',\n skill: 'bg-indigo-50',\n};\n\nconst TYPE_TO_TEXT_COLOR: any = {\n course : 'text-emerald-700',\n achievement: 'text-spice-500',\n skill: 'text-indigo-600',\n};\n\ntype JobListingBubbleProps = {\n count: number | string;\n type: LCSubtypes.course | LCSubtypes.achievement | LCSubtypes.skill;\n className?: string;\n};\n\nexport const JobListingBubble: React.FC<JobListingBubbleProps> = ({\n count = 0,\n type = LCSubtypes.skill,\n className,\n}) => {\n const imgSrc = TYPE_TO_MINI_ICON[type];\n const bgColor = TYPE_TO_COLOR[type];\n const textColor = TYPE_TO_TEXT_COLOR[type];\n return (\n <div\n className={`job-card-stat-bubble px-[10px] px-[5px] flex-nowrap rounded-[30px] flex ${bgColor} min-w-[48px] min-w-[90px] h-[30px] justify-center items-center ${className}`}\n >\n <img src={imgSrc} className=\"mr-[3px]\" />\n <span className={`flex items-center text-sm ${textColor} font-bold`}>{count}</span>\n </div>\n );\n};\n\nexport const JobListCard: React.FC<JobListCardProps> = ({\n company,\n className = 'job-listing-card',\n title,\n compensation,\n location,\n locationRequirement,\n timeRequirement,\n qualificationDisplay,\n percentQualifiedDisplay,\n postDateDisplay,\n imgThumb,\n isBookmarked,\n onBookmark,\n onClick,\n}) => {\n const courseCountDisplay = `${qualificationDisplay?.courses?.fulfilledCount ?? 0}/${\n qualificationDisplay?.courses?.totalRequiredCount ?? 0\n }`;\n const achievementsCountDisplay = `${qualificationDisplay?.achievements?.fulfilledCount ?? 0}/${\n qualificationDisplay?.achievements?.totalRequiredCount ?? 0\n }`;\n const skillsCountDisplay = `${qualificationDisplay?.skills?.fulfilledCount ?? 0}/${\n qualificationDisplay?.skills?.totalRequiredCount ?? 0\n }`;\n\n const qualifiedText = percentQualifiedDisplay\n ? `${percentQualifiedDisplay}% Qualified - Apply`\n : 'Apply';\n\n let topText = '';\n if (!compensation && timeRequirement) topText = timeRequirement;\n if (!timeRequirement && compensation) topText = compensation;\n if (timeRequirement && compensation) topText = `${compensation} • ${timeRequirement}`;\n\n let locationText = '';\n if (!location && locationRequirement) locationText = locationRequirement;\n if (!locationRequirement && location) locationText = location;\n if (locationRequirement && location) locationText = `${locationRequirement} • ${location}`;\n\n return (\n <div\n className={`flex flex-col justify-between shadow-[0_0_8px_0px_rgba(0,0,0,0.2)] relative $ py-[10px] px-[15px] max-w-[400px] min-h-[260px] rounded-[20px] ${className}`}\n >\n <div className=\"job-listing-top flex\">\n <div className=\"flex text-grayscale-500 text-xs uppercase w-full line-clamp-1\">\n {topText}\n </div>\n </div>\n <p className=\"text-grayscale-500 text-xs line-clamp-1 flex-shrink-0\">\n {' '}\n {postDateDisplay}\n </p>\n\n <div className=\"job-listing-center flex mt-[5px]\">\n {imgThumb && (\n <img\n className=\"object-cover w-[80px] flex-shrink-0 items-center justify-center rounded-[15px] mr-[10px]\"\n src={imgThumb}\n />\n )}\n\n <div className=\"job-listing-description flex flex-col\">\n <h4 className=\"text-lg font-bold line-clamp-2\">{title}</h4>\n <p className=\"text-sm line-clamp-1\">{company}</p>\n <span className=\"text-sm line-clamp-1\">{locationText}</span>\n </div>\n </div>\n\n <div className=\"job-listing-qualifications mt-[10px]\">\n <div className=\"course-card-counts-container flex items-center flex-wrap\">\n {qualificationDisplay?.courses?.fulfilledCount && (\n <JobListingBubble\n type={LCSubtypes.course}\n count={courseCountDisplay}\n className={'mr-[5px] min-w-[100px]'}\n />\n )}\n {qualificationDisplay?.achievements?.fulfilledCount && (\n <JobListingBubble\n type={LCSubtypes.achievement}\n count={achievementsCountDisplay}\n className={'mr-[5px] min-w-[100px]'}\n />\n )}\n {qualificationDisplay?.skills?.fulfilledCount && (\n <JobListingBubble\n type={LCSubtypes.skill}\n count={skillsCountDisplay}\n className={'mr-[0px min-w-[100px]]'}\n />\n )}\n </div>\n </div>\n\n <button\n type=\"button\"\n onClick={onClick}\n className=\"mt-[10px] bg-cyan-700 py-[15px] px-[2px] rounded-[40px] text-grayscale-50 text-[17px] font-bold\"\n >\n {qualifiedText}\n </button>\n </div>\n );\n};\n\nexport default JobListCard;\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { L as LCSubtypes } from './index-e5252279.js';
|
|
3
|
+
import { T as TYPE_TO_MINI_ICON } from './constants-3c35c9bd.js';
|
|
4
|
+
|
|
5
|
+
const TYPE_TO_COLOR = {
|
|
6
|
+
[LCSubtypes.course]: "bg-emerald-50",
|
|
7
|
+
[LCSubtypes.achievement]: "bg-spice-50",
|
|
8
|
+
[LCSubtypes.skill]: "bg-indigo-50"
|
|
9
|
+
};
|
|
10
|
+
const TYPE_TO_TEXT_COLOR = {
|
|
11
|
+
[LCSubtypes.course]: "text-emerald-700",
|
|
12
|
+
[LCSubtypes.achievement]: "text-spice-500",
|
|
13
|
+
[LCSubtypes.skill]: "text-indigo-600"
|
|
14
|
+
};
|
|
15
|
+
const LearnPill = ({
|
|
16
|
+
count = 0,
|
|
17
|
+
type = LCSubtypes.course,
|
|
18
|
+
className
|
|
19
|
+
}) => {
|
|
20
|
+
const imgSrc = TYPE_TO_MINI_ICON[type];
|
|
21
|
+
const bgColor = TYPE_TO_COLOR[type];
|
|
22
|
+
const textColor = TYPE_TO_TEXT_COLOR[type];
|
|
23
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
24
|
+
className: `course-card-stat-bubble px-[10px] rounded-[30px] flex ${bgColor} min-w-[48px] max-w-[100px] h-[30px] items-center ${className}`
|
|
25
|
+
}, /* @__PURE__ */ React.createElement("img", {
|
|
26
|
+
src: imgSrc,
|
|
27
|
+
className: "mr-[5px]"
|
|
28
|
+
}), /* @__PURE__ */ React.createElement("span", {
|
|
29
|
+
className: `flex items-center text-sm ${textColor} font-bold`
|
|
30
|
+
}, count));
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export { LearnPill as L };
|
|
34
|
+
//# sourceMappingURL=LearnPill-f4a13a3d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LearnPill-f4a13a3d.js","sources":["../../src/components/LearnPill/LearnPill.tsx"],"sourcesContent":["import React from 'react';\nimport { LearnPillProps, LCSubtypes } from '../../types';\nimport { TYPE_TO_MINI_ICON } from '../RoundedSquare';\n\nconst TYPE_TO_COLOR: any = {\n [LCSubtypes.course]: 'bg-emerald-50',\n [LCSubtypes.achievement]: 'bg-spice-50',\n [LCSubtypes.skill]: 'bg-indigo-50',\n};\n\nconst TYPE_TO_TEXT_COLOR: any = {\n [LCSubtypes.course]: 'text-emerald-700',\n [LCSubtypes.achievement]: 'text-spice-500',\n [LCSubtypes.skill]: 'text-indigo-600',\n};\n\nexport const LearnPill: React.FC<LearnPillProps> = ({\n count = 0,\n type = LCSubtypes.course,\n className,\n}) => {\n const imgSrc = TYPE_TO_MINI_ICON[type];\n const bgColor = TYPE_TO_COLOR[type];\n const textColor = TYPE_TO_TEXT_COLOR[type];\n return (\n <div\n className={`course-card-stat-bubble px-[10px] rounded-[30px] flex ${bgColor} min-w-[48px] max-w-[100px] h-[30px] items-center ${className}`}\n >\n <img src={imgSrc} className=\"mr-[5px]\" />\n <span className={`flex items-center text-sm ${textColor} font-bold`}>{count}</span>\n </div>\n );\n};\n\nexport default LearnPill;\n"],"names":[],"mappings":";;;;AAGA,MAAM,aAAa,GAAG;AACtB,EAAE,CAAC,UAAU,CAAC,MAAM,GAAG,eAAe;AACtC,EAAE,CAAC,UAAU,CAAC,WAAW,GAAG,aAAa;AACzC,EAAE,CAAC,UAAU,CAAC,KAAK,GAAG,cAAc;AACpC,CAAC,CAAC;AACF,MAAM,kBAAkB,GAAG;AAC3B,EAAE,CAAC,UAAU,CAAC,MAAM,GAAG,kBAAkB;AACzC,EAAE,CAAC,UAAU,CAAC,WAAW,GAAG,gBAAgB;AAC5C,EAAE,CAAC,UAAU,CAAC,KAAK,GAAG,iBAAiB;AACvC,CAAC,CAAC;AACU,MAAC,SAAS,GAAG,CAAC;AAC1B,EAAE,KAAK,GAAG,CAAC;AACX,EAAE,IAAI,GAAG,UAAU,CAAC,MAAM;AAC1B,EAAE,SAAS;AACX,CAAC,KAAK;AACN,EAAE,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACzC,EAAE,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;AACtC,EAAE,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAC7C,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACpD,IAAI,SAAS,EAAE,CAAC,sDAAsD,EAAE,OAAO,CAAC,kDAAkD,EAAE,SAAS,CAAC,CAAC;AAC/I,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,GAAG,EAAE,MAAM;AACf,IAAI,SAAS,EAAE,UAAU;AACzB,GAAG,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AAClD,IAAI,SAAS,EAAE,CAAC,0BAA0B,EAAE,SAAS,CAAC,UAAU,CAAC;AACjE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AACb;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useState } from 'react';
|
|
2
2
|
import { T as Trophy } from './Trophy-702610b8.js';
|
|
3
|
-
import { a as Coins, U as User, L as Lightbulb, B as Briefcase, G as Graduation, C as Checkmark } from './
|
|
3
|
+
import { a as Coins, U as User, L as Lightbulb, B as Briefcase, G as Graduation, C as Checkmark } from './User-d3aa7eb3.js';
|
|
4
4
|
|
|
5
5
|
var NotificationTypeEnum = /* @__PURE__ */ ((NotificationTypeEnum2) => {
|
|
6
6
|
NotificationTypeEnum2["Currency"] = "currency";
|
|
@@ -128,4 +128,4 @@ const Notification = ({
|
|
|
128
128
|
};
|
|
129
129
|
|
|
130
130
|
export { Notification as N, NotificationTypeStyles as a };
|
|
131
|
-
//# sourceMappingURL=Notification-
|
|
131
|
+
//# sourceMappingURL=Notification-ac50790d.js.map
|