@learncard/react 2.6.57 → 2.6.59

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 (152) hide show
  1. package/dist/cjs/{AchievementCard-6e875eff.js → AchievementCard-a52e4f25.js} +3 -3
  2. package/dist/cjs/{AchievementCard-6e875eff.js.map → AchievementCard-a52e4f25.js.map} +1 -1
  3. package/dist/cjs/{BoostGenericCard-78173946.js → BoostGenericCard-7426cbea.js} +2 -2
  4. package/dist/cjs/{BoostGenericCard-78173946.js.map → BoostGenericCard-7426cbea.js.map} +1 -1
  5. package/dist/cjs/{BoostSmallCard-a18bc6b0.js → BoostSmallCard-0b3a3dd8.js} +2 -2
  6. package/dist/cjs/{BoostSmallCard-a18bc6b0.js.map → BoostSmallCard-0b3a3dd8.js.map} +1 -1
  7. package/dist/cjs/{CertificateDisplayCard-405573a7.js → CertificateDisplayCard-d93af598.js} +1885 -18
  8. package/dist/cjs/CertificateDisplayCard-d93af598.js.map +1 -0
  9. package/dist/cjs/{CircleCheckButton-533f6909.js → CircleCheckButton-abff235d.js} +2 -2
  10. package/dist/cjs/{CircleCheckButton-533f6909.js.map → CircleCheckButton-abff235d.js.map} +1 -1
  11. package/dist/cjs/{CircleIcon-4b16b093.js → CircleIcon-dace003c.js} +2 -2
  12. package/dist/cjs/{CircleIcon-4b16b093.js.map → CircleIcon-dace003c.js.map} +1 -1
  13. package/dist/cjs/{CourseVerticalCard-192f2b04.js → CourseVerticalCard-2958d043.js} +3 -3
  14. package/dist/cjs/{CourseVerticalCard-192f2b04.js.map → CourseVerticalCard-2958d043.js.map} +1 -1
  15. package/dist/cjs/{GenericCard-3805a866.js → GenericCard-6f8770f5.js} +2 -2
  16. package/dist/cjs/{GenericCard-3805a866.js.map → GenericCard-6f8770f5.js.map} +1 -1
  17. package/dist/cjs/{RoundedPill-e30b61f8.js → RoundedPill-4bce9068.js} +2 -2
  18. package/dist/cjs/{RoundedPill-e30b61f8.js.map → RoundedPill-4bce9068.js.map} +1 -1
  19. package/dist/cjs/{RoundedSquare-71308a4a.js → RoundedSquare-caa49231.js} +3 -3
  20. package/dist/cjs/{RoundedSquare-71308a4a.js.map → RoundedSquare-caa49231.js.map} +1 -1
  21. package/dist/cjs/{SkillTabCard-16609965.js → SkillTabCard-2be1570e.js} +3 -3
  22. package/dist/cjs/{SkillTabCard-16609965.js.map → SkillTabCard-2be1570e.js.map} +1 -1
  23. package/dist/cjs/{VCCard-397ba465.js → VCCard-a698fb77.js} +4 -4
  24. package/dist/cjs/{VCCard-397ba465.js.map → VCCard-a698fb77.js.map} +1 -1
  25. package/dist/cjs/{VCDisplayBackFace-3cc78d41.js → VCDisplayBackFace-91668901.js} +2 -2
  26. package/dist/cjs/{VCDisplayBackFace-3cc78d41.js.map → VCDisplayBackFace-91668901.js.map} +1 -1
  27. package/dist/cjs/{VCDisplayCard-0f7226d7.js → VCDisplayCard-d5fcddb7.js} +3 -3
  28. package/dist/cjs/{VCDisplayCard-0f7226d7.js.map → VCDisplayCard-d5fcddb7.js.map} +1 -1
  29. package/dist/cjs/VCDisplayCard2-f99e286c.js +835 -0
  30. package/dist/cjs/VCDisplayCard2-f99e286c.js.map +1 -0
  31. package/dist/cjs/{credential.helpers-f1087746.js → credential.helpers-a3c3d503.js} +2 -2
  32. package/dist/cjs/{credential.helpers-f1087746.js.map → credential.helpers-a3c3d503.js.map} +1 -1
  33. package/dist/cjs/{icons-9d37a8b8.js → icons-9878f84c.js} +5 -4
  34. package/dist/cjs/icons-9878f84c.js.map +1 -0
  35. package/dist/cjs/idIcon.svg +4 -0
  36. package/dist/cjs/index.js +20 -19
  37. package/dist/cjs/index.js.map +1 -1
  38. package/dist/cjs/index10.js +5 -4
  39. package/dist/cjs/index10.js.map +1 -1
  40. package/dist/cjs/index12.js +5 -4
  41. package/dist/cjs/index12.js.map +1 -1
  42. package/dist/cjs/index13.js +20 -19
  43. package/dist/cjs/index13.js.map +1 -1
  44. package/dist/cjs/index2.js +5 -4
  45. package/dist/cjs/index2.js.map +1 -1
  46. package/dist/cjs/index27.js +3 -2
  47. package/dist/cjs/index27.js.map +1 -1
  48. package/dist/cjs/index28.js +4 -3
  49. package/dist/cjs/index28.js.map +1 -1
  50. package/dist/cjs/index3.js +5 -4
  51. package/dist/cjs/index3.js.map +1 -1
  52. package/dist/cjs/index32.js +5 -4
  53. package/dist/cjs/index32.js.map +1 -1
  54. package/dist/cjs/index36.js +8 -7
  55. package/dist/cjs/index36.js.map +1 -1
  56. package/dist/cjs/index37.js +4 -3
  57. package/dist/cjs/index37.js.map +1 -1
  58. package/dist/cjs/index38.js +5 -4
  59. package/dist/cjs/index38.js.map +1 -1
  60. package/dist/cjs/index39.js +11 -10
  61. package/dist/cjs/index39.js.map +1 -1
  62. package/dist/cjs/index4.js +5 -4
  63. package/dist/cjs/index4.js.map +1 -1
  64. package/dist/cjs/index40.js +2 -1
  65. package/dist/cjs/index40.js.map +1 -1
  66. package/dist/cjs/index6.js +4 -3
  67. package/dist/cjs/index6.js.map +1 -1
  68. package/dist/cjs/index7.js +4 -3
  69. package/dist/cjs/index7.js.map +1 -1
  70. package/dist/cjs/index8.js +3 -2
  71. package/dist/cjs/index8.js.map +1 -1
  72. package/dist/esm/{AchievementCard-33b363b2.js → AchievementCard-e83fb98a.js} +3 -3
  73. package/dist/esm/{AchievementCard-33b363b2.js.map → AchievementCard-e83fb98a.js.map} +1 -1
  74. package/dist/esm/{BoostGenericCard-e60fdb61.js → BoostGenericCard-d691d173.js} +2 -2
  75. package/dist/esm/{BoostGenericCard-e60fdb61.js.map → BoostGenericCard-d691d173.js.map} +1 -1
  76. package/dist/esm/{BoostSmallCard-5c843cd0.js → BoostSmallCard-ece551a1.js} +2 -2
  77. package/dist/esm/{BoostSmallCard-5c843cd0.js.map → BoostSmallCard-ece551a1.js.map} +1 -1
  78. package/dist/esm/{CertificateDisplayCard-e0fb8f15.js → CertificateDisplayCard-5fbb5a9d.js} +1875 -19
  79. package/dist/esm/CertificateDisplayCard-5fbb5a9d.js.map +1 -0
  80. package/dist/esm/{CircleCheckButton-fca4676f.js → CircleCheckButton-aba0f804.js} +2 -2
  81. package/dist/esm/{CircleCheckButton-fca4676f.js.map → CircleCheckButton-aba0f804.js.map} +1 -1
  82. package/dist/esm/{CircleIcon-69ee6f6e.js → CircleIcon-b45511e1.js} +2 -2
  83. package/dist/esm/{CircleIcon-69ee6f6e.js.map → CircleIcon-b45511e1.js.map} +1 -1
  84. package/dist/esm/{CourseVerticalCard-78de56d0.js → CourseVerticalCard-da219627.js} +3 -3
  85. package/dist/esm/{CourseVerticalCard-78de56d0.js.map → CourseVerticalCard-da219627.js.map} +1 -1
  86. package/dist/esm/{GenericCard-dfa82091.js → GenericCard-a4de814a.js} +2 -2
  87. package/dist/esm/{GenericCard-dfa82091.js.map → GenericCard-a4de814a.js.map} +1 -1
  88. package/dist/esm/{RoundedPill-fb5c7ccb.js → RoundedPill-3f27d4ac.js} +2 -2
  89. package/dist/esm/{RoundedPill-fb5c7ccb.js.map → RoundedPill-3f27d4ac.js.map} +1 -1
  90. package/dist/esm/{RoundedSquare-0b89fe31.js → RoundedSquare-80a5d236.js} +3 -3
  91. package/dist/esm/{RoundedSquare-0b89fe31.js.map → RoundedSquare-80a5d236.js.map} +1 -1
  92. package/dist/esm/{SkillTabCard-ddf067a7.js → SkillTabCard-3670457e.js} +3 -3
  93. package/dist/esm/{SkillTabCard-ddf067a7.js.map → SkillTabCard-3670457e.js.map} +1 -1
  94. package/dist/esm/{VCCard-138e9793.js → VCCard-387f2a5d.js} +4 -4
  95. package/dist/esm/{VCCard-138e9793.js.map → VCCard-387f2a5d.js.map} +1 -1
  96. package/dist/esm/{VCDisplayBackFace-07fcf920.js → VCDisplayBackFace-b2024cfb.js} +2 -2
  97. package/dist/esm/{VCDisplayBackFace-07fcf920.js.map → VCDisplayBackFace-b2024cfb.js.map} +1 -1
  98. package/dist/esm/{VCDisplayCard-c7aee3a6.js → VCDisplayCard-69585484.js} +3 -3
  99. package/dist/esm/{VCDisplayCard-c7aee3a6.js.map → VCDisplayCard-69585484.js.map} +1 -1
  100. package/dist/esm/VCDisplayCard2-1af6a4c1.js +828 -0
  101. package/dist/esm/VCDisplayCard2-1af6a4c1.js.map +1 -0
  102. package/dist/esm/{credential.helpers-56ed8ed6.js → credential.helpers-96c9bb51.js} +2 -2
  103. package/dist/esm/{credential.helpers-56ed8ed6.js.map → credential.helpers-96c9bb51.js.map} +1 -1
  104. package/dist/esm/{icons-25993244.js → icons-6ed3416f.js} +4 -3
  105. package/dist/esm/icons-6ed3416f.js.map +1 -0
  106. package/dist/esm/idIcon.svg +4 -0
  107. package/dist/esm/index.js +19 -18
  108. package/dist/esm/index.js.map +1 -1
  109. package/dist/esm/index10.js +5 -4
  110. package/dist/esm/index10.js.map +1 -1
  111. package/dist/esm/index12.js +5 -4
  112. package/dist/esm/index12.js.map +1 -1
  113. package/dist/esm/index13.js +19 -18
  114. package/dist/esm/index13.js.map +1 -1
  115. package/dist/esm/index2.js +5 -4
  116. package/dist/esm/index2.js.map +1 -1
  117. package/dist/esm/index27.js +3 -2
  118. package/dist/esm/index27.js.map +1 -1
  119. package/dist/esm/index28.js +4 -3
  120. package/dist/esm/index28.js.map +1 -1
  121. package/dist/esm/index3.js +5 -4
  122. package/dist/esm/index3.js.map +1 -1
  123. package/dist/esm/index32.js +5 -4
  124. package/dist/esm/index32.js.map +1 -1
  125. package/dist/esm/index36.js +8 -7
  126. package/dist/esm/index36.js.map +1 -1
  127. package/dist/esm/index37.js +4 -3
  128. package/dist/esm/index37.js.map +1 -1
  129. package/dist/esm/index38.js +5 -4
  130. package/dist/esm/index38.js.map +1 -1
  131. package/dist/esm/index39.js +9 -8
  132. package/dist/esm/index39.js.map +1 -1
  133. package/dist/esm/index4.js +5 -4
  134. package/dist/esm/index4.js.map +1 -1
  135. package/dist/esm/index40.js +2 -1
  136. package/dist/esm/index40.js.map +1 -1
  137. package/dist/esm/index6.js +4 -3
  138. package/dist/esm/index6.js.map +1 -1
  139. package/dist/esm/index7.js +4 -3
  140. package/dist/esm/index7.js.map +1 -1
  141. package/dist/esm/index8.js +3 -2
  142. package/dist/esm/index8.js.map +1 -1
  143. package/dist/index.d.ts +3 -0
  144. package/package.json +1 -1
  145. package/dist/cjs/CertificateDisplayCard-405573a7.js.map +0 -1
  146. package/dist/cjs/VCDisplayCard2-594288c0.js +0 -2691
  147. package/dist/cjs/VCDisplayCard2-594288c0.js.map +0 -1
  148. package/dist/cjs/icons-9d37a8b8.js.map +0 -1
  149. package/dist/esm/CertificateDisplayCard-e0fb8f15.js.map +0 -1
  150. package/dist/esm/VCDisplayCard2-c6f9f62e.js +0 -2674
  151. package/dist/esm/VCDisplayCard2-c6f9f62e.js.map +0 -1
  152. package/dist/esm/icons-25993244.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"VCDisplayCard2-c6f9f62e.js","sources":["../../src/components/svgs/LeftArrow.tsx","../../src/components/svgs/RoundedX.tsx","../../src/components/VCDisplayCard2/FitText.tsx","../../src/components/VCDisplayCard2/InfoBox.tsx","../../src/components/VCDisplayCard2/IssueHistoryBox.tsx","../../src/components/VCDisplayCard2/MediaAttachmentsBox.tsx","../../src/components/VCDisplayCard2/RibbonEnd.tsx","../../src/constants/skills.ts","../../src/components/VCDisplayCard2/TopLevelSkill.tsx","../../src/components/VCDisplayCard2/Subskill.tsx","../../src/components/VCDisplayCard2/SelectedSkills.tsx","../../src/components/VCDisplayCard2/SkillsBox.tsx","../../src/components/VCDisplayCard2/TruncateTextBox.tsx","../../src/components/VCDisplayCard2/VerificationRow.tsx","../../src/components/VCDisplayCard2/VerificationsBox.tsx","../../src/components/VCDisplayCard2/VC2BackFace.tsx","../../src/components/VCDisplayCard2/VC2FrontFaceInfo.tsx","../../src/components/VCDisplayCard2/VCDisplayCardCategoryType.tsx","../../src/components/VCDisplayCard2/VCDisplayCard2.tsx"],"sourcesContent":["import React from 'react';\n\ntype LeftArrowProps = {\n className?: string;\n color?: string;\n size?: string;\n};\n\nconst LeftArrow: React.FC<LeftArrowProps> = ({ className = '', size = '20' }) => {\n return (\n <svg\n width={size}\n height={size}\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={className}\n >\n <path\n d=\"M8.93299 17.942L1.43299 10.442C1.31582 10.3247 1.25 10.1657 1.25 9.99999C1.25 9.83423 1.31582 9.67526 1.43299 9.55802L8.93299 2.05802C9.02041 1.97062 9.13178 1.91111 9.25301 1.887C9.37425 1.8629 9.49991 1.87528 9.61412 1.92258C9.72832 1.96989 9.82593 2.04999 9.89461 2.15277C9.96329 2.25554 9.99995 2.37638 9.99996 2.49999V5.62499H16.25C16.5814 5.62537 16.8991 5.75718 17.1334 5.99152C17.3678 6.22586 17.4996 6.54358 17.5 6.87499V13.125C17.4996 13.4564 17.3678 13.7741 17.1334 14.0085C16.8991 14.2428 16.5814 14.3746 16.25 14.375H9.99996V17.5C9.99995 17.6236 9.96329 17.7444 9.89461 17.8472C9.82593 17.95 9.72832 18.0301 9.61412 18.0774C9.49991 18.1247 9.37425 18.1371 9.25301 18.113C9.13178 18.0889 9.02041 18.0294 8.93299 17.942Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport default LeftArrow;\n","import React from 'react';\n\ntype RoundedXProps = {\n className?: string;\n};\n\nconst RoundedX: React.FC<RoundedXProps> = ({ className = '' }) => {\n return (\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className={className}\n >\n <path\n d=\"M18.75 5.25L5.25 18.75\"\n stroke=\"#18224E\"\n strokeWidth=\"4\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M18.75 18.75L5.25 5.25\"\n stroke=\"#18224E\"\n strokeWidth=\"4\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n};\n\nexport default RoundedX;\n","import React, { useEffect, useRef } from 'react';\n\ninterface FitTextProps {\n text: string;\n width: string;\n className?: string;\n minFontSize?: number;\n maxFontSize?: number;\n}\n\nconst FitText: React.FC<FitTextProps> = ({\n text,\n width,\n className = '',\n minFontSize = 10,\n maxFontSize = 100,\n}) => {\n const textRef = useRef<HTMLDivElement>(null);\n let animationFrameId: number | null = null;\n\n const adjustFontSize = () => {\n if (textRef.current) {\n const currentFontSize = parseFloat(\n window.getComputedStyle(textRef.current).getPropertyValue('font-size')\n );\n\n // Need to calculate spacing based on nowrap to prevent thrashing\n textRef.current.style.whiteSpace = 'nowrap';\n const parentWidth = (textRef.current.parentNode as any)?.clientWidth;\n const scrollWidth = textRef.current.scrollWidth || textRef.current.offsetWidth;\n\n // Sometimes scrollWidth can temporarily be 0. If so, just try again next frame\n if (scrollWidth === 0) {\n if (animationFrameId !== null) {\n cancelAnimationFrame(animationFrameId);\n }\n\n animationFrameId = requestAnimationFrame(adjustFontSize);\n\n return;\n }\n\n const newFontSize = Math.min(\n Math.max((parentWidth / scrollWidth) * currentFontSize, minFontSize),\n maxFontSize\n );\n\n textRef.current.style.fontSize = `${newFontSize}px`;\n textRef.current.style.whiteSpace = newFontSize === minFontSize ? 'normal' : 'nowrap';\n }\n };\n\n const handleResize = () => {\n if (animationFrameId !== null) {\n cancelAnimationFrame(animationFrameId);\n }\n\n animationFrameId = requestAnimationFrame(adjustFontSize);\n };\n\n useEffect(() => {\n window.addEventListener('resize', handleResize);\n adjustFontSize();\n\n return () => {\n window.removeEventListener('resize', handleResize);\n if (animationFrameId !== null) {\n cancelAnimationFrame(animationFrameId);\n }\n };\n }, [text]);\n\n return (\n <div style={{ width }} className={`text-center ${className}`}>\n <span\n className={`text-[${minFontSize}px] transition-[font-size] whitespace-nowrap`}\n ref={textRef}\n >\n {text}\n </span>\n </div>\n );\n};\n\nexport default FitText;\n","import React from 'react';\n\ntype InfoBoxProps = {\n text: string;\n handleClose: () => void;\n backgroundColor?: string;\n};\n\nconst InfoBox: React.FC<InfoBoxProps> = ({ text, handleClose, backgroundColor = '#6366F1' }) => {\n const bgColorWithOpacity = `${backgroundColor}1F`; // 12% opacity\n return (\n <div\n className=\"info-box p-[10px] rounded-[10px] w-full font-poppins text-[12px] leading[18px]\"\n style={{ backgroundColor: bgColorWithOpacity }}\n >\n {text}{' '}\n <button onClick={handleClose} className=\"text-indigo-500 font-[700] select-none\">\n Close\n </button>\n </div>\n );\n};\n\nexport default InfoBox;\n","import React, { useState } from 'react';\nimport DefaultFace from '../../assets/images/default-face.jpeg';\n\nimport { IssueHistory } from '../../types';\n\ntype SkillsBoxProps = {\n issueHistory: IssueHistory[];\n customIssueHistoryComponent?: React.ReactNode;\n};\n\nconst IssueHistoryBox: React.FC<SkillsBoxProps> = ({\n issueHistory,\n customIssueHistoryComponent,\n}) => {\n let renderIssueHistory = issueHistory?.map(issueItem => {\n return (\n <div\n className=\"flex items-center issue-log-item border-b-[1px] py-[5px] border-grayscale-200 border-solid w-full\"\n key={issueItem?.id}\n >\n <div className=\"profile-thumb-img vc-issuee-image h-[35px] w-[35px] rounded-full overflow-hidden\">\n <img\n className=\"h-full w-full object-cover select-none\"\n src={issueItem?.thumb || DefaultFace}\n alt=\"profile\"\n />\n </div>\n <div className=\"ml-[9px] flex flex-col justify-center\">\n <p className=\"issue-item-name font-montserrat font-semibold text-grayscale-900 text-[14px] \">\n {issueItem?.name}\n </p>\n <p className=\"issue-item-date font-montserrat text-[12px] text-grayscale-600 \">\n {issueItem?.date}\n </p>\n </div>\n </div>\n );\n });\n\n return (\n <div className=\"bg-white flex flex-col items-start gap-[10px] rounded-[20px] shadow-bottom px-[15px] py-[20px] w-full relative\">\n <h3 className=\"text-[20px] leading-[20px] text-grayscale-900\">Issue Log</h3>\n {!customIssueHistoryComponent ? renderIssueHistory : customIssueHistoryComponent}\n </div>\n );\n};\n\nexport default IssueHistoryBox;\n","import React, { useEffect, useState } from 'react';\nimport prettyBytes from 'pretty-bytes';\n\nimport Camera from '../svgs/Camera';\nimport LinkIcon from '../svgs/LinkIcon';\nimport VideoIcon from '../svgs/VideoIcon';\nimport GenericDocumentIcon from '../svgs/GenericDocumentIcon';\n\nimport { Attachment, MediaMetadata, VideoMetadata } from '../../types';\nimport { getBaseUrl } from '../../helpers/url.helpers';\nimport { Lightbox, LightboxItem } from '../Lightbox';\n\ntype MediaAttachmentsBoxProps = {\n attachments: Attachment[];\n getFileMetadata?: (url: string) => MediaMetadata;\n getVideoMetadata?: (url: string) => VideoMetadata;\n onMediaAttachmentClick?: (url: string, type: 'photo' | 'document' | 'video' | 'link') => void;\n enableLightbox?: boolean;\n};\n\nconst defaultGetFileMetadata = async (url: string) => {\n const isFilestack = url.includes('filestack');\n if (!isFilestack) return;\n\n const urlParams = url.split('.com/')[1]?.split('/');\n if (!urlParams) return;\n const handle = urlParams[urlParams.length - 1];\n\n let fetchFailed = false;\n const data = await fetch(`https://cdn.filestackcontent.com/${handle}/metadata`)\n .then(res => res.json())\n .catch(() => (fetchFailed = true));\n\n if (fetchFailed) return;\n\n const fileExtension = data.filename.split('.')[1];\n\n return {\n fileExtension,\n sizeInBytes: data.size,\n numberOfPages: undefined,\n };\n};\n\nconst defaultGetVideoMetadata = async (url: string) => {\n const isYoutube = url.includes('youtube');\n if (!isYoutube) return;\n\n const metadataUrl = `http://youtube.com/oembed?url=${url}&format=json`;\n\n let fetchFailed = false;\n const metadata = await fetch(metadataUrl)\n .then(res => res.json())\n .catch(() => (fetchFailed = true));\n\n if (fetchFailed) return;\n\n return {\n title: metadata.title,\n imageUrl: metadata.thumbnail_url,\n videoLength: '', // TODO figure out how to get this\n };\n};\n\nconst MediaAttachmentsBox: React.FC<MediaAttachmentsBoxProps> = ({\n attachments,\n getFileMetadata = defaultGetFileMetadata,\n getVideoMetadata = defaultGetVideoMetadata,\n onMediaAttachmentClick,\n enableLightbox = false,\n}) => {\n const [documentMetadata, setDocumentMetadata] = useState<{\n [documentUrl: string]: MediaMetadata | undefined;\n }>({});\n const [videoMetadata, setVideoMetadata] = useState<{\n [videoUrl: string]: VideoMetadata | undefined;\n }>({});\n\n const mediaAttachments: Attachment[] = [];\n const documentsAndLinks: Attachment[] = [];\n attachments.forEach(a => {\n switch (a.type) {\n case 'document':\n case 'link':\n documentsAndLinks.push(a);\n break;\n case 'photo':\n case 'video':\n mediaAttachments.push(a);\n break;\n default:\n break;\n }\n });\n\n useEffect(() => {\n const getMetadata = async (attachments: Attachment[]): Promise<any> => {\n const docMetadata: { [docUrl: string]: MediaMetadata | undefined } = {};\n const videoMetadata: { [videoUrl: string]: VideoMetadata | undefined } = {};\n await Promise.all(\n attachments.map(async attachment => {\n if (attachment.type === 'document') {\n docMetadata[attachment.url] = await getFileMetadata(attachment.url);\n } else if (attachment.type === 'video') {\n videoMetadata[attachment.url] = await getVideoMetadata(attachment.url);\n }\n })\n );\n\n setVideoMetadata(videoMetadata);\n setDocumentMetadata(docMetadata);\n };\n\n const videos = attachments.filter(a => a.type === 'video');\n getMetadata([...documentsAndLinks, ...videos]);\n }, []);\n\n const [currentLightboxUrl, setCurrentLightboxUrl] = useState<string | undefined>(undefined);\n const lightboxItems = mediaAttachments.filter(\n a => a.type === 'photo' || a.type === 'video'\n ) as LightboxItem[];\n const handleMediaAttachmentClick = (\n url: string,\n type: 'photo' | 'document' | 'video' | 'link'\n ) => {\n if (type === 'photo' || type === 'video') {\n setCurrentLightboxUrl(url);\n }\n\n onMediaAttachmentClick?.(url, type);\n };\n\n return (\n <div className=\"media-attachments-box bg-white flex flex-col items-start gap-[10px] rounded-[20px] shadow-bottom px-[15px] py-[20px] w-full\">\n <h3 className=\"text-[20px] leading-[20px] text-grayscale-900\">Media Attachments</h3>\n {mediaAttachments.length > 0 && (\n <div className=\"flex gap-[5px] justify-between flex-wrap w-full\">\n {enableLightbox && (\n <Lightbox\n items={lightboxItems}\n currentUrl={currentLightboxUrl}\n setCurrentUrl={setCurrentLightboxUrl}\n />\n )}\n {mediaAttachments.map((media, index) => {\n let innerContent: React.ReactNode;\n let title = media.title;\n\n if (media.type === 'video') {\n const metadata = videoMetadata[media.url];\n title = (title || metadata?.title) ?? '';\n const baseUrl = getBaseUrl(media.url);\n const iconTop = title || baseUrl;\n\n innerContent = (\n <div\n className=\"absolute top-0 left-0 right-0 bottom-0 bg-cover bg-no-repeat font-poppins text-white text-[12px] font-[400] leading-[17px] flex flex-col justify-end items-start p-[10px] text-left bg-rose-600 rounded-[15px]\"\n style={{\n backgroundImage: metadata?.imageUrl\n ? `linear-gradient(180deg, rgba(0, 0, 0, 0) 44.20%, rgba(0, 0, 0, 0.6) 69%), url(${\n metadata?.imageUrl ?? ''\n })`\n : undefined,\n }}\n >\n {!metadata?.imageUrl && (\n <VideoIcon size=\"60\" className=\"m-auto\" />\n )}\n <div\n className={`absolute ${\n iconTop ? 'top-[10px]' : 'bottom-[10px]'\n } left-[10px] z-10 flex items-center gap-[5px]`}\n >\n {metadata?.imageUrl && <VideoIcon />}\n {metadata?.videoLength && (\n <span className=\"leading-[23px]\">\n {metadata.videoLength}\n </span>\n )}\n </div>\n {baseUrl && <span className=\"font-[600]\">{baseUrl}</span>}\n {title && <span className=\"line-clamp-2\">{title}</span>}\n </div>\n );\n } else {\n innerContent = (\n <div className=\"absolute top-0 left-0 right-0 bottom-0 h-min\">\n <img className=\"rounded-[15px]\" src={media.url} />\n <Camera className=\"relative bottom-[30px] left-[10px] z-10\" />\n </div>\n );\n }\n\n const className = `media-attachment ${media.type} w-[49%] pt-[49%] overflow-hidden relative`;\n\n if (onMediaAttachmentClick || enableLightbox) {\n return (\n <button\n key={index}\n className={className}\n onClick={() =>\n handleMediaAttachmentClick(media.url, media.type)\n }\n >\n {innerContent}\n </button>\n );\n }\n\n return (\n <div key={index} className={className}>\n {innerContent}\n </div>\n );\n })}\n </div>\n )}\n {documentsAndLinks.length > 0 && (\n <div className=\"w-full flex flex-col gap-[5px]\">\n {documentsAndLinks.map((docOrLink, index) => {\n const metadata =\n docOrLink.type === 'document'\n ? documentMetadata[docOrLink.url]\n : undefined;\n const { fileExtension, sizeInBytes, numberOfPages } = metadata ?? {};\n\n let baseUrl = '';\n if (docOrLink.type === 'link') {\n baseUrl = getBaseUrl(docOrLink.url);\n }\n\n const innerContent = (\n <div className=\"flex flex-col gap-[5px]\">\n <div className=\"flex gap-[5px] items-center\">\n {docOrLink.type === 'document' && (\n <GenericDocumentIcon className=\"shrink-0\" />\n )}\n {docOrLink.type === 'link' && <LinkIcon className=\"shrink-0\" />}\n <span className=\"text-grayscale-900 font-[400]\">\n {docOrLink.title ?? 'No title'}\n </span>\n </div>\n {docOrLink.type === 'document' && metadata && (\n <a\n href={docOrLink.url}\n target=\"_blank\"\n rel=\"noreferrer\"\n className=\"text-grayscale-600 font-[600] px-[5px] hover:underline\"\n >\n {fileExtension && (\n <span className=\"uppercase\">{fileExtension}</span>\n )}\n {fileExtension && (numberOfPages || sizeInBytes) && ' • '}\n {numberOfPages && (\n <span>\n {numberOfPages} page{numberOfPages === 1 ? '' : 's'}\n </span>\n )}\n {numberOfPages && sizeInBytes && ' • '}\n {sizeInBytes && <span>{prettyBytes(sizeInBytes)}</span>}\n </a>\n )}\n {docOrLink.type === 'link' && (\n <a\n href={docOrLink.url}\n target=\"_blank\"\n rel=\"noreferrer\"\n className=\"text-indigo-500 font-[600] px-[5px] hover:underline\"\n >\n {baseUrl}\n </a>\n )}\n </div>\n );\n\n const className = `row-attachment ${docOrLink.type} bg-grayscale-100 rounded-[15px] p-[10px] w-full font-poppins text-[12px] leading-[18px] tracking-[-0.33px] text-left`;\n\n if (onMediaAttachmentClick) {\n return (\n <button\n key={index}\n className={className}\n onClick={() =>\n handleMediaAttachmentClick(docOrLink.url, docOrLink.type)\n }\n >\n {innerContent}\n </button>\n );\n }\n\n return (\n <div key={index} className={className}>\n {innerContent}\n </div>\n );\n })}\n </div>\n )}\n </div>\n );\n};\n\nexport default MediaAttachmentsBox;\n","import React from 'react';\n\nconst RibbonEnd: React.FC<{ side: 'left' | 'right'; className?: string; height?: string }> = ({\n side,\n className = '',\n height = '64',\n}) => {\n const halfHeight = parseInt(height) / 2;\n return (\n <svg\n className={className}\n width=\"30\"\n height={height}\n viewBox={`0 0 30 ${height}`}\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style={{ transform: `scaleX(${side === 'left' ? '1' : '-1'})` }}\n >\n <g filter=\"url(#filter0_d_4620_22659)\">\n <path d={`M0 0H30V${height}H0L6.36364 ${halfHeight}L0 0Z`} fill=\"white\" />\n <path\n d={`M3.08593 2.5H27.5V${height}H3.08593L8.80922 ${halfHeight}L8.91926 30L8.80922 29.4812L3.08593 2.5Z`}\n stroke=\"#EEF2FF\"\n strokeWidth=\"5\"\n />\n </g>\n <defs>\n <filter\n id=\"filter0_d_4620_22659\"\n x=\"0\"\n y=\"0\"\n width=\"30\"\n height={height}\n filterUnits=\"userSpaceOnUse\"\n colorInterpolationFilters=\"sRGB\"\n >\n <feFlood floodOpacity=\"0\" result=\"BackgroundImageFix\" />\n <feColorMatrix\n in=\"SourceAlpha\"\n type=\"matrix\"\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\n result=\"hardAlpha\"\n />\n <feOffset dy=\"4\" />\n <feComposite in2=\"hardAlpha\" operator=\"out\" />\n <feColorMatrix\n type=\"matrix\"\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\"\n />\n <feBlend\n mode=\"normal\"\n in2=\"BackgroundImageFix\"\n result=\"effect1_dropShadow_4620_22659\"\n />\n <feBlend\n mode=\"normal\"\n in=\"SourceGraphic\"\n in2=\"effect1_dropShadow_4620_22659\"\n result=\"shape\"\n />\n </filter>\n </defs>\n </svg>\n );\n};\n\nexport default RibbonEnd;\n","import Athletics from '../assets/images/athletics.svg';\nimport Business from '../assets/images/business.svg';\nimport Creative from '../assets/images/creative.svg';\nimport Digital from '../assets/images/digital.svg';\nimport Durable from '../assets/images/durable.svg';\nimport Medical from '../assets/images/medical.svg';\nimport Social from '../assets/images/social.svg';\nimport Stem from '../assets/images/stem.svg';\nimport Trade from '../assets/images/trade.svg';\n\nexport enum BoostCMSSKillsCategoryEnum {\n Durable = 'durable',\n Stem = 'stem',\n Athletic = 'athletic',\n Creative = 'creative',\n Business = 'business',\n Trade = 'trade',\n Social = 'social',\n Digital = 'digital',\n Medical = 'medical',\n}\n\n// ! MUST ALIGN WITH -> learncardapp/src/components/boost/BoostCMS/boostCMSForms/boostCMSSkills/boostSkills.ts\nexport const boostCMSSKillCategories: {\n id: number;\n title: string;\n IconComponent: React.ReactNode;\n iconClassName: string;\n iconCircleClass: string;\n type: BoostCMSSKillsCategoryEnum;\n}[] = [\n {\n id: 1,\n title: 'Durable',\n IconComponent: Durable,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n type: BoostCMSSKillsCategoryEnum.Durable,\n },\n {\n id: 2,\n title: 'Stem',\n IconComponent: Stem,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n type: BoostCMSSKillsCategoryEnum.Stem,\n },\n {\n id: 3,\n title: 'Athletic',\n IconComponent: Athletics,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n type: BoostCMSSKillsCategoryEnum.Athletic,\n },\n {\n id: 4,\n title: 'Creative',\n IconComponent: Creative,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n type: BoostCMSSKillsCategoryEnum.Creative,\n },\n {\n id: 5,\n title: 'Business',\n IconComponent: Business,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n type: BoostCMSSKillsCategoryEnum.Business,\n },\n {\n id: 6,\n title: 'Trade',\n IconComponent: Trade,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n type: BoostCMSSKillsCategoryEnum.Trade,\n },\n {\n id: 7,\n title: 'Social',\n IconComponent: Social,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n type: BoostCMSSKillsCategoryEnum.Social,\n },\n {\n id: 8,\n title: 'Digital',\n IconComponent: Digital,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n type: BoostCMSSKillsCategoryEnum.Digital,\n },\n {\n id: 9,\n title: 'Medical',\n IconComponent: Medical,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n type: BoostCMSSKillsCategoryEnum.Medical,\n },\n];\n\nexport enum BoostCMSCategorySkillEnum {\n // durable skills\n Adaptability = 'adaptability',\n Perseverance = 'perseverance',\n MentalToughness = 'mentalToughness',\n PhysicalEndurance = 'physicalEndurance',\n LifelongLearning = 'lifelongLearning',\n\n // STEM skills\n Mathematics = 'mathematics',\n Science = 'science',\n Technology = 'technology',\n Engineering = 'engineering',\n Research = 'research',\n\n // athletic\n SportSpecificSkills = 'sportSpecificSkills',\n StrengthAndConditioning = 'strengthAndConditioning',\n Coordination = 'coordination',\n MentalFocus = 'mentalFocus',\n Teamwork = 'teamwork',\n\n // creative skills\n VisualArts = 'visualArts',\n PerformingArts = 'performingArts',\n Writing = 'writing',\n Design = 'design',\n Ideation = 'ideation',\n\n // business skills\n Management = 'management',\n Finance = 'finance',\n Marketing = 'marketing',\n Operations = 'operations',\n Entrepreneurship = 'entrepreneurship',\n\n // trade skills\n Construction = 'construction',\n Mechanics = 'mechanics',\n Manufacturing = 'manufacturing',\n Cosmetology = 'cosmetology',\n CulinaryArts = 'culinaryArts',\n\n // social skills\n History = 'history',\n Psychology = 'psychology',\n Sociology = 'sociology',\n Economics = 'economics',\n PoliticalScience = 'politicalScience',\n\n // digital skills\n BasicComputerSkills = 'basicComputerSkills',\n InformationLiteracy = 'informationLiteracy',\n SoftwareProficiency = 'softwareProficiency',\n OnlineCommunication = 'onlineCommunication',\n Cybersecurity = 'cybersecurity',\n\n // medical skills\n ClinicalSkills = 'clinicalSkills',\n AnatomyAndPhysiology = 'anatomyAndPhysiology',\n PatientCare = 'patientCare',\n MedicalSpecialties = 'medicalSpecialties',\n HealthcareAdministration = 'healthcareAdministration',\n}\n\nexport const CATEGORY_TO_SKILLS: {\n [key: BoostCMSSKillsCategoryEnum | string]: {\n id: number;\n title: string;\n IconComponent: React.ReactNode | string;\n iconClassName: string;\n iconCircleClass: string;\n category: BoostCMSSKillsCategoryEnum | string;\n type: BoostCMSCategorySkillEnum | string;\n }[];\n} = {\n [BoostCMSSKillsCategoryEnum.Durable]: [\n {\n id: 1,\n title: 'Adaptability',\n IconComponent: Durable,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Durable,\n type: BoostCMSCategorySkillEnum.Adaptability,\n },\n {\n id: 2,\n title: 'Perseverance',\n IconComponent: Durable,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Durable,\n type: BoostCMSCategorySkillEnum.Perseverance,\n },\n {\n id: 3,\n title: 'Mental Toughness',\n IconComponent: Durable,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Durable,\n type: BoostCMSCategorySkillEnum.MentalToughness,\n },\n {\n id: 4,\n title: 'Physical Endurance',\n IconComponent: Durable,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Durable,\n type: BoostCMSCategorySkillEnum.PhysicalEndurance,\n },\n {\n id: 5,\n title: 'Lifelong Learning',\n IconComponent: Durable,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Durable,\n type: BoostCMSCategorySkillEnum.LifelongLearning,\n },\n ],\n [BoostCMSSKillsCategoryEnum.Stem]: [\n {\n id: 1,\n title: 'Mathematics',\n IconComponent: Stem,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Stem,\n type: BoostCMSCategorySkillEnum.Mathematics,\n },\n {\n id: 2,\n title: 'Science',\n IconComponent: Stem,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Stem,\n type: BoostCMSCategorySkillEnum.Science,\n },\n {\n id: 3,\n title: 'Technology',\n IconComponent: Stem,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Stem,\n type: BoostCMSCategorySkillEnum.Technology,\n },\n {\n id: 4,\n title: 'Engineering',\n IconComponent: Stem,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Stem,\n type: BoostCMSCategorySkillEnum.Engineering,\n },\n {\n id: 5,\n title: 'Research',\n IconComponent: Stem,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Stem,\n type: BoostCMSCategorySkillEnum.Research,\n },\n ],\n [BoostCMSSKillsCategoryEnum.Athletic]: [\n {\n id: 1,\n title: 'Sport specific skills',\n IconComponent: Athletics,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Athletic,\n type: BoostCMSCategorySkillEnum.SportSpecificSkills,\n },\n {\n id: 2,\n title: 'Strength and Conditioning',\n IconComponent: Athletics,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Athletic,\n type: BoostCMSCategorySkillEnum.StrengthAndConditioning,\n },\n {\n id: 3,\n title: 'Coordination',\n IconComponent: Athletics,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Athletic,\n type: BoostCMSCategorySkillEnum.Coordination,\n },\n {\n id: 4,\n title: 'Mental Focus',\n IconComponent: Athletics,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Athletic,\n type: BoostCMSCategorySkillEnum.MentalFocus,\n },\n {\n id: 5,\n title: 'Team work',\n IconComponent: Athletics,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Athletic,\n type: BoostCMSCategorySkillEnum.Teamwork,\n },\n ],\n [BoostCMSSKillsCategoryEnum.Creative]: [\n {\n id: 1,\n title: 'Visual Arts',\n IconComponent: Creative,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Creative,\n type: BoostCMSCategorySkillEnum.VisualArts,\n },\n {\n id: 2,\n title: 'Performing Arts',\n IconComponent: Creative,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Creative,\n type: BoostCMSCategorySkillEnum.PerformingArts,\n },\n {\n id: 3,\n title: 'Writing',\n IconComponent: Creative,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Creative,\n type: BoostCMSCategorySkillEnum.Writing,\n },\n {\n id: 4,\n title: 'Design',\n IconComponent: Creative,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Creative,\n type: BoostCMSCategorySkillEnum.Design,\n },\n {\n id: 5,\n title: 'Ideation',\n IconComponent: Creative,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Creative,\n type: BoostCMSCategorySkillEnum.Ideation,\n },\n ],\n [BoostCMSSKillsCategoryEnum.Business]: [\n {\n id: 1,\n title: 'Management',\n IconComponent: Business,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Business,\n type: BoostCMSCategorySkillEnum.Management,\n },\n {\n id: 2,\n title: 'Finance',\n IconComponent: Business,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Business,\n type: BoostCMSCategorySkillEnum.Finance,\n },\n {\n id: 3,\n title: 'Marketing',\n IconComponent: Business,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Business,\n type: BoostCMSCategorySkillEnum.Marketing,\n },\n {\n id: 4,\n title: 'Operations',\n IconComponent: Business,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Business,\n type: BoostCMSCategorySkillEnum.Operations,\n },\n {\n id: 5,\n title: 'Entrepreneurship',\n IconComponent: Business,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Business,\n type: BoostCMSCategorySkillEnum.Entrepreneurship,\n },\n ],\n [BoostCMSSKillsCategoryEnum.Trade]: [\n {\n id: 1,\n title: 'Construction',\n IconComponent: Trade,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Trade,\n type: BoostCMSCategorySkillEnum.Construction,\n },\n {\n id: 2,\n title: 'Mechanics',\n IconComponent: Trade,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Trade,\n type: BoostCMSCategorySkillEnum.Mechanics,\n },\n {\n id: 3,\n title: 'Manufacturing',\n IconComponent: Trade,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Trade,\n type: BoostCMSCategorySkillEnum.Manufacturing,\n },\n {\n id: 4,\n title: 'Cosmetology',\n IconComponent: Trade,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Trade,\n type: BoostCMSCategorySkillEnum.Cosmetology,\n },\n {\n id: 5,\n title: 'Culinary Arts',\n IconComponent: Trade,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Trade,\n type: BoostCMSCategorySkillEnum.CulinaryArts,\n },\n ],\n [BoostCMSSKillsCategoryEnum.Social]: [\n {\n id: 1,\n title: 'History',\n IconComponent: Social,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Social,\n type: BoostCMSCategorySkillEnum.History,\n },\n {\n id: 2,\n title: 'Psychology',\n IconComponent: Social,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Social,\n type: BoostCMSCategorySkillEnum.Psychology,\n },\n {\n id: 3,\n title: 'Sociology',\n IconComponent: Social,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Social,\n type: BoostCMSCategorySkillEnum.Sociology,\n },\n {\n id: 4,\n title: 'Economics',\n IconComponent: Social,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Social,\n type: BoostCMSCategorySkillEnum.Economics,\n },\n {\n id: 5,\n title: 'Political Science',\n IconComponent: Social,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Social,\n type: BoostCMSCategorySkillEnum.PoliticalScience,\n },\n ],\n [BoostCMSSKillsCategoryEnum.Digital]: [\n {\n id: 1,\n title: 'Basic Computer Skills',\n IconComponent: Digital,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Digital,\n type: BoostCMSCategorySkillEnum.BasicComputerSkills,\n },\n {\n id: 2,\n title: 'Information Literacy',\n IconComponent: Digital,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Digital,\n type: BoostCMSCategorySkillEnum.InformationLiteracy,\n },\n {\n id: 3,\n title: 'Software Proficiency',\n IconComponent: Digital,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Digital,\n type: BoostCMSCategorySkillEnum.SoftwareProficiency,\n },\n {\n id: 4,\n title: 'Online Communication',\n IconComponent: Digital,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Digital,\n type: BoostCMSCategorySkillEnum.OnlineCommunication,\n },\n {\n id: 5,\n title: 'Cybersecurity',\n IconComponent: Digital,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Digital,\n type: BoostCMSCategorySkillEnum.Cybersecurity,\n },\n ],\n [BoostCMSSKillsCategoryEnum.Medical]: [\n {\n id: 1,\n title: 'Clinical Skills',\n IconComponent: Medical,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Medical,\n type: BoostCMSCategorySkillEnum.ClinicalSkills,\n },\n {\n id: 2,\n title: 'Anatomy and Physiology',\n IconComponent: Medical,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Medical,\n type: BoostCMSCategorySkillEnum.AnatomyAndPhysiology,\n },\n {\n id: 3,\n title: 'Patient Care',\n IconComponent: Medical,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Medical,\n type: BoostCMSCategorySkillEnum.PatientCare,\n },\n {\n id: 4,\n title: 'Medical Specialties',\n IconComponent: Medical,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Medical,\n type: BoostCMSCategorySkillEnum.MedicalSpecialties,\n },\n {\n id: 5,\n title: 'Healthcare Administration',\n IconComponent: Medical,\n iconClassName: 'text-white',\n iconCircleClass: 'bg-cyan-700',\n category: BoostCMSSKillsCategoryEnum.Medical,\n type: BoostCMSCategorySkillEnum.HealthcareAdministration,\n },\n ],\n};\n\nexport enum BoostCMSSubSkillEnum {\n // * Durable\n // Adaptability\n flexibility = 'flexibility',\n resilience = 'resilience',\n problemSolving = 'problemSolving',\n resourcefulness = 'resourcefulness',\n stressManagement = 'stressManagement',\n\n // Perseverance\n discipline = 'discipline',\n focus = 'focus',\n commitment = 'commitment',\n grit = 'grit',\n tenacity = 'tenacity',\n\n // Mental toughness\n optimism = 'optimism',\n selfConfidence = 'selfConfidence',\n emotionalRegulation = 'emotionalRegulation',\n growthMindset = 'growthMindset',\n positiveSelfTalk = 'positiveSelfTalk',\n\n // physical edurance\n strength = 'strength',\n stamina = 'stamina',\n cardiovascularFitness = 'cardiovascularFitness',\n painTolerance = 'painTolerance',\n injuryPrevention = 'injuryPrevention',\n\n // lifelong learning\n curiosity = 'curiosity',\n openMindedness = 'openMindedness',\n criticalThinking = 'critical thinking',\n selfDirectedLearning = 'selfDirectedLearning',\n knowledgeRetention = 'knowledgeRetention',\n\n // * STEM\n // Mathematics\n algebra = 'algebra',\n geometry = 'geometry',\n trigonometry = 'trigonometry',\n calculus = 'calculus',\n statistics = 'statistics',\n\n // science\n physics = 'physics',\n chemistry = 'chemistry',\n biology = 'biology',\n earthScience = 'earthScience',\n environmentalScience = 'environmentalScience',\n\n // technology\n coding = 'coding',\n softwareDevelopment = 'softwareDevelopment',\n dataAnalysis = 'dataAnalysis',\n robotics = 'robotics',\n cybersecurity = 'cybersecurity',\n\n // engineering\n mechanicalEngineering = 'mechanicalEngineering',\n electricalEngineering = 'electricalEngineering',\n civilEngineering = 'civilEngineering',\n chemicalEngineering = 'chemicalEngineering',\n computerEngineering = 'computerEngineering',\n\n // research\n hypothesisDevelopment = 'hypothesisDevelopment',\n experimentalDesign = 'experimentalDesign',\n dataCollection = 'dataCollection',\n analysis = 'analysis',\n presentation = 'presentation',\n\n // * Athletic\n // sport specific skills\n ballHandling = 'ballHandling',\n runningTechnique = 'runningTechnique',\n swingMechanics = 'swingMechanics',\n tackling = 'tackling',\n swimmingStrokes = 'swimmingStrokes',\n\n // strength and conditioning\n weightLifting = 'weightLifting',\n speedTraining = 'speedTraining',\n agility = 'agility',\n lexibility = 'flexibility',\n // injuryPrevention = 'injuryPrevention', // ! duplicate\n\n // coordination\n handEyeCoordination = 'handEyeCoordination',\n footwork = 'footwork',\n balance = 'balance',\n reactionTime = 'reactionTime',\n spatialAwareness = 'spatialAwareness',\n\n // mental focus\n visualization = 'visualization',\n goalSetting = 'goalSetting',\n competitiveness = 'competitiveness',\n // resilience = 'resilience', // ! duplicate\n handlingPressure = 'handlingPressure',\n\n // teamwork\n communication = 'communication',\n cooperation = 'cooperation',\n roleUnderstanding = 'roleUnderstanding',\n strategy = 'strategy',\n sportsmanship = 'sportsmanship',\n\n // * Creative\n // visual arts\n drawing = 'drawing',\n painting = 'painting',\n sculpture = 'sculpture',\n graphicDesign = 'graphicDesign',\n photography = 'photography',\n\n // performing arts\n acting = 'acting',\n dance = 'dance',\n singing = 'singing',\n instrumental = 'instrumental',\n theaterProduction = 'theaterProduction',\n costumeDesign = 'costumeDesign',\n directing = 'directing',\n\n // writing\n poetry = 'poetry',\n fiction = 'fiction',\n nonfiction = 'nonfiction',\n scriptWriting = 'scriptWriting',\n copyWriting = 'copyWriting',\n journalism = 'journalism',\n\n // design\n fashionDesign = 'fashionDesign',\n interiorDesign = 'interiorDesign',\n webDesign = 'webDesign',\n productDesign = 'productDesign',\n gameDesign = 'gameDesign',\n\n // ideation\n brainstorming = 'brainstorming',\n conceptDevelopment = 'concept development',\n innovation = 'innovation',\n // problemSolving = 'problem-solving', // ! duplicate\n outOfTheBoxThinking = 'outOfTheBoxThinking',\n\n // * Business\n // management\n leadership = 'leadership',\n strategicPlanning = 'strategicPlanning',\n teamBuilding = 'teamBuilding',\n delegation = 'delegation',\n conflictResolution = 'conflictResolution',\n\n // finance\n accounting = 'accounting',\n budgeting = 'budgeting',\n financialAnalysis = 'financialAnalysis',\n investment = 'investment',\n riskManagement = 'riskManagement',\n\n // marketing\n marketResearch = 'marketResearch',\n branding = 'branding',\n advertising = 'advertising',\n sales = 'sales',\n customerRelationshipManagement = 'customerRelationshipManagement',\n\n // operations\n logistics = 'logistics',\n supplyChainManagement = 'supplyChainManagement',\n processImprovement = 'processImprovement',\n projectManagement = 'projectManagement',\n qualityControl = 'qualityControl',\n\n // entrepreneurship\n opportunityRecognition = 'opportunityRecognition',\n businessPlanning = 'businessPlanning',\n fundraising = 'fundraising',\n networking = 'networking',\n decisionMaking = 'decisionMaking',\n\n // * Trade\n // construction\n carpentry = 'carpentry',\n electricalWork = 'electricalWork',\n plumbing = 'plumbing',\n masonry = 'masonry',\n HVAC = 'HVAC',\n\n // mechanics\n automotiveRepair = 'automotiveRepair',\n dieselEngineRepair = 'dieselEngineRepair',\n smallEngineRepair = 'smallEngineRepair',\n aircraftMaintenance = 'aircraftMaintenance',\n heavyEquipmentOperation = 'heavyEquipmentOperation',\n\n // manufacturing\n welding = 'welding',\n machining = 'machining',\n assembly = 'assembly',\n fabrication = 'fabrication',\n qualityAssurance = 'qualityAssurance',\n\n // cosmetology\n hairstyling = 'hairstyling',\n barbering = 'barbering',\n nailTechnology = 'nailTechnology',\n makeupArtistry = 'makeupArtistry',\n esthetics = 'esthetics',\n\n // culinary arts\n cookingTechniques = 'cookingTechniques',\n baking = 'baking',\n foodSafety = 'foodSafety',\n menuPlanning = 'menuPlanning',\n restaurantManagement = 'restaurantManagement',\n\n // * Social\n // history\n researchMethods = 'researchMethods',\n analysisOfPrimarySources = 'analysisOfPrimarySources',\n chronologicalReasoning = 'chronologicalReasoning',\n comparativeHistory = 'comparativeHistory',\n historiography = 'historiography',\n\n // psychology\n cognitivePsychology = 'cognitivePsychology',\n developmentalPsychology = 'developmentalPsychology',\n socialPsychology = 'socialPsychology',\n experimentalMethods = 'experimentalMethods',\n clinicalPsychology = 'clinicalPsychology',\n\n // sociology\n socialInequality = 'socialInequality',\n socialInstitutions = 'socialInstitutions',\n // 'researchMethods = 'researchMethods', // !duplicate\n socialChange = 'socialChange',\n socialMovements = 'socialMovements',\n\n // economics\n microeconomics = 'microeconomics',\n macroeconomics = 'macroeconomics',\n econometrics = 'econometrics',\n economicPolicy = 'economicPolicy',\n internationalEconomics = 'internationalEconomics',\n\n // political science\n governmentSystems = 'governmentSystems',\n politicalTheory = 'politicalTheory',\n internationalRelations = 'internationalRelations',\n comparativePolitics = 'comparativePolitics',\n publicPolicy = 'publicPolicy',\n\n // * Digital\n // basic computer skills\n typing = 'typing',\n fileManagement = 'fileManagement',\n internetNavigation = 'internetNavigation',\n email = 'email',\n wordProcessing = 'wordProcessing',\n\n // information literacy\n searchEngineProficiency = 'searchEngineProficiency',\n evaluatingSources = 'evaluatingSources',\n factChecking = 'factChecking',\n criticalMediaAnalysis = 'criticalMediaAnalysis',\n understandingBias = 'understandingBias',\n\n // software proficiency\n productivitySuites = 'productivitySuites',\n specializedSoftware = 'specializedSoftware',\n designSoftware = 'designSoftware',\n programmingBasics = 'programmingBasics',\n dataVisualizationTools = 'dataVisualizationTools',\n\n // online communication\n netiquette = 'netiquette',\n effectiveEmailAndMessaging = 'effectiveEmailAndMessaging',\n socialMediaPlatforms = 'socialMediaPlatforms',\n videoConferencing = 'videoConferencing',\n collaborationTools = 'collaborationTools',\n\n // cyber security\n passwordManagement = 'passwordManagement',\n phishingAwareness = 'phishingAwareness',\n dataPrivacy = 'dataPrivacy',\n safeOnlinePractices = 'safeOnlinePractices',\n protectingDevices = 'protectingDevices',\n\n // * Medical\n // clinical skills\n patientAssessment = 'patientAssessment',\n diagnosticProcedures = 'diagnosticProcedures',\n medicationAdministration = 'medicationAdministration',\n woundCare = 'woundCare',\n basicLifeSupport = 'basicLifeSupport',\n\n // anatomy and physiology\n bodySystems = 'bodySystems',\n medicalTerminology = 'medicalTerminology',\n diseaseProcesses = 'diseaseProcesses',\n pharmacology = 'pharmacology',\n pathophysiology = 'pathophysiology',\n\n // patient care\n bedsideManner = 'bedsideManner',\n empathy = 'empathy',\n // 'communication = 'communication', // ! duplicate\n culturalSensitivity = 'culturalSensitivity',\n ethics = 'ethics',\n\n // medical specialties\n surgery = 'surgery',\n emergencyMedicine = 'emergencyMedicine',\n pediatrics = 'pediatrics',\n radiology = 'radiology',\n diagnosticReasoning = 'diagnosticReasoning',\n treatmentPlanning = 'treatmentPlanning',\n interdisciplinaryCollaboration = 'interdisciplinaryCollaboration',\n\n // healthcare administration\n insuranceAndBilling = 'insuranceAndBilling',\n medicalRecords = 'medicalRecords',\n patientScheduling = 'patientScheduling',\n regulatoryCompliance = 'regulatoryCompliance',\n facilityManagement = 'facilityManagement',\n}\n\nexport const SKILLS_TO_SUBSKILLS: {\n [key: BoostCMSCategorySkillEnum | string]: {\n id: number;\n title: string;\n type: BoostCMSCategorySkillEnum | string;\n }[];\n} = {\n // Durable\n [BoostCMSCategorySkillEnum.Adaptability]: [\n {\n id: 1,\n title: 'Flexibility',\n type: BoostCMSSubSkillEnum.flexibility,\n },\n {\n id: 2,\n title: 'Resilience',\n type: BoostCMSSubSkillEnum.resilience,\n },\n {\n id: 3,\n title: 'Problem Solving',\n type: BoostCMSSubSkillEnum.problemSolving,\n },\n {\n id: 4,\n title: 'Resourcefulness',\n type: BoostCMSSubSkillEnum.resourcefulness,\n },\n {\n id: 5,\n title: 'Stress management',\n type: BoostCMSSubSkillEnum.stressManagement,\n },\n ],\n [BoostCMSCategorySkillEnum.Perseverance]: [\n {\n id: 1,\n title: 'Discipline',\n type: BoostCMSSubSkillEnum.discipline,\n },\n {\n id: 2,\n title: 'focus',\n type: BoostCMSSubSkillEnum.focus,\n },\n {\n id: 3,\n title: 'Commitment',\n type: BoostCMSSubSkillEnum.commitment,\n },\n {\n id: 4,\n title: 'Grit',\n type: BoostCMSSubSkillEnum.grit,\n },\n {\n id: 5,\n title: 'Tenacity',\n type: BoostCMSSubSkillEnum.tenacity,\n },\n ],\n [BoostCMSCategorySkillEnum.MentalToughness]: [\n {\n id: 1,\n title: 'optimism',\n type: BoostCMSSubSkillEnum.optimism,\n },\n {\n id: 2,\n title: 'Self Confidence',\n type: BoostCMSSubSkillEnum.selfConfidence,\n },\n {\n id: 3,\n title: 'Emotional Regulation',\n type: BoostCMSSubSkillEnum.emotionalRegulation,\n },\n {\n id: 4,\n title: 'Growth Mindset',\n type: BoostCMSSubSkillEnum.growthMindset,\n },\n {\n id: 5,\n title: 'Positive Self-Talk',\n type: BoostCMSSubSkillEnum.positiveSelfTalk,\n },\n ],\n [BoostCMSCategorySkillEnum.PhysicalEndurance]: [\n {\n id: 1,\n title: 'Strength',\n type: BoostCMSSubSkillEnum.strength,\n },\n {\n id: 2,\n title: 'Stamina',\n type: BoostCMSSubSkillEnum.stamina,\n },\n {\n id: 3,\n title: 'Cardiovascular Fitness',\n type: BoostCMSSubSkillEnum.cardiovascularFitness,\n },\n {\n id: 4,\n title: 'Pain Tolerance',\n type: BoostCMSSubSkillEnum.painTolerance,\n },\n {\n id: 5,\n title: 'Injury Prevention',\n type: BoostCMSSubSkillEnum.injuryPrevention,\n },\n ],\n [BoostCMSCategorySkillEnum.LifelongLearning]: [\n {\n id: 1,\n title: 'Curiosity',\n type: BoostCMSSubSkillEnum.curiosity,\n },\n {\n id: 2,\n title: 'Open Mindedness',\n type: BoostCMSSubSkillEnum.openMindedness,\n },\n {\n id: 3,\n title: 'Critical Thinking',\n type: BoostCMSSubSkillEnum.criticalThinking,\n },\n {\n id: 4,\n title: 'Self-directed Learning',\n type: BoostCMSSubSkillEnum.selfDirectedLearning,\n },\n {\n id: 5,\n title: 'Knowledge Retention',\n type: BoostCMSSubSkillEnum.knowledgeRetention,\n },\n ],\n\n // STEM\n [BoostCMSCategorySkillEnum.Mathematics]: [\n {\n id: 1,\n title: 'Algebra',\n type: BoostCMSSubSkillEnum.algebra,\n },\n {\n id: 2,\n title: 'Geometry',\n type: BoostCMSSubSkillEnum.geometry,\n },\n {\n id: 3,\n title: 'Trigonometry',\n type: BoostCMSSubSkillEnum.trigonometry,\n },\n {\n id: 4,\n title: 'Calculus',\n type: BoostCMSSubSkillEnum.calculus,\n },\n {\n id: 5,\n title: 'Statistics',\n type: BoostCMSSubSkillEnum.statistics,\n },\n ],\n [BoostCMSCategorySkillEnum.Science]: [\n {\n id: 1,\n title: 'Physics',\n type: BoostCMSSubSkillEnum.physics,\n },\n {\n id: 2,\n title: 'Chemistry',\n type: BoostCMSSubSkillEnum.chemistry,\n },\n {\n id: 3,\n title: 'Biology',\n type: BoostCMSSubSkillEnum.biology,\n },\n {\n id: 4,\n title: 'Earth science',\n type: BoostCMSSubSkillEnum.earthScience,\n },\n {\n id: 5,\n title: 'Environmental science',\n type: BoostCMSSubSkillEnum.environmentalScience,\n },\n ],\n [BoostCMSCategorySkillEnum.Technology]: [\n {\n id: 1,\n title: 'Coding',\n type: BoostCMSSubSkillEnum.coding,\n },\n {\n id: 2,\n title: 'Software Development',\n type: BoostCMSSubSkillEnum.softwareDevelopment,\n },\n {\n id: 3,\n title: 'Data Analysis',\n type: BoostCMSSubSkillEnum.dataAnalysis,\n },\n {\n id: 4,\n title: 'Robotics',\n type: BoostCMSSubSkillEnum.robotics,\n },\n {\n id: 5,\n title: 'Cybersecurity',\n type: BoostCMSSubSkillEnum.cybersecurity,\n },\n ],\n [BoostCMSCategorySkillEnum.Engineering]: [\n {\n id: 1,\n title: 'Mechanical Engineering',\n type: BoostCMSSubSkillEnum.mechanicalEngineering,\n },\n {\n id: 2,\n title: 'Electrical Engineering',\n type: BoostCMSSubSkillEnum.electricalEngineering,\n },\n {\n id: 3,\n title: 'Civil Engineering',\n type: BoostCMSSubSkillEnum.civilEngineering,\n },\n {\n id: 4,\n title: 'Chemical Engineering',\n type: BoostCMSSubSkillEnum.chemicalEngineering,\n },\n {\n id: 5,\n title: 'Computer Engineering',\n type: BoostCMSSubSkillEnum.computerEngineering,\n },\n ],\n [BoostCMSCategorySkillEnum.Research]: [\n {\n id: 1,\n title: 'Hypothesis Development',\n type: BoostCMSSubSkillEnum.hypothesisDevelopment,\n },\n {\n id: 2,\n title: 'Experimental Design',\n type: BoostCMSSubSkillEnum.experimentalDesign,\n },\n {\n id: 3,\n title: 'Data Collection',\n type: BoostCMSSubSkillEnum.dataCollection,\n },\n {\n id: 4,\n title: 'Analysis',\n type: BoostCMSSubSkillEnum.analysis,\n },\n {\n id: 5,\n title: 'presentation',\n type: BoostCMSSubSkillEnum.presentation,\n },\n ],\n\n // athletic\n [BoostCMSCategorySkillEnum.SportSpecificSkills]: [\n {\n id: 1,\n title: 'Ball Handling',\n type: BoostCMSSubSkillEnum.ballHandling,\n },\n {\n id: 2,\n title: 'Running Technique',\n type: BoostCMSSubSkillEnum.runningTechnique,\n },\n {\n id: 3,\n title: 'Swing Mechanics',\n type: BoostCMSSubSkillEnum.swingMechanics,\n },\n {\n id: 4,\n title: 'Tackling',\n type: BoostCMSSubSkillEnum.tackling,\n },\n {\n id: 5,\n title: 'Swimming Strokes',\n type: BoostCMSSubSkillEnum.swimmingStrokes,\n },\n ],\n [BoostCMSCategorySkillEnum.StrengthAndConditioning]: [\n {\n id: 1,\n title: 'Weight Lifting',\n type: BoostCMSSubSkillEnum.weightLifting,\n },\n {\n id: 2,\n title: 'Speed Training',\n type: BoostCMSSubSkillEnum.speedTraining,\n },\n {\n id: 3,\n title: 'Agility',\n type: BoostCMSSubSkillEnum.agility,\n },\n {\n id: 4,\n title: 'Flexibility',\n type: BoostCMSSubSkillEnum.flexibility,\n },\n {\n id: 5,\n title: 'Injury Prevention',\n type: BoostCMSSubSkillEnum.injuryPrevention,\n },\n ],\n [BoostCMSCategorySkillEnum.Coordination]: [\n {\n id: 1,\n title: 'Hand Eye Coordination',\n type: BoostCMSSubSkillEnum.handEyeCoordination,\n },\n {\n id: 2,\n title: 'Footwork',\n type: BoostCMSSubSkillEnum.footwork,\n },\n {\n id: 3,\n title: 'Balance',\n type: BoostCMSSubSkillEnum.balance,\n },\n {\n id: 4,\n title: 'Reaction Time',\n type: BoostCMSSubSkillEnum.reactionTime,\n },\n {\n id: 5,\n title: 'Spatial Awareness',\n type: BoostCMSSubSkillEnum.spatialAwareness,\n },\n ],\n [BoostCMSCategorySkillEnum.MentalFocus]: [\n {\n id: 1,\n title: 'Visualization',\n type: BoostCMSSubSkillEnum.visualization,\n },\n {\n id: 2,\n title: 'Goal Setting',\n type: BoostCMSSubSkillEnum.goalSetting,\n },\n {\n id: 3,\n title: 'Competitiveness',\n type: BoostCMSSubSkillEnum.competitiveness,\n },\n {\n id: 4,\n title: 'Resilience',\n type: BoostCMSSubSkillEnum.resilience,\n },\n {\n id: 5,\n title: 'Handling pressure',\n type: BoostCMSSubSkillEnum.handlingPressure,\n },\n ],\n [BoostCMSCategorySkillEnum.Teamwork]: [\n {\n id: 1,\n title: 'Communication',\n type: BoostCMSSubSkillEnum.communication,\n },\n {\n id: 2,\n title: 'Cooperation',\n type: BoostCMSSubSkillEnum.cooperation,\n },\n {\n id: 3,\n title: 'Role Understanding',\n type: BoostCMSSubSkillEnum.roleUnderstanding,\n },\n {\n id: 4,\n title: 'Strategy',\n type: BoostCMSSubSkillEnum.strategy,\n },\n {\n id: 5,\n title: 'Sportsmanship',\n type: BoostCMSSubSkillEnum.sportsmanship,\n },\n ],\n\n // creative\n [BoostCMSCategorySkillEnum.VisualArts]: [\n {\n id: 1,\n title: 'Drawing',\n type: BoostCMSSubSkillEnum.drawing,\n },\n {\n id: 2,\n title: 'Painting',\n type: BoostCMSSubSkillEnum.painting,\n },\n {\n id: 3,\n title: 'Sculpture',\n type: BoostCMSSubSkillEnum.sculpture,\n },\n {\n id: 4,\n title: 'Graphic design',\n type: BoostCMSSubSkillEnum.graphicDesign,\n },\n {\n id: 5,\n title: 'Photography',\n type: BoostCMSSubSkillEnum.photography,\n },\n ],\n [BoostCMSCategorySkillEnum.PerformingArts]: [\n {\n id: 1,\n title: 'Acting',\n type: BoostCMSSubSkillEnum.acting,\n },\n {\n id: 2,\n title: 'Dance',\n type: BoostCMSSubSkillEnum.dance,\n },\n {\n id: 3,\n title: 'Singing',\n type: BoostCMSSubSkillEnum.singing,\n },\n {\n id: 4,\n title: 'Instrumental',\n type: BoostCMSSubSkillEnum.instrumental,\n },\n {\n id: 5,\n title: 'Theatre Production',\n type: BoostCMSSubSkillEnum.theaterProduction,\n },\n {\n id: 6,\n title: 'Costume Design',\n type: BoostCMSSubSkillEnum.costumeDesign,\n },\n {\n id: 7,\n title: 'Directing',\n type: BoostCMSSubSkillEnum.directing,\n },\n ],\n [BoostCMSCategorySkillEnum.Writing]: [\n {\n id: 1,\n title: 'Poetry',\n type: BoostCMSSubSkillEnum.poetry,\n },\n {\n id: 2,\n title: 'Fiction',\n type: BoostCMSSubSkillEnum.fiction,\n },\n {\n id: 3,\n title: 'Non fiction',\n type: BoostCMSSubSkillEnum.nonfiction,\n },\n {\n id: 4,\n title: 'Script Writing',\n type: BoostCMSSubSkillEnum.scriptWriting,\n },\n {\n id: 5,\n title: 'Copy Writing',\n type: BoostCMSSubSkillEnum.copyWriting,\n },\n {\n id: 6,\n title: 'Journalism',\n type: BoostCMSSubSkillEnum.journalism,\n },\n ],\n [BoostCMSCategorySkillEnum.Design]: [\n {\n id: 1,\n title: 'Fashion Design',\n type: BoostCMSSubSkillEnum.fashionDesign,\n },\n {\n id: 2,\n title: 'Interior Design',\n type: BoostCMSSubSkillEnum.interiorDesign,\n },\n {\n id: 3,\n title: 'Web Design',\n type: BoostCMSSubSkillEnum.webDesign,\n },\n {\n id: 4,\n title: 'Product Design',\n type: BoostCMSSubSkillEnum.productDesign,\n },\n {\n id: 5,\n title: 'Game Design',\n type: BoostCMSSubSkillEnum.gameDesign,\n },\n ],\n [BoostCMSCategorySkillEnum.Ideation]: [\n {\n id: 1,\n title: 'Brainstorming',\n type: BoostCMSSubSkillEnum.brainstorming,\n },\n {\n id: 2,\n title: 'Concept Development',\n type: BoostCMSSubSkillEnum.conceptDevelopment,\n },\n {\n id: 3,\n title: 'Innovation',\n type: BoostCMSSubSkillEnum.innovation,\n },\n {\n id: 4,\n title: 'Problem Solving',\n type: BoostCMSSubSkillEnum.problemSolving,\n },\n {\n id: 5,\n title: 'Out of the box thinking',\n type: BoostCMSSubSkillEnum.outOfTheBoxThinking,\n },\n ],\n\n // business\n [BoostCMSCategorySkillEnum.Management]: [\n {\n id: 1,\n title: 'Leadership',\n type: BoostCMSSubSkillEnum.leadership,\n },\n {\n id: 2,\n title: 'Strategic Planning',\n type: BoostCMSSubSkillEnum.strategicPlanning,\n },\n {\n id: 3,\n title: 'Team Building',\n type: BoostCMSSubSkillEnum.teamBuilding,\n },\n {\n id: 4,\n title: 'Delegation',\n type: BoostCMSSubSkillEnum.delegation,\n },\n {\n id: 5,\n title: 'Conflict Resolution',\n type: BoostCMSSubSkillEnum.conflictResolution,\n },\n ],\n [BoostCMSCategorySkillEnum.Finance]: [\n {\n id: 1,\n title: 'Accounting',\n type: BoostCMSSubSkillEnum.accounting,\n },\n {\n id: 2,\n title: 'Budgeting',\n type: BoostCMSSubSkillEnum.budgeting,\n },\n {\n id: 3,\n title: 'Financial Analysis',\n type: BoostCMSSubSkillEnum.financialAnalysis,\n },\n {\n id: 4,\n title: 'Investment',\n type: BoostCMSSubSkillEnum.investment,\n },\n {\n id: 5,\n title: 'Risk Management',\n type: BoostCMSSubSkillEnum.riskManagement,\n },\n ],\n [BoostCMSCategorySkillEnum.Marketing]: [\n {\n id: 1,\n title: 'Market Research',\n type: BoostCMSSubSkillEnum.marketResearch,\n },\n {\n id: 2,\n title: 'Branding',\n type: BoostCMSSubSkillEnum.branding,\n },\n {\n id: 3,\n title: 'Advertising',\n type: BoostCMSSubSkillEnum.advertising,\n },\n {\n id: 4,\n title: 'Sales',\n type: BoostCMSSubSkillEnum.sales,\n },\n {\n id: 5,\n title: 'Customer Relationship Management',\n type: BoostCMSSubSkillEnum.customerRelationshipManagement,\n },\n ],\n [BoostCMSCategorySkillEnum.Operations]: [\n {\n id: 1,\n title: 'Logistics',\n type: BoostCMSSubSkillEnum.logistics,\n },\n {\n id: 2,\n title: 'Supply Chain Management',\n type: BoostCMSSubSkillEnum.supplyChainManagement,\n },\n {\n id: 3,\n title: 'Process Improvement',\n type: BoostCMSSubSkillEnum.processImprovement,\n },\n {\n id: 4,\n title: 'Project Management',\n type: BoostCMSSubSkillEnum.projectManagement,\n },\n {\n id: 5,\n title: 'Quality Control',\n type: BoostCMSSubSkillEnum.qualityControl,\n },\n ],\n [BoostCMSCategorySkillEnum.Entrepreneurship]: [\n {\n id: 1,\n title: 'Opportunity Recognition',\n type: BoostCMSSubSkillEnum.opportunityRecognition,\n },\n {\n id: 2,\n title: 'Business Planning',\n type: BoostCMSSubSkillEnum.businessPlanning,\n },\n {\n id: 3,\n title: 'Fundraising',\n type: BoostCMSSubSkillEnum.fundraising,\n },\n {\n id: 4,\n title: 'Networking',\n type: BoostCMSSubSkillEnum.networking,\n },\n {\n id: 5,\n title: 'Decision-making',\n type: BoostCMSSubSkillEnum.decisionMaking,\n },\n ],\n\n // trade\n [BoostCMSCategorySkillEnum.Construction]: [\n {\n id: 1,\n title: 'Carpentry',\n type: BoostCMSSubSkillEnum.carpentry,\n },\n {\n id: 2,\n title: 'Electrical Work',\n type: BoostCMSSubSkillEnum.electricalWork,\n },\n {\n id: 3,\n title: 'Plumbing',\n type: BoostCMSSubSkillEnum.plumbing,\n },\n {\n id: 4,\n title: 'Masonry',\n type: BoostCMSSubSkillEnum.masonry,\n },\n {\n id: 5,\n title: 'HVAC',\n type: BoostCMSSubSkillEnum.HVAC,\n },\n ],\n [BoostCMSCategorySkillEnum.Mechanics]: [\n {\n id: 1,\n title: 'Automotive Repair',\n type: BoostCMSSubSkillEnum.automotiveRepair,\n },\n {\n id: 2,\n title: 'Diesel Engine Repair',\n type: BoostCMSSubSkillEnum.dieselEngineRepair,\n },\n {\n id: 3,\n title: 'Small Engine Repair',\n type: BoostCMSSubSkillEnum.smallEngineRepair,\n },\n {\n id: 4,\n title: 'Aircraft Maintenance',\n type: BoostCMSSubSkillEnum.aircraftMaintenance,\n },\n {\n id: 5,\n title: 'Heavy Equipment Operation',\n type: BoostCMSSubSkillEnum.heavyEquipmentOperation,\n },\n ],\n [BoostCMSCategorySkillEnum.Manufacturing]: [\n {\n id: 1,\n title: 'Welding',\n type: BoostCMSSubSkillEnum.welding,\n },\n {\n id: 2,\n title: 'Machining',\n type: BoostCMSSubSkillEnum.machining,\n },\n {\n id: 3,\n title: 'Assembly',\n type: BoostCMSSubSkillEnum.assembly,\n },\n {\n id: 4,\n title: 'Fabrication',\n type: BoostCMSSubSkillEnum.fabrication,\n },\n {\n id: 5,\n title: 'Quality Assurance',\n type: BoostCMSSubSkillEnum.qualityAssurance,\n },\n ],\n [BoostCMSCategorySkillEnum.Cosmetology]: [\n {\n id: 1,\n title: 'Hairstyling',\n type: BoostCMSSubSkillEnum.hairstyling,\n },\n {\n id: 2,\n title: 'Barbering',\n type: BoostCMSSubSkillEnum.barbering,\n },\n {\n id: 3,\n title: 'Nail Technology',\n type: BoostCMSSubSkillEnum.nailTechnology,\n },\n {\n id: 4,\n title: 'Makeup Artistry',\n type: BoostCMSSubSkillEnum.makeupArtistry,\n },\n {\n id: 5,\n title: 'Esthetics',\n type: BoostCMSSubSkillEnum.esthetics,\n },\n ],\n [BoostCMSCategorySkillEnum.CulinaryArts]: [\n {\n id: 1,\n title: 'Cooking Techniques',\n type: BoostCMSSubSkillEnum.cookingTechniques,\n },\n {\n id: 2,\n title: 'Baking',\n type: BoostCMSSubSkillEnum.baking,\n },\n {\n id: 3,\n title: 'Food Safety',\n type: BoostCMSSubSkillEnum.foodSafety,\n },\n {\n id: 4,\n title: 'Menu Planning',\n type: BoostCMSSubSkillEnum.menuPlanning,\n },\n {\n id: 5,\n title: 'Restaurant Management',\n type: BoostCMSSubSkillEnum.restaurantManagement,\n },\n ],\n\n // social\n [BoostCMSCategorySkillEnum.History]: [\n {\n id: 1,\n title: 'Research Methods',\n type: BoostCMSSubSkillEnum.researchMethods,\n },\n {\n id: 2,\n title: 'Analysis of Primary Sources',\n type: BoostCMSSubSkillEnum.analysisOfPrimarySources,\n },\n {\n id: 3,\n title: 'Chronological Reasoning',\n type: BoostCMSSubSkillEnum.chronologicalReasoning,\n },\n {\n id: 4,\n title: 'Comparative History',\n type: BoostCMSSubSkillEnum.comparativeHistory,\n },\n {\n id: 5,\n title: 'Historiography',\n type: BoostCMSSubSkillEnum.historiography,\n },\n ],\n [BoostCMSCategorySkillEnum.Psychology]: [\n {\n id: 1,\n title: 'Cognitive Psychology',\n type: BoostCMSSubSkillEnum.cognitivePsychology,\n },\n {\n id: 2,\n title: 'Developmental Psychology',\n type: BoostCMSSubSkillEnum.developmentalPsychology,\n },\n {\n id: 3,\n title: 'Social Psychology',\n type: BoostCMSSubSkillEnum.socialPsychology,\n },\n {\n id: 4,\n title: 'Experimental Methods',\n type: BoostCMSSubSkillEnum.experimentalMethods,\n },\n {\n id: 5,\n title: 'Clinical Psychology',\n type: BoostCMSSubSkillEnum.clinicalPsychology,\n },\n ],\n [BoostCMSCategorySkillEnum.Sociology]: [\n {\n id: 1,\n title: 'Social Inequality',\n type: BoostCMSSubSkillEnum.socialInequality,\n },\n {\n id: 2,\n title: 'Social Institutions',\n type: BoostCMSSubSkillEnum.socialInstitutions,\n },\n {\n id: 3,\n title: 'Research Methods',\n type: BoostCMSSubSkillEnum.researchMethods,\n },\n {\n id: 4,\n title: 'Social Change',\n type: BoostCMSSubSkillEnum.socialChange,\n },\n {\n id: 5,\n title: 'Social Movements',\n type: BoostCMSSubSkillEnum.socialMovements,\n },\n ],\n [BoostCMSCategorySkillEnum.Economics]: [\n {\n id: 1,\n title: 'Microeconomics',\n type: BoostCMSSubSkillEnum.microeconomics,\n },\n {\n id: 2,\n title: 'Macroeconomics',\n type: BoostCMSSubSkillEnum.macroeconomics,\n },\n {\n id: 3,\n title: 'Econometrics',\n type: BoostCMSSubSkillEnum.econometrics,\n },\n {\n id: 4,\n title: 'Economic Policy',\n type: BoostCMSSubSkillEnum.economicPolicy,\n },\n {\n id: 5,\n title: 'International Economics',\n type: BoostCMSSubSkillEnum.internationalEconomics,\n },\n ],\n [BoostCMSCategorySkillEnum.PoliticalScience]: [\n {\n id: 1,\n title: 'Government Systems',\n type: BoostCMSSubSkillEnum.governmentSystems,\n },\n {\n id: 2,\n title: 'Political Theory',\n type: BoostCMSSubSkillEnum.politicalTheory,\n },\n {\n id: 3,\n title: 'International Relations',\n type: BoostCMSSubSkillEnum.internationalRelations,\n },\n {\n id: 4,\n title: 'Comparative Politics',\n type: BoostCMSSubSkillEnum.comparativePolitics,\n },\n {\n id: 5,\n title: 'Public Policy',\n type: BoostCMSSubSkillEnum.publicPolicy,\n },\n ],\n\n // digital\n [BoostCMSCategorySkillEnum.BasicComputerSkills]: [\n {\n id: 1,\n title: 'Typing',\n type: BoostCMSSubSkillEnum.typing,\n },\n {\n id: 2,\n title: 'File Management',\n type: BoostCMSSubSkillEnum.fileManagement,\n },\n {\n id: 3,\n title: 'Internet Navigation',\n type: BoostCMSSubSkillEnum.internetNavigation,\n },\n {\n id: 4,\n title: 'Email',\n type: BoostCMSSubSkillEnum.email,\n },\n {\n id: 5,\n title: 'Word Processing',\n type: BoostCMSSubSkillEnum.wordProcessing,\n },\n ],\n [BoostCMSCategorySkillEnum.InformationLiteracy]: [\n {\n id: 1,\n title: 'Search Engine Proficiency',\n type: BoostCMSSubSkillEnum.searchEngineProficiency,\n },\n {\n id: 2,\n title: 'evaluating sources',\n type: BoostCMSSubSkillEnum.evaluatingSources,\n },\n {\n id: 3,\n title: 'Fact Checking',\n type: BoostCMSSubSkillEnum.factChecking,\n },\n {\n id: 4,\n title: 'Critical Media Analysis',\n type: BoostCMSSubSkillEnum.criticalMediaAnalysis,\n },\n {\n id: 5,\n title: 'Understanding Bias',\n type: BoostCMSSubSkillEnum.understandingBias,\n },\n ],\n [BoostCMSCategorySkillEnum.SoftwareProficiency]: [\n {\n id: 1,\n title: 'Productivity Suites',\n type: BoostCMSSubSkillEnum.productivitySuites,\n },\n {\n id: 2,\n title: 'Specialized Software',\n type: BoostCMSSubSkillEnum.specializedSoftware,\n },\n {\n id: 3,\n title: 'Design Software',\n type: BoostCMSSubSkillEnum.designSoftware,\n },\n {\n id: 4,\n title: 'Programming Basics',\n type: BoostCMSSubSkillEnum.programmingBasics,\n },\n {\n id: 5,\n title: 'Data Visualization Tools',\n type: BoostCMSSubSkillEnum.dataVisualizationTools,\n },\n ],\n [BoostCMSCategorySkillEnum.OnlineCommunication]: [\n {\n id: 1,\n title: 'Netiquette',\n type: BoostCMSSubSkillEnum.netiquette,\n },\n {\n id: 2,\n title: 'Effective Email and Messaging',\n type: BoostCMSSubSkillEnum.effectiveEmailAndMessaging,\n },\n {\n id: 3,\n title: 'Social Media Platforms',\n type: BoostCMSSubSkillEnum.socialMediaPlatforms,\n },\n {\n id: 4,\n title: 'Video Conferencing',\n type: BoostCMSSubSkillEnum.videoConferencing,\n },\n {\n id: 5,\n title: 'Collaboration Tools',\n type: BoostCMSSubSkillEnum.collaborationTools,\n },\n ],\n [BoostCMSCategorySkillEnum.Cybersecurity]: [\n {\n id: 1,\n title: 'Password Management',\n type: BoostCMSSubSkillEnum.passwordManagement,\n },\n {\n id: 2,\n title: 'Phishing Awareness',\n type: BoostCMSSubSkillEnum.phishingAwareness,\n },\n {\n id: 3,\n title: 'Data Privacy',\n type: BoostCMSSubSkillEnum.dataPrivacy,\n },\n {\n id: 4,\n title: 'Safe Online Practices',\n type: BoostCMSSubSkillEnum.safeOnlinePractices,\n },\n {\n id: 5,\n title: 'Protecting Devices',\n type: BoostCMSSubSkillEnum.protectingDevices,\n },\n ],\n\n // medical\n [BoostCMSCategorySkillEnum.ClinicalSkills]: [\n {\n id: 1,\n title: 'Patient Assessment',\n type: BoostCMSSubSkillEnum.patientAssessment,\n },\n {\n id: 2,\n title: 'Diagnostic Procedures',\n type: BoostCMSSubSkillEnum.diagnosticProcedures,\n },\n {\n id: 3,\n title: 'Medication Administration',\n type: BoostCMSSubSkillEnum.medicationAdministration,\n },\n {\n id: 4,\n title: 'Wound Care',\n type: BoostCMSSubSkillEnum.woundCare,\n },\n {\n id: 5,\n title: 'Basic Life Support',\n type: BoostCMSSubSkillEnum.basicLifeSupport,\n },\n ],\n [BoostCMSCategorySkillEnum.AnatomyAndPhysiology]: [\n {\n id: 1,\n title: 'Body Systems',\n type: BoostCMSSubSkillEnum.bodySystems,\n },\n {\n id: 2,\n title: 'Medical Terminology',\n type: BoostCMSSubSkillEnum.medicalTerminology,\n },\n {\n id: 3,\n title: 'Disease Processes',\n type: BoostCMSSubSkillEnum.diseaseProcesses,\n },\n {\n id: 4,\n title: 'Pharmacology',\n type: BoostCMSSubSkillEnum.pharmacology,\n },\n {\n id: 5,\n title: 'Pathophysiology',\n type: BoostCMSSubSkillEnum.pathophysiology,\n },\n ],\n [BoostCMSCategorySkillEnum.PatientCare]: [\n {\n id: 1,\n title: 'Bedside Manner',\n type: BoostCMSSubSkillEnum.bedsideManner,\n },\n {\n id: 2,\n title: 'Empathy',\n type: BoostCMSSubSkillEnum.empathy,\n },\n {\n id: 3,\n title: 'Communication',\n type: BoostCMSSubSkillEnum.communication,\n },\n {\n id: 4,\n title: 'Cultural Sensitivity',\n type: BoostCMSSubSkillEnum.culturalSensitivity,\n },\n {\n id: 5,\n title: 'Ethics',\n type: BoostCMSSubSkillEnum.ethics,\n },\n ],\n [BoostCMSCategorySkillEnum.MedicalSpecialties]: [\n {\n id: 1,\n title: 'Surgery',\n type: BoostCMSSubSkillEnum.surgery,\n },\n {\n id: 2,\n title: 'Emergency Medicine',\n type: BoostCMSSubSkillEnum.emergencyMedicine,\n },\n {\n id: 3,\n title: 'Pediatrics',\n type: BoostCMSSubSkillEnum.pediatrics,\n },\n {\n id: 4,\n title: 'Radiology',\n type: BoostCMSSubSkillEnum.radiology,\n },\n {\n id: 5,\n title: 'Diagnostic Reasoning',\n type: BoostCMSSubSkillEnum.diagnosticReasoning,\n },\n {\n id: 6,\n title: 'Treatment Planning',\n type: BoostCMSSubSkillEnum.treatmentPlanning,\n },\n {\n id: 7,\n title: 'Interdisciplinary Collaboration',\n type: BoostCMSSubSkillEnum.interdisciplinaryCollaboration,\n },\n ],\n [BoostCMSCategorySkillEnum.HealthcareAdministration]: [\n {\n id: 1,\n title: 'Insurance and Billing',\n type: BoostCMSSubSkillEnum.insuranceAndBilling,\n },\n {\n id: 2,\n title: 'Medical Records',\n type: BoostCMSSubSkillEnum.medicalRecords,\n },\n {\n id: 3,\n title: 'Patient Scheduling',\n type: BoostCMSSubSkillEnum.patientScheduling,\n },\n {\n id: 4,\n title: 'Regulatory Compliance',\n type: BoostCMSSubSkillEnum.regulatoryCompliance,\n },\n {\n id: 5,\n title: 'Facility Management',\n type: BoostCMSSubSkillEnum.facilityManagement,\n },\n ],\n};\n","import React from 'react';\n\nimport {\n BoostCMSCategorySkillEnum,\n boostCMSSKillCategories,\n BoostCMSSKillsCategoryEnum,\n BoostCMSSubSkillEnum,\n} from '../../constants/skills';\n\nconst TopLevelSkill: React.FC<{\n skill: {\n id: number;\n title: string;\n IconComponent: React.ReactNode | string;\n iconClassName: string;\n iconCircleClass: string;\n category: BoostCMSSKillsCategoryEnum | string;\n type: BoostCMSCategorySkillEnum | string;\n };\n skillSelected: {\n category: BoostCMSSKillsCategoryEnum | string;\n skill: BoostCMSCategorySkillEnum | string;\n subskills: BoostCMSSubSkillEnum[] | string[];\n };\n\n handleExpandSubSkills?: () => void;\n}> = ({ skillSelected, skill, handleExpandSubSkills }) => {\n const { title, IconComponent, type, category } = skill;\n\n const _category = boostCMSSKillCategories.find(c => c.type === category);\n\n const subSkills = skillSelected.subskills ?? [];\n const subSkillsCount = skillSelected.subskills.length ?? 0;\n\n return (\n <div\n className={`flex items-center justify-between w-full mb-4 bg-violet-100 rounded-[20px]`}\n >\n <div className=\"flex items-center justify-start w-[80%] px-[6px] py-[10px] overflow-hidden\">\n <div className=\"rounded-full h-[50px] w-[50px]\">\n <img src={IconComponent as string} alt=\"skill icon\" className=\"w-full h-full\" />\n </div>\n <div className=\"flex flex-col items-start justify-center ml-2\">\n <p className=\"font-poppins text-left text-violet-800 font-semibold text-xs\">\n {_category?.title}\n </p>\n <p className=\"text-black font-poppins text-left text-base font-normal\">\n {title}\n </p>\n </div>\n </div>\n {subSkills?.length > 0 && (\n <div className=\"flex items-center justify-center rounded-full bg-white mr-4 h-[40px] w-[40px]\">\n <button\n onClick={() => {\n handleExpandSubSkills?.();\n }}\n className=\"text-black font-bold flex items-center justify-center text-center font-poppins\"\n >\n +{subSkillsCount}\n </button>\n </div>\n )}\n </div>\n );\n};\n\nexport default TopLevelSkill;\n","import React from 'react';\n\nimport {\n BoostCMSCategorySkillEnum,\n boostCMSSKillCategories,\n BoostCMSSKillsCategoryEnum,\n BoostCMSSubSkillEnum,\n} from '../../constants/skills';\n\nconst Subskill: React.FC<{\n skill: {\n id: number;\n title: string;\n IconComponent: React.ReactNode | string;\n iconClassName: string;\n iconCircleClass: string;\n category: BoostCMSSKillsCategoryEnum | string;\n type: BoostCMSCategorySkillEnum | string;\n };\n subSkill: {\n id: number;\n title: string;\n type: BoostCMSSubSkillEnum | string;\n };\n subskillSelected: boolean;\n}> = ({ subskillSelected, skill, subSkill }) => {\n const { title, IconComponent, type, category } = skill;\n\n const _category = boostCMSSKillCategories.find(c => c.type === category);\n\n return (\n <div className=\"flex items-center justify-between w-full mb-4 bg-violet-100 rounded-[20px]\">\n <div className=\"flex items-center justify-start w-[80%] px-[6px] py-[10px] overflow-hidden\">\n <div className=\"rounded-full h-[50px] w-[50px]\">\n <img src={IconComponent as string} alt=\"skill icon\" className=\"w-full h-full\" />\n </div>\n <div className=\"flex flex-col items-start justify-center ml-2\">\n <p className=\"font-poppins text-left text-violet-800 font-semibold text-xs\">\n {_category?.title} / {skill?.title}\n </p>\n <p className=\"text-black font-poppins text-left text-base font-normal\">\n {subSkill?.title}\n </p>\n </div>\n </div>\n </div>\n );\n};\n\nexport default Subskill;\n","import React, { useState } from 'react';\n\nimport TopLevelSkill from './TopLevelSkill';\nimport Subskill from './Subskill';\n\nimport {\n boostCMSSKillCategories,\n BoostCMSSKillsCategoryEnum,\n BoostCMSCategorySkillEnum,\n BoostCMSSubSkillEnum,\n CATEGORY_TO_SKILLS,\n SKILLS_TO_SUBSKILLS,\n} from '../../constants/skills';\n\nexport const SelectedSkills: React.FC<{\n skill: {\n id: number;\n title: string;\n IconComponent: React.ReactNode | string;\n iconClassName: string;\n iconCircleClass: string;\n category: BoostCMSSKillsCategoryEnum | string;\n type: BoostCMSCategorySkillEnum | string;\n };\n skillSelected: {\n category: BoostCMSSKillsCategoryEnum | string;\n skill: BoostCMSCategorySkillEnum | string;\n subskills: BoostCMSSubSkillEnum[] | string[];\n };\n}> = ({ skill, skillSelected }) => {\n const [expandSubSkills, setExandSubSkills] = useState<boolean>(false);\n\n const handleExpandSubSkills = () => setExandSubSkills(!expandSubSkills);\n\n return (\n <>\n <TopLevelSkill\n skill={skill}\n skillSelected={skillSelected}\n handleExpandSubSkills={handleExpandSubSkills}\n />\n {skillSelected && skillSelected.subskills.length > 0 && expandSubSkills && (\n <div className=\"w-full flex items-center justify-end\">\n <div className=\"w-[90%] flex items-center flex-col\">\n {skillSelected.subskills.map((subSkill, i) => {\n const subskillSelected = skillSelected?.subskills?.includes(\n subSkill as BoostCMSSubSkillEnum\n );\n\n const _subSkill: any = SKILLS_TO_SUBSKILLS[\n skill.type as BoostCMSCategorySkillEnum\n ].find((ss: any) => ss.type === subSkill);\n\n return (\n <Subskill\n key={i}\n skill={skill}\n subSkill={_subSkill}\n subskillSelected={subskillSelected}\n />\n );\n })}\n </div>\n </div>\n )}\n </>\n );\n};\n\nexport default SelectedSkills;\n","import React, { useState } from 'react';\n\nimport {\n boostCMSSKillCategories,\n BoostCMSSKillsCategoryEnum,\n CATEGORY_TO_SKILLS,\n SKILLS_TO_SUBSKILLS,\n} from '../../constants/skills';\n\nimport SelectedSkills from './SelectedSkills';\nimport PuzzlePiece from '../svgs/PuzzlePiece';\n\nconst SkillsBox: React.FC<{\n skills: { category: string; skill: string; subSkills: string[] }[];\n}> = ({ skills }) => {\n return (\n <div className=\"bg-white flex flex-col items-start gap-[10px] rounded-[20px] shadow-bottom px-[15px] py-[20px] w-full relative\">\n <div className=\"flex items-center justify-start\">\n <div className=\"bg-violet-500 rounded-full flex items-center justify-center ml-2 h-[30px] w-[30px] p-1\">\n <PuzzlePiece className=\"text-white\" fill=\"#fff\" />\n </div>{' '}\n <h3 className=\"text-[20px] leading-[20px] text-grayscale-900 ml-2\">Skills</h3>\n </div>\n\n {skills.length > 0 && (\n <div className=\"ion-padding pt-0 pb-4 flex items-center justify-center flex-col w-full\">\n {skills.map((_skill, index) => {\n const category = boostCMSSKillCategories.find(\n c => c.type === _skill.category\n );\n const skill: any = CATEGORY_TO_SKILLS[\n _skill.category as BoostCMSSKillsCategoryEnum\n ].find(s => s.type === _skill.skill);\n const subSkills = SKILLS_TO_SUBSKILLS[_skill.skill];\n\n const selectedSkills = skills ?? [];\n const skillSelected: any = selectedSkills.find(s => s.skill === skill.type);\n\n return (\n <SelectedSkills\n key={index}\n skill={skill}\n skillSelected={skillSelected}\n />\n );\n })}\n </div>\n )}\n </div>\n );\n};\n\nexport default SkillsBox;\n","import React, { useState } from 'react';\n\ntype TruncateTextBoxProps = {\n headerText: string;\n headerClassName?: string;\n\n // the text to be truncated if it's too long\n text: string;\n\n truncateThreshold?: number;\n\n // extra things to put at the bottom of the box\n children?: React.ReactNode;\n className?: string;\n};\n\nconst TruncateTextBox: React.FC<TruncateTextBoxProps> = ({\n headerText,\n headerClassName = '',\n text,\n truncateThreshold = 132,\n children,\n className = 'truncate-text-box',\n}) => {\n const needsTruncate = text?.length > truncateThreshold;\n const [showFullText, setShowFullText] = useState(false);\n const truncated = needsTruncate && !showFullText;\n\n const displayText = truncated ? text.substring(0, truncateThreshold) : text;\n\n return (\n <div\n className={`${className} bg-white flex flex-col items-start gap-[10px] rounded-[20px] shadow-bottom px-[15px] py-[20px] w-full\"`}\n >\n <h3 className={`${headerClassName} text-[20px] leading-[20px] text-grayscale-900`}>\n {headerText}\n </h3>\n\n <p className=\"text-[12px] text-grayscale-700 leading-[18px] font-poppins font-[400] mb-0\">\n {displayText}\n {truncated && (\n <>\n ...{' '}\n <button\n className=\"text-indigo-500 font-[700]\"\n onClick={() => setShowFullText(true)}\n >\n More\n </button>\n </>\n )}\n {needsTruncate && showFullText && (\n <>\n {' '}\n <button\n className=\"text-indigo-500 font-[700]\"\n onClick={() => setShowFullText(false)}\n >\n Close\n </button>\n </>\n )}\n </p>\n\n {children}\n </div>\n );\n};\n\nexport default TruncateTextBox;\n","import React, { useState } from 'react';\nimport { VerificationItem, VerificationStatusEnum } from '@learncard/types';\nimport { getColorForVerificationStatus } from '../../helpers/credential.helpers';\n\nimport InfoBox from './InfoBox';\nimport InfoIcon from '../svgs/InfoIcon';\nimport AcuteCheckmark from '../svgs/AcuteCheckmark';\nimport ExclamationPoint from '../svgs/ExclamationPoint';\nimport X from '../svgs/X';\nimport { capitalize } from '../../helpers/string.helpers';\n\ntype VerificationRowProps = {\n verification: VerificationItem;\n};\n\nconst VerificationRow: React.FC<VerificationRowProps> = ({ verification }) => {\n const [showInfo, setShowInfo] = useState(false);\n const statusColor = getColorForVerificationStatus(verification.status);\n\n const getIcon = () => {\n switch (verification.status) {\n case VerificationStatusEnum.Success:\n return <AcuteCheckmark />;\n case VerificationStatusEnum.Error:\n return <ExclamationPoint />;\n case VerificationStatusEnum.Failed:\n return <X />;\n }\n };\n\n let primaryText = verification.check\n ? `${verification.check}: ${verification.message}`\n : verification.message;\n if (verification.status === VerificationStatusEnum.Failed) {\n primaryText = verification.message ?? verification.details ?? '';\n }\n primaryText = capitalize(primaryText);\n\n const infoText = ''; // if we want certain verifications to have extra explanation, we can set this variable\n\n return (\n <div className=\"verification-row flex flex-col gap-[5px] font-poppins border-b-[1px] border-grayscale-200 border-solid w-full py-[10px] last:border-0 last:pb-0\">\n <span\n className=\"font-[700] text-[11px] leading-[16px] uppercase flex items-center gap-[3px] select-none\"\n style={{ color: statusColor }}\n >\n {getIcon()}\n {verification.status}\n {infoText && (\n <button className=\"ml-auto\" onClick={() => setShowInfo(!showInfo)}>\n <InfoIcon color={statusColor} />\n </button>\n )}\n </span>\n {showInfo && infoText && (\n <InfoBox\n text={infoText}\n handleClose={() => setShowInfo(false)}\n backgroundColor={statusColor}\n />\n )}\n <span className=\"font-[400] text-[14px] leading-[21px] text-grayscale-900\">\n {primaryText}\n </span>\n </div>\n );\n};\n\nexport default VerificationRow;\n","import React, { useState } from 'react';\n\nimport VerificationRow from './VerificationRow';\nimport InfoIcon from '../svgs/InfoIcon';\nimport InfoBox from './InfoBox';\n\nimport { VerificationItem } from '@learncard/types';\n\ntype VerificationsBoxProps = {\n verificationItems: VerificationItem[];\n};\n\nconst VerificationsBox: React.FC<VerificationsBoxProps> = ({ verificationItems }) => {\n const [showInfo, setShowInfo] = useState(false);\n\n return (\n <div className=\"verifications-box bg-white flex flex-col items-start gap-[10px] rounded-[20px] shadow-bottom px-[15px] py-[20px] w-full relative\">\n <h3 className=\"text-[20px] leading-[20px] text-grayscale-900\">\n Credential Verifications\n </h3>\n <button\n className=\"absolute top-[17px] right-[17px]\"\n onClick={() => setShowInfo(!showInfo)}\n >\n <InfoIcon color={showInfo ? '#6366F1' : undefined} />\n </button>\n {showInfo && (\n <InfoBox\n text=\"Credential verifications check the cryptographic proof of digital credentials to ensure their authenticity and accuracy.\"\n handleClose={() => setShowInfo(false)}\n />\n )}\n\n {verificationItems.map((verification, index) => (\n <VerificationRow key={index} verification={verification} />\n ))}\n </div>\n );\n};\n\nexport default VerificationsBox;\n","import React from 'react';\nimport { format } from 'date-fns';\n\nimport MediaAttachmentsBox from './MediaAttachmentsBox';\nimport TruncateTextBox from './TruncateTextBox';\nimport SkillsBox from './SkillsBox';\nimport IssueHistoryBox from './IssueHistoryBox';\nimport { VC, VerificationItem } from '@learncard/types';\nimport VerificationsBox from './VerificationsBox';\nimport {\n BoostAchievementCredential,\n IssueHistory,\n MediaMetadata,\n VideoMetadata,\n} from '../../types';\nimport LeftArrow from '../svgs/LeftArrow';\n\n/*\nconst defaultTagsToSkills = (tags: string[]) => {\n const skillsObj: { [skill: string]: string[] } = {};\n tags.forEach(tag => {\n skillsObj[tag] = [];\n });\n};\n*/\n\ntype VC2BackFaceProps = {\n credential: VC | BoostAchievementCredential;\n verificationItems: VerificationItem[];\n // convertTagsToSkills?: (tags: string[]) => { [skill: string]: string[] };\n getFileMetadata?: (url: string) => MediaMetadata;\n getVideoMetadata?: (url: string) => VideoMetadata;\n onMediaAttachmentClick?: (url: string, type: 'photo' | 'document' | 'video' | 'link') => void;\n issueHistory?: IssueHistory[];\n showBackButton?: boolean;\n showFrontFace: () => void;\n customDescription?: React.ReactNode;\n customCriteria?: React.ReactNode;\n customSkillsComponent?: React.ReactNode;\n customIssueHistoryComponent?: React.ReactNode;\n enableLightbox?: boolean;\n};\n\nconst VC2BackFace: React.FC<VC2BackFaceProps> = ({\n credential,\n verificationItems,\n // convertTagsToSkills = defaultTagsToSkills,\n getFileMetadata,\n getVideoMetadata,\n onMediaAttachmentClick,\n issueHistory,\n showBackButton,\n showFrontFace,\n customDescription,\n customCriteria,\n customSkillsComponent,\n customIssueHistoryComponent,\n enableLightbox,\n}) => {\n const expiration = credential.expirationDate\n ? format(new Date(credential.expirationDate), 'MMM dd, yyyy')\n : undefined;\n\n const isExpired =\n credential.expirationDate &&\n Number(new Date(credential.expirationDate)) < Number(new Date());\n\n const achievement =\n 'achievement' in credential.credentialSubject\n ? credential.credentialSubject.achievement\n : undefined;\n const criteria = achievement?.criteria?.narrative;\n const description = achievement?.description;\n\n /* \n const tags = credential.credentialSubject.achievement?.tag;\n const skillsObject = tags && tags.length > 0 ? convertTagsToSkills(tags) : undefined;\n */\n\n return (\n <section className=\"vc-back-face flex flex-col gap-[20px] w-full px-[15px]\">\n {showBackButton && (\n <div className=\"w-full\">\n <button\n className=\"vc-card-back-button rounded-full h-[50px] px-[15px] flex items-center justify-center gap-[5px] z-50 text-[30px] text-white select-none\"\n onClick={showFrontFace}\n >\n <LeftArrow className=\"text-white\" size=\"25\" />\n Details\n </button>\n </div>\n )}\n\n {customDescription && (\n <TruncateTextBox headerText=\"About\" text={description} className=\"description-box\">\n {customDescription}\n </TruncateTextBox>\n )}\n {!customDescription && (description || expiration) && (\n <TruncateTextBox headerText=\"About\" text={description} className=\"description-box\">\n {expiration && (\n <p className=\"text-grayscale-800 font-poppins font-[600] text-[12px] leading-[18px] mb-0\">\n Expire{isExpired ? 'd' : 's'} on {expiration}\n </p>\n )}\n </TruncateTextBox>\n )}\n\n {customCriteria && (\n <TruncateTextBox\n headerText=\"Criteria\"\n text={description}\n className=\"description-box\"\n >\n {customCriteria}\n </TruncateTextBox>\n )}\n {!customCriteria && criteria && (\n <TruncateTextBox headerText=\"Criteria\" text={criteria} className=\"criteria-box\" />\n )}\n {(credential.skills?.length ?? 0) > 0 &&\n (customSkillsComponent ? (\n customSkillsComponent\n ) : (\n <SkillsBox skills={credential.skills ?? []} />\n ))}\n\n {issueHistory && issueHistory?.length > 0 && (\n <IssueHistoryBox\n issueHistory={issueHistory}\n customIssueHistoryComponent={customIssueHistoryComponent}\n />\n )}\n\n {credential.attachments && credential.attachments.length > 0 && (\n <MediaAttachmentsBox\n attachments={credential.attachments}\n getFileMetadata={getFileMetadata}\n getVideoMetadata={getVideoMetadata}\n onMediaAttachmentClick={onMediaAttachmentClick}\n enableLightbox={enableLightbox}\n />\n )}\n {/* {credential.notes && <TruncateTextBox headerText=\"Notes\" text={credential.notes} />} */}\n\n {verificationItems && verificationItems.length > 0 && (\n <VerificationsBox verificationItems={verificationItems} />\n )}\n </section>\n );\n};\n\nexport default VC2BackFace;\n","import React from 'react';\n\nimport DefaultFace from '../../assets/images/default-face.jpeg';\n\nimport { getImageFromProfile, getNameFromProfile } from '../../helpers/credential.helpers';\nimport { truncateWithEllipsis } from '../../helpers/string.helpers';\nimport { Profile } from '@learncard/types';\n\ntype VC2FrontFaceInfoProps = {\n issuee: Profile | string;\n issuer: Profile | string;\n title: string;\n subjectDID?: string | undefined;\n subjectImageComponent?: React.ReactNode;\n issuerImageComponent?: React.ReactNode;\n createdAt: string;\n imageUrl?: string;\n customBodyCardComponent?: React.ReactNode;\n customThumbComponent?: React.ReactNode;\n};\n\nconst VC2FrontFaceInfo: React.FC<VC2FrontFaceInfoProps> = ({\n issuee,\n issuer,\n subjectDID,\n subjectImageComponent,\n issuerImageComponent,\n customBodyCardComponent,\n createdAt,\n imageUrl,\n customThumbComponent,\n}) => {\n const issuerName = truncateWithEllipsis(getNameFromProfile(issuer ?? ''), 25);\n const issueeName = truncateWithEllipsis(getNameFromProfile(issuee ?? ''), 25);\n const issuerImage = getImageFromProfile(issuer ?? '');\n const issueeImage = getImageFromProfile(issuee ?? '');\n\n const getImageElement = (\n imageUrl: string,\n alt: string,\n overrideComponent: React.ReactNode | undefined\n ) => {\n if (overrideComponent) return overrideComponent;\n\n return (\n <img\n className=\"h-full w-full object-cover select-none\"\n src={imageUrl || DefaultFace}\n alt={alt}\n />\n );\n };\n\n const issueeImageEl: React.ReactNode = getImageElement(\n issueeImage,\n 'Issuee image',\n subjectImageComponent\n );\n const issuerImageEl: React.ReactNode = getImageElement(\n issuerImage,\n 'Issuer image',\n issuerImageComponent\n );\n\n return (\n <section className=\"vc-front-face w-full px-[15px] flex flex-col items-center gap-[15px]\">\n {imageUrl && !customThumbComponent && (\n <img className=\"vc-front-image h-[130px] w-[130px] rounded-[10px]\" src={imageUrl} />\n )}\n\n {customThumbComponent && customThumbComponent}\n <div className=\"vc-issue-info-box bg-white flex flex-col items-center gap-[5px] rounded-[20px] shadow-bottom px-[15px] py-[20px] w-full\">\n {customBodyCardComponent && customBodyCardComponent}\n\n {!customBodyCardComponent && (\n <>\n <h3 className=\"text-[27px] flex flex-col text-center leading-[130%] text-grayscale-900 capitalize\">\n {issueeName}\n {subjectDID && (\n <span className=\"text-[12px] text-grayscale-700 leading-[18px] font-poppins font-[400] m-0 p-0 normal-case\">\n {subjectDID}\n </span>\n )}\n </h3>\n <div className=\"relative\">\n <div className=\"vc-issuee-image h-[60px] w-[60px] rounded-full overflow-hidden\">\n {issueeImageEl}\n </div>\n <div className=\"vc-issuer-image h-[30px] w-[30px] rounded-full overflow-hidden absolute bottom-[-12px] right-[-12px]\">\n {issuerImageEl}\n </div>\n </div>\n <div className=\"vc-issue-details mt-[10px] flex flex-col items-center font-montserrat text-[14px] leading-[20px]\">\n <span className=\"created-at text-grayscale-700\">{createdAt}</span>\n <span className=\"issued-by text-grayscale-900 font-[500]\">\n by <strong className=\"font-[700]\">{issuerName}</strong>\n </span>\n </div>\n </>\n )}\n </div>\n </section>\n );\n};\n\nexport default VC2FrontFaceInfo;\n","import React from 'react';\nimport { getCategoryColor } from '../../helpers/credential.helpers';\nimport { LCCategoryEnum } from '../../types';\n\nconst VCDisplayCardCategoryType: React.FC<{ categoryType?: LCCategoryEnum }> = ({\n categoryType = LCCategoryEnum.achievement,\n}) => {\n const categoryColor = getCategoryColor(categoryType);\n\n return (\n <span\n className={`uppercase font-poppins text-[12px] font-[600] leading-[12px] select-none text-${categoryColor}`}\n >\n {categoryType}\n </span>\n );\n};\n\nexport default VCDisplayCardCategoryType;\n","import React, { useLayoutEffect, useRef, useState } from 'react';\nimport { Flipper, Flipped } from 'react-flip-toolkit';\n\nimport { VCVerificationCheckWithSpinner } from '../VCVerificationCheck/VCVerificationCheck';\nimport VC2FrontFaceInfo from './VC2FrontFaceInfo';\nimport VC2BackFace from './VC2BackFace';\nimport RibbonEnd from './RibbonEnd';\nimport FitText from './FitText';\nimport AwardRibbon from '../svgs/AwardRibbon';\nimport LeftArrow from '../svgs/LeftArrow';\nimport RoundedX from '../svgs/RoundedX';\nimport VCDisplayCardCategoryType from './VCDisplayCardCategoryType';\nimport VCDisplayCardSkillsCount from './VCDisplayCardSkillsCount';\n\nimport { Profile, VC, VerificationItem, VerificationStatusEnum } from '@learncard/types';\nimport {\n getColorForVerificationStatus,\n getInfoFromCredential,\n} from '../../helpers/credential.helpers';\nimport {\n BoostAchievementCredential,\n IssueHistory,\n LCCategoryEnum,\n MediaMetadata,\n VideoMetadata,\n} from '../../types';\nimport { CertificateDisplayCard } from '../CertificateDisplayCard';\n\nexport type CredentialIconType = {\n image?: React.ReactNode;\n color?: string;\n};\n\nexport type VCDisplayCard2Props = {\n categoryType?: LCCategoryEnum;\n credential: VC | BoostAchievementCredential;\n verificationItems: VerificationItem[];\n issueeOverride?: Profile;\n issuerOverride?: Profile;\n subjectDID?: string;\n subjectImageComponent?: React.ReactNode;\n issuerImageComponent?: React.ReactNode;\n verificationInProgress?: boolean;\n // convertTagsToSkills?: (tags: string[]) => { [skill: string]: string[] };\n handleXClick?: () => void;\n getFileMetadata?: (url: string) => MediaMetadata;\n getVideoMetadata?: (url: string) => VideoMetadata;\n onMediaAttachmentClick?: (url: string, type: 'photo' | 'document' | 'video' | 'link') => void;\n bottomRightIcon?: CredentialIconType;\n customFooterComponent?: React.ReactNode;\n customBodyCardComponent?: React.ReactNode;\n customThumbComponent?: React.ReactNode;\n customDescription?: React.ReactNode;\n customCriteria?: React.ReactNode;\n customIssueHistoryComponent?: React.ReactNode;\n issueHistory?: IssueHistory[];\n titleOverride?: string;\n showBackButton?: boolean;\n enableLightbox?: boolean;\n customRibbonCategoryComponent?: React.ReactNode;\n customFrontButton?: React.ReactNode;\n trustedAppRegistry?: any[];\n hideIssueDate?: boolean;\n onDotsClick?: () => void;\n};\n\nexport const VCDisplayCard2: React.FC<VCDisplayCard2Props> = ({\n categoryType,\n credential,\n verificationItems,\n issueeOverride,\n issuerOverride,\n subjectDID,\n subjectImageComponent,\n issuerImageComponent,\n verificationInProgress = false,\n // convertTagsToSkills,\n handleXClick,\n getFileMetadata,\n getVideoMetadata,\n onMediaAttachmentClick,\n bottomRightIcon,\n customFooterComponent,\n customBodyCardComponent,\n customThumbComponent,\n customCriteria,\n customDescription,\n customIssueHistoryComponent,\n issueHistory,\n titleOverride,\n showBackButton = true,\n enableLightbox,\n customRibbonCategoryComponent,\n customFrontButton,\n trustedAppRegistry,\n hideIssueDate,\n onDotsClick,\n}) => {\n console.log('credential', credential);\n\n const {\n title = '',\n createdAt,\n issuer: _issuer = '',\n issuee: _issuee = '',\n imageUrl,\n } = getInfoFromCredential(credential, 'MMM dd, yyyy');\n const issuee = issueeOverride || _issuee;\n const issuer = issuerOverride || _issuer;\n\n const [isFront, setIsFront] = useState(true);\n const [headerHeight, setHeaderHeight] = useState(100); // 79 is the height if the header is one line\n const [headerWidth, setHeaderWidth] = useState(0);\n\n const headerRef = useRef<HTMLHeadingElement>(null);\n\n useLayoutEffect(() => {\n // Needs a small setTimeout otherwise it'll be wrong sometimes with multiline header.\n // Probably because of the interaction with FitText\n setTimeout(() => {\n setHeaderHeight(headerRef.current?.clientHeight ?? 100);\n setHeaderWidth(headerRef.current?.clientWidth ?? 0);\n }, 10);\n });\n\n let worstVerificationStatus = verificationItems.reduce(\n (\n currentWorst: (typeof VerificationStatusEnum)[keyof typeof VerificationStatusEnum],\n verification\n ) => {\n switch (currentWorst) {\n case VerificationStatusEnum.Success:\n return verification.status;\n case VerificationStatusEnum.Error:\n return verification.status === VerificationStatusEnum.Failed\n ? verification.status\n : currentWorst;\n case VerificationStatusEnum.Failed:\n return currentWorst;\n }\n },\n VerificationStatusEnum.Success\n );\n\n const statusColor = getColorForVerificationStatus(worstVerificationStatus);\n\n const backgroundStyle = {\n backgroundColor: credential?.display?.backgroundColor,\n backgroundImage: credential?.display?.backgroundImage\n ? `linear-gradient(to bottom, rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0.25)), url(${credential.display?.backgroundImage})`\n : undefined,\n backgroundSize: 'cover',\n backgroundPosition: 'center',\n backgroundAttachment: 'fixed',\n };\n\n const _title = titleOverride || title;\n\n if (credential?.display?.displayType === 'certificate') {\n return (\n <CertificateDisplayCard\n credential={credential}\n categoryType={categoryType}\n issueeOverride={issuee}\n issuerOverride={issuer}\n verificationItems={verificationItems}\n getFileMetadata={getFileMetadata}\n getVideoMetadata={getVideoMetadata}\n onMediaAttachmentClick={onMediaAttachmentClick}\n enableLightbox={enableLightbox}\n trustedAppRegistry={trustedAppRegistry}\n handleXClick={handleXClick}\n subjectImageComponent={subjectImageComponent}\n issuerImageComponent={issuerImageComponent}\n customBodyCardComponent={customBodyCardComponent}\n hideIssueDate={hideIssueDate}\n onDotsClick={onDotsClick}\n />\n );\n }\n\n return (\n <Flipper className=\"w-full\" flipKey={isFront}>\n <Flipped flipId=\"card\">\n <section className=\"vc-display-card font-mouse flex flex-col items-center border-solid border-[5px] border-white rounded-[30px] overflow-visible z-10 min-h-[800px] max-w-[400px] relative bg-white shadow-3xl\">\n <RibbonEnd\n side=\"left\"\n className=\"absolute left-[-30px] top-[50px] z-0\"\n height={'100'}\n />\n <RibbonEnd\n side=\"right\"\n className=\"absolute right-[-30px] top-[50px] z-0\"\n height={'100'}\n />\n\n <h1\n ref={headerRef}\n className=\"vc-card-header px-[20px] pb-[10px] pt-[3px] overflow-visible mt-[40px] absolute text-center bg-white border-y-[5px] border-[#EEF2FF] shadow-bottom w-[calc(100%_+_16px)] rounded-t-[8px] z-50\"\n style={{ wordBreak: 'break-word' }}\n >\n {customRibbonCategoryComponent && customRibbonCategoryComponent}\n {!customRibbonCategoryComponent && (\n <VCDisplayCardCategoryType categoryType={categoryType} />\n )}\n\n <FitText\n text={_title ?? ''}\n maxFontSize={32}\n minFontSize={20}\n width={((headerWidth ?? 290) - 40).toString()}\n className=\"vc-card-header-main-title text-[#18224E] leading-[100%] text-shadow text-[32px]\"\n />\n </h1>\n\n {isFront && handleXClick && (\n <button\n className=\"vc-card-x-button absolute top-[-25px] bg-white rounded-full h-[50px] w-[50px] flex items-center justify-center z-50\"\n onClick={handleXClick}\n >\n <RoundedX />\n </button>\n )}\n\n <div\n className=\"relative pt-[114px] vc-card-content-container flex flex-col items-center grow basis-0 min-h-0 h-full w-full rounded-t-[30px] bg-[#353E64] rounded-b-[200px]\"\n style={backgroundStyle}\n >\n {/* \n div in a div here so that we can have an outer scroll container with an inner container\n that has a rounded bottom at the bottom of the scrollable content \n */}\n <Flipped flipId=\"scroll-container\">\n <div className=\"vc-card-content-scroll-container w-full pt-[20px] min-h-full flex flex-col justify-start items-center rounded-t-[30px] rounded-b-[200px] overflow-y-auto scrollbar-hide pb-[50px]\">\n {isFront && (\n <Flipped flipId=\"face\">\n <VC2FrontFaceInfo\n issuee={issuee}\n subjectDID={subjectDID}\n issuer={issuer}\n title={title}\n subjectImageComponent={subjectImageComponent}\n issuerImageComponent={issuerImageComponent}\n customBodyCardComponent={customBodyCardComponent}\n customThumbComponent={customThumbComponent}\n createdAt={createdAt ?? ''}\n imageUrl={imageUrl}\n />\n </Flipped>\n )}\n {!isFront && (\n <Flipped flipId=\"face\">\n <VC2BackFace\n credential={credential}\n verificationItems={verificationItems}\n // convertTagsToSkills={convertTagsToSkills}\n issueHistory={issueHistory}\n getFileMetadata={getFileMetadata}\n getVideoMetadata={getVideoMetadata}\n onMediaAttachmentClick={onMediaAttachmentClick}\n showBackButton={showBackButton}\n showFrontFace={() => setIsFront(true)}\n customDescription={customDescription}\n customCriteria={customCriteria}\n customIssueHistoryComponent={\n customIssueHistoryComponent\n }\n enableLightbox={enableLightbox}\n />\n </Flipped>\n )}\n\n <VCDisplayCardSkillsCount skills={credential?.skills} />\n\n {isFront && customFrontButton}\n {isFront && !customFrontButton && (\n <Flipped flipId=\"details-back-button\">\n <button\n type=\"button\"\n className=\"vc-toggle-side-button text-white shadow-bottom bg-[#00000099] px-[30px] py-[8px] rounded-[40px] text-[28px] tracking-[0.75px] uppercase leading-[28px] mt-[40px] w-fit select-none\"\n onClick={() => setIsFront(!isFront)}\n >\n Details\n </button>\n </Flipped>\n )}\n {!isFront && (\n <Flipped flipId=\"details-back-button\">\n <button\n type=\"button\"\n className=\"vc-toggle-side-button text-white shadow-bottom bg-[#00000099] px-[30px] py-[8px] rounded-[40px] text-[28px] tracking-[0.75px] uppercase leading-[28px] mt-[40px] w-fit select-none\"\n onClick={() => setIsFront(!isFront)}\n >\n <span className=\"flex gap-[10px] items-center\">\n <LeftArrow />\n Back\n </span>\n </button>\n </Flipped>\n )}\n </div>\n </Flipped>\n </div>\n <footer className=\"vc-card-footer w-full flex justify-between p-[5px] mt-[5px]\">\n {customFooterComponent && customFooterComponent}\n {!customFooterComponent && (\n <>\n {worstVerificationStatus === VerificationStatusEnum.Failed ? (\n <div className=\"w-[40px]\" role=\"presentation\" />\n ) : (\n <VCVerificationCheckWithSpinner\n spinnerSize=\"40px\"\n size={'32px'}\n loading={verificationInProgress}\n />\n )}\n <div className=\"vc-footer-text font-montserrat flex flex-col items-center justify-center text-[12px] font-[700] leading-[15px] select-none\">\n <span className=\"text-[#4F4F4F]\">Verified Credential</span>\n <span\n className=\"vc-footer-status uppercase\"\n style={{ color: statusColor }}\n >\n {worstVerificationStatus}\n </span>\n </div>\n <div\n className=\"vc-footer-icon rounded-[20px] h-[40px] w-[40px] flex items-center justify-center overflow-hidden\"\n style={{ backgroundColor: bottomRightIcon?.color ?? '#6366F1' }}\n >\n {bottomRightIcon?.image ?? <AwardRibbon />}\n </div>\n </>\n )}\n </footer>\n </section>\n </Flipped>\n </Flipper>\n );\n};\n\nexport default VCDisplayCard2;\n"],"names":["this","Flipper","Flipped"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"icons-25993244.js","sources":["../../src/constants/icons.ts"],"sourcesContent":["import coins from '../assets/images/coins.svg';\nimport user from '../assets/images/user.svg';\nimport trophy from '../assets/images/trophy.svg';\nimport briefcase from '../assets/images/briefcase.svg';\nimport graduation from '../assets/images/graduation.svg';\nimport lightbulb from '../assets/images/lightbulb.svg';\nimport award from '../assets/images/award.svg';\nimport keyIcon from '../assets/images/key-icon.svg';\n\nimport puzzlelight from '../assets/images/minipuzzle.svg';\nimport trophylight from '../assets/images/minitrophy.svg';\nimport gradcaplight from '../assets/images/gradcaplight.svg';\n\n// new icons\nimport coursesIcon from '../assets/icons/coursesIcon.svg';\nimport socialBadgesIcon from '../assets/icons/socialBadgesIcon.svg';\nimport achievementsIcon from '../assets/icons/achievementsIcon.svg';\nimport accomplishmentsIcon from '../assets/icons/accomplishmentsIcon.svg';\nimport skillsIcon from '../assets/icons/skillsIcon.svg';\nimport experiencesIcon from '../assets/icons/experiencesIcon.svg';\nimport relationshipsIcon from '../assets/icons/relationshipsIcon.svg';\nimport accommodationsIcon from '../assets/icons/accommodationsIcon.svg';\nimport membershipsIcon from '../assets/icons/membershipsIcon.svg';\nimport goalsIcon from '../assets/icons/goalsIcon.svg';\nimport eventsIcon from '../assets/icons/eventsIcon.svg';\n\nimport { Icons } from '../types';\nexport {\n coins,\n user,\n trophy,\n briefcase,\n graduation,\n lightbulb,\n gradcaplight,\n trophylight,\n puzzlelight,\n award,\n keyIcon,\n\n // new icons\n coursesIcon,\n socialBadgesIcon,\n achievementsIcon,\n accomplishmentsIcon,\n skillsIcon,\n experiencesIcon,\n relationshipsIcon,\n accommodationsIcon,\n membershipsIcon,\n goalsIcon,\n eventsIcon,\n};\n\nexport const ICONS_TO_SOURCE = {\n [Icons.coinsIcon]: coins,\n [Icons.userIcon]: user,\n [Icons.trophyIcon]: trophy,\n [Icons.briefcaseIcon]: briefcase,\n [Icons.graduationIcon]: graduation,\n [Icons.lightbulbIcon]: lightbulb,\n [Icons.puzzlelight]: puzzlelight,\n [Icons.trophylight]: trophylight,\n [Icons.gradcaplight]: gradcaplight,\n [Icons.award]: award,\n [Icons.keyIcon]: keyIcon,\n\n // new icons\n [Icons.coursesIcon]: coursesIcon,\n [Icons.socialBagesIcon]: socialBadgesIcon,\n [Icons.achievementsIcon]: achievementsIcon,\n [Icons.accomplishmentsIcon]: accomplishmentsIcon,\n [Icons.skillsIcon]: skillsIcon,\n [Icons.experiencesIcon]: experiencesIcon,\n [Icons.relationshipsIcon]: relationshipsIcon,\n [Icons.accommodationsIcon]: accommodationsIcon,\n [Icons.membershipsIcon]: membershipsIcon,\n [Icons.goalsIcon]: goalsIcon,\n [Icons.eventsIcon]: eventsIcon,\n};\n\nexport const TYPE_TO_ICON: any = {\n course: gradcaplight,\n achievement: trophylight,\n skill: puzzlelight,\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA+CY,MAAC,eAAe,GAAG;AAC/B,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK;AAC1B,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI;AACxB,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM;AAC5B,EAAE,CAAC,KAAK,CAAC,aAAa,GAAG,SAAS;AAClC,EAAE,CAAC,KAAK,CAAC,cAAc,GAAG,UAAU;AACpC,EAAE,CAAC,KAAK,CAAC,aAAa,GAAG,SAAS;AAClC,EAAE,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW;AAClC,EAAE,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW;AAClC,EAAE,CAAC,KAAK,CAAC,YAAY,GAAG,YAAY;AACpC,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK;AACtB,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO;AAC1B,EAAE,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW;AAClC,EAAE,CAAC,KAAK,CAAC,eAAe,GAAG,gBAAgB;AAC3C,EAAE,CAAC,KAAK,CAAC,gBAAgB,GAAG,gBAAgB;AAC5C,EAAE,CAAC,KAAK,CAAC,mBAAmB,GAAG,mBAAmB;AAClD,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,UAAU;AAChC,EAAE,CAAC,KAAK,CAAC,eAAe,GAAG,eAAe;AAC1C,EAAE,CAAC,KAAK,CAAC,iBAAiB,GAAG,iBAAiB;AAC9C,EAAE,CAAC,KAAK,CAAC,kBAAkB,GAAG,kBAAkB;AAChD,EAAE,CAAC,KAAK,CAAC,eAAe,GAAG,eAAe;AAC1C,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS;AAC9B,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,UAAU;AAChC,EAAE;AACU,MAAC,YAAY,GAAG;AAC5B,EAAE,MAAM,EAAE,YAAY;AACtB,EAAE,WAAW,EAAE,WAAW;AAC1B,EAAE,KAAK,EAAE,WAAW;AACpB;;;;"}