@coorpacademy/components 11.36.10-alpha.1 → 11.36.10-alpha.11

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 (60) hide show
  1. package/es/molecule/learning-profile-radar-chart/index.d.ts.map +1 -1
  2. package/es/molecule/learning-profile-radar-chart/index.js +1 -2
  3. package/es/molecule/learning-profile-radar-chart/index.js.map +1 -1
  4. package/es/organism/header-with-actions/index.d.ts +15 -73
  5. package/es/organism/header-with-actions/index.d.ts.map +1 -1
  6. package/es/organism/header-with-actions/index.js +77 -5
  7. package/es/organism/header-with-actions/index.js.map +1 -1
  8. package/es/organism/header-with-actions/types.d.ts +38 -81
  9. package/es/organism/header-with-actions/types.d.ts.map +1 -1
  10. package/es/organism/header-with-actions/types.js +25 -12
  11. package/es/organism/header-with-actions/types.js.map +1 -1
  12. package/es/organism/mooc-header/index.d.ts.map +1 -1
  13. package/es/organism/mooc-header/index.js +1 -2
  14. package/es/organism/mooc-header/index.js.map +1 -1
  15. package/es/organism/skill-edition/index.d.ts.map +1 -1
  16. package/es/organism/skill-edition/index.js +0 -1
  17. package/es/organism/skill-edition/index.js.map +1 -1
  18. package/es/template/back-office/brand-update/index.d.ts +15 -73
  19. package/es/template/back-office/brand-update/index.d.ts.map +1 -1
  20. package/es/template/back-office/brand-update/index.js +4 -6
  21. package/es/template/back-office/brand-update/index.js.map +1 -1
  22. package/es/template/back-office/brand-update/style.css +4 -4
  23. package/es/template/back-office/brand-update/utils.d.ts +38 -10
  24. package/es/template/back-office/brand-update/utils.js +19 -0
  25. package/es/template/back-office/brand-update/utils.js.map +1 -1
  26. package/es/util/check-is-mobile.d.ts +1 -1
  27. package/es/util/check-is-mobile.d.ts.map +1 -1
  28. package/es/util/check-is-mobile.js +1 -2
  29. package/es/util/check-is-mobile.js.map +1 -1
  30. package/lib/molecule/learning-profile-radar-chart/index.d.ts.map +1 -1
  31. package/lib/molecule/learning-profile-radar-chart/index.js +1 -2
  32. package/lib/molecule/learning-profile-radar-chart/index.js.map +1 -1
  33. package/lib/organism/header-with-actions/index.d.ts +15 -73
  34. package/lib/organism/header-with-actions/index.d.ts.map +1 -1
  35. package/lib/organism/header-with-actions/index.js +75 -3
  36. package/lib/organism/header-with-actions/index.js.map +1 -1
  37. package/lib/organism/header-with-actions/types.d.ts +38 -81
  38. package/lib/organism/header-with-actions/types.d.ts.map +1 -1
  39. package/lib/organism/header-with-actions/types.js +25 -12
  40. package/lib/organism/header-with-actions/types.js.map +1 -1
  41. package/lib/organism/mooc-header/index.d.ts.map +1 -1
  42. package/lib/organism/mooc-header/index.js +1 -2
  43. package/lib/organism/mooc-header/index.js.map +1 -1
  44. package/lib/organism/skill-edition/index.d.ts.map +1 -1
  45. package/lib/organism/skill-edition/index.js +0 -1
  46. package/lib/organism/skill-edition/index.js.map +1 -1
  47. package/lib/template/back-office/brand-update/index.d.ts +15 -73
  48. package/lib/template/back-office/brand-update/index.d.ts.map +1 -1
  49. package/lib/template/back-office/brand-update/index.js +4 -6
  50. package/lib/template/back-office/brand-update/index.js.map +1 -1
  51. package/lib/template/back-office/brand-update/style.css +4 -4
  52. package/lib/template/back-office/brand-update/utils.d.ts +38 -10
  53. package/lib/template/back-office/brand-update/utils.js +19 -0
  54. package/lib/template/back-office/brand-update/utils.js.map +1 -1
  55. package/lib/util/check-is-mobile.d.ts +1 -1
  56. package/lib/util/check-is-mobile.d.ts.map +1 -1
  57. package/lib/util/check-is-mobile.js +1 -2
  58. package/lib/util/check-is-mobile.js.map +1 -1
  59. package/locales/.mtslconfig.json +1 -0
  60. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-profile-radar-chart/index.tsx"],"names":[],"mappings":";AAiCA,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAGL,gBAAgB,EAChB,kCAAkC,EAGnC,MAAM,SAAS,CAAC;AAoUjB,eAAO,MAAM,UAAU,EAAE,CACvB,MAAM,EAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,EAC/B,KAAK,EAAE,kCAAkC,CAAC,MAAM,CAAC,KAC9C,gBAAgB,EAOX,CAAC;AAEX,eAAO,MAAM,yBAAyB;0GAWjC,kCAAkC,iBACtB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqJhC,CAAC;AAEF,QAAA,MAAM,mCAAmC;YAAW,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;CAIrF,CAAC;AAUF,eAAe,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/molecule/learning-profile-radar-chart/index.tsx"],"names":[],"mappings":";AAiCA,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAGL,gBAAgB,EAChB,kCAAkC,EAGnC,MAAM,SAAS,CAAC;AAoUjB,eAAO,MAAM,UAAU,EAAE,CACvB,MAAM,EAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAC,EAC/B,KAAK,EAAE,kCAAkC,CAAC,MAAM,CAAC,KAC9C,gBAAgB,EAOX,CAAC;AAEX,eAAO,MAAM,yBAAyB;0GAWjC,kCAAkC,iBACtB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoJhC,CAAC;AAEF,QAAA,MAAM,mCAAmC;YAAW,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;CAIrF,CAAC;AAUF,eAAe,mCAAmC,CAAC"}
@@ -347,8 +347,7 @@ export const LearningProfileRadarChart = ({
347
347
  type: `stroke-${index}`,
348
348
  colors: stroke
349
349
  }))), [formatedColors]);
350
- const userAgent = navigator?.userAgent;
351
- const isMobile_ = useMemo(() => getIsMobile(userAgent), [userAgent]);
350
+ const isMobile_ = getIsMobile();
352
351
  const setIsMobile_ = useCallback(() => {
353
352
  setIsMobile(isMobile_);
354
353
  }, [isMobile_]);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","Fragment","useCallback","useEffect","useMemo","useState","Radar","RadarChart","PolarGrid","PolarAngleAxis","ResponsiveContainer","Tooltip","PolarRadiusAxis","convert","classnames","isMobile","getIsMobile","ButtonLink","Provider","GetSkinFromContext","GetTranslateFromContext","learningProfileRadarChartPropTypes","style","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","cursor","DOT_ACTIVE_PROPS","RADAR_DEFAULT_PROPS","fillOpacity","Gradient","type","colors","firstColor","secondColor","createElement","id","x1","y1","x2","y2","stopColor","CustomTooltip","active","payload","length","className","tooltip","tooltipLabel","tooltipValue","value","CustomDot","cx","cy","onDotHover","onDotClick","activeDot","dataName","_extends","subject","onTouchStart","onClick","e","stopPropagation","onMouseOver","onMouseLeave","buildRadars","totalDataset","handleDotHover","handleOnDotClick","_times","index","datakey","dataset","key","dataKey","dot","CustomLabel","percentagesValues","chartType","formatedColors","primarySkinColor","exploreLocale","hoveredDot","onExploreClick","hovered","setHovered","isCurrentDotActive","offsetX","offsetY","rest","onLabelClick","handleExploreClick","buttonExploreProps","customStyle","height","backgroundColor","transition","icon","position","faIcon","size","handleMouseOver","handleMouseLeave","extraOffsetY","tickeForeignObject","tickeForeignObjectFocus","tickWrapper","tickWrapperFocus","tickWrapperHover","alignItems","textAlign","opacity","_isEmpty","map","colorLabel","i","tickValue","tickLabel","buttonWrapper","CHART_CONFIGS_BY_SIDE_COUNT","_pipe","_keyBy","_mapValues","formatValues","values_","_flatten","val","_fromPairs","formatData","legend","data_","_toPairs","_map","ref","LearningProfileRadarChart","data","colorsProps","width","legacyContext","setIsMobile","setActiveDot","setHoveredDot","skin","translate","_get","Object","assign","_getOr","_size","gradients","userAgent","navigator","isMobile_","setIsMobile_","handleClick","undefined","window","addEventListener","removeEventListener","handleOnActiveDotClick","formatedData","find","indexOf","skillRef","_findKey","renderCustomLabel","props","currentData","_omit","_values","outerRadius","strokeDasharray","radialLines","tick","axisLine","domain","content","ResponsiveLearningProfileRadarChart","contextTypes","childContextTypes","propTypes","process","env","NODE_ENV"],"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 get\n} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport {isMobile as getIsMobile} from '../../util/check-is-mobile';\nimport ButtonLink from '../../atom/button-link';\nimport {ButtonLinkProps} from '../../atom/button-link/types';\nimport Provider, {GetSkinFromContext, GetTranslateFromContext} from '../../atom/provider';\nimport {WebContextValues} from '../../atom/provider/web-context';\nimport {\n ActiveDotType,\n FormatedColorsType,\n FormatedDataType,\n LearningProfileRadarChartPropTypes,\n TickType,\n learningProfileRadarChartPropTypes\n} from './types';\nimport style from './style.css';\n\ntype CHART_TYPE_TYPE = keyof typeof CHART_CONFIGS;\n\n/* TICK_POSITIONS */\nconst top: TickType = {offset: {x: -100, y: -75}, 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 onDotHover,\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 onDotHover: (name: string) => void;\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 onTouchStart: () => {\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n onClick: e => {\n e.stopPropagation();\n\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n onMouseOver: () => {\n if (!payload?.name) return;\n onDotHover(payload.name);\n },\n onMouseLeave: () => onDotHover(''),\n 'data-name': dataName\n }}\n />\n);\n\nconst buildRadars = (\n totalDataset: number,\n handleDotHover: (name: string) => void,\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 onDotHover={handleDotHover}\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 CustomLabel = ({\n index,\n x,\n y,\n percentagesValues,\n label,\n activeDot,\n chartType,\n formatedColors,\n primarySkinColor,\n exploreLocale,\n hoveredDot,\n onClick,\n onExploreClick\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 primarySkinColor: string;\n exploreLocale: string;\n hoveredDot: string;\n onClick: (name: string) => void;\n onExploreClick: (name: string) => void;\n}) => {\n const [hovered, setHovered] = useState(false);\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 function handleExploreClick() {\n onExploreClick(label);\n }\n\n const buttonExploreProps: ButtonLinkProps = {\n customStyle: {\n height: '36px',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out'\n },\n onClick: handleExploreClick,\n 'aria-label': `${label}, ${exploreLocale}`,\n label: exploreLocale,\n 'data-name': 'learner-skill-card-explore-button',\n icon: {\n position: 'left',\n faIcon: {\n name: 'compass',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }\n };\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const extraOffsetY = isCurrentDotActive && index === 0 ? -25 : 0;\n\n return (\n <g>\n <foreignObject\n className={classnames(\n style.tickeForeignObject,\n isCurrentDotActive && style.tickeForeignObjectFocus\n )}\n x={x + offsetX}\n y={y + offsetY + extraOffsetY}\n >\n <div\n data-name={label}\n onClick={onLabelClick}\n className={classnames(\n style.tickWrapper,\n isCurrentDotActive && style.tickWrapperFocus,\n hoveredDot === label && style.tickWrapperHover\n )}\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 {isCurrentDotActive ? (\n <div\n className={style.buttonWrapper}\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n data-name=\"button-explore-wrapper\"\n >\n <ButtonLink {...buttonExploreProps} />\n </div>\n ) : null}\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 {\n data,\n legend,\n totalDataset,\n colors: colorsProps,\n onClick,\n onExploreClick,\n width,\n height,\n margin\n }: LearningProfileRadarChartPropTypes,\n legacyContext: WebContextValues\n) => {\n const [isMobile, setIsMobile] = useState(false);\n const [activeDot, setActiveDot] = useState<ActiveDotType>();\n const [hoveredDot, setHoveredDot] = useState('');\n const skin = GetSkinFromContext(legacyContext);\n const translate = GetTranslateFromContext(legacyContext);\n const primarySkinColor = get('common.primary', skin);\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_ as boolean);\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, onClick, setActiveDot]);\n\n function handleOnActiveDotClick() {\n setActiveDot(undefined);\n onClick(undefined);\n }\n\n function handleOnDotClick(label: string) {\n if (!isEmpty(activeDot) && activeDot?.label === label) {\n handleOnActiveDotClick();\n return;\n }\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 handleExploreClick(label: string) {\n const payload = formatedData.find(({subject}) => subject === label);\n if (!payload) return;\n\n const skillRef = findKey(val => val === payload?.subject, legend);\n\n if (skillRef) {\n onExploreClick(skillRef);\n }\n }\n\n function renderCustomLabel(props: {\n x: number;\n y: number;\n payload: {value: string};\n index: number;\n }) {\n const {\n x,\n y,\n payload: {value: label},\n index\n } = props;\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 (\n <CustomLabel\n index={index}\n x={x}\n y={y}\n percentagesValues={percentagesValues}\n label={label}\n activeDot={activeDot}\n chartType={chartType}\n formatedColors={formatedColors}\n primarySkinColor={primarySkinColor}\n exploreLocale={translate('Explore')}\n hoveredDot={hoveredDot}\n onClick={handleOnDotClick}\n onExploreClick={handleExploreClick}\n />\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 <PolarGrid strokeDasharray={10} strokeWidth={2} radialLines={false} />\n <PolarAngleAxis dataKey=\"subject\" tick={!isMobile && renderCustomLabel} />\n <PolarRadiusAxis tick={false} axisLine={false} domain={[0, 100]} />\n {buildRadars(totalDataset, setHoveredDot, handleOnDotClick, activeDot)}\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.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\nResponsiveLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\n\nexport default ResponsiveLearningProfileRadarChart;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","Fragment","useCallback","useEffect","useMemo","useState","Radar","RadarChart","PolarGrid","PolarAngleAxis","ResponsiveContainer","Tooltip","PolarRadiusAxis","convert","classnames","isMobile","getIsMobile","ButtonLink","Provider","GetSkinFromContext","GetTranslateFromContext","learningProfileRadarChartPropTypes","style","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","cursor","DOT_ACTIVE_PROPS","RADAR_DEFAULT_PROPS","fillOpacity","Gradient","type","colors","firstColor","secondColor","createElement","id","x1","y1","x2","y2","stopColor","CustomTooltip","active","payload","length","className","tooltip","tooltipLabel","tooltipValue","value","CustomDot","cx","cy","onDotHover","onDotClick","activeDot","dataName","_extends","subject","onTouchStart","onClick","e","stopPropagation","onMouseOver","onMouseLeave","buildRadars","totalDataset","handleDotHover","handleOnDotClick","_times","index","datakey","dataset","key","dataKey","dot","CustomLabel","percentagesValues","chartType","formatedColors","primarySkinColor","exploreLocale","hoveredDot","onExploreClick","hovered","setHovered","isCurrentDotActive","offsetX","offsetY","rest","onLabelClick","handleExploreClick","buttonExploreProps","customStyle","height","backgroundColor","transition","icon","position","faIcon","size","handleMouseOver","handleMouseLeave","extraOffsetY","tickeForeignObject","tickeForeignObjectFocus","tickWrapper","tickWrapperFocus","tickWrapperHover","alignItems","textAlign","opacity","_isEmpty","map","colorLabel","i","tickValue","tickLabel","buttonWrapper","CHART_CONFIGS_BY_SIDE_COUNT","_pipe","_keyBy","_mapValues","formatValues","values_","_flatten","val","_fromPairs","formatData","legend","data_","_toPairs","_map","ref","LearningProfileRadarChart","data","colorsProps","width","legacyContext","setIsMobile","setActiveDot","setHoveredDot","skin","translate","_get","Object","assign","_getOr","_size","gradients","isMobile_","setIsMobile_","handleClick","undefined","window","addEventListener","removeEventListener","handleOnActiveDotClick","formatedData","find","indexOf","skillRef","_findKey","renderCustomLabel","props","currentData","_omit","_values","outerRadius","strokeDasharray","radialLines","tick","axisLine","domain","content","ResponsiveLearningProfileRadarChart","contextTypes","childContextTypes","propTypes","process","env","NODE_ENV"],"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 get\n} from 'lodash/fp';\nimport {convert} from 'css-color-function';\nimport classnames from 'classnames';\nimport {isMobile as getIsMobile} from '../../util/check-is-mobile';\nimport ButtonLink from '../../atom/button-link';\nimport {ButtonLinkProps} from '../../atom/button-link/types';\nimport Provider, {GetSkinFromContext, GetTranslateFromContext} from '../../atom/provider';\nimport {WebContextValues} from '../../atom/provider/web-context';\nimport {\n ActiveDotType,\n FormatedColorsType,\n FormatedDataType,\n LearningProfileRadarChartPropTypes,\n TickType,\n learningProfileRadarChartPropTypes\n} from './types';\nimport style from './style.css';\n\ntype CHART_TYPE_TYPE = keyof typeof CHART_CONFIGS;\n\n/* TICK_POSITIONS */\nconst top: TickType = {offset: {x: -100, y: -75}, 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 onDotHover,\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 onDotHover: (name: string) => void;\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 onTouchStart: () => {\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n onClick: e => {\n e.stopPropagation();\n\n if (!payload?.name) return;\n onDotClick(payload.name);\n },\n onMouseOver: () => {\n if (!payload?.name) return;\n onDotHover(payload.name);\n },\n onMouseLeave: () => onDotHover(''),\n 'data-name': dataName\n }}\n />\n);\n\nconst buildRadars = (\n totalDataset: number,\n handleDotHover: (name: string) => void,\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 onDotHover={handleDotHover}\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 CustomLabel = ({\n index,\n x,\n y,\n percentagesValues,\n label,\n activeDot,\n chartType,\n formatedColors,\n primarySkinColor,\n exploreLocale,\n hoveredDot,\n onClick,\n onExploreClick\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 primarySkinColor: string;\n exploreLocale: string;\n hoveredDot: string;\n onClick: (name: string) => void;\n onExploreClick: (name: string) => void;\n}) => {\n const [hovered, setHovered] = useState(false);\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 function handleExploreClick() {\n onExploreClick(label);\n }\n\n const buttonExploreProps: ButtonLinkProps = {\n customStyle: {\n height: '36px',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n transition: 'background-color 0.15s ease-in-out, color 0.15s ease-in-out'\n },\n onClick: handleExploreClick,\n 'aria-label': `${label}, ${exploreLocale}`,\n label: exploreLocale,\n 'data-name': 'learner-skill-card-explore-button',\n icon: {\n position: 'left',\n faIcon: {\n name: 'compass',\n backgroundColor: hovered ? primarySkinColor : convert(`color(${primarySkinColor} a(0.07))`),\n color: hovered ? '#FFFFFF' : primarySkinColor,\n size: 16\n }\n }\n };\n\n const handleMouseOver = useCallback(() => setHovered(true), [setHovered]);\n\n const handleMouseLeave = useCallback(() => setHovered(false), [setHovered]);\n\n const extraOffsetY = isCurrentDotActive && index === 0 ? -25 : 0;\n\n return (\n <g>\n <foreignObject\n className={classnames(\n style.tickeForeignObject,\n isCurrentDotActive && style.tickeForeignObjectFocus\n )}\n x={x + offsetX}\n y={y + offsetY + extraOffsetY}\n >\n <div\n data-name={label}\n onClick={onLabelClick}\n className={classnames(\n style.tickWrapper,\n isCurrentDotActive && style.tickWrapperFocus,\n hoveredDot === label && style.tickWrapperHover\n )}\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 {isCurrentDotActive ? (\n <div\n className={style.buttonWrapper}\n onMouseOver={handleMouseOver}\n onMouseLeave={handleMouseLeave}\n data-name=\"button-explore-wrapper\"\n >\n <ButtonLink {...buttonExploreProps} />\n </div>\n ) : null}\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 {\n data,\n legend,\n totalDataset,\n colors: colorsProps,\n onClick,\n onExploreClick,\n width,\n height,\n margin\n }: LearningProfileRadarChartPropTypes,\n legacyContext: WebContextValues\n) => {\n const [isMobile, setIsMobile] = useState(false);\n const [activeDot, setActiveDot] = useState<ActiveDotType>();\n const [hoveredDot, setHoveredDot] = useState('');\n const skin = GetSkinFromContext(legacyContext);\n const translate = GetTranslateFromContext(legacyContext);\n const primarySkinColor = get('common.primary', skin);\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 isMobile_ = getIsMobile();\n\n const setIsMobile_ = useCallback(() => {\n setIsMobile(isMobile_ as boolean);\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, onClick, setActiveDot]);\n\n function handleOnActiveDotClick() {\n setActiveDot(undefined);\n onClick(undefined);\n }\n\n function handleOnDotClick(label: string) {\n if (!isEmpty(activeDot) && activeDot?.label === label) {\n handleOnActiveDotClick();\n return;\n }\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 handleExploreClick(label: string) {\n const payload = formatedData.find(({subject}) => subject === label);\n if (!payload) return;\n\n const skillRef = findKey(val => val === payload?.subject, legend);\n\n if (skillRef) {\n onExploreClick(skillRef);\n }\n }\n\n function renderCustomLabel(props: {\n x: number;\n y: number;\n payload: {value: string};\n index: number;\n }) {\n const {\n x,\n y,\n payload: {value: label},\n index\n } = props;\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 (\n <CustomLabel\n index={index}\n x={x}\n y={y}\n percentagesValues={percentagesValues}\n label={label}\n activeDot={activeDot}\n chartType={chartType}\n formatedColors={formatedColors}\n primarySkinColor={primarySkinColor}\n exploreLocale={translate('Explore')}\n hoveredDot={hoveredDot}\n onClick={handleOnDotClick}\n onExploreClick={handleExploreClick}\n />\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 <PolarGrid strokeDasharray={10} strokeWidth={2} radialLines={false} />\n <PolarAngleAxis dataKey=\"subject\" tick={!isMobile && renderCustomLabel} />\n <PolarRadiusAxis tick={false} axisLine={false} domain={[0, 100]} />\n {buildRadars(totalDataset, setHoveredDot, handleOnDotClick, activeDot)}\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.contextTypes = {\n skin: Provider.childContextTypes.skin,\n translate: Provider.childContextTypes.translate\n};\n\nLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\nResponsiveLearningProfileRadarChart.propTypes = learningProfileRadarChartPropTypes;\n\nexport default ResponsiveLearningProfileRadarChart;\n"],"mappings":"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","ignoreList":[]}
@@ -4,10 +4,7 @@ declare const HeaderWithActions: {
4
4
  (props: HeaderWithActionsProps): JSX.Element;
5
5
  propTypes: {
6
6
  closeButton: import("prop-types").Requireable<import("prop-types").InferProps<{
7
- size: import("prop-types").Validator<string>;
8
- icon: import("prop-types").Validator<string>;
9
- 'data-name': import("prop-types").Validator<string>;
10
- 'aria-label': import("prop-types").Validator<string>;
7
+ 'aria-label': import("prop-types").Requireable<string>;
11
8
  onClick: import("prop-types").Validator<(...args: any[]) => any>;
12
9
  }>>;
13
10
  title: import("prop-types").Validator<string>;
@@ -20,80 +17,25 @@ declare const HeaderWithActions: {
20
17
  display: import("prop-types").Validator<boolean>;
21
18
  label: import("prop-types").Requireable<string>;
22
19
  }>>>;
23
- bulletPointMenuButton: import("prop-types").Requireable<import("prop-types").InferProps<{
24
- 'data-name': import("prop-types").Requireable<string>;
20
+ actionButtons: import("prop-types").Validator<(import("prop-types").InferProps<{
21
+ type: import("prop-types").Validator<string>;
22
+ label: import("prop-types").Validator<string>;
23
+ onClick: import("prop-types").Validator<(...args: any[]) => any>;
25
24
  disabled: import("prop-types").Requireable<boolean>;
26
- buttonAriaLabel: import("prop-types").Requireable<string>;
27
- menuAriaLabel: import("prop-types").Requireable<string>;
25
+ iconName: import("prop-types").Requireable<string>;
26
+ iconColor: import("prop-types").Requireable<string>;
27
+ }> | null | undefined)[]>;
28
+ bulletPointMenuButton: import("prop-types").Requireable<import("prop-types").InferProps<{
28
29
  buttons: import("prop-types").Validator<(import("prop-types").InferProps<{
29
- 'data-name': import("prop-types").Requireable<string>;
30
- disabled: import("prop-types").Requireable<boolean>;
30
+ dataName: import("prop-types").Requireable<string>;
31
31
  label: import("prop-types").Validator<string>;
32
- onClick: import("prop-types").Requireable<(...args: any[]) => any>;
33
- type: import("prop-types").Requireable<string>;
34
- buttonLinkType: import("prop-types").Requireable<string>;
35
- icon: import("prop-types").Requireable<import("prop-types").InferProps<{
36
- theme: import("prop-types").Requireable<string>;
37
- position: import("prop-types").Requireable<string>;
38
- type: import("prop-types").Requireable<string>;
39
- faIcon: import("prop-types").Requireable<import("prop-types").InferProps<{
40
- name: import("prop-types").Validator<string>;
41
- color: import("prop-types").Requireable<string>;
42
- backgroundColor: import("prop-types").Requireable<string>;
43
- size: import("prop-types").Requireable<number>;
44
- customStyle: import("prop-types").Requireable<{
45
- [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
46
- }>;
47
- }>>;
48
- }>>;
49
- customStyle: import("prop-types").Requireable<{
50
- [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
51
- }>;
52
- customLabelClassName: import("prop-types").Requireable<string>;
32
+ iconName: import("prop-types").Validator<string>;
33
+ iconColor: import("prop-types").Validator<string>;
34
+ onClick: import("prop-types").Validator<(...args: any[]) => any>;
53
35
  }> | null | undefined)[]>;
54
- onClick: import("prop-types").Requireable<(...args: any[]) => any>;
55
- menuButtonClassName: import("prop-types").Requireable<string>;
56
- isBulkMenu: import("prop-types").Requireable<boolean>;
36
+ buttonAriaLabel: import("prop-types").Requireable<string>;
37
+ disabled: import("prop-types").Validator<boolean>;
57
38
  }>>;
58
- actionButtons: import("prop-types").Validator<(import("prop-types").InferProps<{
59
- type: import("prop-types").Requireable<string>;
60
- usage: import("prop-types").Requireable<string>;
61
- label: import("prop-types").Requireable<string>;
62
- content: import("prop-types").Requireable<import("prop-types").ReactNodeLike>;
63
- 'aria-label': import("prop-types").Requireable<string>;
64
- tooltipText: import("prop-types").Requireable<string>;
65
- tooltipPlacement: import("prop-types").Requireable<string>;
66
- 'data-name': import("prop-types").Requireable<string>;
67
- 'data-testid': import("prop-types").Requireable<string>;
68
- icon: import("prop-types").Requireable<import("prop-types").InferProps<{
69
- position: import("prop-types").Requireable<string>;
70
- type: import("prop-types").Requireable<string>;
71
- faIcon: import("prop-types").Requireable<import("prop-types").InferProps<{
72
- name: import("prop-types").Validator<string>;
73
- color: import("prop-types").Requireable<string>;
74
- backgroundColor: import("prop-types").Requireable<string>;
75
- size: import("prop-types").Requireable<number>;
76
- customStyle: import("prop-types").Requireable<{
77
- [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
78
- }>;
79
- }>>;
80
- }>>;
81
- onClick: import("prop-types").Requireable<(...args: any[]) => any>;
82
- link: import("prop-types").Requireable<import("prop-types").InferProps<{
83
- href: import("prop-types").Requireable<string>;
84
- download: import("prop-types").Requireable<boolean>;
85
- target: import("prop-types").Requireable<string>;
86
- }>>;
87
- hoverBackgroundColor: import("prop-types").Requireable<string>;
88
- hoverColor: import("prop-types").Requireable<string>;
89
- disabled: import("prop-types").Requireable<boolean>;
90
- className: import("prop-types").Requireable<string>;
91
- customStyle: import("prop-types").Requireable<{
92
- [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
93
- }>;
94
- useTitle: import("prop-types").Requireable<boolean>;
95
- customLabelClassName: import("prop-types").Requireable<string>;
96
- }> | null | undefined)[]>;
97
39
  };
98
40
  };
99
41
  export default HeaderWithActions;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/header-with-actions/index.tsx"],"names":[],"mappings":";AAQA,OAAmC,EAAC,sBAAsB,EAAC,MAAM,SAAS,CAAC;AAO3E,QAAA,MAAM,iBAAiB;YAAW,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCvD,CAAC;AAIF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/organism/header-with-actions/index.tsx"],"names":[],"mappings":";AAOA,OAAmC,EACjC,sBAAsB,EAGvB,MAAM,SAAS,CAAC;AAuEjB,QAAA,MAAM,iBAAiB;YAAW,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CvD,CAAC;AAIF,eAAe,iBAAiB,CAAC"}
@@ -6,13 +6,81 @@ import ButtonLink from '../../atom/button-link';
6
6
  import ButtonLinkIcon from '../../atom/button-link-icon';
7
7
  import Tag from '../../atom/tag';
8
8
  import BulletPointMenuButton from '../../molecule/bullet-point-menu-button';
9
- import headerWithActionsPropTypes from './types';
9
+ import HeaderWithActionsPropTypes from './types';
10
10
  import style from './style.css';
11
11
  const getDataName = suffix => `header-with-actions-${suffix}`;
12
12
  // @ts-expect-error (need to get the index)
13
13
  const uncappedMap = map.convert({
14
14
  cap: false
15
15
  });
16
+ const buildCloseButton = ({
17
+ onClick,
18
+ ariaLabel
19
+ }) => {
20
+ return {
21
+ size: 'default',
22
+ icon: 'close',
23
+ 'data-name': 'close-button',
24
+ 'aria-label': ariaLabel,
25
+ onClick
26
+ };
27
+ };
28
+ const buildButtonMenu = ({
29
+ dataName,
30
+ label,
31
+ iconName,
32
+ iconColor,
33
+ onClick
34
+ }) => {
35
+ return {
36
+ 'data-name': dataName,
37
+ label,
38
+ buttonLinkType: 'tertiary',
39
+ icon: {
40
+ position: 'left',
41
+ faIcon: {
42
+ name: iconName,
43
+ color: iconColor,
44
+ size: 14
45
+ }
46
+ },
47
+ onClick,
48
+ type: iconName === 'trash' ? 'dangerousLeft' : 'defaultLeft'
49
+ };
50
+ };
51
+ const buildActionButton = ({
52
+ type,
53
+ label,
54
+ onClick,
55
+ disabled,
56
+ iconName,
57
+ iconColor
58
+ }) => {
59
+ const base = {
60
+ type,
61
+ label,
62
+ onClick,
63
+ disabled,
64
+ customStyle: {
65
+ fontWeight: '600',
66
+ borderRadius: '12px'
67
+ }
68
+ };
69
+ if (iconName && iconColor) {
70
+ return {
71
+ ...base,
72
+ icon: {
73
+ position: 'left',
74
+ faIcon: {
75
+ name: iconName,
76
+ color: iconColor,
77
+ size: 14
78
+ }
79
+ }
80
+ };
81
+ }
82
+ return base;
83
+ };
16
84
  const HeaderWithActions = props => {
17
85
  const {
18
86
  closeButton,
@@ -28,7 +96,10 @@ const HeaderWithActions = props => {
28
96
  }, /*#__PURE__*/React.createElement("div", {
29
97
  className: style.titleAndButtonWrapper,
30
98
  "data-name": getDataName('title-and-button-wrapper')
31
- }, /*#__PURE__*/React.createElement(ButtonLinkIcon, _extends({}, closeButton, {
99
+ }, /*#__PURE__*/React.createElement(ButtonLinkIcon, _extends({}, buildCloseButton({
100
+ onClick: closeButton.onClick,
101
+ ariaLabel: closeButton['aria-label']
102
+ }), {
32
103
  className: style.button
33
104
  })), /*#__PURE__*/React.createElement("div", {
34
105
  className: style.titleWrapper
@@ -44,13 +115,14 @@ const HeaderWithActions = props => {
44
115
  className: style.buttonsWrapper,
45
116
  "data-name": getDataName('buttons-wrapper')
46
117
  }, bulletPointMenuButton && !isEmpty(bulletPointMenuButton.buttons) ? /*#__PURE__*/React.createElement(BulletPointMenuButton, _extends({}, bulletPointMenuButton, {
47
- buttonAriaLabel: "More actions"
118
+ buttons: uncappedMap(buildButtonMenu, bulletPointMenuButton.buttons),
119
+ "data-name": getDataName('bullet-point-menu-button')
48
120
  })) : null, uncappedMap((action, key) => {
49
- return /*#__PURE__*/React.createElement(ButtonLink, _extends({}, action, {
121
+ return /*#__PURE__*/React.createElement(ButtonLink, _extends({}, buildActionButton(action), {
50
122
  key: key
51
123
  }));
52
124
  }, actionButtons)));
53
125
  };
54
- HeaderWithActions.propTypes = process.env.NODE_ENV !== "production" ? headerWithActionsPropTypes : {};
126
+ HeaderWithActions.propTypes = process.env.NODE_ENV !== "production" ? HeaderWithActionsPropTypes : {};
55
127
  export default HeaderWithActions;
56
128
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","isEmpty","map","ButtonLink","ButtonLinkIcon","Tag","BulletPointMenuButton","headerWithActionsPropTypes","style","getDataName","suffix","uncappedMap","convert","cap","HeaderWithActions","props","closeButton","title","tag","saveStatus","bulletPointMenuButton","actionButtons","createElement","className","headerWrapper","titleAndButtonWrapper","_extends","button","titleWrapper","statusWrapper","display","label","buttonsWrapper","buttons","buttonAriaLabel","action","key","propTypes","process","env","NODE_ENV"],"sources":["../../../src/organism/header-with-actions/index.tsx"],"sourcesContent":["import React from 'react';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport map from 'lodash/fp/map';\nimport ButtonLink from '../../atom/button-link';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport Tag from '../../atom/tag';\nimport {ButtonLinkProps} from '../../atom/button-link/types';\nimport BulletPointMenuButton from '../../molecule/bullet-point-menu-button';\nimport headerWithActionsPropTypes, {HeaderWithActionsProps} from './types';\nimport style from './style.css';\n\nconst getDataName = (suffix: string) => `header-with-actions-${suffix}`;\n// @ts-expect-error (need to get the index)\nconst uncappedMap = map.convert({cap: false});\n\nconst HeaderWithActions = (props: HeaderWithActionsProps) => {\n const {closeButton, title, tag, saveStatus, bulletPointMenuButton, actionButtons} = props;\n\n return (\n <div className={style.headerWrapper} data-name={getDataName('wrapper')}>\n <div\n className={style.titleAndButtonWrapper}\n data-name={getDataName('title-and-button-wrapper')}\n >\n <ButtonLinkIcon {...closeButton} className={style.button} />\n <div className={style.titleWrapper}>\n <div className={style.statusWrapper}>\n <Tag {...tag} />\n {saveStatus.display && saveStatus.label ? (\n <p className={style.saveStatus}>{saveStatus.label}</p>\n ) : null}\n </div>\n <h3 className={style.title} aria-label={title} data-name={getDataName('title')}>\n {title}\n </h3>\n </div>\n </div>\n <div className={style.buttonsWrapper} data-name={getDataName('buttons-wrapper')}>\n {bulletPointMenuButton && !isEmpty(bulletPointMenuButton.buttons) ? (\n <BulletPointMenuButton {...bulletPointMenuButton} buttonAriaLabel=\"More actions\" />\n ) : null}\n {uncappedMap((action: ButtonLinkProps, key: string) => {\n return <ButtonLink {...action} key={key} />;\n }, actionButtons)}\n </div>\n </div>\n );\n};\n\nHeaderWithActions.propTypes = headerWithActionsPropTypes;\n\nexport default HeaderWithActions;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,OAAO,MAAM,mBAAmB;AACvC,OAAOC,GAAG,MAAM,eAAe;AAC/B,OAAOC,UAAU,MAAM,wBAAwB;AAC/C,OAAOC,cAAc,MAAM,6BAA6B;AACxD,OAAOC,GAAG,MAAM,gBAAgB;AAEhC,OAAOC,qBAAqB,MAAM,yCAAyC;AAC3E,OAAOC,0BAA0B,MAAgC,SAAS;AAC1E,OAAOC,KAAK,MAAM,aAAa;AAE/B,MAAMC,WAAW,GAAIC,MAAc,IAAK,uBAAuBA,MAAM,EAAE;AACvE;AACA,MAAMC,WAAW,GAAGT,GAAG,CAACU,OAAO,CAAC;EAACC,GAAG,EAAE;AAAK,CAAC,CAAC;AAE7C,MAAMC,iBAAiB,GAAIC,KAA6B,IAAK;EAC3D,MAAM;IAACC,WAAW;IAAEC,KAAK;IAAEC,GAAG;IAAEC,UAAU;IAAEC,qBAAqB;IAAEC;EAAa,CAAC,GAAGN,KAAK;EAEzF,oBACEf,KAAA,CAAAsB,aAAA;IAAKC,SAAS,EAAEf,KAAK,CAACgB,aAAc;IAAC,aAAWf,WAAW,CAAC,SAAS;EAAE,gBACrET,KAAA,CAAAsB,aAAA;IACEC,SAAS,EAAEf,KAAK,CAACiB,qBAAsB;IACvC,aAAWhB,WAAW,CAAC,0BAA0B;EAAE,gBAEnDT,KAAA,CAAAsB,aAAA,CAAClB,cAAc,EAAAsB,QAAA,KAAKV,WAAW;IAAEO,SAAS,EAAEf,KAAK,CAACmB;EAAO,EAAE,CAAC,eAC5D3B,KAAA,CAAAsB,aAAA;IAAKC,SAAS,EAAEf,KAAK,CAACoB;EAAa,gBACjC5B,KAAA,CAAAsB,aAAA;IAAKC,SAAS,EAAEf,KAAK,CAACqB;EAAc,gBAClC7B,KAAA,CAAAsB,aAAA,CAACjB,GAAG,EAAKa,GAAM,CAAC,EACfC,UAAU,CAACW,OAAO,IAAIX,UAAU,CAACY,KAAK,gBACrC/B,KAAA,CAAAsB,aAAA;IAAGC,SAAS,EAAEf,KAAK,CAACW;EAAW,GAAEA,UAAU,CAACY,KAAS,CAAC,GACpD,IACD,CAAC,eACN/B,KAAA,CAAAsB,aAAA;IAAIC,SAAS,EAAEf,KAAK,CAACS,KAAM;IAAC,cAAYA,KAAM;IAAC,aAAWR,WAAW,CAAC,OAAO;EAAE,GAC5EQ,KACC,CACD,CACF,CAAC,eACNjB,KAAA,CAAAsB,aAAA;IAAKC,SAAS,EAAEf,KAAK,CAACwB,cAAe;IAAC,aAAWvB,WAAW,CAAC,iBAAiB;EAAE,GAC7EW,qBAAqB,IAAI,CAACnB,OAAO,CAACmB,qBAAqB,CAACa,OAAO,CAAC,gBAC/DjC,KAAA,CAAAsB,aAAA,CAAChB,qBAAqB,EAAAoB,QAAA,KAAKN,qBAAqB;IAAEc,eAAe,EAAC;EAAc,EAAE,CAAC,GACjF,IAAI,EACPvB,WAAW,CAAC,CAACwB,MAAuB,EAAEC,GAAW,KAAK;IACrD,oBAAOpC,KAAA,CAAAsB,aAAA,CAACnB,UAAU,EAAAuB,QAAA,KAAKS,MAAM;MAAEC,GAAG,EAAEA;IAAI,EAAE,CAAC;EAC7C,CAAC,EAAEf,aAAa,CACb,CACF,CAAC;AAEV,CAAC;AAEDP,iBAAiB,CAACuB,SAAS,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAGjC,0BAA0B;AAExD,eAAeO,iBAAiB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","isEmpty","map","ButtonLink","ButtonLinkIcon","Tag","BulletPointMenuButton","HeaderWithActionsPropTypes","style","getDataName","suffix","uncappedMap","convert","cap","buildCloseButton","onClick","ariaLabel","size","icon","buildButtonMenu","dataName","label","iconName","iconColor","buttonLinkType","position","faIcon","name","color","type","buildActionButton","disabled","base","customStyle","fontWeight","borderRadius","HeaderWithActions","props","closeButton","title","tag","saveStatus","bulletPointMenuButton","actionButtons","createElement","className","headerWrapper","titleAndButtonWrapper","_extends","button","titleWrapper","statusWrapper","display","buttonsWrapper","buttons","action","key","propTypes","process","env","NODE_ENV"],"sources":["../../../src/organism/header-with-actions/index.tsx"],"sourcesContent":["import React from 'react';\nimport isEmpty from 'lodash/fp/isEmpty';\nimport map from 'lodash/fp/map';\nimport ButtonLink from '../../atom/button-link';\nimport ButtonLinkIcon from '../../atom/button-link-icon';\nimport Tag from '../../atom/tag';\nimport BulletPointMenuButton from '../../molecule/bullet-point-menu-button';\nimport HeaderWithActionsPropTypes, {\n HeaderWithActionsProps,\n ButtonMenuProps,\n ButtonActionProps\n} from './types';\nimport style from './style.css';\n\nconst getDataName = (suffix: string) => `header-with-actions-${suffix}`;\n// @ts-expect-error (need to get the index)\nconst uncappedMap = map.convert({cap: false});\n\nconst buildCloseButton = ({onClick, ariaLabel}: {onClick: () => void; ariaLabel: string}) => {\n return {\n size: 'default',\n icon: 'close',\n 'data-name': 'close-button',\n 'aria-label': ariaLabel,\n onClick\n };\n};\n\nconst buildButtonMenu = ({dataName, label, iconName, iconColor, onClick}: ButtonMenuProps) => {\n return {\n 'data-name': dataName,\n label,\n buttonLinkType: 'tertiary',\n icon: {\n position: 'left' as const,\n faIcon: {\n name: iconName,\n color: iconColor,\n size: 14\n }\n },\n onClick,\n type: iconName === 'trash' ? 'dangerousLeft' : 'defaultLeft'\n };\n};\n\nconst buildActionButton = ({\n type,\n label,\n onClick,\n disabled,\n iconName,\n iconColor\n}: ButtonActionProps) => {\n const base = {\n type,\n label,\n onClick,\n disabled,\n customStyle: {\n fontWeight: '600',\n borderRadius: '12px'\n }\n };\n\n if (iconName && iconColor) {\n return {\n ...base,\n icon: {\n position: 'left' as const,\n faIcon: {\n name: iconName,\n color: iconColor,\n size: 14\n }\n }\n };\n }\n\n return base;\n};\n\nconst HeaderWithActions = (props: HeaderWithActionsProps) => {\n const {closeButton, title, tag, saveStatus, bulletPointMenuButton, actionButtons} = props;\n\n return (\n <div className={style.headerWrapper} data-name={getDataName('wrapper')}>\n <div\n className={style.titleAndButtonWrapper}\n data-name={getDataName('title-and-button-wrapper')}\n >\n <ButtonLinkIcon\n {...buildCloseButton({\n onClick: closeButton.onClick,\n ariaLabel: closeButton['aria-label']\n })}\n className={style.button}\n />\n <div className={style.titleWrapper}>\n <div className={style.statusWrapper}>\n <Tag {...tag} />\n {saveStatus.display && saveStatus.label ? (\n <p className={style.saveStatus}>{saveStatus.label}</p>\n ) : null}\n </div>\n <h3 className={style.title} aria-label={title} data-name={getDataName('title')}>\n {title}\n </h3>\n </div>\n </div>\n <div className={style.buttonsWrapper} data-name={getDataName('buttons-wrapper')}>\n {bulletPointMenuButton && !isEmpty(bulletPointMenuButton.buttons) ? (\n <BulletPointMenuButton\n {...bulletPointMenuButton}\n buttons={uncappedMap(buildButtonMenu, bulletPointMenuButton.buttons)}\n data-name={getDataName('bullet-point-menu-button')}\n />\n ) : null}\n {uncappedMap((action: ButtonActionProps, key: string) => {\n return <ButtonLink {...buildActionButton(action)} key={key} />;\n }, actionButtons)}\n </div>\n </div>\n );\n};\n\nHeaderWithActions.propTypes = HeaderWithActionsPropTypes;\n\nexport default HeaderWithActions;\n"],"mappings":"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","ignoreList":[]}
@@ -1,12 +1,7 @@
1
1
  import PropTypes from 'prop-types';
2
- import { BulletPointMenuButtonProps } from '../../molecule/bullet-point-menu-button/types';
3
- import { ButtonLinkProps } from '../../atom/button-link/types';
4
- declare const headerWithActionsPropTypes: {
2
+ declare const HeaderWithActionsPropTypes: {
5
3
  closeButton: PropTypes.Requireable<PropTypes.InferProps<{
6
- size: PropTypes.Validator<string>;
7
- icon: PropTypes.Validator<string>;
8
- 'data-name': PropTypes.Validator<string>;
9
- 'aria-label': PropTypes.Validator<string>;
4
+ 'aria-label': PropTypes.Requireable<string>;
10
5
  onClick: PropTypes.Validator<(...args: any[]) => any>;
11
6
  }>>;
12
7
  title: PropTypes.Validator<string>;
@@ -19,82 +14,27 @@ declare const headerWithActionsPropTypes: {
19
14
  display: PropTypes.Validator<boolean>;
20
15
  label: PropTypes.Requireable<string>;
21
16
  }>>>;
22
- bulletPointMenuButton: PropTypes.Requireable<PropTypes.InferProps<{
23
- 'data-name': PropTypes.Requireable<string>;
17
+ actionButtons: PropTypes.Validator<(PropTypes.InferProps<{
18
+ type: PropTypes.Validator<string>;
19
+ label: PropTypes.Validator<string>;
20
+ onClick: PropTypes.Validator<(...args: any[]) => any>;
24
21
  disabled: PropTypes.Requireable<boolean>;
25
- buttonAriaLabel: PropTypes.Requireable<string>;
26
- menuAriaLabel: PropTypes.Requireable<string>;
22
+ iconName: PropTypes.Requireable<string>;
23
+ iconColor: PropTypes.Requireable<string>;
24
+ }> | null | undefined)[]>;
25
+ bulletPointMenuButton: PropTypes.Requireable<PropTypes.InferProps<{
27
26
  buttons: PropTypes.Validator<(PropTypes.InferProps<{
28
- 'data-name': PropTypes.Requireable<string>;
29
- disabled: PropTypes.Requireable<boolean>;
27
+ dataName: PropTypes.Requireable<string>;
30
28
  label: PropTypes.Validator<string>;
31
- onClick: PropTypes.Requireable<(...args: any[]) => any>;
32
- type: PropTypes.Requireable<string>;
33
- buttonLinkType: PropTypes.Requireable<string>;
34
- icon: PropTypes.Requireable<PropTypes.InferProps<{
35
- theme: PropTypes.Requireable<string>;
36
- position: PropTypes.Requireable<string>;
37
- type: PropTypes.Requireable<string>;
38
- faIcon: PropTypes.Requireable<PropTypes.InferProps<{
39
- name: PropTypes.Validator<string>;
40
- color: PropTypes.Requireable<string>;
41
- backgroundColor: PropTypes.Requireable<string>;
42
- size: PropTypes.Requireable<number>;
43
- customStyle: PropTypes.Requireable<{
44
- [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
45
- }>;
46
- }>>;
47
- }>>;
48
- customStyle: PropTypes.Requireable<{
49
- [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
50
- }>;
51
- customLabelClassName: PropTypes.Requireable<string>;
29
+ iconName: PropTypes.Validator<string>;
30
+ iconColor: PropTypes.Validator<string>;
31
+ onClick: PropTypes.Validator<(...args: any[]) => any>;
52
32
  }> | null | undefined)[]>;
53
- onClick: PropTypes.Requireable<(...args: any[]) => any>;
54
- menuButtonClassName: PropTypes.Requireable<string>;
55
- isBulkMenu: PropTypes.Requireable<boolean>;
33
+ buttonAriaLabel: PropTypes.Requireable<string>;
34
+ disabled: PropTypes.Validator<boolean>;
56
35
  }>>;
57
- actionButtons: PropTypes.Validator<(PropTypes.InferProps<{
58
- type: PropTypes.Requireable<string>;
59
- usage: PropTypes.Requireable<string>;
60
- label: PropTypes.Requireable<string>;
61
- content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
62
- 'aria-label': PropTypes.Requireable<string>;
63
- tooltipText: PropTypes.Requireable<string>;
64
- tooltipPlacement: PropTypes.Requireable<string>;
65
- 'data-name': PropTypes.Requireable<string>;
66
- 'data-testid': PropTypes.Requireable<string>;
67
- icon: PropTypes.Requireable<PropTypes.InferProps<{
68
- position: PropTypes.Requireable<string>;
69
- type: PropTypes.Requireable<string>;
70
- faIcon: PropTypes.Requireable<PropTypes.InferProps<{
71
- name: PropTypes.Validator<string>;
72
- color: PropTypes.Requireable<string>;
73
- backgroundColor: PropTypes.Requireable<string>;
74
- size: PropTypes.Requireable<number>;
75
- customStyle: PropTypes.Requireable<{
76
- [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
77
- }>;
78
- }>>;
79
- }>>;
80
- onClick: PropTypes.Requireable<(...args: any[]) => any>;
81
- link: PropTypes.Requireable<PropTypes.InferProps<{
82
- href: PropTypes.Requireable<string>;
83
- download: PropTypes.Requireable<boolean>;
84
- target: PropTypes.Requireable<string>;
85
- }>>;
86
- hoverBackgroundColor: PropTypes.Requireable<string>;
87
- hoverColor: PropTypes.Requireable<string>;
88
- disabled: PropTypes.Requireable<boolean>;
89
- className: PropTypes.Requireable<string>;
90
- customStyle: PropTypes.Requireable<{
91
- [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
92
- }>;
93
- useTitle: PropTypes.Requireable<boolean>;
94
- customLabelClassName: PropTypes.Requireable<string>;
95
- }> | null | undefined)[]>;
96
36
  };
97
- export default headerWithActionsPropTypes;
37
+ export default HeaderWithActionsPropTypes;
98
38
  declare type TagProps = {
99
39
  label: 'Published' | 'Ongoing changes' | 'Draft' | 'Archived';
100
40
  type: 'success' | 'progress' | 'warning';
@@ -105,18 +45,35 @@ declare type SaveStatusProps = {
105
45
  label?: 'Unsaved changes' | 'Saved';
106
46
  };
107
47
  declare type CloseButtonProps = {
108
- size: 'default' | 'small' | 'responsive';
109
- icon: string;
110
- 'data-name': string;
111
48
  'aria-label': string;
112
49
  onClick: () => void;
113
50
  };
51
+ export declare type ButtonMenuProps = {
52
+ dataName: string;
53
+ label: string;
54
+ iconName: string;
55
+ iconColor: string;
56
+ onClick: () => void;
57
+ };
58
+ declare type BulletPointMenuButtonProps = {
59
+ buttons: ButtonMenuProps[];
60
+ buttonAriaLabel?: string;
61
+ disabled: boolean;
62
+ };
63
+ export declare type ButtonActionProps = {
64
+ type: 'primary' | 'secondary';
65
+ label: string;
66
+ onClick: () => void;
67
+ disabled?: boolean;
68
+ iconName?: string;
69
+ iconColor?: string;
70
+ };
114
71
  export declare type HeaderWithActionsProps = {
115
72
  closeButton: CloseButtonProps;
116
73
  title: string;
117
74
  tag: TagProps;
118
75
  saveStatus: SaveStatusProps;
119
- actionButtons: ButtonLinkProps[];
76
+ actionButtons: ButtonActionProps[];
120
77
  bulletPointMenuButton?: BulletPointMenuButtonProps;
121
78
  };
122
79
  export declare type HeaderWithActionsPropsFixture = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/organism/header-with-actions/types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAuC,EACrC,0BAA0B,EAC3B,MAAM,+CAA+C,CAAC;AACvD,OAA4B,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AASlF,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAc/B,CAAC;AAEF,eAAe,0BAA0B,CAAC;AAE1C,aAAK,QAAQ,GAAG;IACd,KAAK,EAAE,WAAW,GAAG,iBAAiB,GAAG,OAAO,GAAG,UAAU,CAAC;IAC9D,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,aAAK,eAAe,GAAG;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC;CACrC,CAAC;AAEF,aAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,YAAY,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,oBAAY,sBAAsB,GAAG;IACnC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,QAAQ,CAAC;IACd,UAAU,EAAE,eAAe,CAAC;IAC5B,aAAa,EAAE,eAAe,EAAE,CAAC;IACjC,qBAAqB,CAAC,EAAE,0BAA0B,CAAC;CACpD,CAAC;AAEF,oBAAY,6BAA6B,GAAG;IAAC,KAAK,EAAE,sBAAsB,CAAA;CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/organism/header-with-actions/types.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AAmBnC,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqB/B,CAAC;AAEF,eAAe,0BAA0B,CAAC;AAE1C,aAAK,QAAQ,GAAG;IACd,KAAK,EAAE,WAAW,GAAG,iBAAiB,GAAG,OAAO,GAAG,UAAU,CAAC;IAC9D,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,aAAK,eAAe,GAAG;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC;CACrC,CAAC;AAEF,aAAK,gBAAgB,GAAG;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,oBAAY,eAAe,GAAG;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,aAAK,0BAA0B,GAAG;IAChC,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC9B,IAAI,EAAE,SAAS,GAAG,WAAW,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oBAAY,sBAAsB,GAAG;IACnC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,QAAQ,CAAC;IACd,UAAU,EAAE,eAAe,CAAC;IAC5B,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,qBAAqB,CAAC,EAAE,0BAA0B,CAAC;CACpD,CAAC;AAEF,oBAAY,6BAA6B,GAAG;IAAC,KAAK,EAAE,sBAAsB,CAAA;CAAC,CAAC"}