@learncard/react 2.8.13 → 2.8.15
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/BoostGenericCard-85c4b752.js +114 -0
- package/dist/cjs/BoostGenericCard-85c4b752.js.map +1 -0
- package/dist/cjs/{BoostSmallCard-e51886cf.js → BoostSmallCard-07103b39.js} +5 -8
- package/dist/cjs/BoostSmallCard-07103b39.js.map +1 -0
- package/dist/cjs/{CertDisplayCardSkillsCount-b1565a79.js → CertDisplayCardSkillsCount-de4a0019.js} +3 -3
- package/dist/cjs/CertDisplayCardSkillsCount-de4a0019.js.map +1 -0
- package/dist/cjs/{CertificateDisplayCard-355bb9db.js → CertificateDisplayCard-b4987c0a.js} +3 -3
- package/dist/cjs/{CertificateDisplayCard-355bb9db.js.map → CertificateDisplayCard-b4987c0a.js.map} +1 -1
- package/dist/cjs/{Lightbox-d7b749fd.js → Lightbox-ce6ddca1.js} +96 -39
- package/dist/cjs/Lightbox-ce6ddca1.js.map +1 -0
- package/dist/cjs/{MeritBadgeDisplayCard-cdb59ca4.js → MeritBadgeDisplayCard-0bf40f57.js} +2 -2
- package/dist/cjs/{MeritBadgeDisplayCard-cdb59ca4.js.map → MeritBadgeDisplayCard-0bf40f57.js.map} +1 -1
- package/dist/cjs/ThreeDotVertical-e39ac5df.js +42 -0
- package/dist/cjs/ThreeDotVertical-e39ac5df.js.map +1 -0
- package/dist/cjs/{VCCard-41ec5401.js → VCCard-8b3e8047.js} +2 -2
- package/dist/cjs/{VCCard-41ec5401.js.map → VCCard-8b3e8047.js.map} +1 -1
- package/dist/cjs/{VCDisplayCard2-896291d9.js → VCDisplayCard2-eac4573b.js} +4 -4
- package/dist/cjs/{VCDisplayCard2-896291d9.js.map → VCDisplayCard2-eac4573b.js.map} +1 -1
- package/dist/cjs/index.js +11 -9
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index13.js +11 -9
- package/dist/cjs/index13.js.map +1 -1
- package/dist/cjs/index19.js +1 -1
- package/dist/cjs/index21.js +2 -2
- package/dist/cjs/index3.js +3 -29
- package/dist/cjs/index3.js.map +1 -1
- package/dist/cjs/index36.js +2 -0
- package/dist/cjs/index36.js.map +1 -1
- package/dist/cjs/index37.js +6 -6
- package/dist/cjs/index4.js +2 -2
- package/dist/cjs/index40.js +5 -5
- package/dist/cjs/index6.js +3 -3
- package/dist/esm/BoostGenericCard-14030d36.js +108 -0
- package/dist/esm/BoostGenericCard-14030d36.js.map +1 -0
- package/dist/esm/{BoostSmallCard-5d47a19f.js → BoostSmallCard-7cb33197.js} +5 -7
- package/dist/esm/BoostSmallCard-7cb33197.js.map +1 -0
- package/dist/esm/{CertDisplayCardSkillsCount-9cf487a7.js → CertDisplayCardSkillsCount-813fb647.js} +3 -3
- package/dist/esm/CertDisplayCardSkillsCount-813fb647.js.map +1 -0
- package/dist/esm/{CertificateDisplayCard-3ff759b1.js → CertificateDisplayCard-b45bac21.js} +3 -3
- package/dist/esm/{CertificateDisplayCard-3ff759b1.js.map → CertificateDisplayCard-b45bac21.js.map} +1 -1
- package/dist/esm/{Lightbox-f02b5b4f.js → Lightbox-8a43ba52.js} +96 -39
- package/dist/esm/Lightbox-8a43ba52.js.map +1 -0
- package/dist/esm/{MeritBadgeDisplayCard-a3e1cac5.js → MeritBadgeDisplayCard-32705737.js} +2 -2
- package/dist/esm/{MeritBadgeDisplayCard-a3e1cac5.js.map → MeritBadgeDisplayCard-32705737.js.map} +1 -1
- package/dist/esm/ThreeDotVertical-e3144ad0.js +36 -0
- package/dist/esm/ThreeDotVertical-e3144ad0.js.map +1 -0
- package/dist/esm/{VCCard-ec7b123f.js → VCCard-46406892.js} +2 -2
- package/dist/esm/{VCCard-ec7b123f.js.map → VCCard-46406892.js.map} +1 -1
- package/dist/esm/{VCDisplayCard2-a4144508.js → VCDisplayCard2-c8aaeb7f.js} +4 -4
- package/dist/esm/{VCDisplayCard2-a4144508.js.map → VCDisplayCard2-c8aaeb7f.js.map} +1 -1
- package/dist/esm/index.js +10 -9
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index13.js +10 -9
- package/dist/esm/index13.js.map +1 -1
- package/dist/esm/index19.js +1 -1
- package/dist/esm/index21.js +2 -2
- package/dist/esm/index3.js +3 -29
- package/dist/esm/index3.js.map +1 -1
- package/dist/esm/index36.js +1 -0
- package/dist/esm/index36.js.map +1 -1
- package/dist/esm/index37.js +6 -6
- package/dist/esm/index4.js +2 -2
- package/dist/esm/index40.js +5 -5
- package/dist/esm/index6.js +3 -3
- package/dist/index.d.ts +5 -1
- package/dist/main.css +1 -1
- package/dist/main.js +1 -1
- package/package.json +2 -2
- package/dist/cjs/BoostGenericCard-08a4e856.js +0 -133
- package/dist/cjs/BoostGenericCard-08a4e856.js.map +0 -1
- package/dist/cjs/BoostSmallCard-e51886cf.js.map +0 -1
- package/dist/cjs/CertDisplayCardSkillsCount-b1565a79.js.map +0 -1
- package/dist/cjs/Lightbox-d7b749fd.js.map +0 -1
- package/dist/esm/BoostGenericCard-3a36ddf6.js +0 -126
- package/dist/esm/BoostGenericCard-3a36ddf6.js.map +0 -1
- package/dist/esm/BoostSmallCard-5d47a19f.js.map +0 -1
- package/dist/esm/CertDisplayCardSkillsCount-9cf487a7.js.map +0 -1
- package/dist/esm/Lightbox-f02b5b4f.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BoostGenericCard-3a36ddf6.js","sources":["../../src/helpers/display.helpers.ts","../../src/components/BoostGenericCard/BoostGenericCard.tsx"],"sourcesContent":["import { LCCategoryEnum } from '../types';\n\nimport { BadgeDisplayIcon } from '../components/svgs/BadgeDisplayIcon';\nimport { CertificateDisplayIcon } from '../components/svgs/CertificateDisplayIcon';\nimport { IDDisplayIcon } from '../components/svgs/IDDisplayIcon';\nimport { CourseDisplayIcon } from '../components/svgs/CourseDisplayIcon';\nimport { AwardDisplayIcon } from '../components/svgs/AwardDisplayIcon';\n\nexport enum DisplayTypeEnum {\n Badge = 'badge',\n Certificate = 'certificate',\n ID = 'id',\n Course = 'course',\n Award = 'award',\n}\n\nexport const getDefaultDisplayType = (category: string): DisplayTypeEnum => {\n if (category === LCCategoryEnum.socialBadge || category === LCCategoryEnum.workHistory) {\n return DisplayTypeEnum.Badge;\n }\n\n if (category === LCCategoryEnum.id || category === LCCategoryEnum.membership) {\n return DisplayTypeEnum.ID;\n }\n\n if (\n category === LCCategoryEnum.achievement ||\n category === LCCategoryEnum.accommodations ||\n category === LCCategoryEnum.accomplishments ||\n category === LCCategoryEnum.learningHistory\n ) {\n return DisplayTypeEnum.Certificate;\n }\n\n return DisplayTypeEnum.Badge;\n};\n\nexport const getDisplayIcon = (displayType: DisplayTypeEnum): React.FC<{ className?: string }> => {\n switch (displayType) {\n case DisplayTypeEnum.Badge:\n return BadgeDisplayIcon;\n case DisplayTypeEnum.Certificate:\n return CertificateDisplayIcon;\n case DisplayTypeEnum.ID:\n return IDDisplayIcon;\n case DisplayTypeEnum.Course:\n return CourseDisplayIcon;\n case DisplayTypeEnum.Award:\n return AwardDisplayIcon;\n default:\n return BadgeDisplayIcon;\n }\n};\n","import React from 'react';\nimport { BoostGenericCardProps, WalletCategoryTypes } from '../../types';\nimport { TYPE_TO_IMG_SRC, TYPE_TO_WALLET_DARK_COLOR } from '../../constants';\nimport { CircleCheckButton } from '../CircleCheckButton';\nimport ThreeDots from '../../assets/images/DotsThreeOutline.svg';\nimport { DisplayTypeEnum, getDisplayIcon } from '../../helpers/display.helpers';\nimport { CertDisplayCardSkillsCount } from '../CertificateDisplayCard';\n\nexport const BoostGenericCard: React.FC<BoostGenericCardProps> = ({\n title,\n customTitle,\n thumbImgSrc,\n customThumbClass = '',\n customHeaderClass = '',\n type = WalletCategoryTypes.achievements,\n className,\n onCheckClick,\n showChecked,\n checkStatus,\n customThumbComponent,\n innerOnClick,\n bgImgSrc,\n issuerName,\n customIssuerName,\n dateDisplay,\n customDateDisplay,\n optionsTriggerOnClick,\n verifierBadge,\n credential,\n isInSkillsModal,\n displayType,\n linkedCredentialsCount = 0,\n linkedCredentialsClassName = '',\n}) => {\n const thumbClass = TYPE_TO_WALLET_DARK_COLOR[type]\n ? `bg-${TYPE_TO_WALLET_DARK_COLOR[type]}`\n : 'bg-grayscale-50';\n const defaultThumbClass = `small-boost-card-thumb flex h-[110px] w-[110px] my-[10px] mx-auto ${thumbClass} overflow-hidden flex-col justify-center items-center rounded-full ${customThumbClass}`;\n const imgSrc = thumbImgSrc?.trim() !== '' ? thumbImgSrc : TYPE_TO_IMG_SRC[type];\n const headerBgColor = TYPE_TO_WALLET_DARK_COLOR[type]\n ? `bg-${TYPE_TO_WALLET_DARK_COLOR[type]}`\n : 'bg-grayscale-900';\n const checkBtnClass = checkStatus ? 'generic-vc-card checked' : 'generic-vc-card unchecked';\n const defaultHeaderClass = `flex generic-card-title w-full justify-center ${customHeaderClass}`;\n\n const handleInnerClick = () => {\n innerOnClick?.();\n };\n\n const handleOptionsClick = () => {\n optionsTriggerOnClick?.();\n };\n\n const DisplayIcon = getDisplayIcon(displayType as DisplayTypeEnum);\n\n return (\n <div\n className={`flex generic-display-card-simple bg-white flex-col shadow-bottom relative py-[0px] px-[0px] w-[160px] h-[265px] min-h-[265px] rounded-[20px] overflow-hidden ${className}`}\n >\n {optionsTriggerOnClick && (\n <section\n className=\"absolute cursor-pointer shadow-bottom h-[30px] w-[30px] top-[5px] right-[5px] rounded-full overflow-hidden z-20 bg-white flex items-center justify-center\"\n onClick={handleOptionsClick}\n >\n <img\n alt=\"Menu dropdown icon\"\n className=\"h-[20px] w-[20px] object-cover overflow-hidden\"\n src={ThreeDots}\n />\n </section>\n )}\n\n {bgImgSrc && (\n <section className=\"absolute top-[-50px] shadow-bottom left-[0px] rounded-b-full overflow-hidden z-0 mt-3\">\n <img className=\"h-full w-full object-cover overflow-hidden\" src={bgImgSrc} />\n </section>\n )}\n <button\n type=\"button\"\n className=\"boost-small-card inner-click-container z-10\"\n onClick={handleInnerClick}\n >\n {customThumbComponent && customThumbComponent}\n {!customThumbComponent && (\n <section className={defaultThumbClass}>\n {thumbImgSrc && thumbImgSrc?.trim() !== '' && (\n <img\n className=\"generic-display-card-img h-full w-full w-[110px] h-[110px] rounded-full object-cover overflow-hidden\"\n src={thumbImgSrc ?? ''}\n alt=\"Credential Achievement Image\"\n />\n )}\n {(!thumbImgSrc || thumbImgSrc?.trim() === '') && (\n <img\n className=\"max-w-[110px] w-full h-full p-[0px] object-cover rounded-full\"\n src={imgSrc}\n />\n )}\n </section>\n )}\n <section className=\"boost-generic-info-section\">\n {!customTitle && (\n <div className={`${defaultHeaderClass} items-center`}>\n <p className=\"relative z-[100] small-boost-title text-[16px] leading-[130%] px-[0px] font-medium text-center text-grayscale-900 line-clamp-2 max-w-full\">\n {title}\n </p>\n </div>\n )}\n\n {customTitle && customTitle}\n\n {customIssuerName && customIssuerName}\n {!customIssuerName && (\n <span className=\"flex items-center justify-center small-generic-boost-issuer-name line-clamp-1 text-[12px] text-grayscale-700 px-[6px]\">\n by <span className=\"font-bold whitespace-pre\"> {issuerName}</span>\n </span>\n )}\n\n {customDateDisplay && customDateDisplay}\n {!customDateDisplay && (\n <p className=\"small-generic-boost-date-display line-clamp-1 flex items-center justify-center text-center text-[12px] text-grayscale-700 px-[7px]\">\n {verifierBadge}\n {dateDisplay}\n </p>\n )}\n\n {isInSkillsModal && (\n <CertDisplayCardSkillsCount\n skills={credential?.skills ?? []}\n onClick={handleInnerClick}\n className={'boost-generic'}\n isInSkillsModal={isInSkillsModal}\n />\n )}\n </section>\n </button>\n\n {/* Linked Credentials */}\n {linkedCredentialsCount > 0 && (\n <div\n className={`absolute bottom-0 left-0 h-[20px] w-full rounded-b-[20px] flex items-center justify-center py-4 mt-1 ${linkedCredentialsClassName}`}\n >\n <DisplayIcon className={`h-[20px] w-[20px]`} />{' '}\n <span className=\"ml-2 font-poppins text-sm font-semibold text-white\">\n +{linkedCredentialsCount} Linked\n </span>\n </div>\n )}\n\n {showChecked && (\n <div className=\"check-btn-overlay absolute top-[5px] left-[5px]\">\n <CircleCheckButton\n checked={checkStatus}\n onClick={onCheckClick}\n className={checkBtnClass}\n />\n </div>\n )}\n </div>\n );\n};\n\nexport default BoostGenericCard;\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BoostSmallCard-5d47a19f.js","sources":["../../src/helpers/color.helpers.ts","../../src/components/BoostSmallCard/BoostSmallCard.tsx"],"sourcesContent":["import { WalletCategoryTypes } from '../types';\n\nexport const getDarkBGColor = (type: WalletCategoryTypes) => {\n if (!type) return '';\n\n if (type === WalletCategoryTypes?.achievements) {\n return 'bg-orange-500';\n } else if (type === WalletCategoryTypes?.learningHistory) {\n return 'bg-emerald-500';\n } else if (type === WalletCategoryTypes?.skills) {\n return 'bg-violet-500';\n } else if (type === WalletCategoryTypes?.jobHistory) {\n return 'bg-blue-500';\n } else if (type === WalletCategoryTypes?.socialBadge) {\n return 'bg-cyan-500';\n } else if (type === WalletCategoryTypes?.relationships) {\n return 'bg-pink-500';\n } else if (type === WalletCategoryTypes?.accommodations) {\n return 'bg-amber-500';\n } else if (type === WalletCategoryTypes?.accomplishments) {\n return 'bg-lime-500';\n } else if (type === WalletCategoryTypes?.events) {\n return 'bg-fuchsia-500';\n } else if (type === WalletCategoryTypes?.membership) {\n return 'bg-teal-500';\n } else if (type === WalletCategoryTypes?.goals) {\n return 'bg-rose-500';\n } else if (type === WalletCategoryTypes?.ids) {\n return 'bg-yellow-500';\n } else if (type === WalletCategoryTypes?.currency) {\n return 'bg-cyan-500';\n }\n\n return 'bg-grayscale-900';\n};\n","import React from 'react';\n\nimport CaretRightFilled from '../../assets/images/CaretRightFilled.svg';\nimport DefaultFace from '../../assets/images/default-face.jpeg';\nimport AddAwardLight from '../../assets/images/addawardlight.svg';\nimport ThreeDots from '../../assets/images/DotsThreeOutline.svg';\nimport { CircleCheckButton } from '../CircleCheckButton';\n\nimport { BoostSmallCardProps, WalletCategoryTypes } from '../../types';\nimport { TYPE_TO_IMG_SRC, TYPE_TO_WALLET_DARK_COLOR } from '../../constants';\nimport { getDarkBGColor } from '../../helpers/color.helpers';\n\nexport const BoostSmallCard: React.FC<BoostSmallCardProps> = ({\n title = 'Title Lorem Ipsum',\n customTitle,\n thumbImgSrc,\n customThumbClass = '',\n customHeaderClass = '',\n type = WalletCategoryTypes.achievements,\n className,\n onCheckClick,\n showChecked,\n checkStatus,\n arrowOnClick,\n buttonOnClick,\n customButtonComponent,\n customBodyClass,\n customBodyComponent,\n customThumbComponent,\n customDraftComponent,\n innerOnClick,\n issueHistory,\n bgImgSrc,\n optionsTriggerOnClick,\n}) => {\n const thumbClass = TYPE_TO_WALLET_DARK_COLOR[type]\n ? `bg-${TYPE_TO_WALLET_DARK_COLOR[type]}`\n : 'bg-grayscale-50';\n const defaultThumbClass = `small-boost-card-thumb flex h-[110px] w-[110px] my-[10px] mx-auto ${thumbClass} overflow-hidden flex-col justify-center items-center rounded-full ${customThumbClass}`;\n const imgSrc = thumbImgSrc?.trim() !== '' ? thumbImgSrc : TYPE_TO_IMG_SRC[type];\n const headerBgColor = getDarkBGColor(type);\n const checkBtnClass = checkStatus ? 'generic-vc-card checked' : 'generic-vc-card unchecked';\n const defaultHeaderClass = `flex generic-card-title w-full justify-center ${customHeaderClass}`;\n const defaultBodyClass = ` boost-small-card-body flex justify-center items-center text-center text-[14px] overflow-hidden text-grayscale-500 py-[5px] px-[10px] ${customBodyClass}`;\n const defaultButtonClass = `cursor-pointer small-boost-boost-btn flex boost-btn-click rounded-[40px] w-[140px] h-[48px] text-white flex justify-center items-center ${headerBgColor}`;\n const innerClickContainerClass = `relative cursor-pointer boost-small-card inner-click-container z-10`;\n\n const issueHistoryDisplay =\n issueHistory && issueHistory?.length > 3 ? issueHistory?.slice(0, 3) : issueHistory;\n const renderIssueHistory = issueHistoryDisplay?.map(issueItem => {\n return (\n <div\n key={issueItem?.id}\n className=\"profile-thumb-img border-[1px] border-white border-solid vc-issuee-image h-[35px] w-[35px] rounded-full overflow-hidden mx-[-5px]\"\n >\n <img\n className=\"h-full w-full object-cover\"\n src={issueItem?.thumb || DefaultFace}\n alt=\"profile\"\n />\n </div>\n );\n });\n\n const handleInnerClick = () => {\n innerOnClick?.();\n };\n\n const handleOptionsClick = () => {\n optionsTriggerOnClick?.();\n };\n\n return (\n <div\n className={`flex generic-display-card-simple bg-white flex-col shadow-bottom relative $ py-[0px] px-[0px] w-[160px] h-[280px] rounded-[20px] overflow-hidden ${className}`}\n >\n {optionsTriggerOnClick && (\n <section\n className=\"absolute cursor-pointer h-[30px] w-[30px] top-[5px] right-[5px] rounded-full overflow-hidden z-20 bg-white flex items-center justify-center\"\n onClick={handleOptionsClick}\n >\n <img\n alt=\"Menu dropdown icon\"\n className=\"h-[20px] w-[20px] object-cover overflow-hidden\"\n src={ThreeDots}\n />\n </section>\n )}\n\n {bgImgSrc && (\n <section className=\"absolute top-[-50px] shadow-bottom left-[0px] rounded-b-full overflow-hidden z-0 mt-3\">\n <img className=\"h-full w-full object-cover overflow-hidden\" src={bgImgSrc} />\n </section>\n )}\n\n <div className={innerClickContainerClass} onClick={handleInnerClick}>\n {customThumbComponent && customThumbComponent}\n {!customThumbComponent && (\n <section className={defaultThumbClass}>\n {thumbImgSrc && thumbImgSrc?.trim() !== '' && (\n <img\n className=\"generic-display-card-img h-full w-full w-[110px] h-[110px] rounded-full object-cover overflow-hidden\"\n src={thumbImgSrc ?? ''}\n alt=\"Credential Achievement Image\"\n />\n )}\n {(!thumbImgSrc || thumbImgSrc?.trim() === '') && (\n <img\n className=\"max-w-[110px] w-full h-full p-[0px] object-cover rounded-full\"\n src={imgSrc}\n />\n )}\n </section>\n )}\n\n {customTitle && customTitle}\n {!customTitle && (\n <section className={defaultHeaderClass}>\n <p className=\"relative z-[100] small-boost-title text-[16px] leading-[130%] p-[0px] font-medium text-center line-clamp-2\">\n {title}\n </p>\n </section>\n )}\n\n <section className={defaultBodyClass}>\n {customBodyComponent && customBodyComponent}\n {!customBodyComponent &&\n issueHistory &&\n issueHistory?.length > 0 &&\n renderIssueHistory}\n {!customBodyComponent && issueHistory && issueHistory?.length > 3 && (\n <span className=\"small-boost-issue-count ml-[10px] font-semibold\">\n +{issueHistory?.length - 3}\n </span>\n )}\n </section>\n </div>\n\n <section className=\"small-boost-card-footer flex justify-center items-center absolute bottom-[15px] w-full\">\n {customButtonComponent && customButtonComponent}\n\n {!customButtonComponent && (\n <div className=\"flex w-full flex-col items-center justify-center\">\n {customDraftComponent && customDraftComponent}\n <div onClick={buttonOnClick} className={defaultButtonClass}>\n <img className=\"h-[25px] mr-[7px] text-\" src={AddAwardLight} />\n <span className=\"font-mouse text-[25px] tracking-wider\">BOOST</span>\n </div>\n </div>\n )}\n </section>\n {showChecked && (\n <div className=\"check-btn-overlay absolute top-[5px] left-[5px]\">\n <CircleCheckButton\n checked={checkStatus}\n onClick={onCheckClick}\n className={checkBtnClass}\n />\n </div>\n )}\n\n {arrowOnClick && (\n <button\n type=\"button\"\n onClick={arrowOnClick}\n className=\"arrow-btn-overlay absolute top-[52px] right-[2px]\"\n >\n <img\n className=\"h-full w-full object-contai\"\n src={CaretRightFilled ?? ''}\n alt=\"Right Caret\"\n />\n </button>\n )}\n </div>\n );\n};\n\nexport default BoostSmallCard;\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CertDisplayCardSkillsCount-9cf487a7.js","sources":["../../src/components/CertificateDisplayCard/CertDisplayCardSkillsCount.tsx"],"sourcesContent":["import React from 'react';\n\nimport PuzzlePiece from '../svgs/PuzzlePiece';\n\nimport { categorizeSkills, getTotalCountOfSkills } from '../../helpers/credential.helpers';\n\n// Copy of VCDisplayCardSkillsCount, necessary to avoid circular dependency\nexport const CertDisplayCardSkillsCount: React.FC<{\n skills: { category: string; skill: string; subSkills: string[] }[];\n onClick?: () => void;\n className?: string;\n isInSkillsModal?: boolean;\n}> = ({ skills, onClick, className, isInSkillsModal }) => {\n const skillsCount = getTotalCountOfSkills(skills);\n\n if (skillsCount === 0) return <></>;\n\n const skillsMap = categorizeSkills(skills);\n\n // Calculate total count of skills and subskills\n const totalSkills: any = Object.values(skillsMap).reduce(\n (total: any, category: any) => total + category?.length,\n 0\n );\n const totalSubskills: any = Object.values(skillsMap).reduce(\n (total: any, category: any) => total + (category?.totalSubskillsCount || 0),\n 0\n );\n\n const total: any = totalSkills + totalSubskills;\n\n const text: string = skillsCount === 1 ? 'Skill' : 'Skills';\n\n return (\n <div\n className={`flex items-center justify-center cursor-pointer bg-white rounded-[20px] ${className === 'boost-generic' ? '' : 'px-4 py-2 mt-8 shadow-bottom'} `}\n onClick={onClick}\n >\n <div\n className={`text-violet-500 flex items-center justify-center tracking-[0.75px] font-poppins font-semibold ${\n className === 'boost-generic' ? 'text-[12px] mt-[5px]' : 'text-xl'\n }`}\n >\n {isInSkillsModal ? (\n <>\n <div\n className=\"bg-violet-500 rounded-full flex items-center justify-center mr-[5px] p-1 h-[20px] w-[20px]\"\n >\n <PuzzlePiece className=\"text-white\" fill=\"#fff\" />\n </div>\n +{total} {text}\n </>\n ) : (\n <>\n +{total} {text}\n <div\n className=\"bg-violet-500 rounded-full flex items-center justify-center ml-2 p-1 h-[30px] w-[30px]\"\n >\n <PuzzlePiece className=\"text-white\" fill=\"#fff\" />\n </div>\n </>\n )}\n </div>\n </div>\n );\n};\n\nexport default CertDisplayCardSkillsCount;\n"],"names":["total"],"mappings":";;;;AAOO,MAAM,6BAKR,CAAC,EAAE,QAAQ,OAAS,EAAA,SAAA,EAAW,iBAAsB,KAAA;AACtD,EAAM,MAAA,WAAA,GAAc,sBAAsB,MAAM,CAAA,CAAA;AAEhD,EAAA,IAAI,WAAgB,KAAA,CAAA;AAAG,IAAA,uBAAS,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,CAAA,CAAA;AAEhC,EAAM,MAAA,SAAA,GAAY,iBAAiB,MAAM,CAAA,CAAA;AAGzC,EAAA,MAAM,WAAmB,GAAA,MAAA,CAAO,MAAO,CAAA,SAAS,CAAE,CAAA,MAAA;AAAA,IAC9C,CAACA,MAAAA,EAAY,QAAkBA,KAAAA,MAAAA,IAAQ,QAAU,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,MAAA,CAAA;AAAA,IACjD,CAAA;AAAA,GACJ,CAAA;AACA,EAAA,MAAM,cAAsB,GAAA,MAAA,CAAO,MAAO,CAAA,SAAS,CAAE,CAAA,MAAA;AAAA,IACjD,CAACA,MAAAA,EAAY,QAAkBA,KAAAA,MAAAA,IAAAA,CAAS,qCAAU,mBAAuB,KAAA,CAAA,CAAA;AAAA,IACzE,CAAA;AAAA,GACJ,CAAA;AAEA,EAAA,MAAM,QAAa,WAAc,GAAA,cAAA,CAAA;AAEjC,EAAM,MAAA,IAAA,GAAe,WAAgB,KAAA,CAAA,GAAI,OAAU,GAAA,QAAA,CAAA;AAEnD,EAAA,uBACK,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IACG,SAAW,EAAA,CAAA,wEAAA,EAA2E,SAAc,KAAA,eAAA,GAAkB,EAAK,GAAA,8BAAA,CAAA,CAAA,CAAA;AAAA,IAC3H,OAAA;AAAA,GAAA,kBAEC,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IACG,SAAW,EAAA,CAAA,8FAAA,EACP,SAAc,KAAA,eAAA,GAAkB,sBAAyB,GAAA,SAAA,CAAA,CAAA;AAAA,GAG5D,EAAA,eAAA,6EAEY,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IACG,SAAU,EAAA,4FAAA;AAAA,GAAA,kBAET,KAAA,CAAA,aAAA,CAAA,WAAA,EAAA;AAAA,IAAY,SAAU,EAAA,YAAA;AAAA,IAAa,IAAK,EAAA,MAAA;AAAA,GAAO,CACpD,CAAA,EAAM,GACJ,EAAA,KAAA,EAAM,GAAE,EAAA,IACd,CAEA,mBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,EAAE,GACI,EAAA,KAAA,EAAM,GAAE,EAAA,IAAA,kBACT,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAA,IACG,SAAU,EAAA,wFAAA;AAAA,GAAA,kBAET,KAAA,CAAA,aAAA,CAAA,WAAA,EAAA;AAAA,IAAY,SAAU,EAAA,YAAA;AAAA,IAAa,IAAK,EAAA,MAAA;AAAA,GAAO,CACpD,CACJ,CAEZ,CACJ,CAAA,CAAA;AAER;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Lightbox-f02b5b4f.js","sources":["../../src/helpers/video.helpers.ts","../../src/components/Lightbox/Lightbox.tsx"],"sourcesContent":["type VideoPlatform = 'youtube' | 'vimeo' | 'unknown';\n\nexport type VideoMetadata = {\n type: VideoPlatform;\n videoId: string | null;\n embedUrl: string | null;\n thumbnailUrl: string | null;\n};\n\nexport const getVideoMetadata = async (url: string): Promise<VideoMetadata> => {\n try {\n const parsedUrl = new URL(url);\n const hostname = parsedUrl.hostname.replace(/^www\\./, '');\n\n // YouTube\n if (hostname.includes('youtube.com') || hostname === 'youtu.be') {\n const match = url.match(\n /(?:youtu\\.be\\/|youtube\\.com\\/(?:watch\\?v=|embed\\/|v\\/|shorts\\/))([\\w-]{11})/\n );\n const videoId = match?.[1] ?? null;\n\n return {\n type: 'youtube',\n videoId,\n embedUrl: videoId ? `https://www.youtube.com/embed/${videoId}` : null,\n thumbnailUrl: videoId\n ? `https://img.youtube.com/vi/${videoId}/maxresdefault.jpg`\n : null,\n };\n }\n\n // Vimeo\n if (hostname.includes('vimeo.com')) {\n const match = url.match(/vimeo\\.com\\/(\\d+)/);\n const videoId = match?.[1] ?? null;\n\n const oembedUrl = `https://vimeo.com/api/oembed.json?url=${encodeURIComponent(url)}`;\n const res = await fetch(oembedUrl);\n const data = await res.json();\n\n return {\n type: 'vimeo',\n videoId,\n embedUrl: videoId ? `https://player.vimeo.com/video/${videoId}` : null,\n thumbnailUrl: data?.thumbnail_url ?? null,\n };\n }\n\n return {\n type: 'unknown',\n videoId: null,\n embedUrl: null,\n thumbnailUrl: null,\n };\n } catch (err) {\n console.error('Failed to extract video metadata:', err);\n return {\n type: 'unknown',\n videoId: null,\n embedUrl: null,\n thumbnailUrl: null,\n };\n }\n};\n","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\nimport { getVideoMetadata, VideoMetadata } from '../../helpers/video.helpers';\n\nexport type LightboxItemType = 'photo' | 'video';\n\nexport type LightboxItem = {\n url: string;\n type: LightboxItemType;\n};\n\nexport type LightboxImage = LightboxItem & {\n type: 'photo';\n alt?: string;\n};\n\nexport type LightboxVideo = LightboxItem & {\n type: 'video';\n};\n\nexport type LightboxProps = {\n items: LightboxItem[];\n currentUrl: string | undefined;\n setCurrentUrl: (url: string | undefined) => void;\n};\n\nexport const Lightbox: React.FC<LightboxProps> = ({ items, currentUrl, setCurrentUrl }) => {\n const currentItem = items.find(item => item.url === currentUrl);\n const innerRef = useRef<HTMLImageElement>(null);\n const [videoMetadata, setVideoMetadata] = useState<VideoMetadata | null>(null);\n\n const goToNextItem = useCallback(() => {\n const currentIndex = items.findIndex(item => item.url === currentUrl);\n const nextItem = items.at((currentIndex + 1) % items.length);\n if (nextItem) setCurrentUrl(nextItem.url);\n }, [currentUrl, items, setCurrentUrl]);\n\n const goToPreviousItem = useCallback(() => {\n const currentIndex = items.findIndex(item => item.url === currentUrl);\n const previousItem = items.at((currentIndex - 1 + items.length) % items.length);\n if (previousItem) setCurrentUrl(previousItem.url);\n }, [currentUrl, items, setCurrentUrl]);\n\n useEffect(() => {\n const keydownListener = (e: KeyboardEvent) => {\n if (!currentUrl || !currentItem) return;\n\n if (e.key === 'Escape') {\n e.preventDefault();\n setCurrentUrl(undefined);\n }\n\n if (e.key === 'ArrowRight') {\n e.preventDefault();\n goToNextItem();\n }\n\n if (e.key === 'ArrowLeft') {\n e.preventDefault();\n goToPreviousItem();\n }\n };\n\n window.addEventListener('keydown', keydownListener);\n return () => window.removeEventListener('keydown', keydownListener);\n }, [currentUrl, currentItem, goToNextItem, goToPreviousItem, setCurrentUrl]);\n\n useEffect(() => {\n const fetchMetadata = async () => {\n if (currentItem?.type === 'video') {\n const metadata = await getVideoMetadata(currentItem.url);\n setVideoMetadata(metadata);\n } else {\n setVideoMetadata(null);\n }\n };\n\n fetchMetadata();\n }, []);\n\n if (!currentUrl || !currentItem) return null;\n\n return createPortal(\n <div\n className=\"absolute top-0 left-0 w-screen h-screen bg-[rgba(0,0,0,0.9)] text-white flex justify-center items-center z-[999999]\"\n onClick={e => {\n if (e.target !== innerRef.current) {\n setCurrentUrl(undefined);\n }\n }}\n >\n {currentItem.type === 'photo' && (\n <img\n className=\"cursor-pointer max-w-[90vw] max-h-[90vh]\"\n src={currentUrl}\n onClick={() => window.open(currentUrl, '_blank')}\n ref={innerRef}\n alt=\"\"\n />\n )}\n\n {currentItem.type === 'video' && videoMetadata?.embedUrl && (\n <div className=\"relative w-[90vw] max-w-[800px] aspect-video\">\n <iframe\n src={videoMetadata.embedUrl}\n className=\"absolute top-0 left-0 w-full h-full rounded-md\"\n title=\"Video player\"\n frameBorder=\"0\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n />\n </div>\n )}\n </div>,\n document.body\n );\n};\n"],"names":["__async"],"mappings":"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"}
|