@coorpacademy/components 11.32.0 → 11.32.1-alpha.19

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 (165) hide show
  1. package/es/atom/button-link/index.d.ts +1 -0
  2. package/es/atom/button-link/index.d.ts.map +1 -1
  3. package/es/atom/button-link/index.js +6 -5
  4. package/es/atom/button-link/index.js.map +1 -1
  5. package/es/atom/button-link/types.d.ts +3 -0
  6. package/es/atom/button-link/types.d.ts.map +1 -1
  7. package/es/atom/button-link/types.js +1 -0
  8. package/es/atom/button-link/types.js.map +1 -1
  9. package/es/atom/chip/index.d.ts +1 -1
  10. package/es/atom/chip/index.d.ts.map +1 -1
  11. package/es/atom/chip/index.js +2 -6
  12. package/es/atom/chip/index.js.map +1 -1
  13. package/es/atom/chip/style.css +2 -2
  14. package/es/atom/icon/index.d.ts +1 -1
  15. package/es/atom/icon/index.d.ts.map +1 -1
  16. package/es/atom/icon/index.js +6 -4
  17. package/es/atom/icon/index.js.map +1 -1
  18. package/es/molecule/base-modal/index.d.ts +33 -0
  19. package/es/molecule/base-modal/index.d.ts.map +1 -0
  20. package/es/molecule/base-modal/index.js +142 -0
  21. package/es/molecule/base-modal/index.js.map +1 -0
  22. package/es/molecule/base-modal/style.css +125 -0
  23. package/es/molecule/cm-popin/types.d.ts +2 -0
  24. package/es/molecule/cm-popin/types.d.ts.map +1 -1
  25. package/es/molecule/expandible-actionable-table/index.d.ts +1 -0
  26. package/es/molecule/expandible-actionable-table/index.d.ts.map +1 -1
  27. package/es/molecule/expandible-actionable-table/types.d.ts +1 -0
  28. package/es/molecule/expandible-actionable-table/types.d.ts.map +1 -1
  29. package/es/molecule/learner-skill-card/index.d.ts +2 -0
  30. package/es/molecule/learner-skill-card/index.d.ts.map +1 -1
  31. package/es/molecule/learner-skill-card/index.js +9 -4
  32. package/es/molecule/learner-skill-card/index.js.map +1 -1
  33. package/es/molecule/learning-profile-radar-chart/index.d.ts +1 -1
  34. package/es/molecule/learning-profile-radar-chart/index.d.ts.map +1 -1
  35. package/es/molecule/learning-profile-radar-chart/index.js +20 -11
  36. package/es/molecule/learning-profile-radar-chart/index.js.map +1 -1
  37. package/es/molecule/learning-profile-radar-chart/types.d.ts +7 -1
  38. package/es/molecule/learning-profile-radar-chart/types.d.ts.map +1 -1
  39. package/es/molecule/learning-profile-radar-chart/types.js.map +1 -1
  40. package/es/molecule/skill-picker-modal/index.d.ts +23 -0
  41. package/es/molecule/skill-picker-modal/index.d.ts.map +1 -0
  42. package/es/molecule/skill-picker-modal/index.js +138 -0
  43. package/es/molecule/skill-picker-modal/index.js.map +1 -0
  44. package/es/molecule/skill-picker-modal/style.css +28 -0
  45. package/es/molecule/skills-chart-side-information-item/index.d.ts +1 -1
  46. package/es/molecule/skills-chart-side-information-item/index.js +1 -1
  47. package/es/molecule/skills-chart-side-information-item/index.js.map +1 -1
  48. package/es/molecule/skills-chart-side-information-panel/index.d.ts +1 -1
  49. package/es/molecule/skills-chart-side-information-panel/style.css +18 -9
  50. package/es/organism/list-items/index.d.ts +2 -0
  51. package/es/organism/setup-header/index.d.ts +4 -0
  52. package/es/organism/wizard-contents/index.d.ts +3 -0
  53. package/es/template/app-player/loading/index.d.ts +2 -0
  54. package/es/template/app-player/player/index.d.ts +4 -0
  55. package/es/template/app-player/player/slides/index.d.ts +2 -0
  56. package/es/template/app-player/player/slides/index.d.ts.map +1 -1
  57. package/es/template/app-player/popin-correction/index.d.ts +2 -0
  58. package/es/template/app-player/popin-correction/index.d.ts.map +1 -1
  59. package/es/template/app-player/popin-end/index.d.ts +2 -0
  60. package/es/template/app-review/index.d.ts +2 -0
  61. package/es/template/app-review/index.d.ts.map +1 -1
  62. package/es/template/app-review/player/prop-types.d.ts +2 -0
  63. package/es/template/app-review/player/prop-types.d.ts.map +1 -1
  64. package/es/template/app-review/prop-types.d.ts +2 -0
  65. package/es/template/app-review/prop-types.d.ts.map +1 -1
  66. package/es/template/back-office/brand-create/index.d.ts +4 -0
  67. package/es/template/back-office/brand-create/index.d.ts.map +1 -1
  68. package/es/template/back-office/brand-list/index.d.ts +4 -0
  69. package/es/template/back-office/brand-list/index.d.ts.map +1 -1
  70. package/es/template/back-office/brand-update/index.d.ts +11 -0
  71. package/es/template/back-office/dashboard-preview/index.d.ts +4 -0
  72. package/es/template/back-office/layout/index.d.ts +4 -0
  73. package/es/template/back-office/layout/index.d.ts.map +1 -1
  74. package/es/template/common/dashboard/index.d.ts +4 -0
  75. package/es/template/common/search-page/index.d.ts +2 -0
  76. package/es/template/external-course/index.d.ts +2 -0
  77. package/es/template/my-learning/index.d.ts +34 -0
  78. package/es/template/my-learning/index.d.ts.map +1 -0
  79. package/es/template/my-learning/index.js +352 -0
  80. package/es/template/my-learning/index.js.map +1 -0
  81. package/es/template/my-learning/style.css +196 -0
  82. package/lib/atom/button-link/index.d.ts +1 -0
  83. package/lib/atom/button-link/index.d.ts.map +1 -1
  84. package/lib/atom/button-link/index.js +6 -5
  85. package/lib/atom/button-link/index.js.map +1 -1
  86. package/lib/atom/button-link/types.d.ts +3 -0
  87. package/lib/atom/button-link/types.d.ts.map +1 -1
  88. package/lib/atom/button-link/types.js +1 -0
  89. package/lib/atom/button-link/types.js.map +1 -1
  90. package/lib/atom/chip/index.d.ts +1 -1
  91. package/lib/atom/chip/index.d.ts.map +1 -1
  92. package/lib/atom/chip/index.js +3 -6
  93. package/lib/atom/chip/index.js.map +1 -1
  94. package/lib/atom/chip/style.css +2 -2
  95. package/lib/atom/icon/index.d.ts +1 -1
  96. package/lib/atom/icon/index.d.ts.map +1 -1
  97. package/lib/atom/icon/index.js +6 -4
  98. package/lib/atom/icon/index.js.map +1 -1
  99. package/lib/molecule/base-modal/index.d.ts +33 -0
  100. package/lib/molecule/base-modal/index.d.ts.map +1 -0
  101. package/lib/molecule/base-modal/index.js +158 -0
  102. package/lib/molecule/base-modal/index.js.map +1 -0
  103. package/lib/molecule/base-modal/style.css +125 -0
  104. package/lib/molecule/cm-popin/types.d.ts +2 -0
  105. package/lib/molecule/cm-popin/types.d.ts.map +1 -1
  106. package/lib/molecule/expandible-actionable-table/index.d.ts +1 -0
  107. package/lib/molecule/expandible-actionable-table/index.d.ts.map +1 -1
  108. package/lib/molecule/expandible-actionable-table/types.d.ts +1 -0
  109. package/lib/molecule/expandible-actionable-table/types.d.ts.map +1 -1
  110. package/lib/molecule/learner-skill-card/index.d.ts +2 -0
  111. package/lib/molecule/learner-skill-card/index.d.ts.map +1 -1
  112. package/lib/molecule/learner-skill-card/index.js +9 -4
  113. package/lib/molecule/learner-skill-card/index.js.map +1 -1
  114. package/lib/molecule/learning-profile-radar-chart/index.d.ts +1 -1
  115. package/lib/molecule/learning-profile-radar-chart/index.d.ts.map +1 -1
  116. package/lib/molecule/learning-profile-radar-chart/index.js +20 -11
  117. package/lib/molecule/learning-profile-radar-chart/index.js.map +1 -1
  118. package/lib/molecule/learning-profile-radar-chart/types.d.ts +7 -1
  119. package/lib/molecule/learning-profile-radar-chart/types.d.ts.map +1 -1
  120. package/lib/molecule/learning-profile-radar-chart/types.js.map +1 -1
  121. package/lib/molecule/skill-picker-modal/index.d.ts +23 -0
  122. package/lib/molecule/skill-picker-modal/index.d.ts.map +1 -0
  123. package/lib/molecule/skill-picker-modal/index.js +156 -0
  124. package/lib/molecule/skill-picker-modal/index.js.map +1 -0
  125. package/lib/molecule/skill-picker-modal/style.css +28 -0
  126. package/lib/molecule/skills-chart-side-information-item/index.d.ts +1 -1
  127. package/lib/molecule/skills-chart-side-information-item/index.js +1 -1
  128. package/lib/molecule/skills-chart-side-information-item/index.js.map +1 -1
  129. package/lib/molecule/skills-chart-side-information-panel/index.d.ts +1 -1
  130. package/lib/molecule/skills-chart-side-information-panel/style.css +18 -9
  131. package/lib/organism/list-items/index.d.ts +2 -0
  132. package/lib/organism/setup-header/index.d.ts +4 -0
  133. package/lib/organism/wizard-contents/index.d.ts +3 -0
  134. package/lib/template/app-player/loading/index.d.ts +2 -0
  135. package/lib/template/app-player/player/index.d.ts +4 -0
  136. package/lib/template/app-player/player/slides/index.d.ts +2 -0
  137. package/lib/template/app-player/player/slides/index.d.ts.map +1 -1
  138. package/lib/template/app-player/popin-correction/index.d.ts +2 -0
  139. package/lib/template/app-player/popin-correction/index.d.ts.map +1 -1
  140. package/lib/template/app-player/popin-end/index.d.ts +2 -0
  141. package/lib/template/app-review/index.d.ts +2 -0
  142. package/lib/template/app-review/index.d.ts.map +1 -1
  143. package/lib/template/app-review/player/prop-types.d.ts +2 -0
  144. package/lib/template/app-review/player/prop-types.d.ts.map +1 -1
  145. package/lib/template/app-review/prop-types.d.ts +2 -0
  146. package/lib/template/app-review/prop-types.d.ts.map +1 -1
  147. package/lib/template/back-office/brand-create/index.d.ts +4 -0
  148. package/lib/template/back-office/brand-create/index.d.ts.map +1 -1
  149. package/lib/template/back-office/brand-list/index.d.ts +4 -0
  150. package/lib/template/back-office/brand-list/index.d.ts.map +1 -1
  151. package/lib/template/back-office/brand-update/index.d.ts +11 -0
  152. package/lib/template/back-office/dashboard-preview/index.d.ts +4 -0
  153. package/lib/template/back-office/layout/index.d.ts +4 -0
  154. package/lib/template/back-office/layout/index.d.ts.map +1 -1
  155. package/lib/template/common/dashboard/index.d.ts +4 -0
  156. package/lib/template/common/search-page/index.d.ts +2 -0
  157. package/lib/template/external-course/index.d.ts +2 -0
  158. package/lib/template/my-learning/index.d.ts +34 -0
  159. package/lib/template/my-learning/index.d.ts.map +1 -0
  160. package/lib/template/my-learning/index.js +373 -0
  161. package/lib/template/my-learning/index.js.map +1 -0
  162. package/lib/template/my-learning/style.css +196 -0
  163. package/locales/en/global.json +25 -0
  164. package/locales/sl/global.json +1 -1
  165. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["top","offset","x","y","alignment","margin","bottom","right","marginRight","left","marginLeft","BLACK","WHITE","DEFAULT_MAIN_COLOR","DEFAULT_COLORS","gradient","fill","stroke","percentage","color","background","label","CHART_CONFIGS","triangle","name","ticks","sideCount","quadrilateral","pentagon","hexagon","DOT_DEFAULT_PROPS","strokeWidth","strokeOpacity","r","pointerEvents","style","cursor","DOT_ACTIVE_PROPS","RADAR_DEFAULT_PROPS","fillOpacity","Gradient","type","colors","firstColor","secondColor","CustomTooltip","active","payload","length","tooltip","tooltipLabel","tooltipValue","value","CustomDot","cx","cy","onDotClick","activeDot","dataName","subject","onClick","e","stopPropagation","buildRadars","totalDataset","handleOnDotClick","index","datakey","dataset","buildCustomLabel","percentagesValues","chartType","formatedColors","isCurrentDotActive","offsetX","offsetY","rest","onLabelClick","classnames","tickWrapper","tickWrapperFocus","alignItems","textAlign","opacity","map","colorLabel","i","tickValue","tickLabel","CHART_CONFIGS_BY_SIDE_COUNT","formatValues","values_","val","formatData","legend","data_","ref","LearningProfileRadarChart","data","colorsProps","width","height","isMobile","setIsMobile","useState","setActiveDot","Object","assign","useMemo","gradients","userAgent","navigator","isMobile_","getIsMobile","setIsMobile_","useCallback","useEffect","handleClick","undefined","window","addEventListener","removeEventListener","formatedData","find","indexOf","skillRef","key","renderCustomLabel","currentData","ResponsiveLearningProfileRadarChart","props","propTypes","learningProfileRadarChartPropTypes"],"sources":["../../../src/molecule/learning-profile-radar-chart/index.tsx"],"sourcesContent":["import React, {Fragment, useCallback, useEffect, useMemo, useState} from 'react';\nimport {\n Radar,\n RadarChart,\n PolarGrid,\n PolarAngleAxis,\n ResponsiveContainer,\n Tooltip,\n PolarRadiusAxis\n} from 'recharts';\nimport {\n pipe,\n keyBy,\n mapValues,\n size,\n getOr,\n map,\n toPairs,\n values,\n isEmpty,\n omit,\n fromPairs,\n times,\n flatten,\n findKey\n} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {isMobile as getIsMobile} from '../../util/check-is-mobile';\nimport style from './style.css';\nimport {\n ActiveDotType,\n FormatedColorsType,\n FormatedDataType,\n LearningProfileRadarChartPropTypes,\n TickType,\n learningProfileRadarChartPropTypes\n} from './types';\n\ntype CHART_TYPE_TYPE = keyof typeof CHART_CONFIGS;\n\n/* TICK_POSITIONS */\nconst top: TickType = {offset: {x: -100, y: -65}, alignment: 'center', margin: 'auto'};\nconst bottom: TickType = {offset: {x: -100, y: 10}, alignment: 'center', margin: 'auto'};\nconst right: TickType = {offset: {x: 30, y: -10}, alignment: 'start', marginRight: 'auto'};\nconst left: TickType = {offset: {x: -230, y: -10}, alignment: 'end', marginLeft: 'auto'};\n\n/* CONSTANTS */\nconst BLACK = '#000000ff';\nconst WHITE = '#ffffffff';\nconst DEFAULT_MAIN_COLOR = '#0062ffff';\n\nconst DEFAULT_COLORS: FormatedColorsType = {\n gradient: {\n fill: [DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR],\n stroke: [DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR]\n },\n percentage: {\n color: BLACK,\n background: WHITE\n },\n label: {\n color: BLACK\n }\n};\n\nconst CHART_CONFIGS = {\n triangle: {\n name: 'triangle',\n ticks: [top, right, left],\n sideCount: 3\n },\n quadrilateral: {\n name: 'quadrilateral',\n ticks: [top, right, bottom, left],\n sideCount: 4\n },\n pentagon: {\n name: 'pentagon',\n ticks: [top, right, right, left, left],\n sideCount: 5\n },\n hexagon: {\n name: 'hexagon',\n ticks: [top, right, right, bottom, left, left],\n sideCount: 6\n }\n} as const;\n\nconst DOT_DEFAULT_PROPS = {\n strokeWidth: 4,\n strokeOpacity: 0.2,\n fill: '#fff',\n r: 8,\n pointerEvents: 'all',\n style: {cursor: 'pointer'}\n} as const;\n\nconst DOT_ACTIVE_PROPS = {\n fill: '#fff',\n r: 8,\n strokeWidth: 6,\n strokeOpacity: 0.5\n} as const;\n\nconst RADAR_DEFAULT_PROPS = {\n strokeWidth: 6,\n strokeOpacity: 0.2,\n fillOpacity: 0.2\n} as const;\n\n/* COMPONENTS */\nconst Gradient = ({type, colors: [firstColor, secondColor]}: {type: string; colors: string[]}) => (\n <defs>\n <linearGradient id={`gradient-${type}`} x1=\"0%\" y1=\"0%\" x2=\"0%\" y2=\"100%\">\n <stop offset=\"0%\" stopColor={firstColor} />\n <stop offset=\"100%\" stopColor={secondColor} />\n </linearGradient>\n </defs>\n);\n\nconst CustomTooltip = ({\n active,\n payload,\n label\n}: {\n active?: boolean;\n payload?: {value: number}[];\n label?: string;\n}) =>\n active && !!payload?.length ? (\n <div className={style.tooltip}>\n <span className={style.tooltipLabel}>{label}</span>\n <span className={style.tooltipValue}>{payload[0].value}%</span>\n </div>\n ) : null;\n\nconst CustomDot = ({\n cx,\n cy,\n payload,\n onDotClick,\n stroke,\n activeDot,\n dataName\n}: {\n cx?: number;\n cy?: number;\n payload?: {payload: {subject: string} & {[datakey: string]: number}; name: string};\n onDotClick: (name: string) => void;\n dataKey: string;\n stroke: string;\n activeDot?: ActiveDotType;\n dataName: string;\n}) => (\n <circle\n {...{\n ...DOT_DEFAULT_PROPS,\n ...(payload?.payload.subject === activeDot?.label && DOT_ACTIVE_PROPS),\n stroke,\n cx,\n cy,\n onClick: e => {\n e.stopPropagation();\n\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n 'data-name': dataName\n }}\n />\n);\n\nconst buildRadars = (\n totalDataset: number,\n handleOnDotClick: (name: string) => void,\n activeDot?: ActiveDotType\n) =>\n times(index => {\n const datakey = `value${index + 1}`;\n const dataset = `dataset-${index + 1}`;\n\n return (\n <Radar\n {...RADAR_DEFAULT_PROPS}\n fill={`url(#gradient-fill-${index})`}\n stroke={`url(#gradient-stroke-${index})`}\n key={dataset}\n name={dataset}\n dataKey={datakey}\n activeDot={{\n ...DOT_ACTIVE_PROPS,\n stroke: `url(#gradient-stroke-${index})`\n }}\n // only on mobile\n // to handle dot style on hover (convert to click)\n // use with the tooltip component\n dot={\n <CustomDot\n onDotClick={handleOnDotClick}\n activeDot={activeDot}\n dataKey={datakey}\n stroke={`url(#gradient-stroke-${index})`}\n dataName={`dot-${dataset}`}\n />\n }\n />\n );\n }, totalDataset);\n\nconst buildCustomLabel = ({\n index,\n x,\n y,\n percentagesValues,\n label,\n activeDot,\n chartType,\n formatedColors,\n onClick\n}: {\n index: number;\n x: number;\n y: number;\n percentagesValues: number[];\n label: string;\n chartType: CHART_TYPE_TYPE;\n formatedColors: FormatedColorsType[];\n activeDot?: ActiveDotType;\n onClick: (name: string) => void;\n}) => {\n const isCurrentDotActive = activeDot?.label === label;\n const {\n offset: {x: offsetX, y: offsetY},\n alignment,\n ...rest\n } = CHART_CONFIGS[chartType].ticks[index];\n\n function onLabelClick(e: React.MouseEvent) {\n e.stopPropagation();\n onClick(label);\n }\n\n return (\n <g>\n <foreignObject x={x + offsetX} y={y + offsetY} width=\"200\" height=\"65\">\n <div\n data-name={label}\n onClick={onLabelClick}\n className={classnames(style.tickWrapper, isCurrentDotActive && style.tickWrapperFocus)}\n style={{\n ...rest,\n alignItems: alignment,\n textAlign: alignment,\n opacity: !isEmpty(activeDot) && !isCurrentDotActive ? 0.3 : 1\n }}\n >\n {formatedColors.map(\n ({percentage: {color, background}, label: {color: colorLabel}}, i) => (\n <Fragment key={i}>\n <span className={style.tickValue} style={{color, background}}>\n {percentagesValues[i]}\n </span>\n <span className={style.tickLabel} style={{color: colorLabel}}>\n {label}\n </span>\n </Fragment>\n )\n )}\n </div>\n </foreignObject>\n </g>\n );\n};\n\n/* UTILS */\nconst CHART_CONFIGS_BY_SIDE_COUNT = pipe(keyBy('sideCount'), mapValues('name'))(CHART_CONFIGS);\n\nconst formatValues: (values_: number | number[]) => Record<string, number> = pipe(\n values_ => flatten([values_]),\n values_ => values_.map((val: number, i: number): [string, number] => [`value${i + 1}`, val]),\n fromPairs\n);\n\n/* this convert incoming component data to rechart data structure */\nexport const formatData: (\n legend: {[ref: string]: string},\n data_: LearningProfileRadarChartPropTypes['data']\n) => FormatedDataType[] = (legend, data_) =>\n pipe(\n toPairs,\n map(([ref, values_]: [string, number | number[]]) => ({\n ...formatValues(values_),\n subject: legend[ref]\n }))\n )(data_);\n\nexport const LearningProfileRadarChart = ({\n data,\n legend,\n totalDataset,\n colors: colorsProps,\n onClick,\n width,\n height\n}: LearningProfileRadarChartPropTypes) => {\n const [isMobile, setIsMobile] = useState(false);\n const [activeDot, setActiveDot] = useState<ActiveDotType>();\n\n const formatedColors = times(i => {\n if (!colorsProps?.length) return DEFAULT_COLORS;\n\n const colors = colorsProps[i];\n return colors ? Object.assign({}, DEFAULT_COLORS, colors) : DEFAULT_COLORS;\n })(totalDataset);\n\n const chartType: CHART_TYPE_TYPE = useMemo(\n () => getOr('hexagon', size(data), CHART_CONFIGS_BY_SIDE_COUNT),\n [data]\n );\n\n const gradients = useMemo(\n () =>\n formatedColors.map(({gradient: {fill, stroke}}, index) => (\n <svg key={`gradient-${index}`}>\n <Gradient type={`fill-${index}`} colors={fill} />\n <Gradient type={`stroke-${index}`} colors={stroke} />\n </svg>\n )),\n [formatedColors]\n );\n\n const userAgent = navigator?.userAgent;\n const isMobile_ = useMemo(() => getIsMobile(userAgent), [userAgent]);\n\n const setIsMobile_ = useCallback(() => {\n setIsMobile(isMobile_);\n }, [isMobile_]);\n\n useEffect(() => setIsMobile_(), [setIsMobile_]);\n\n useEffect(() => {\n const handleClick = () => setActiveDot(undefined);\n\n !isEmpty(activeDot) && window.addEventListener('click', handleClick);\n\n return () => {\n window.removeEventListener('click', handleClick);\n };\n }, [activeDot]);\n\n function handleOnDotClick(label: string) {\n const payload = formatedData.find(({subject}) => subject === label);\n if (!payload) return;\n\n const index = formatedData.indexOf(payload);\n const datakey = `value${index + 1}`;\n const skillRef = findKey(val => val === payload?.subject, legend);\n\n if (skillRef) {\n setActiveDot({\n key: datakey,\n value: payload[datakey],\n label: payload.subject\n });\n onClick(skillRef);\n }\n }\n\n function renderCustomLabel({\n x,\n y,\n payload: {value: label},\n index\n }: {\n x: number;\n y: number;\n payload: {value: string};\n index: number;\n }) {\n const currentData = formatedData.find(({subject}) => subject === label);\n const percentagesValues: number[] = pipe(\n omit('subject'),\n mapValues(value => `${value}%`),\n values\n )(currentData);\n\n return buildCustomLabel({\n index,\n x,\n y,\n percentagesValues,\n label,\n activeDot,\n chartType,\n formatedColors,\n onClick: handleOnDotClick\n });\n }\n const formatedData = useMemo(() => formatData(legend, data), [legend, data]);\n\n return (\n <RadarChart\n width={width}\n height={height}\n cx=\"50%\"\n cy=\"50%\"\n outerRadius=\"80%\"\n data={formatedData}\n >\n {gradients}\n {buildRadars(totalDataset, handleOnDotClick, activeDot)}\n <PolarGrid strokeDasharray={15} strokeWidth={3} radialLines={false} />\n <PolarAngleAxis dataKey=\"subject\" tick={!isMobile && renderCustomLabel} />\n <PolarRadiusAxis tick={false} axisLine={false} domain={[0, 100]} />\n {isMobile ? <Tooltip cursor={false} content={<CustomTooltip />} /> : null}\n </RadarChart>\n );\n};\n\nconst ResponsiveLearningProfileRadarChart = (props: LearningProfileRadarChartPropTypes) => (\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n <LearningProfileRadarChart {...props} />\n </ResponsiveContainer>\n);\n\nLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\nResponsiveLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\n\nexport default ResponsiveLearningProfileRadarChart;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["top","offset","x","y","alignment","margin","bottom","right","marginRight","left","marginLeft","BLACK","WHITE","DEFAULT_MAIN_COLOR","DEFAULT_COLORS","gradient","fill","stroke","percentage","color","background","label","CHART_CONFIGS","triangle","name","ticks","sideCount","quadrilateral","pentagon","hexagon","DOT_DEFAULT_PROPS","strokeWidth","strokeOpacity","r","pointerEvents","style","cursor","DOT_ACTIVE_PROPS","RADAR_DEFAULT_PROPS","fillOpacity","Gradient","type","colors","firstColor","secondColor","CustomTooltip","active","payload","length","tooltip","tooltipLabel","tooltipValue","value","CustomDot","cx","cy","onDotClick","activeDot","dataName","subject","onClick","e","stopPropagation","buildRadars","totalDataset","handleOnDotClick","index","datakey","dataset","buildCustomLabel","percentagesValues","chartType","formatedColors","isCurrentDotActive","offsetX","offsetY","rest","onLabelClick","classnames","tickWrapper","tickWrapperFocus","alignItems","textAlign","opacity","map","colorLabel","i","tickValue","tickLabel","CHART_CONFIGS_BY_SIDE_COUNT","formatValues","values_","val","formatData","legend","data_","ref","LearningProfileRadarChart","data","colorsProps","width","height","isMobile","setIsMobile","useState","setActiveDot","Object","assign","useMemo","gradients","userAgent","navigator","isMobile_","getIsMobile","setIsMobile_","useCallback","useEffect","handleClick","undefined","window","addEventListener","removeEventListener","formatedData","find","indexOf","skillRef","key","renderCustomLabel","currentData","ResponsiveLearningProfileRadarChart","props","propTypes","learningProfileRadarChartPropTypes"],"sources":["../../../src/molecule/learning-profile-radar-chart/index.tsx"],"sourcesContent":["import React, {Fragment, useCallback, useEffect, useMemo, useState} from 'react';\nimport {\n Radar,\n RadarChart,\n PolarGrid,\n PolarAngleAxis,\n ResponsiveContainer,\n Tooltip,\n PolarRadiusAxis\n} from 'recharts';\nimport {\n pipe,\n keyBy,\n mapValues,\n size,\n getOr,\n map,\n toPairs,\n values,\n isEmpty,\n omit,\n fromPairs,\n times,\n flatten,\n findKey\n} from 'lodash/fp';\nimport classnames from 'classnames';\nimport {isMobile as getIsMobile} from '../../util/check-is-mobile';\nimport style from './style.css';\nimport {\n ActiveDotType,\n FormatedColorsType,\n FormatedDataType,\n LearningProfileRadarChartPropTypes,\n TickType,\n learningProfileRadarChartPropTypes\n} from './types';\n\ntype CHART_TYPE_TYPE = keyof typeof CHART_CONFIGS;\n\n/* TICK_POSITIONS */\nconst top: TickType = {offset: {x: -100, y: -65}, alignment: 'center', margin: 'auto'};\nconst bottom: TickType = {offset: {x: -100, y: 10}, alignment: 'center', margin: 'auto'};\nconst right: TickType = {offset: {x: 30, y: -10}, alignment: 'start', marginRight: 'auto'};\nconst left: TickType = {offset: {x: -230, y: -10}, alignment: 'end', marginLeft: 'auto'};\n\n/* CONSTANTS */\nconst BLACK = '#000000ff';\nconst WHITE = '#ffffffff';\nconst DEFAULT_MAIN_COLOR = '#0062ffff';\n\nconst DEFAULT_COLORS: FormatedColorsType = {\n gradient: {\n fill: [DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR],\n stroke: [DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR]\n },\n percentage: {\n color: BLACK,\n background: WHITE\n },\n label: {\n color: BLACK\n }\n};\n\nconst CHART_CONFIGS = {\n triangle: {\n name: 'triangle',\n ticks: [top, right, left],\n sideCount: 3\n },\n quadrilateral: {\n name: 'quadrilateral',\n ticks: [top, right, bottom, left],\n sideCount: 4\n },\n pentagon: {\n name: 'pentagon',\n ticks: [top, right, right, left, left],\n sideCount: 5\n },\n hexagon: {\n name: 'hexagon',\n ticks: [top, right, right, bottom, left, left],\n sideCount: 6\n }\n} as const;\n\nconst DOT_DEFAULT_PROPS = {\n strokeWidth: 2,\n strokeOpacity: 0.4,\n fill: '#fff',\n r: 4,\n pointerEvents: 'all',\n style: {cursor: 'pointer'}\n} as const;\n\nconst DOT_ACTIVE_PROPS = {\n fill: '#fff',\n r: 6,\n strokeWidth: 4,\n strokeOpacity: 0.6\n} as const;\n\nconst RADAR_DEFAULT_PROPS = {\n strokeWidth: 3,\n strokeOpacity: 0.2,\n fillOpacity: 0.2\n} as const;\n\n/* COMPONENTS */\nconst Gradient = ({type, colors: [firstColor, secondColor]}: {type: string; colors: string[]}) => (\n <defs>\n <linearGradient id={`gradient-${type}`} x1=\"0%\" y1=\"0%\" x2=\"0%\" y2=\"100%\">\n <stop offset=\"0%\" stopColor={firstColor} />\n <stop offset=\"100%\" stopColor={secondColor} />\n </linearGradient>\n </defs>\n);\n\nconst CustomTooltip = ({\n active,\n payload,\n label\n}: {\n active?: boolean;\n payload?: {value: number}[];\n label?: string;\n}) =>\n active && !!payload?.length ? (\n <div className={style.tooltip}>\n <span className={style.tooltipLabel}>{label}</span>\n <span className={style.tooltipValue}>{payload[0].value}%</span>\n </div>\n ) : null;\n\nconst CustomDot = ({\n cx,\n cy,\n payload,\n onDotClick,\n stroke,\n activeDot,\n dataName\n}: {\n cx?: number;\n cy?: number;\n payload?: {payload: {subject: string} & {[datakey: string]: number}; name: string};\n onDotClick: (name: string) => void;\n dataKey: string;\n stroke: string;\n activeDot?: ActiveDotType;\n dataName: string;\n}) => (\n <circle\n {...{\n ...DOT_DEFAULT_PROPS,\n ...(payload?.payload.subject === activeDot?.label && DOT_ACTIVE_PROPS),\n stroke,\n cx,\n cy,\n onClick: e => {\n e.stopPropagation();\n\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n 'data-name': dataName\n }}\n />\n);\n\nconst buildRadars = (\n totalDataset: number,\n handleOnDotClick: (name: string) => void,\n activeDot?: ActiveDotType\n) =>\n times(index => {\n const datakey = `value${index + 1}`;\n const dataset = `dataset-${index + 1}`;\n\n return (\n <Radar\n {...RADAR_DEFAULT_PROPS}\n fill={`url(#gradient-fill-${index})`}\n stroke={`url(#gradient-stroke-${index})`}\n key={dataset}\n name={dataset}\n dataKey={datakey}\n activeDot={{\n ...DOT_ACTIVE_PROPS,\n stroke: `url(#gradient-stroke-${index})`\n }}\n // only on mobile\n // to handle dot style on hover (convert to click)\n // use with the tooltip component\n dot={\n <CustomDot\n onDotClick={handleOnDotClick}\n activeDot={activeDot}\n dataKey={datakey}\n stroke={`url(#gradient-stroke-${index})`}\n dataName={`dot-${dataset}`}\n />\n }\n />\n );\n }, totalDataset);\n\nconst buildCustomLabel = ({\n index,\n x,\n y,\n percentagesValues,\n label,\n activeDot,\n chartType,\n formatedColors,\n onClick\n}: {\n index: number;\n x: number;\n y: number;\n percentagesValues: number[];\n label: string;\n chartType: CHART_TYPE_TYPE;\n formatedColors: FormatedColorsType[];\n activeDot?: ActiveDotType;\n onClick: (name: string) => void;\n}) => {\n const isCurrentDotActive = activeDot?.label === label;\n const {\n offset: {x: offsetX, y: offsetY},\n alignment,\n ...rest\n } = CHART_CONFIGS[chartType].ticks[index];\n\n function onLabelClick(e: React.MouseEvent) {\n e.stopPropagation();\n onClick(label);\n }\n\n return (\n <g>\n <foreignObject x={x + offsetX} y={y + offsetY} width=\"200\" height=\"65\">\n <div\n data-name={label}\n onClick={onLabelClick}\n className={classnames(style.tickWrapper, isCurrentDotActive && style.tickWrapperFocus)}\n style={{\n ...rest,\n alignItems: alignment,\n textAlign: alignment,\n opacity: !isEmpty(activeDot) && !isCurrentDotActive ? 0.3 : 1\n }}\n >\n {formatedColors.map(\n ({percentage: {color, background}, label: {color: colorLabel}}, i) => (\n <Fragment key={i}>\n <span className={style.tickValue} style={{color, background}}>\n {percentagesValues[i]}\n </span>\n <span className={style.tickLabel} style={{color: colorLabel}}>\n {label}\n </span>\n </Fragment>\n )\n )}\n </div>\n </foreignObject>\n </g>\n );\n};\n\n/* UTILS */\nconst CHART_CONFIGS_BY_SIDE_COUNT = pipe(keyBy('sideCount'), mapValues('name'))(CHART_CONFIGS);\n\nconst formatValues: (values_: number | number[]) => Record<string, number> = pipe(\n values_ => flatten([values_]),\n values_ => values_.map((val: number, i: number): [string, number] => [`value${i + 1}`, val]),\n fromPairs\n);\n\n/* this convert incoming component data to rechart data structure */\nexport const formatData: (\n legend: {[ref: string]: string},\n data_: LearningProfileRadarChartPropTypes['data']\n) => FormatedDataType[] = (legend, data_) =>\n pipe(\n toPairs,\n map(([ref, values_]: [string, number | number[]]) => ({\n ...formatValues(values_),\n subject: legend[ref]\n }))\n )(data_);\n\nexport const LearningProfileRadarChart = ({\n data,\n legend,\n totalDataset,\n colors: colorsProps,\n onClick,\n width,\n height,\n margin\n}: LearningProfileRadarChartPropTypes) => {\n const [isMobile, setIsMobile] = useState(false);\n const [activeDot, setActiveDot] = useState<ActiveDotType>();\n\n const formatedColors = times(i => {\n if (!colorsProps?.length) return DEFAULT_COLORS;\n\n const colors = colorsProps[i];\n return colors ? Object.assign({}, DEFAULT_COLORS, colors) : DEFAULT_COLORS;\n })(totalDataset);\n\n const chartType: CHART_TYPE_TYPE = useMemo(\n () => getOr('hexagon', size(data), CHART_CONFIGS_BY_SIDE_COUNT),\n [data]\n );\n\n const gradients = useMemo(\n () =>\n formatedColors.map(({gradient: {fill, stroke}}, index) => (\n <svg key={`gradient-${index}`}>\n <Gradient type={`fill-${index}`} colors={fill} />\n <Gradient type={`stroke-${index}`} colors={stroke} />\n </svg>\n )),\n [formatedColors]\n );\n\n const userAgent = navigator?.userAgent;\n const isMobile_ = useMemo(() => getIsMobile(userAgent), [userAgent]);\n\n const setIsMobile_ = useCallback(() => {\n setIsMobile(isMobile_);\n }, [isMobile_]);\n\n useEffect(() => setIsMobile_(), [setIsMobile_]);\n\n useEffect(() => {\n const handleClick = () => {\n setActiveDot(undefined);\n onClick(undefined);\n };\n\n !isEmpty(activeDot) && window.addEventListener('click', handleClick);\n\n return () => {\n window.removeEventListener('click', handleClick);\n };\n }, [activeDot]);\n\n function handleOnDotClick(label: string) {\n const payload = formatedData.find(({subject}) => subject === label);\n if (!payload) return;\n\n const index = formatedData.indexOf(payload);\n const datakey = `value${index + 1}`;\n const skillRef = findKey(val => val === payload?.subject, legend);\n\n if (skillRef) {\n setActiveDot({\n key: datakey,\n value: payload[datakey],\n label: payload.subject\n });\n onClick(skillRef);\n }\n }\n\n function renderCustomLabel({\n x,\n y,\n payload: {value: label},\n index\n }: {\n x: number;\n y: number;\n payload: {value: string};\n index: number;\n }) {\n const currentData = formatedData.find(({subject}) => subject === label);\n const percentagesValues: number[] = pipe(\n omit('subject'),\n mapValues(value => `${value}%`),\n values\n )(currentData);\n\n return buildCustomLabel({\n index,\n x,\n y,\n percentagesValues,\n label,\n activeDot,\n chartType,\n formatedColors,\n onClick: handleOnDotClick\n });\n }\n const formatedData = useMemo(() => formatData(legend, data), [legend, data]);\n\n return (\n <RadarChart\n width={width}\n height={height}\n margin={margin ?? (isMobile ? {top: 80} : {top: 180})}\n cx=\"50%\"\n cy=\"50%\"\n outerRadius=\"80%\"\n data={formatedData}\n >\n {gradients}\n {buildRadars(totalDataset, handleOnDotClick, activeDot)}\n <PolarGrid strokeDasharray={10} strokeWidth={2} radialLines={false} />\n <PolarAngleAxis dataKey=\"subject\" tick={!isMobile && renderCustomLabel} />\n <PolarRadiusAxis tick={false} axisLine={false} domain={[0, 100]} />\n {isMobile ? <Tooltip cursor={false} content={<CustomTooltip />} /> : null}\n </RadarChart>\n );\n};\n\nconst ResponsiveLearningProfileRadarChart = (props: LearningProfileRadarChartPropTypes) => (\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n <LearningProfileRadarChart {...props} />\n </ResponsiveContainer>\n);\n\nLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\nResponsiveLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\n\nexport default ResponsiveLearningProfileRadarChart;\n"],"mappings":"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"}
@@ -73,10 +73,16 @@ export declare type LearningProfileRadarChartPropTypes = {
73
73
  [ref: string]: string;
74
74
  };
75
75
  totalDataset: number;
76
- onClick: (skillRef: string) => void;
76
+ onClick: (skillRef?: string) => void;
77
77
  colors?: ColorType[];
78
78
  width?: number;
79
79
  height?: number;
80
+ margin?: {
81
+ top?: number;
82
+ right?: number;
83
+ bottom?: number;
84
+ left?: number;
85
+ };
80
86
  };
81
87
  export declare type CustomDotPropTypes = {
82
88
  cx: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-profile-radar-chart/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-profile-radar-chart/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["learningProfileRadarChartPropTypes","data","PropTypes","objectOf","oneOfType","arrayOf","number","isRequired","totalDataset","onDotClick","func","colors","shape","gradient","fill","string","stroke","percentage","color","background","label","width","height","customDotPropTypes","cx","cy","payload","value","subject","name","index","activeDot","key","dataKey","customTooltipPropTypes","active","bool","gradientPropTypes","type"],"sources":["../../../src/molecule/learning-profile-radar-chart/types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\n\n// PROPTYPES\nexport const learningProfileRadarChartPropTypes = {\n data: PropTypes.objectOf(\n PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.number), PropTypes.number])\n ).isRequired,\n totalDataset: PropTypes.number.isRequired,\n onDotClick: PropTypes.func,\n colors: PropTypes.arrayOf(\n PropTypes.shape({\n gradient: PropTypes.shape({\n fill: PropTypes.arrayOf(PropTypes.string),\n stroke: PropTypes.arrayOf(PropTypes.string)\n }),\n percentage: PropTypes.shape({\n color: PropTypes.string,\n background: PropTypes.string\n }),\n label: PropTypes.shape({\n color: PropTypes.string\n })\n })\n ),\n width: PropTypes.number,\n height: PropTypes.number\n};\n\nexport const customDotPropTypes = {\n cx: PropTypes.number,\n cy: PropTypes.number,\n payload: PropTypes.shape({\n payload: PropTypes.shape({\n value: PropTypes.number,\n subject: PropTypes.string\n }),\n name: PropTypes.string\n }),\n onDotClick: PropTypes.func,\n index: PropTypes.number,\n activeDot: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.number,\n key: PropTypes.string\n }),\n dataKey: PropTypes.string,\n stroke: PropTypes.string\n};\n\nexport const customTooltipPropTypes = {\n active: PropTypes.bool,\n payload: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.number\n })\n ),\n label: PropTypes.string\n};\n\nexport const gradientPropTypes = {\n type: PropTypes.string,\n colors: PropTypes.arrayOf(PropTypes.string)\n};\n\n// TYPES\nexport type ColorType = {\n gradient?: {\n fill?: string[];\n stroke?: string[];\n };\n percentage?: {\n color?: string;\n background?: string;\n };\n label?: {\n color?: string;\n };\n};\n\nexport type LearningProfileRadarChartPropTypes = {\n data: {\n [ref: string]: number | number[];\n };\n legend: {\n [ref: string]: string;\n };\n totalDataset: number;\n onClick: (skillRef: string) => void;\n colors?: ColorType[];\n width?: number;\n height?: number;\n};\n\nexport type CustomDotPropTypes = {\n cx: number;\n cy: number;\n payload: {\n payload: {\n value: number;\n subject: string;\n };\n name: string;\n };\n onDotClick: (name: string) => void;\n index: number;\n activeDot?: {\n label: string;\n value: number;\n key: string;\n };\n dataKey: string;\n stroke: string;\n};\n\nexport type CustomTooltipPropTypes = {\n active: boolean;\n payload: {\n value: number;\n }[];\n label: string;\n};\n\nexport type GradientPropTypes = {\n type: string;\n colors: string[];\n};\n\nexport type TickType = {\n offset: {x: number; y: number};\n alignment: 'center' | 'start' | 'end';\n margin?: 'auto';\n marginLeft?: 'auto';\n marginRight?: 'auto';\n};\n\nexport type FormatedColorsType = {\n gradient: {\n fill: string[];\n stroke: string[];\n };\n percentage: {\n color: string;\n background: string;\n };\n label: {\n color: string;\n };\n};\n\nexport type FormatedDataType = {\n subject: string;\n} & {\n [key: string]: number | string;\n};\n\nexport type ActiveDotType = {\n key: string;\n value: number | string;\n label: string;\n};\n"],"mappings":";;;;;AAAA;;;;AAEA;AACO,MAAMA,kCAAkC,GAAG;EAChDC,IAAI,EAAEC,kBAAA,CAAUC,QAAV,CACJD,kBAAA,CAAUE,SAAV,CAAoB,CAACF,kBAAA,CAAUG,OAAV,CAAkBH,kBAAA,CAAUI,MAA5B,CAAD,EAAsCJ,kBAAA,CAAUI,MAAhD,CAApB,CADI,EAEJC,UAH8C;EAIhDC,YAAY,EAAEN,kBAAA,CAAUI,MAAV,CAAiBC,UAJiB;EAKhDE,UAAU,EAAEP,kBAAA,CAAUQ,IAL0B;EAMhDC,MAAM,EAAET,kBAAA,CAAUG,OAAV,CACNH,kBAAA,CAAUU,KAAV,CAAgB;IACdC,QAAQ,EAAEX,kBAAA,CAAUU,KAAV,CAAgB;MACxBE,IAAI,EAAEZ,kBAAA,CAAUG,OAAV,CAAkBH,kBAAA,CAAUa,MAA5B,CADkB;MAExBC,MAAM,EAAEd,kBAAA,CAAUG,OAAV,CAAkBH,kBAAA,CAAUa,MAA5B;IAFgB,CAAhB,CADI;IAKdE,UAAU,EAAEf,kBAAA,CAAUU,KAAV,CAAgB;MAC1BM,KAAK,EAAEhB,kBAAA,CAAUa,MADS;MAE1BI,UAAU,EAAEjB,kBAAA,CAAUa;IAFI,CAAhB,CALE;IASdK,KAAK,EAAElB,kBAAA,CAAUU,KAAV,CAAgB;MACrBM,KAAK,EAAEhB,kBAAA,CAAUa;IADI,CAAhB;EATO,CAAhB,CADM,CANwC;EAqBhDM,KAAK,EAAEnB,kBAAA,CAAUI,MArB+B;EAsBhDgB,MAAM,EAAEpB,kBAAA,CAAUI;AAtB8B,CAA3C;;AAyBA,MAAMiB,kBAAkB,GAAG;EAChCC,EAAE,EAAEtB,kBAAA,CAAUI,MADkB;EAEhCmB,EAAE,EAAEvB,kBAAA,CAAUI,MAFkB;EAGhCoB,OAAO,EAAExB,kBAAA,CAAUU,KAAV,CAAgB;IACvBc,OAAO,EAAExB,kBAAA,CAAUU,KAAV,CAAgB;MACvBe,KAAK,EAAEzB,kBAAA,CAAUI,MADM;MAEvBsB,OAAO,EAAE1B,kBAAA,CAAUa;IAFI,CAAhB,CADc;IAKvBc,IAAI,EAAE3B,kBAAA,CAAUa;EALO,CAAhB,CAHuB;EAUhCN,UAAU,EAAEP,kBAAA,CAAUQ,IAVU;EAWhCoB,KAAK,EAAE5B,kBAAA,CAAUI,MAXe;EAYhCyB,SAAS,EAAE7B,kBAAA,CAAUU,KAAV,CAAgB;IACzBQ,KAAK,EAAElB,kBAAA,CAAUa,MADQ;IAEzBY,KAAK,EAAEzB,kBAAA,CAAUI,MAFQ;IAGzB0B,GAAG,EAAE9B,kBAAA,CAAUa;EAHU,CAAhB,CAZqB;EAiBhCkB,OAAO,EAAE/B,kBAAA,CAAUa,MAjBa;EAkBhCC,MAAM,EAAEd,kBAAA,CAAUa;AAlBc,CAA3B;;AAqBA,MAAMmB,sBAAsB,GAAG;EACpCC,MAAM,EAAEjC,kBAAA,CAAUkC,IADkB;EAEpCV,OAAO,EAAExB,kBAAA,CAAUG,OAAV,CACPH,kBAAA,CAAUU,KAAV,CAAgB;IACde,KAAK,EAAEzB,kBAAA,CAAUI;EADH,CAAhB,CADO,CAF2B;EAOpCc,KAAK,EAAElB,kBAAA,CAAUa;AAPmB,CAA/B;;AAUA,MAAMsB,iBAAiB,GAAG;EAC/BC,IAAI,EAAEpC,kBAAA,CAAUa,MADe;EAE/BJ,MAAM,EAAET,kBAAA,CAAUG,OAAV,CAAkBH,kBAAA,CAAUa,MAA5B;AAFuB,CAA1B,C,CAKP"}
1
+ {"version":3,"file":"types.js","names":["learningProfileRadarChartPropTypes","data","PropTypes","objectOf","oneOfType","arrayOf","number","isRequired","totalDataset","onDotClick","func","colors","shape","gradient","fill","string","stroke","percentage","color","background","label","width","height","customDotPropTypes","cx","cy","payload","value","subject","name","index","activeDot","key","dataKey","customTooltipPropTypes","active","bool","gradientPropTypes","type"],"sources":["../../../src/molecule/learning-profile-radar-chart/types.ts"],"sourcesContent":["import PropTypes from 'prop-types';\n\n// PROPTYPES\nexport const learningProfileRadarChartPropTypes = {\n data: PropTypes.objectOf(\n PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.number), PropTypes.number])\n ).isRequired,\n totalDataset: PropTypes.number.isRequired,\n onDotClick: PropTypes.func,\n colors: PropTypes.arrayOf(\n PropTypes.shape({\n gradient: PropTypes.shape({\n fill: PropTypes.arrayOf(PropTypes.string),\n stroke: PropTypes.arrayOf(PropTypes.string)\n }),\n percentage: PropTypes.shape({\n color: PropTypes.string,\n background: PropTypes.string\n }),\n label: PropTypes.shape({\n color: PropTypes.string\n })\n })\n ),\n width: PropTypes.number,\n height: PropTypes.number\n};\n\nexport const customDotPropTypes = {\n cx: PropTypes.number,\n cy: PropTypes.number,\n payload: PropTypes.shape({\n payload: PropTypes.shape({\n value: PropTypes.number,\n subject: PropTypes.string\n }),\n name: PropTypes.string\n }),\n onDotClick: PropTypes.func,\n index: PropTypes.number,\n activeDot: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.number,\n key: PropTypes.string\n }),\n dataKey: PropTypes.string,\n stroke: PropTypes.string\n};\n\nexport const customTooltipPropTypes = {\n active: PropTypes.bool,\n payload: PropTypes.arrayOf(\n PropTypes.shape({\n value: PropTypes.number\n })\n ),\n label: PropTypes.string\n};\n\nexport const gradientPropTypes = {\n type: PropTypes.string,\n colors: PropTypes.arrayOf(PropTypes.string)\n};\n\n// TYPES\nexport type ColorType = {\n gradient?: {\n fill?: string[];\n stroke?: string[];\n };\n percentage?: {\n color?: string;\n background?: string;\n };\n label?: {\n color?: string;\n };\n};\n\nexport type LearningProfileRadarChartPropTypes = {\n data: {\n [ref: string]: number | number[];\n };\n legend: {\n [ref: string]: string;\n };\n totalDataset: number;\n onClick: (skillRef?: string) => void;\n colors?: ColorType[];\n width?: number;\n height?: number;\n margin?: {\n top?: number;\n right?: number;\n bottom?: number;\n left?: number;\n };\n};\n\nexport type CustomDotPropTypes = {\n cx: number;\n cy: number;\n payload: {\n payload: {\n value: number;\n subject: string;\n };\n name: string;\n };\n onDotClick: (name: string) => void;\n index: number;\n activeDot?: {\n label: string;\n value: number;\n key: string;\n };\n dataKey: string;\n stroke: string;\n};\n\nexport type CustomTooltipPropTypes = {\n active: boolean;\n payload: {\n value: number;\n }[];\n label: string;\n};\n\nexport type GradientPropTypes = {\n type: string;\n colors: string[];\n};\n\nexport type TickType = {\n offset: {x: number; y: number};\n alignment: 'center' | 'start' | 'end';\n margin?: 'auto';\n marginLeft?: 'auto';\n marginRight?: 'auto';\n};\n\nexport type FormatedColorsType = {\n gradient: {\n fill: string[];\n stroke: string[];\n };\n percentage: {\n color: string;\n background: string;\n };\n label: {\n color: string;\n };\n};\n\nexport type FormatedDataType = {\n subject: string;\n} & {\n [key: string]: number | string;\n};\n\nexport type ActiveDotType = {\n key: string;\n value: number | string;\n label: string;\n};\n"],"mappings":";;;;;AAAA;;;;AAEA;AACO,MAAMA,kCAAkC,GAAG;EAChDC,IAAI,EAAEC,kBAAA,CAAUC,QAAV,CACJD,kBAAA,CAAUE,SAAV,CAAoB,CAACF,kBAAA,CAAUG,OAAV,CAAkBH,kBAAA,CAAUI,MAA5B,CAAD,EAAsCJ,kBAAA,CAAUI,MAAhD,CAApB,CADI,EAEJC,UAH8C;EAIhDC,YAAY,EAAEN,kBAAA,CAAUI,MAAV,CAAiBC,UAJiB;EAKhDE,UAAU,EAAEP,kBAAA,CAAUQ,IAL0B;EAMhDC,MAAM,EAAET,kBAAA,CAAUG,OAAV,CACNH,kBAAA,CAAUU,KAAV,CAAgB;IACdC,QAAQ,EAAEX,kBAAA,CAAUU,KAAV,CAAgB;MACxBE,IAAI,EAAEZ,kBAAA,CAAUG,OAAV,CAAkBH,kBAAA,CAAUa,MAA5B,CADkB;MAExBC,MAAM,EAAEd,kBAAA,CAAUG,OAAV,CAAkBH,kBAAA,CAAUa,MAA5B;IAFgB,CAAhB,CADI;IAKdE,UAAU,EAAEf,kBAAA,CAAUU,KAAV,CAAgB;MAC1BM,KAAK,EAAEhB,kBAAA,CAAUa,MADS;MAE1BI,UAAU,EAAEjB,kBAAA,CAAUa;IAFI,CAAhB,CALE;IASdK,KAAK,EAAElB,kBAAA,CAAUU,KAAV,CAAgB;MACrBM,KAAK,EAAEhB,kBAAA,CAAUa;IADI,CAAhB;EATO,CAAhB,CADM,CANwC;EAqBhDM,KAAK,EAAEnB,kBAAA,CAAUI,MArB+B;EAsBhDgB,MAAM,EAAEpB,kBAAA,CAAUI;AAtB8B,CAA3C;;AAyBA,MAAMiB,kBAAkB,GAAG;EAChCC,EAAE,EAAEtB,kBAAA,CAAUI,MADkB;EAEhCmB,EAAE,EAAEvB,kBAAA,CAAUI,MAFkB;EAGhCoB,OAAO,EAAExB,kBAAA,CAAUU,KAAV,CAAgB;IACvBc,OAAO,EAAExB,kBAAA,CAAUU,KAAV,CAAgB;MACvBe,KAAK,EAAEzB,kBAAA,CAAUI,MADM;MAEvBsB,OAAO,EAAE1B,kBAAA,CAAUa;IAFI,CAAhB,CADc;IAKvBc,IAAI,EAAE3B,kBAAA,CAAUa;EALO,CAAhB,CAHuB;EAUhCN,UAAU,EAAEP,kBAAA,CAAUQ,IAVU;EAWhCoB,KAAK,EAAE5B,kBAAA,CAAUI,MAXe;EAYhCyB,SAAS,EAAE7B,kBAAA,CAAUU,KAAV,CAAgB;IACzBQ,KAAK,EAAElB,kBAAA,CAAUa,MADQ;IAEzBY,KAAK,EAAEzB,kBAAA,CAAUI,MAFQ;IAGzB0B,GAAG,EAAE9B,kBAAA,CAAUa;EAHU,CAAhB,CAZqB;EAiBhCkB,OAAO,EAAE/B,kBAAA,CAAUa,MAjBa;EAkBhCC,MAAM,EAAEd,kBAAA,CAAUa;AAlBc,CAA3B;;AAqBA,MAAMmB,sBAAsB,GAAG;EACpCC,MAAM,EAAEjC,kBAAA,CAAUkC,IADkB;EAEpCV,OAAO,EAAExB,kBAAA,CAAUG,OAAV,CACPH,kBAAA,CAAUU,KAAV,CAAgB;IACde,KAAK,EAAEzB,kBAAA,CAAUI;EADH,CAAhB,CADO,CAF2B;EAOpCc,KAAK,EAAElB,kBAAA,CAAUa;AAPmB,CAA/B;;AAUA,MAAMsB,iBAAiB,GAAG;EAC/BC,IAAI,EAAEpC,kBAAA,CAAUa,MADe;EAE/BJ,MAAM,EAAET,kBAAA,CAAUG,OAAV,CAAkBH,kBAAA,CAAUa,MAA5B;AAFuB,CAA1B,C,CAKP"}
@@ -0,0 +1,23 @@
1
+ export default SkillPickerModal;
2
+ declare function SkillPickerModal(props: any, context: any): JSX.Element | null;
3
+ declare namespace SkillPickerModal {
4
+ namespace contextTypes {
5
+ const translate: PropTypes.Requireable<(...args: any[]) => any>;
6
+ }
7
+ namespace propTypes {
8
+ const skills: PropTypes.Requireable<(string | null | undefined)[]>;
9
+ const selectedSkills: PropTypes.Requireable<(string | null | undefined)[]>;
10
+ const skillsLocales: PropTypes.Requireable<{
11
+ [x: string]: string | null | undefined;
12
+ }>;
13
+ const isOpen: PropTypes.Requireable<boolean>;
14
+ const isLoading: PropTypes.Requireable<boolean>;
15
+ const minSelectedSkills: PropTypes.Requireable<number>;
16
+ const maxSelectedSkills: PropTypes.Requireable<number>;
17
+ const onCancel: PropTypes.Requireable<(...args: any[]) => any>;
18
+ const onConfirm: PropTypes.Requireable<(...args: any[]) => any>;
19
+ const onClose: PropTypes.Requireable<(...args: any[]) => any>;
20
+ }
21
+ }
22
+ import PropTypes from "prop-types";
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/skill-picker-modal/index.js"],"names":[],"mappings":";AAQA,gFAwHC"}
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.default = void 0;
5
+
6
+ var _react = _interopRequireWildcard(require("react"));
7
+
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+
10
+ var _baseModal = _interopRequireDefault(require("../base-modal"));
11
+
12
+ var _chip = _interopRequireDefault(require("../../atom/chip"));
13
+
14
+ var _loader = _interopRequireDefault(require("../../atom/loader"));
15
+
16
+ var _provider = _interopRequireDefault(require("../../atom/provider"));
17
+
18
+ var _style = _interopRequireDefault(require("./style.css"));
19
+
20
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
+
22
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
+
24
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
+
26
+ const SkillPickerModal = (props, context) => {
27
+ const {
28
+ skills,
29
+ selectedSkills,
30
+ skillsLocales,
31
+ isOpen,
32
+ isLoading,
33
+ maxSelectedSkills = 6,
34
+ minSelectedSkills = 3,
35
+ onCancel,
36
+ onConfirm,
37
+ onClose
38
+ } = props;
39
+ const {
40
+ translate
41
+ } = context;
42
+ const [selectedSkillList, setSelectedSkillList] = (0, _react.useState)([...selectedSkills]);
43
+ console.log(selectedSkillList, skills);
44
+ const handleCancel = (0, _react.useCallback)(() => {
45
+ setSelectedSkillList(selectedSkills);
46
+ onCancel();
47
+ }, [setSelectedSkillList, selectedSkills, onCancel]);
48
+ const handleClose = (0, _react.useCallback)(() => {
49
+ setSelectedSkillList(selectedSkills);
50
+ onClose();
51
+ }, [setSelectedSkillList, selectedSkills, onClose]);
52
+ const skillList = (0, _react.useMemo)(() => {
53
+ return skills.map(skill => {
54
+ return {
55
+ skillTitle: skillsLocales[skill],
56
+ skillRef: skill,
57
+ focus: selectedSkillList.includes(skill)
58
+ };
59
+ });
60
+ }, [skills, selectedSkillList, skillsLocales]);
61
+ const isError = (0, _react.useMemo)(() => selectedSkillList.length > maxSelectedSkills, [selectedSkillList, maxSelectedSkills]);
62
+ const footer = (0, _react.useMemo)(() => {
63
+ const footerDescription = isError ? translate('skill_focus_footer_error_description', {
64
+ skillNumber: selectedSkillList.length - maxSelectedSkills
65
+ }) : translate('skill_focus_footer_description', {
66
+ skillNumber: minSelectedSkills - selectedSkillList.length
67
+ });
68
+ return {
69
+ text: isLoading || selectedSkillList.length <= maxSelectedSkills && selectedSkillList.length >= minSelectedSkills ? '' : footerDescription.replace('.'),
70
+ isError,
71
+ cancelButton: {
72
+ onCancel: handleCancel,
73
+ label: translate('cancel'),
74
+ disabled: isLoading || isError
75
+ },
76
+ confirmButton: {
77
+ onConfirm: () => onConfirm(selectedSkillList),
78
+ label: translate('confirm'),
79
+ iconName: 'circle-check',
80
+ disabled: isLoading || isError
81
+ }
82
+ };
83
+ }, [isError, handleCancel, onConfirm, translate, selectedSkillList, isLoading, maxSelectedSkills]);
84
+ if (!isLoading && !skills || !isOpen) return null;
85
+ return /*#__PURE__*/_react.default.createElement(_baseModal.default, {
86
+ title: translate('skill_focus'),
87
+ description: translate('skill_focus_description'),
88
+ isOpen: isOpen,
89
+ onClose: handleClose,
90
+ footer: footer,
91
+ headerIcon: {
92
+ name: 'bullseye-arrow',
93
+ backgroundColor: '#DDD1FF'
94
+ }
95
+ }, /*#__PURE__*/_react.default.createElement("div", {
96
+ className: _style.default.skillPickerContainer
97
+ }, isLoading ? /*#__PURE__*/_react.default.createElement("div", {
98
+ className: _style.default.loaderContainer
99
+ }, /*#__PURE__*/_react.default.createElement(_loader.default, {
100
+ className: _style.default.loader,
101
+ theme: "coorpmanager"
102
+ })) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
103
+ style: {
104
+ marginBottom: '16px'
105
+ }
106
+ }, `${selectedSkillList.length} ${translate('selected')}`), /*#__PURE__*/_react.default.createElement("div", {
107
+ style: {
108
+ display: 'flex',
109
+ gap: '16px',
110
+ flexWrap: 'wrap'
111
+ }
112
+ }, skillList.map((skill, index) => {
113
+ const {
114
+ skillTitle,
115
+ focus
116
+ } = skill;
117
+
118
+ function handleChipClick() {
119
+ let filteredSelectedSkillList = [...selectedSkillList];
120
+
121
+ if (selectedSkillList.includes(skill.skillRef)) {
122
+ filteredSelectedSkillList = filteredSelectedSkillList.filter(ref => ref !== skill.skillRef);
123
+ } else {
124
+ filteredSelectedSkillList.push(skill.skillRef);
125
+ }
126
+
127
+ setSelectedSkillList(filteredSelectedSkillList);
128
+ }
129
+
130
+ return /*#__PURE__*/_react.default.createElement(_chip.default, {
131
+ text: skillTitle,
132
+ selected: focus,
133
+ onClick: handleChipClick,
134
+ key: index
135
+ });
136
+ })))));
137
+ };
138
+
139
+ SkillPickerModal.contextTypes = {
140
+ translate: _provider.default.childContextTypes.translate
141
+ };
142
+ SkillPickerModal.propTypes = process.env.NODE_ENV !== "production" ? {
143
+ skills: _propTypes.default.arrayOf(_propTypes.default.string),
144
+ selectedSkills: _propTypes.default.arrayOf(_propTypes.default.string),
145
+ skillsLocales: _propTypes.default.objectOf(_propTypes.default.string),
146
+ isOpen: _propTypes.default.bool,
147
+ isLoading: _propTypes.default.bool,
148
+ minSelectedSkills: _propTypes.default.number,
149
+ maxSelectedSkills: _propTypes.default.number,
150
+ onCancel: _propTypes.default.func,
151
+ onConfirm: _propTypes.default.func,
152
+ onClose: _propTypes.default.func
153
+ } : {};
154
+ var _default = SkillPickerModal;
155
+ exports.default = _default;
156
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["SkillPickerModal","props","context","skills","selectedSkills","skillsLocales","isOpen","isLoading","maxSelectedSkills","minSelectedSkills","onCancel","onConfirm","onClose","translate","selectedSkillList","setSelectedSkillList","useState","console","log","handleCancel","useCallback","handleClose","skillList","useMemo","map","skill","skillTitle","skillRef","focus","includes","isError","length","footer","footerDescription","skillNumber","text","replace","cancelButton","label","disabled","confirmButton","iconName","name","backgroundColor","style","skillPickerContainer","loaderContainer","loader","marginBottom","display","gap","flexWrap","index","handleChipClick","filteredSelectedSkillList","filter","ref","push","contextTypes","Provider","childContextTypes","propTypes","PropTypes","arrayOf","string","objectOf","bool","number","func"],"sources":["../../../src/molecule/skill-picker-modal/index.js"],"sourcesContent":["import React, {useMemo, useState, useCallback} from 'react';\nimport PropTypes from 'prop-types';\nimport BaseModal from '../base-modal';\nimport Chip from '../../atom/chip';\nimport Loader from '../../atom/loader';\nimport Provider from '../../atom/provider';\nimport style from './style.css';\n\nconst SkillPickerModal = (props, context) => {\n const {\n skills,\n selectedSkills,\n skillsLocales,\n isOpen,\n isLoading,\n maxSelectedSkills = 6,\n minSelectedSkills = 3,\n onCancel,\n onConfirm,\n onClose\n } = props;\n const {translate} = context;\n\n const [selectedSkillList, setSelectedSkillList] = useState([...selectedSkills]);\n\n console.log(selectedSkillList, skills)\n\n const handleCancel = useCallback(() => {\n setSelectedSkillList(selectedSkills);\n onCancel();\n }, [setSelectedSkillList, selectedSkills, onCancel]);\n\n const handleClose = useCallback(() => {\n setSelectedSkillList(selectedSkills);\n onClose();\n }, [setSelectedSkillList, selectedSkills, onClose]);\n\n const skillList = useMemo(() => {\n return skills.map(skill => {\n return {\n skillTitle: skillsLocales[skill],\n skillRef: skill,\n focus: selectedSkillList.includes(skill)\n };\n });\n }, [skills, selectedSkillList, skillsLocales])\n\n const isError = useMemo(\n () => selectedSkillList.length > maxSelectedSkills,\n [selectedSkillList, maxSelectedSkills]\n );\n\n const footer = useMemo(() => {\n const footerDescription = isError\n ? translate('skill_focus_footer_error_description', {\n skillNumber: selectedSkillList.length - maxSelectedSkills\n })\n : translate('skill_focus_footer_description', {\n skillNumber: minSelectedSkills - selectedSkillList.length\n });\n return {\n text:\n isLoading ||\n (selectedSkillList.length <= maxSelectedSkills && selectedSkillList.length >= minSelectedSkills)\n ? ''\n : footerDescription.replace('.'),\n isError,\n cancelButton: {\n onCancel: handleCancel,\n label: translate('cancel'),\n disabled: isLoading || isError\n },\n confirmButton: {\n onConfirm: () => onConfirm(selectedSkillList),\n label: translate('confirm'),\n iconName: 'circle-check',\n disabled: isLoading || isError\n }\n };\n }, [isError, handleCancel, onConfirm, translate, selectedSkillList, isLoading, maxSelectedSkills]);\n\n if ((!isLoading && !skills) || !isOpen) return null;\n\n return (\n <BaseModal\n title={translate('skill_focus')}\n description={translate('skill_focus_description')}\n isOpen={isOpen}\n onClose={handleClose}\n footer={footer}\n headerIcon={{\n name: 'bullseye-arrow',\n backgroundColor: '#DDD1FF'\n }}\n >\n <div className={style.skillPickerContainer}>\n {isLoading ? (\n <div className={style.loaderContainer}>\n <Loader className={style.loader} theme=\"coorpmanager\" />\n </div>\n ) : (\n <>\n <div style={{marginBottom: '16px'}}>\n {`${selectedSkillList.length} ${translate('selected')}`}\n </div>\n <div style={{display: 'flex', gap: '16px', flexWrap: 'wrap'}}>\n {skillList.map((skill, index) => {\n const {skillTitle, focus} = skill;\n function handleChipClick() {\n let filteredSelectedSkillList = [...selectedSkillList];\n if (selectedSkillList.includes(skill.skillRef)) {\n filteredSelectedSkillList = filteredSelectedSkillList.filter(ref => ref !== skill.skillRef);\n } else {\n filteredSelectedSkillList.push(skill.skillRef);\n }\n setSelectedSkillList(filteredSelectedSkillList);\n }\n\n return (\n <Chip text={skillTitle} selected={focus} onClick={handleChipClick} key={index} />\n );\n })}\n </div>\n </>\n )}\n </div>\n </BaseModal>\n );\n};\n\nSkillPickerModal.contextTypes = {\n translate: Provider.childContextTypes.translate\n};\n\nSkillPickerModal.propTypes = {\n skills: PropTypes.arrayOf(PropTypes.string),\n selectedSkills: PropTypes.arrayOf(PropTypes.string),\n skillsLocales: PropTypes.objectOf(PropTypes.string),\n isOpen: PropTypes.bool,\n isLoading: PropTypes.bool,\n minSelectedSkills: PropTypes.number,\n maxSelectedSkills: PropTypes.number,\n onCancel: PropTypes.func,\n onConfirm: PropTypes.func,\n onClose: PropTypes.func\n};\n\nexport default SkillPickerModal;\n"],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ @value breakpoints: "../../variables/breakpoints.css";
2
+ @value tablet from breakpoints;
3
+ @value mobile from breakpoints;
4
+
5
+ .skillPickerContainer {
6
+ height: 485px;
7
+ width: 596px;
8
+ overflow-y: auto;
9
+ }
10
+
11
+ .loaderContainer {
12
+ display: flex;
13
+ justify-content: center;
14
+ align-items: center;
15
+ height: 100%;
16
+ width: 100%;
17
+ }
18
+
19
+ .loader {
20
+ width: 40px;
21
+ height: 40px;
22
+ }
23
+
24
+ @media mobile {
25
+ .skillPickerContainer {
26
+ width: 100%;
27
+ }
28
+ }
@@ -9,7 +9,7 @@ declare namespace SkillsChartSideInformationItem {
9
9
  namespace propTypes {
10
10
  const icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
11
11
  const title: PropTypes.Requireable<string>;
12
- const value: PropTypes.Requireable<string>;
12
+ const value: PropTypes.Requireable<number>;
13
13
  const legend: PropTypes.Requireable<string>;
14
14
  }
15
15
  }
@@ -42,7 +42,7 @@ const SkillsChartSideInformationItem = ({
42
42
  SkillsChartSideInformationItem.propTypes = process.env.NODE_ENV !== "production" ? {
43
43
  icon: _propTypes.default.shape(_icon.default.propTypes),
44
44
  title: _propTypes.default.string,
45
- value: _propTypes.default.string,
45
+ value: _propTypes.default.number,
46
46
  legend: _propTypes.default.string
47
47
  } : {};
48
48
  var _default = SkillsChartSideInformationItem;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["SkillsChartSideInformationItem","title","value","legend","icon","iconProps","style","InformationElement","titleContainer","defaults","preset","__html","propTypes","PropTypes","shape","Icon","string"],"sources":["../../../src/molecule/skills-chart-side-information-item/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport defaults from 'lodash/fp/defaults';\nimport Icon from '../../atom/icon';\nimport style from './style.css';\n\nconst SkillsChartSideInformationItem = ({title, value, legend, icon: iconProps}) => (\n <div className={style.InformationElement}>\n <div className={style.titleContainer}>\n <Icon {...defaults({preset: 's'}, iconProps)} />\n <div className={style.title}>{title}</div>\n </div>\n <div className={style.value}>{value}</div>\n <div className={style.legend}>\n <span\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: legend}}\n />\n </div>\n </div>\n);\n\nSkillsChartSideInformationItem.propTypes = {\n icon: PropTypes.shape(Icon.propTypes),\n title: PropTypes.string,\n value: PropTypes.string,\n legend: PropTypes.string\n};\n\nexport default SkillsChartSideInformationItem;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,MAAMA,8BAA8B,GAAG,CAAC;EAACC,KAAD;EAAQC,KAAR;EAAeC,MAAf;EAAuBC,IAAI,EAAEC;AAA7B,CAAD,kBACrC;EAAK,SAAS,EAAEC,cAAA,CAAMC;AAAtB,gBACE;EAAK,SAAS,EAAED,cAAA,CAAME;AAAtB,gBACE,6BAAC,aAAD,EAAU,IAAAC,iBAAA,EAAS;EAACC,MAAM,EAAE;AAAT,CAAT,EAAwBL,SAAxB,CAAV,CADF,eAEE;EAAK,SAAS,EAAEC,cAAA,CAAML;AAAtB,GAA8BA,KAA9B,CAFF,CADF,eAKE;EAAK,SAAS,EAAEK,cAAA,CAAMJ;AAAtB,GAA8BA,KAA9B,CALF,eAME;EAAK,SAAS,EAAEI,cAAA,CAAMH;AAAtB,gBACE;EACE;EACA,uBAAuB,EAAE;IAACQ,MAAM,EAAER;EAAT;AAF3B,EADF,CANF,CADF;;AAgBAH,8BAA8B,CAACY,SAA/B,2CAA2C;EACzCR,IAAI,EAAES,kBAAA,CAAUC,KAAV,CAAgBC,aAAA,CAAKH,SAArB,CADmC;EAEzCX,KAAK,EAAEY,kBAAA,CAAUG,MAFwB;EAGzCd,KAAK,EAAEW,kBAAA,CAAUG,MAHwB;EAIzCb,MAAM,EAAEU,kBAAA,CAAUG;AAJuB,CAA3C;eAOehB,8B"}
1
+ {"version":3,"file":"index.js","names":["SkillsChartSideInformationItem","title","value","legend","icon","iconProps","style","InformationElement","titleContainer","defaults","preset","__html","propTypes","PropTypes","shape","Icon","string","number"],"sources":["../../../src/molecule/skills-chart-side-information-item/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport defaults from 'lodash/fp/defaults';\nimport Icon from '../../atom/icon';\nimport style from './style.css';\n\nconst SkillsChartSideInformationItem = ({title, value, legend, icon: iconProps}) => (\n <div className={style.InformationElement}>\n <div className={style.titleContainer}>\n <Icon {...defaults({preset: 's'}, iconProps)} />\n <div className={style.title}>{title}</div>\n </div>\n <div className={style.value}>{value}</div>\n <div className={style.legend}>\n <span\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{__html: legend}}\n />\n </div>\n </div>\n);\n\nSkillsChartSideInformationItem.propTypes = {\n icon: PropTypes.shape(Icon.propTypes),\n title: PropTypes.string,\n value: PropTypes.number,\n legend: PropTypes.string\n};\n\nexport default SkillsChartSideInformationItem;\n"],"mappings":";;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,MAAMA,8BAA8B,GAAG,CAAC;EAACC,KAAD;EAAQC,KAAR;EAAeC,MAAf;EAAuBC,IAAI,EAAEC;AAA7B,CAAD,kBACrC;EAAK,SAAS,EAAEC,cAAA,CAAMC;AAAtB,gBACE;EAAK,SAAS,EAAED,cAAA,CAAME;AAAtB,gBACE,6BAAC,aAAD,EAAU,IAAAC,iBAAA,EAAS;EAACC,MAAM,EAAE;AAAT,CAAT,EAAwBL,SAAxB,CAAV,CADF,eAEE;EAAK,SAAS,EAAEC,cAAA,CAAML;AAAtB,GAA8BA,KAA9B,CAFF,CADF,eAKE;EAAK,SAAS,EAAEK,cAAA,CAAMJ;AAAtB,GAA8BA,KAA9B,CALF,eAME;EAAK,SAAS,EAAEI,cAAA,CAAMH;AAAtB,gBACE;EACE;EACA,uBAAuB,EAAE;IAACQ,MAAM,EAAER;EAAT;AAF3B,EADF,CANF,CADF;;AAgBAH,8BAA8B,CAACY,SAA/B,2CAA2C;EACzCR,IAAI,EAAES,kBAAA,CAAUC,KAAV,CAAgBC,aAAA,CAAKH,SAArB,CADmC;EAEzCX,KAAK,EAAEY,kBAAA,CAAUG,MAFwB;EAGzCd,KAAK,EAAEW,kBAAA,CAAUI,MAHwB;EAIzCd,MAAM,EAAEU,kBAAA,CAAUG;AAJuB,CAA3C;eAOehB,8B"}
@@ -7,7 +7,7 @@ declare namespace SkillsChartSideInformationPanel {
7
7
  const sidePanelItems: PropTypes.Requireable<(PropTypes.InferProps<{
8
8
  icon: PropTypes.Requireable<PropTypes.InferProps<any>>;
9
9
  title: PropTypes.Requireable<string>;
10
- value: PropTypes.Requireable<string>;
10
+ value: PropTypes.Requireable<number>;
11
11
  legend: PropTypes.Requireable<string>;
12
12
  }> | null | undefined)[]>;
13
13
  }
@@ -1,10 +1,19 @@
1
+ @value breakpoints: "../../variables/breakpoints.css";
2
+ @value tablet from breakpoints;
3
+ @value mobile from breakpoints;
4
+
1
5
  .sidePanel {
2
- display: flex;
3
- width: 316px;
4
- flex-direction: column;
5
- justify-content: center;
6
- align-items: flex-start;
7
- gap: 16px;
8
- align-self: stretch;
9
- }
10
-
6
+ display: flex;
7
+ width: 316px;
8
+ flex-direction: column;
9
+ justify-content: center;
10
+ align-items: flex-start;
11
+ gap: 16px;
12
+ align-self: stretch;
13
+ }
14
+
15
+ @media mobile {
16
+ .sidePanel {
17
+ width: 100%;
18
+ }
19
+ }
@@ -13,6 +13,7 @@ declare namespace ListItems {
13
13
  buttonLink: PropTypes.Requireable<PropTypes.InferProps<{
14
14
  type: PropTypes.Requireable<string>;
15
15
  label: PropTypes.Requireable<string>;
16
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
16
17
  'aria-label': PropTypes.Requireable<string>;
17
18
  'data-name': PropTypes.Requireable<string>;
18
19
  'data-testid': PropTypes.Requireable<string>;
@@ -144,6 +145,7 @@ declare namespace ListItems {
144
145
  componentType: PropTypes.Requireable<string>;
145
146
  type: PropTypes.Requireable<string>;
146
147
  label: PropTypes.Requireable<string>;
148
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
147
149
  'aria-label': PropTypes.Requireable<string>;
148
150
  'data-name': PropTypes.Requireable<string>;
149
151
  'data-testid': PropTypes.Requireable<string>;
@@ -6,6 +6,7 @@ declare namespace SetupHeader {
6
6
  seeMyPlatform: PropTypes.Requireable<PropTypes.InferProps<{
7
7
  type: PropTypes.Requireable<string>;
8
8
  label: PropTypes.Requireable<string>;
9
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
9
10
  'aria-label': PropTypes.Requireable<string>;
10
11
  'data-name': PropTypes.Requireable<string>;
11
12
  'data-testid': PropTypes.Requireable<string>;
@@ -26,6 +27,7 @@ declare namespace SetupHeader {
26
27
  logOut: PropTypes.Requireable<PropTypes.InferProps<{
27
28
  type: PropTypes.Requireable<string>;
28
29
  label: PropTypes.Requireable<string>;
30
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
29
31
  'aria-label': PropTypes.Requireable<string>;
30
32
  'data-name': PropTypes.Requireable<string>;
31
33
  'data-testid': PropTypes.Requireable<string>;
@@ -46,6 +48,7 @@ declare namespace SetupHeader {
46
48
  globalAnalytics: PropTypes.Requireable<PropTypes.InferProps<{
47
49
  type: PropTypes.Requireable<string>;
48
50
  label: PropTypes.Requireable<string>;
51
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
49
52
  'aria-label': PropTypes.Requireable<string>;
50
53
  'data-name': PropTypes.Requireable<string>;
51
54
  'data-testid': PropTypes.Requireable<string>;
@@ -66,6 +69,7 @@ declare namespace SetupHeader {
66
69
  platformList: PropTypes.Requireable<PropTypes.InferProps<{
67
70
  type: PropTypes.Requireable<string>;
68
71
  label: PropTypes.Requireable<string>;
72
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
69
73
  'aria-label': PropTypes.Requireable<string>;
70
74
  'data-name': PropTypes.Requireable<string>;
71
75
  'data-testid': PropTypes.Requireable<string>;
@@ -22,6 +22,7 @@ declare namespace WizardContents {
22
22
  firstButtonLink: PropTypes.Requireable<PropTypes.InferProps<{
23
23
  type: PropTypes.Requireable<string>;
24
24
  label: PropTypes.Requireable<string>;
25
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
25
26
  'aria-label': PropTypes.Requireable<string>;
26
27
  'data-name': PropTypes.Requireable<string>;
27
28
  'data-testid': PropTypes.Requireable<string>;
@@ -42,6 +43,7 @@ declare namespace WizardContents {
42
43
  secondButtonLink: PropTypes.Requireable<PropTypes.InferProps<{
43
44
  type: PropTypes.Requireable<string>;
44
45
  label: PropTypes.Requireable<string>;
46
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
45
47
  'aria-label': PropTypes.Requireable<string>;
46
48
  'data-name': PropTypes.Requireable<string>;
47
49
  'data-testid': PropTypes.Requireable<string>;
@@ -424,6 +426,7 @@ declare namespace WizardContents {
424
426
  componentType: PropTypes.Requireable<string>;
425
427
  type: PropTypes.Requireable<string>;
426
428
  label: PropTypes.Requireable<string>;
429
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
427
430
  'aria-label': PropTypes.Requireable<string>;
428
431
  'data-name': PropTypes.Requireable<string>;
429
432
  'data-testid': PropTypes.Requireable<string>;
@@ -81,6 +81,7 @@ declare namespace PlayerLoading {
81
81
  buttonLink: PropTypes.Requireable<PropTypes.InferProps<{
82
82
  type: PropTypes.Requireable<string>;
83
83
  label: PropTypes.Requireable<string>;
84
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
84
85
  'aria-label': PropTypes.Requireable<string>;
85
86
  'data-name': PropTypes.Requireable<string>;
86
87
  'data-testid': PropTypes.Requireable<string>;
@@ -212,6 +213,7 @@ declare namespace PlayerLoading {
212
213
  componentType: PropTypes.Requireable<string>;
213
214
  type: PropTypes.Requireable<string>;
214
215
  label: PropTypes.Requireable<string>;
216
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
215
217
  'aria-label': PropTypes.Requireable<string>;
216
218
  'data-name': PropTypes.Requireable<string>;
217
219
  'data-testid': PropTypes.Requireable<string>;
@@ -132,6 +132,7 @@ declare namespace SlidePlayer {
132
132
  buttonLink: PropTypes.Requireable<PropTypes.InferProps<{
133
133
  type: PropTypes.Requireable<string>;
134
134
  label: PropTypes.Requireable<string>;
135
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
135
136
  'aria-label': PropTypes.Requireable<string>;
136
137
  'data-name': PropTypes.Requireable<string>;
137
138
  'data-testid': PropTypes.Requireable<string>;
@@ -263,6 +264,7 @@ declare namespace SlidePlayer {
263
264
  componentType: PropTypes.Requireable<string>;
264
265
  type: PropTypes.Requireable<string>;
265
266
  label: PropTypes.Requireable<string>;
267
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
266
268
  'aria-label': PropTypes.Requireable<string>;
267
269
  'data-name': PropTypes.Requireable<string>;
268
270
  'data-testid': PropTypes.Requireable<string>;
@@ -399,6 +401,7 @@ declare namespace SlidePlayer {
399
401
  buttonLink: PropTypes.Requireable<PropTypes.InferProps<{
400
402
  type: PropTypes.Requireable<string>;
401
403
  label: PropTypes.Requireable<string>;
404
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
402
405
  'aria-label': PropTypes.Requireable<string>;
403
406
  'data-name': PropTypes.Requireable<string>;
404
407
  'data-testid': PropTypes.Requireable<string>;
@@ -530,6 +533,7 @@ declare namespace SlidePlayer {
530
533
  componentType: PropTypes.Requireable<string>;
531
534
  type: PropTypes.Requireable<string>;
532
535
  label: PropTypes.Requireable<string>;
536
+ content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
533
537
  'aria-label': PropTypes.Requireable<string>;
534
538
  'data-name': PropTypes.Requireable<string>;
535
539
  'data-testid': PropTypes.Requireable<string>;