@reltio/remotes 1.4.1632 → 1.4.1633
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/1039.js +1 -1
- package/1146.js +1 -1
- package/1148.js +1 -1
- package/1334.js +1 -1
- package/1425.js +1 -1
- package/1572.js +1 -1
- package/1664.js +1 -1
- package/1707.js +1 -1
- package/1790.js +1 -1
- package/1840.js +1 -1
- package/1925.js +1 -1
- package/2049.js +1 -1
- package/2066.js +1 -1
- package/2201.js +1 -1
- package/2400.js +1 -1
- package/2404.js +1 -1
- package/2463.js +1 -1
- package/2641.js +1 -1
- package/3096.js +1 -1
- package/3348.js +1 -1
- package/3358.js +1 -1
- package/3373.js +1 -1
- package/3381.js +1 -1
- package/3383.js +1 -1
- package/3463.js +1 -1
- package/3469.js +1 -1
- package/3538.js +1 -1
- package/356.js +1 -1
- package/3875.js +1 -1
- package/3902.js +1 -1
- package/3926.js +1 -1
- package/415.js +1 -1
- package/4212.js +1 -1
- package/4390.js +1 -1
- package/4481.js +1 -1
- package/4703.js +1 -1
- package/4780.js +1 -1
- package/4806.js +1 -1
- package/4838.js +1 -1
- package/50.js +1 -1
- package/5034.js +1 -1
- package/5039.js +1 -1
- package/5053.js +1 -1
- package/5108.js +1 -1
- package/5163.js +1 -1
- package/5617.js +1 -1
- package/6020.js +1 -1
- package/6173.js +1 -1
- package/6228.js +1 -1
- package/6280.js +1 -1
- package/6287.js +1 -1
- package/6531.js +1 -1
- package/6531.js.map +1 -1
- package/6606.js +1 -1
- package/6799.js +1 -1
- package/6844.js +1 -1
- package/6853.js +1 -1
- package/6860.js +1 -1
- package/6903.js +1 -1
- package/7340.js +1 -1
- package/735.js +1 -1
- package/7422.js +1 -1
- package/7422.js.map +1 -1
- package/7626.js +1 -1
- package/764.js +1 -1
- package/7896.js +1 -1
- package/8168.js +1 -1
- package/820.js +1 -1
- package/8207.js +1 -1
- package/8322.js +1 -1
- package/8481.js +1 -1
- package/8565.js +1 -1
- package/8741.js +1 -1
- package/9016.js +1 -1
- package/9028.js +1 -1
- package/9283.js +1 -1
- package/9309.js +1 -1
- package/9328.js +1 -1
- package/9387.js +1 -1
- package/9719.js +1 -1
- package/9736.js +1 -1
- package/9861.js +1 -1
- package/987.js +1 -1
- package/99.js +1 -1
- package/9945.js +1 -1
- package/9960.js +1 -1
- package/main.js +1 -1
- package/package.json +1 -1
- package/remoteEntry.js +1 -1
package/7422.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"7422.js","mappings":"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","sources":["webpack://@reltio/remotes/../components/src/components/activityLog/hooks/useActivitiesLoader.ts","webpack://@reltio/remotes/../components/src/components/charts/BarChart/BarChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/BarChart/getBarChartSettings.ts","webpack://@reltio/remotes/../components/src/components/charts/hooks/useTooltipState.ts","webpack://@reltio/remotes/../components/src/components/charts/BubbleChart/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/BubbleChart/BubbleChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/BubbleChart/helpers.ts","webpack://@reltio/remotes/../components/src/components/charts/BubbleChart/useBubbles.ts","webpack://@reltio/remotes/../components/src/components/charts/LineChart/LineChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/LineChart/getLineChartSettings.ts","webpack://@reltio/remotes/../components/src/components/charts/MapChart/Legend/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/MapChart/Legend/Legend.tsx","webpack://@reltio/remotes/../components/src/components/charts/MapChart/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/MapChart/MapChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/MapChart/useGeography.ts","webpack://@reltio/remotes/../components/src/components/charts/CloudChart/useCloud.ts","webpack://@reltio/remotes/../components/src/components/charts/CloudChart/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/CloudChart/CloudChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/ChartsFactory.js","webpack://@reltio/remotes/../components/src/components/charts/CustomLegend/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/CustomLegend/CustomLegend.tsx","webpack://@reltio/remotes/../components/src/components/charts/CustomLegend/getLegendProps.tsx","webpack://@reltio/remotes/../components/src/components/charts/CustomTooltip/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/CustomTooltip/CustomTooltip.tsx","webpack://@reltio/remotes/../components/src/components/charts/HOCs/withPercents.tsx","webpack://@reltio/remotes/../components/src/components/charts/ActiveShape/ActiveShape.tsx","webpack://@reltio/remotes/../components/src/components/charts/PieChart/PieChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/cell-renderers/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/cell-renderers/HeadCellRenderer.tsx","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/cell-renderers/AttributeCellRenderer.tsx","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/cell-renderers/NumberCellValueRenderer.tsx","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/TableWithBars.tsx","webpack://@reltio/remotes/../components/src/components/charts/TreeChart/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/TreeChart/TreeChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/hooks/useClickableStyle.ts","webpack://@reltio/remotes/../components/src/contexts/ReloadFacetContext/index.tsx","webpack://@reltio/remotes/../components/src/contexts/SearchFiltersContext/index.ts"],"sourcesContent":["import {useCallback} from 'react';\nimport {ActivitiesFilter} from '../types';\nimport {getActivities, getActivitiesTotal} from '@reltio/mdm-sdk';\nimport {buildActivitiesFilterString} from '../utils/filters';\n\ntype Props = {\n filter: ActivitiesFilter;\n max: number;\n offset: number;\n};\n\nexport const useActivitiesLoader = ({filter, max, offset}: Props) => {\n return useCallback(async () => {\n const filterString = buildActivitiesFilterString(filter);\n const data = await getActivities({filter: filterString, max, offset});\n const {total} = await getActivitiesTotal({filter: filterString});\n return {data, total};\n }, [filter, max, offset]);\n};\n","import React from 'react';\nimport {Bar, Rectangle, BarChart as BarChartWidget, CartesianGrid, Tooltip, XAxis, YAxis} from 'recharts';\nimport {BarChartOptions, ChartProps} from '../types';\nimport getBarChartSettings from './getBarChartSettings';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype BarChartProps = ChartProps & {\n options?: BarChartOptions;\n};\n\nconst BarChart = ({width, height, data, options = {}, onItemClick}: BarChartProps) => {\n const {barChart, cartesianGrid, bar, tooltip, xAxis, yAxis} = getBarChartSettings(options);\n const onBarClick = onItemClick && (({group}) => onItemClick(group));\n const clickable = useClickableStyle(onBarClick);\n return (\n <BarChartWidget width={width} height={height} data={data} {...barChart}>\n <CartesianGrid {...cartesianGrid} />\n <Tooltip content={<CustomTooltip />} {...tooltip} />\n <Bar {...bar} shape={<Rectangle className={clickable} />} onClick={onBarClick} />\n <XAxis {...xAxis} />\n <YAxis {...yAxis} />\n </BarChartWidget>\n );\n};\n\nexport default BarChart;\n","import {BarChartProps, BarProps, CartesianGridProps, TooltipProps, XAxisProps, YAxisProps} from 'recharts';\nimport {formatNumberAsMetric} from '@reltio/mdm-sdk';\nimport {BarChartOptions} from '../types';\n\ntype BarChartSettings = {\n barChart: BarChartProps;\n bar: BarProps;\n xAxis: XAxisProps;\n yAxis: YAxisProps;\n cartesianGrid: CartesianGridProps;\n tooltip: TooltipProps;\n};\n\nconst getBarChartSettings = ({margin, isHorizontal, isLabelRotated}: BarChartOptions): BarChartSettings => {\n return {\n barChart: {\n layout: isHorizontal ? 'vertical' : 'horizontal',\n barCategoryGap: '30%',\n margin: margin\n },\n bar: {\n dataKey: 'value',\n fill: isHorizontal ? '#9FC3FF' : '#0072CE'\n },\n xAxis: {\n type: isHorizontal ? 'number' : 'category',\n dataKey: isHorizontal ? '' : 'label',\n tick: {\n fill: '#000',\n opacity: '0.54'\n },\n angle: isLabelRotated ? -45 : 0,\n textAnchor: isLabelRotated ? 'end' : 'middle',\n stroke: '#666'\n },\n yAxis: {\n dataKey: isHorizontal ? 'label' : '',\n type: isHorizontal ? 'category' : 'number',\n tick: {\n fill: '#000',\n opacity: isHorizontal ? '0.87' : '0.54',\n width: isHorizontal ? 150 : undefined\n },\n tickFormatter: formatNumberAsMetric,\n stroke: '#666',\n tickCount: 8,\n mirror: isHorizontal\n },\n cartesianGrid: {\n strokeDasharray: '3 3',\n stroke: '#666',\n strokeOpacity: '0.4',\n vertical: !isHorizontal\n },\n tooltip: {\n cursor: {\n fill: '#000',\n opacity: '0.1'\n }\n }\n };\n};\n\nexport default getBarChartSettings;\n","import {useState, useCallback} from 'react';\nimport {Coordinate, TooltipProps} from 'recharts';\nimport {ChartData} from '../types';\n\nconst useTooltipState = () => {\n const [tooltipState, setTooltipState] = useState<TooltipProps>({active: false});\n const showTooltip = useCallback((data: ChartData, coordinate: Coordinate) => {\n setTooltipState({\n active: true,\n label: data.label,\n coordinate,\n payload: [{value: data.value, payload: data, name: data.label}]\n });\n }, []);\n const hideTooltip = useCallback(() => {\n setTooltipState((state) => ({\n ...state,\n active: false\n }));\n }, []);\n return {tooltipState, showTooltip, hideTooltip};\n};\n\nexport default useTooltipState;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n bubbleChart: {\n position: 'relative',\n cursor: 'default'\n }\n});\n","import React, {useMemo, useState} from 'react';\nimport {Legend, Margin, Tooltip} from 'recharts';\nimport useBubbles from './useBubbles';\nimport {ChartProps} from '../types';\nimport getLegendProps from '../CustomLegend/getLegendProps';\nimport {adjustRectWithLegend} from './helpers';\nimport withPercents from '../HOCs/withPercents';\nimport {propOr} from 'ramda';\nimport {getChartItemColor} from '@reltio/mdm-sdk';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport useTooltipState from '../hooks/useTooltipState';\n\nimport {useStyles} from './styles';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype Props = ChartProps & {\n options?: {\n showLegend?: boolean;\n margin?: Margin;\n };\n};\n\nexport const BubbleChart = ({width, height, data, options = {}, onItemClick}: Props) => {\n const styles = useStyles();\n const {showLegend = true, margin} = options;\n\n const initialRect = {\n x: propOr(0, 'left', margin),\n y: propOr(0, 'top', margin),\n width: width - propOr(0, 'left', margin) - propOr(0, 'right', margin),\n height: height - propOr(0, 'top', margin) - propOr(0, 'bottom', margin)\n };\n const initialLegendProps = getLegendProps(width);\n const [legendBox, setLegendBox] = useState({width: 0, height: 0});\n\n const {rect, legendProps} = adjustRectWithLegend(initialRect, initialLegendProps, legendBox);\n\n const bubbles = useBubbles({data, width: rect.width, height: rect.height});\n const {tooltipState, showTooltip, hideTooltip} = useTooltipState();\n\n const clickable = useClickableStyle(onItemClick);\n\n const circles = useMemo(\n () =>\n bubbles.map((bubble) => {\n const cx = rect.x + bubble.x;\n const cy = rect.y + bubble.y;\n return (\n <circle\n key={bubble.data.label}\n cx={cx}\n cy={cy}\n r={bubble.r}\n onMouseEnter={() => showTooltip(bubble.data, {x: cx, y: cy})}\n onMouseLeave={() => hideTooltip()}\n onClick={onItemClick && (() => onItemClick(bubble.data.group))}\n fill={getChartItemColor(bubble.data.label)}\n className={clickable}\n >\n <animate attributeName={'r'} from={0} to={bubble.r} dur=\"0.5s\" />\n </circle>\n );\n }),\n [bubbles, hideTooltip, rect.x, rect.y, showTooltip, onItemClick, clickable]\n );\n\n return (\n <div className={styles.bubbleChart} style={{width, height}}>\n <svg width={width} height={height}>\n {circles}\n </svg>\n {showLegend && (\n <Legend\n {...legendProps}\n payload={(data || []).map((item) => ({\n id: item.label,\n type: 'square',\n color: getChartItemColor(item.label),\n value: `${item.label} (${item.percent}%)`\n }))}\n chartWidth={width}\n chartHeight={height}\n margin={margin}\n onBBoxUpdate={setLegendBox}\n />\n )}\n <Tooltip viewBox={rect} content={<CustomTooltip />} {...tooltipState} />\n </div>\n );\n};\n\nexport default withPercents(BubbleChart);\n","import {LegendProps, ViewBox} from 'recharts';\n\nconst adjustRectWithLegend = (rect: ViewBox, legendProps: LegendProps, legendBox: ViewBox) => {\n const {layout} = legendProps;\n\n if (layout === 'vertical') {\n return {rect: {...rect, width: rect.width - legendBox.width}, legendProps};\n }\n\n if (layout === 'horizontal') {\n return {\n rect: {...rect, height: rect.height - legendBox.height},\n legendProps: {...legendProps, width: rect.width}\n };\n }\n\n return {rect, legendProps};\n};\n\nexport {adjustRectWithLegend};\n","import {useMemo} from 'react';\nimport {hierarchy, pack} from 'd3-hierarchy';\nimport {ChartData} from '../types';\n\ntype Props = {\n width: number;\n height: number;\n data: ChartData[];\n};\n\nexport type Bubble = {\n data: ChartData;\n r: number;\n x: number;\n y: number;\n};\n\nconst useBubbles = ({data, width, height}: Props): Bubble[] => {\n return useMemo(() => {\n if (width === 0 || height === 0) {\n return [];\n }\n\n const bubblesLayout = pack().size([width, height]).padding(2);\n\n const bubblesData = hierarchy({children: data})\n .sum((d) => d.value)\n .sort((a, b) => b.value - a.value);\n\n return bubblesLayout(bubblesData).leaves();\n }, [data, height, width]);\n};\n\nexport default useBubbles;\n","import React from 'react';\nimport {ChartProps, LineChartOptions} from '../types';\nimport {CartesianGrid, Dot, Line, LineChart as LineChartWidget, Tooltip, XAxis, YAxis} from 'recharts';\nimport getLineChartSettings from './getLineChartSettings';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\nconst CustomDot = ({payload, onClick, ...otherProps}: any) => {\n const clickable = useClickableStyle(onClick);\n return (\n <Dot\n className={clickable}\n payload={payload}\n onClick={onClick && (() => onClick(payload.group))}\n {...otherProps}\n />\n );\n};\n\ntype LineChartProps = ChartProps & {\n options?: LineChartOptions;\n};\n\nconst LineChart = ({width, height, data, options = {}, onItemClick}: LineChartProps) => {\n const {cartesianGrid, tooltip, xAxis, yAxis, lineChart, line} = getLineChartSettings(options);\n return (\n <LineChartWidget width={width} height={height} data={data} {...lineChart}>\n <CartesianGrid {...cartesianGrid} />\n <XAxis {...xAxis} />\n <YAxis {...yAxis} />\n <Tooltip content={<CustomTooltip />} {...tooltip} />\n <Line\n {...line}\n activeDot={<CustomDot {...(line.activeDot as Record<string, unknown>)} onClick={onItemClick} />}\n />\n </LineChartWidget>\n );\n};\n\nexport default LineChart;\n","import {CartesianGridProps, LineChartProps, LineProps, TooltipProps, XAxisProps, YAxisProps} from 'recharts';\nimport {formatNumberAsMetric} from '@reltio/mdm-sdk';\nimport {LineChartOptions} from '../types/LineChartOptions';\n\ntype LineChartSettings = {\n lineChart: LineChartProps;\n xAxis: XAxisProps;\n yAxis: YAxisProps;\n cartesianGrid: CartesianGridProps;\n tooltip: TooltipProps;\n line: LineProps;\n};\n\nconst getLineChartSettings = ({margin, isLabelRotated}: LineChartOptions): LineChartSettings => {\n return {\n lineChart: {\n layout: 'horizontal',\n margin: margin\n },\n xAxis: {\n type: 'category',\n dataKey: 'label',\n tick: {\n fill: '#000',\n opacity: '0.54'\n },\n angle: isLabelRotated ? -45 : 0,\n textAnchor: isLabelRotated ? 'end' : 'middle',\n stroke: '#666'\n },\n yAxis: {\n dataKey: '',\n type: 'number',\n tick: {\n fill: '#000',\n opacity: '0.54',\n width: undefined\n },\n tickFormatter: formatNumberAsMetric,\n stroke: '#666',\n tickCount: 8\n },\n cartesianGrid: {\n strokeDasharray: '3 3',\n stroke: '#666',\n strokeOpacity: '0.4'\n },\n tooltip: {\n cursor: {\n fill: '#000',\n opacity: '0.1'\n }\n },\n line: {\n type: 'linear',\n dataKey: 'value',\n stroke: '#4BAFFF',\n strokeWidth: 3,\n dot: {\n strokeWidth: 2,\n r: 5\n },\n activeDot: {\n strokeWidth: 2,\n r: 5,\n stroke: '#4BAFFF'\n }\n }\n };\n};\n\nexport default getLineChartSettings;\n","import {makeStyles} from '@mui/styles';\n\ntype StylesProps = {\n colors: string[];\n width: number;\n};\n\nconst barWidth = 15;\n\nexport const useStyles = makeStyles((theme) => ({\n legendContainer: ({width}: StylesProps) => ({\n width: `${width}px`,\n top: '5%',\n height: '90%',\n position: 'relative'\n }),\n alignTop: {\n top: 0\n },\n alignBottom: {\n bottom: 0\n },\n legendBar: ({colors}: StylesProps) => ({\n background: `linear-gradient(to top, ${colors.join(', ')})`,\n width: `${barWidth}px`,\n position: 'absolute',\n top: 0,\n right: 0,\n bottom: 0\n }),\n legendLabel: ({width}: StylesProps) => ({\n position: 'absolute',\n fontSize: '13px',\n lineHeight: '15px',\n fontWeight: 'normal',\n color: theme.palette.text.primary,\n width: `${width - barWidth}px`,\n textAlign: 'right',\n right: `${barWidth}px`,\n paddingRight: '10px',\n boxSizing: 'border-box',\n overflowWrap: 'break-word'\n })\n}));\n","import React from 'react';\nimport Typography from '@mui/material/Typography';\nimport {formatNumberAsMetric} from '@reltio/mdm-sdk';\nimport classnames from 'classnames';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n minValue: number;\n maxValue: number;\n colors: string[];\n width: number;\n};\n\nconst Legend = ({minValue, maxValue, colors, width}: Props) => {\n const styles = useStyles({\n colors,\n width\n });\n\n return (\n <div className={styles.legendContainer}>\n <Typography className={classnames(styles.legendLabel, styles.alignTop)}>\n {formatNumberAsMetric(maxValue)}\n </Typography>\n <div className={styles.legendBar} />\n <Typography className={classnames(styles.legendLabel, styles.alignBottom)}>\n {formatNumberAsMetric(minValue)}\n </Typography>\n </div>\n );\n};\n\nexport default Legend;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n mapChart: {\n position: 'relative',\n cursor: 'default',\n display: 'flex'\n },\n geography: {\n '&:focus': {\n outline: 'none'\n }\n }\n});\n","import React, {useMemo, useCallback} from 'react';\nimport withPercents from '../HOCs/withPercents';\nimport {ChartProps} from '../types';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport {Geographies, Geography, MapProvider} from 'react-simple-maps';\nimport {scaleLog} from 'd3-scale';\nimport * as d3Geo from 'd3-geo';\nimport {feature} from 'topojson-client';\nimport useGeography from './useGeography';\nimport {pluck} from 'ramda';\nimport Legend from './Legend/Legend';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {Tooltip} from 'recharts';\nimport useTooltipState from '../hooks/useTooltipState';\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype Props = ChartProps & {\n options?: {\n geoUrl?: string;\n projection?: string;\n geoIdName?: string;\n showLegend?: boolean;\n };\n};\n\nconst USA_MAP = 'https://s3.amazonaws.com/reltio-ui-files/map_resources/us-albers.json';\nconst MAP_COLORS = ['#CDE0FE', '#0160AD'];\nexport const LEGEND_WIDTH = 75;\n\nexport const MapChart = ({data, width, height, options, onItemClick}: Props) => {\n const styles = useStyles();\n\n const {geoUrl, geoIdName, showLegend = true} = options || {};\n const values = pluck('value', data);\n const minValue = Math.min(...values);\n const maxValue = Math.max(...values);\n\n const mapWidth = width < LEGEND_WIDTH ? 0 : width - (showLegend ? 1 : 0) * LEGEND_WIDTH;\n const colorScale = scaleLog().domain([minValue, maxValue]).range(MAP_COLORS);\n\n const geography = useGeography(geoUrl || USA_MAP);\n\n const getProjectionFunc = useCallback(\n (projection: string) => {\n const geoFunc = (projection && d3Geo[projection]) || d3Geo['geoEqualEarth'];\n const geoObj = geography.objects && geography.objects[Object.keys(geography.objects)[0]];\n const featureObj = geography.type === 'FeatureCollection' ? geography : feature(geography, geoObj);\n return geoFunc().fitSize([mapWidth, height], featureObj);\n },\n [geography, height, mapWidth]\n );\n\n const projection = geoUrl ? options.projection : 'geoAlbersUsa';\n const projectionFunc = useMemo(\n () => (geography ? getProjectionFunc(projection) : undefined),\n [geography, getProjectionFunc, projection]\n );\n\n const {tooltipState, showTooltip, hideTooltip} = useTooltipState();\n const clickable = useClickableStyle(onItemClick);\n\n return (\n <div className={styles.mapChart} style={{width, height}}>\n <MapProvider width={mapWidth} height={height} projection={projectionFunc} projectionConfig={{}}>\n <svg width={mapWidth} height={height} viewBox={`0 0 ${mapWidth} ${height}`} className={'rsm-svg'}>\n <Geographies geography={geography}>\n {({geographies}) => {\n return geographies.map((geo) => {\n const geoId = geo.properties[geoIdName || 'name'];\n const geoLabel = geo.properties.name;\n const cur = data.find(({group}) => group === geoId);\n return (\n <Geography\n key={geo.rsmKey}\n geography={geo}\n fill={cur ? colorScale(cur.value) : '#EEE'}\n stroke={'#FFF'}\n className={classnames(styles.geography, clickable)}\n onMouseEnter={(event) => {\n const data = cur || {label: geoLabel, value: 0, percent: 0, group: geoId};\n const mapRect = (\n event.target as Element\n ).parentElement.parentElement.getBoundingClientRect();\n const coordinate = {\n x: event.clientX - mapRect.x,\n y: event.clientY - mapRect.y\n };\n showTooltip(data, coordinate);\n }}\n onMouseLeave={() => hideTooltip()}\n onClick={onItemClick && (() => onItemClick(geoId))}\n />\n );\n });\n }}\n </Geographies>\n </svg>\n </MapProvider>\n {showLegend && <Legend width={LEGEND_WIDTH} minValue={minValue} maxValue={maxValue} colors={MAP_COLORS} />}\n <Tooltip\n viewBox={{\n x: 0,\n y: 0,\n width: mapWidth,\n height\n }}\n content={<CustomTooltip />}\n {...tooltipState}\n />\n </div>\n );\n};\n\nexport default withPercents(MapChart);\n","import {useEffect, useState} from 'react';\n\nconst useGeography = (geoUrl) => {\n const [geography, setGeography] = useState(null);\n\n useEffect(() => {\n fetch(geoUrl)\n .then((res) => {\n if (!res.ok) {\n throw Error(res.statusText);\n }\n return res.json();\n })\n .then((geography) => {\n setGeography(geography);\n })\n .catch((error) => {\n console.warn(`Could not load map ${geoUrl} :`, error);\n });\n }, []); // eslint-disable-line\n\n return geography;\n};\n\nexport default useGeography;\n","import d3Cloud, {Word} from 'd3-cloud';\nimport {useMemo} from 'react';\nimport {ChartData} from '../types';\n\ntype Props = {\n data: ChartData[];\n width: number;\n height: number;\n maxFontSize: number;\n};\n\nexport type CloudWord = Word & {\n data?: ChartData;\n};\n\nconst useCloud = ({data, width, height, maxFontSize = 40}: Props): CloudWord[] =>\n useMemo(() => {\n if (!width || !height) return [];\n const dataValues = data.map((item) => item.value);\n const minDataValue = Math.min(...dataValues);\n const maxDataValue = Math.max(...dataValues);\n\n const minFont = Math.log(12);\n const maxFont = Math.log(maxFontSize);\n const valDiff = maxDataValue - minDataValue;\n const scale = (maxFont - minFont) / (valDiff || 1);\n const layout = d3Cloud()\n .size([width, height])\n .words(\n data.map((item) => ({\n text: item.label,\n size: Math.floor(Math.exp(minFont + scale * (item.value - minDataValue))),\n font: 'Roboto',\n data: item\n }))\n )\n .random(() => 0.5)\n .fontSize((word) => word.size)\n .rotate(0)\n .padding(3)\n .start();\n\n return layout.words();\n }, [data, width, height, maxFontSize]);\n\nexport default useCloud;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n container: {\n position: 'relative',\n '& text': {\n transition: 'transform .5s',\n userSelect: 'none',\n animation: '$fadeInOpacity ease-in',\n '&:nth-child(4n+1)': {\n animationDuration: '0.25s'\n },\n '&:nth-child(4n+2)': {\n animationDuration: '1.5s'\n },\n '&:nth-child(4n+3)': {\n animationDuration: '1s'\n },\n '&:nth-child(4n+4)': {\n animationDuration: '0.5s'\n }\n }\n },\n\n '@keyframes fadeInOpacity': {\n '0%': {\n opacity: 0\n },\n '100%': {\n opacity: 1\n }\n }\n});\n","import React, {useMemo} from 'react';\nimport {Tooltip, ViewBox} from 'recharts';\nimport useCloud from './useCloud';\nimport {ChartProps} from '../types';\nimport withPercents from '../HOCs/withPercents';\nimport {getChartItemColor} from '@reltio/mdm-sdk';\nimport {useStyles} from './styles';\nimport useTooltipState from '../hooks/useTooltipState';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype Props = ChartProps & {\n options?: {\n maxFontSize?: number;\n };\n};\n\nexport const CloudChart = ({width, height, data, options = {}, onItemClick}: Props) => {\n const {tooltipState, showTooltip, hideTooltip} = useTooltipState();\n const {maxFontSize} = options;\n const styles = useStyles();\n const clickable = useClickableStyle(onItemClick);\n\n const rect: ViewBox = useMemo(\n () => ({\n x: 0,\n y: 0,\n width: width || 0,\n height: height || 0\n }),\n [width, height]\n );\n\n const words = useCloud({data, width, height, maxFontSize});\n\n const cloudWords = useMemo(() => {\n const cx = rect.width / 2;\n const cy = rect.height / 2;\n\n return (\n <g transform={`translate(${cx},${cy})`}>\n {words.map(({text, data, x, y, size}) => (\n <text\n key={text}\n onMouseEnter={() => showTooltip(data, {x: cx + x, y: cy + y})}\n onMouseLeave={() => hideTooltip()}\n fill={getChartItemColor(text)}\n textAnchor=\"middle\"\n transform={`translate(${x},${y})`}\n fontSize={size}\n className={clickable}\n onClick={onItemClick && (() => onItemClick(data.group))}\n >\n {text}\n </text>\n ))}\n </g>\n );\n }, [rect.width, rect.height, words, clickable, onItemClick, showTooltip, hideTooltip]);\n\n return (\n <div className={styles.container}>\n <svg width={rect.width} height={rect.height}>\n {cloudWords}\n </svg>\n <Tooltip offset={5} viewBox={rect} content={<CustomTooltip />} {...tooltipState} />\n </div>\n );\n};\n\nexport default withPercents(CloudChart);\n","import React from 'react';\nimport BarChart from './BarChart/BarChart';\nimport PieChart from './PieChart/PieChart';\nimport TreeChart from './TreeChart/TreeChart';\nimport TableWithBars from './TableWithBars/TableWithBars';\nimport BubbleChart from './BubbleChart/BubbleChart';\nimport LineChart from './LineChart/LineChart';\nimport MapChart from './MapChart/MapChart';\nimport CloudChart from './CloudChart/CloudChart';\nimport {ChartTypes} from '@reltio/mdm-sdk';\n\nexport default class ChartsFactory {\n static build(chartType, props = {}) {\n switch (chartType) {\n case ChartTypes.BAR:\n return <BarChart {...props} />;\n case ChartTypes.DONUT:\n return <PieChart {...props} isDonut />;\n case ChartTypes.PIE:\n return <PieChart {...props} />;\n case ChartTypes.TREE:\n return <TreeChart {...props} />;\n case ChartTypes.TABLE:\n return <TableWithBars {...props} />;\n case ChartTypes.BUBBLE:\n return <BubbleChart {...props} />;\n case ChartTypes.LINE:\n return <LineChart {...props} />;\n case ChartTypes.MAP:\n return <MapChart {...props} />;\n case ChartTypes.CLOUD:\n return <CloudChart {...props} />;\n default:\n return <div />;\n }\n }\n}\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n wrapper: {\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n margin: 'auto',\n flexWrap: 'wrap',\n '&.alignRight': {\n display: 'grid',\n gridAutoRows: 'min-content',\n gridTemplateColumns: '1fr',\n '&.isTwoCols': {\n gridTemplateColumns: '1fr 1fr',\n minWidth: '141px',\n maxWidth: '282px'\n }\n }\n },\n item: {\n display: 'flex',\n alignItems: 'baseline',\n '&:not(:last-child)': {\n marginRight: 10\n }\n },\n itemColor: {\n width: 12,\n height: 12,\n marginRight: 10,\n flexShrink: 0\n },\n value: {\n fontSize: '14px',\n lineHeight: '27px',\n letterSpacing: '0.5px'\n }\n});\n","import React from 'react';\nimport {LegendProps} from 'recharts';\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\n\ntype CustomLegendProps = LegendProps & {\n alignRight: boolean;\n};\n\nconst CustomLegend = ({payload, alignRight}: CustomLegendProps) => {\n const isTwoCols = payload.length > 8;\n const styles = useStyles();\n return (\n <div className={classnames(styles.wrapper, {isTwoCols}, {alignRight})}>\n {payload.map((item) => (\n <div key={item.id} className={styles.item}>\n <div style={{background: item.color}} className={styles.itemColor} />\n <span className={styles.value}>{item.value}</span>\n </div>\n ))}\n </div>\n );\n};\n\nexport default CustomLegend;\n","import React from 'react';\nimport {LegendProps} from 'recharts';\nimport CustomLegend from './CustomLegend';\n\nconst getLegendProps = (width: number): LegendProps => {\n const alignRight = width > 550;\n return {\n layout: alignRight ? 'vertical' : 'horizontal',\n align: alignRight ? 'right' : 'center',\n verticalAlign: alignRight ? 'middle' : 'bottom',\n wrapperStyle: {\n display: 'flex',\n overflowY: 'auto',\n maxHeight: alignRight ? '100%' : '50%',\n maxWidth: alignRight ? '50%' : '100%'\n },\n content: <CustomLegend alignRight={alignRight} />\n };\n};\n\nexport default getLegendProps;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n tooltipWrapper: {\n borderRadius: '4px',\n background: 'rgba(0, 0, 0, 0.54)',\n padding: '6px 8px 7px 8px',\n textAlign: 'center',\n color: '#FFFFFF',\n '& p': {\n fontSize: '12px',\n lineHeight: '14px',\n padding: 0,\n margin: 0\n }\n },\n tooltipTitle: {\n fontWeight: 500\n },\n tooltipValue: {\n fontWeight: 'normal'\n },\n tooltipValueBold: {\n fontWeight: 500\n },\n tooltipPercent: {\n fontWeight: 'normal'\n }\n});\n","import {useStyles} from './styles';\nimport React from 'react';\nimport {TooltipProps} from 'recharts';\nimport {isNil} from 'ramda';\n\nexport const CustomTooltip = ({payload, active}: TooltipProps) => {\n const styles = useStyles();\n const tooltipPayload = payload?.[0]?.payload;\n const localizedValue = tooltipPayload?.localizedValue || tooltipPayload?.value;\n const tooltipLabel = tooltipPayload?.label;\n const percent = tooltipPayload?.percent;\n\n return (\n active && (\n <div className={styles.tooltipWrapper}>\n <p className={styles.tooltipTitle}>{tooltipLabel}</p>\n {isNil(percent) ? (\n <p className={styles.tooltipValue}>Value: {localizedValue}</p>\n ) : (\n <p className={styles.tooltipValueBold}>\n {localizedValue}\n <span className={styles.tooltipPercent}> ({percent}%)</span>\n </p>\n )}\n </div>\n )\n );\n};\n","import React, {useMemo} from 'react';\nimport {countPercents} from '@reltio/mdm-sdk';\nimport {pluck} from 'ramda';\nimport {ChartData} from '../types';\n\ntype PropsWithChartData = {\n data: ChartData[];\n};\n\nexport const enrichDataWithPercents = (data: ChartData[]): ChartData[] => {\n const percents = countPercents(pluck('value', data), 1);\n return data.map((item, i) => ({...item, percent: percents[i]}));\n};\n\nconst withPercents = <T extends PropsWithChartData>(Component: React.ComponentType<T>) => {\n const WithPercents = ({data, ...otherProps}: T) => {\n const dataWithPercents = useMemo(() => data && enrichDataWithPercents(data), [data]);\n return <Component data={dataWithPercents} {...(otherProps as T)} />;\n };\n\n WithPercents.displayName = 'WithPercents';\n\n return WithPercents;\n};\n\nexport default withPercents;\n","import React from 'react';\nimport {PieLabelRenderProps, Sector, SectorProps} from 'recharts';\n\ntype ActiveShapeProps = PieLabelRenderProps & {\n cx: number;\n cy: number;\n innerRadius: number;\n outerRadius: number;\n};\n\nconst ActiveShape = ({\n cx,\n cy,\n midAngle,\n innerRadius,\n outerRadius,\n startAngle,\n endAngle,\n fill,\n percent,\n value,\n label\n}: ActiveShapeProps) => {\n const RADIAN = Math.PI / 180;\n const sin = Math.sin(-RADIAN * midAngle);\n const cos = Math.cos(-RADIAN * midAngle);\n\n const sx = cx + (outerRadius + 10) * cos;\n const sy = cy + (outerRadius + 10) * sin;\n const mx = cx + (outerRadius + 30) * cos;\n const my = cy + (outerRadius + 30) * sin;\n\n const circleX = mx + (cos >= 0 ? 1 : -1) * 20;\n const circleY = my;\n const textX = circleX + (cos >= 0 ? 1 : -1) * 12;\n const textAnchor = cos >= 0 ? 'start' : 'end';\n const linePath = `M${sx},${sy}L${mx},${my}L${circleX},${circleY}`;\n\n const sectorProps: SectorProps = {\n cx,\n cy,\n innerRadius,\n outerRadius,\n startAngle,\n endAngle,\n fill\n };\n\n return (\n <g>\n <Sector {...sectorProps} />\n <Sector {...sectorProps} innerRadius={outerRadius + 6} outerRadius={outerRadius + 10} />\n <path d={linePath} stroke={fill} fill=\"none\" />\n <circle cx={circleX} cy={circleY} r={2} fill={fill} />\n <text x={textX} y={circleY} textAnchor={textAnchor} fill=\"#444\" fontSize={12} fontWeight={500}>\n {label}\n </text>\n <text x={textX} y={circleY} dy={14} textAnchor={textAnchor} fill=\"#000\" opacity={0.6} fontSize={12}>\n <tspan fontWeight={500}>{value}</tspan>\n <tspan fontWeight={400}>{` (${percent}%)`}</tspan>\n </text>\n </g>\n );\n};\n\nexport default ActiveShape;\n","import React, {useState} from 'react';\nimport {Cell, Legend, Margin, Pie, PieChart as PieChartWidget, Tooltip} from 'recharts';\nimport {getChartItemColor} from '@reltio/mdm-sdk';\nimport {ChartProps} from '../types';\nimport withPercents from '../HOCs/withPercents';\nimport getLegendProps from '../CustomLegend/getLegendProps';\nimport ActiveShape from '../ActiveShape/ActiveShape';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype Props = ChartProps & {\n options?: {\n margin?: Margin;\n showLegend?: boolean;\n showActiveShape?: boolean;\n };\n isDonut?: boolean;\n};\n\nexport const PieChart = ({width, height, data, options = {}, isDonut, onItemClick}: Props) => {\n const {showLegend = true, margin, showActiveShape} = options;\n const [activeId, setActiveId] = useState(-1);\n const onPieEnter = (_, index: number) => setActiveId(index);\n const onPieLeave = () => setActiveId(-1);\n const onPieClick = onItemClick && (({group}) => onItemClick(group));\n const clickable = useClickableStyle(onPieClick);\n\n return (\n <PieChartWidget width={width} height={height} margin={margin}>\n {!showActiveShape && <Tooltip content={<CustomTooltip />} />}\n {showLegend && (\n <Legend\n {...getLegendProps(width)}\n payload={(data || []).map((item) => ({\n id: item.label,\n type: 'square',\n color: getChartItemColor(item.label),\n value: `${item.label} (${item.percent}%)`\n }))}\n />\n )}\n <Pie\n dataKey=\"value\"\n data={data}\n activeIndex={activeId}\n activeShape={showActiveShape ? ActiveShape : undefined}\n onMouseEnter={showActiveShape ? onPieEnter : undefined}\n onMouseLeave={showActiveShape ? onPieLeave : undefined}\n innerRadius={isDonut ? (showActiveShape ? '50%' : '60%') : 0}\n outerRadius={showActiveShape ? '70%' : '80%'}\n onClick={onPieClick}\n >\n {(data || []).map((entry, index) => (\n <Cell key={index} fill={getChartItemColor(entry.label)} className={clickable} />\n ))}\n </Pie>\n </PieChartWidget>\n );\n};\n\nexport default withPercents(PieChart);\n","import {makeStyles} from '@mui/styles';\n\nconst textOverflow = {\n content: '\"\"',\n position: 'absolute',\n right: 0,\n top: 0,\n width: '40px',\n height: '100%',\n background: 'linear-gradient(to right, rgba(255, 255, 255, 0.2), #fff 100%)',\n pointerEvents: 'none'\n};\n\nexport const useStyles = makeStyles((theme) => ({\n headCell: {\n display: 'flex',\n alignItems: 'center',\n height: '100%',\n '&>div': {\n padding: '0 16px'\n }\n },\n headLabel: {\n color: theme.palette.text.primary,\n fontSize: '12px',\n fontWeight: 500,\n lineHeight: '16px',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n '&:after': textOverflow\n },\n attribute: {\n color: theme.palette.text.primary,\n fontSize: '13px',\n fontWeight: 'normal',\n lineHeight: '15px',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n height: '100%',\n padding: '0 16px',\n '&:after': textOverflow\n },\n numberContainer: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n padding: '0 16px',\n height: '100%'\n },\n number: {\n fontSize: '13px',\n lineHeight: '15px',\n fontWeight: 'normal',\n color: theme.palette.text.primary,\n width: '40px',\n flexShrink: 0\n },\n colorBarContainer: {\n position: 'relative',\n width: '100%',\n marginLeft: '16px',\n height: '20px',\n '&>div': {\n opacity: 1,\n backgroundColor: '#0072CE'\n }\n }\n}));\n","import React from 'react';\nimport classnames from 'classnames';\nimport DefaultHeadCellRenderer from 'react-components/dist/Table/DefaultHeadCellRenderer/DefaultHeadCellRenderer';\nimport ExpandedValueTooltip from '../../../ExpandedValueTooltip/ExpandedValueTooltip';\nimport {useStyles} from './styles';\n\ntype HeadCellRendererProps = {\n className?: string;\n headCellData: {\n label: string;\n };\n};\n\nconst HeadCellRenderer = ({className, headCellData, ...otherProps}: HeadCellRendererProps) => {\n const styles = useStyles();\n\n return (\n <div className={classnames(styles.headCell, className)}>\n <DefaultHeadCellRenderer\n {...otherProps}\n headCellData={{\n ...headCellData,\n label: (\n <ExpandedValueTooltip value={headCellData.label}>\n <div className={styles.headLabel}>{headCellData.label}</div>\n </ExpandedValueTooltip>\n )\n }}\n />\n </div>\n );\n};\n\nexport default HeadCellRenderer;\n","import React from 'react';\nimport ExpandedValueTooltip from '../../../ExpandedValueTooltip/ExpandedValueTooltip';\nimport {withTableContext} from '../../../BasicTableView';\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\nimport {useClickableStyle} from '../../hooks/useClickableStyle';\n\ntype Props = {\n value?: string;\n onClick?: () => void;\n};\n\nexport const AttributeCellRenderer = ({value = '', onClick}: Props) => {\n const styles = useStyles();\n const clickable = useClickableStyle(onClick);\n return (\n <ExpandedValueTooltip value={value}>\n <div className={classnames(styles.attribute, clickable)} onClick={onClick}>\n {value}\n </div>\n </ExpandedValueTooltip>\n );\n};\n\nexport default withTableContext(({onItemClick}, {rowValue: {group}}) => {\n return {\n onClick:\n onItemClick &&\n (() => {\n onItemClick(group);\n })\n };\n})(AttributeCellRenderer);\n","import React from 'react';\nimport {isNil} from 'ramda';\nimport {formatNumberAsMetric} from '@reltio/mdm-sdk';\nimport Typography from '@mui/material/Typography';\nimport ColorBar from '../../../ColorBar/ColorBar';\n\nimport {useStyles} from './styles';\n\ntype NumberCellValueRendererProps = {\n value: number;\n columnData: {\n maxValue?: number;\n };\n};\n\nconst NumberCellValueRenderer = ({value, columnData: {maxValue}}: NumberCellValueRendererProps) => {\n const styles = useStyles();\n\n return (\n <div className={styles.numberContainer}>\n <Typography className={styles.number}>{formatNumberAsMetric(value, 9999)}</Typography>\n {!isNil(maxValue) && (\n <div className={styles.colorBarContainer}>\n <ColorBar width={value} maxWidth={maxValue} />\n </div>\n )}\n </div>\n );\n};\n\nexport default NumberCellValueRenderer;\n","import {makeStyles} from '@mui/styles';\n\ntype Dimensions = {\n width: number | string;\n height: number | string;\n};\n\nexport const useStyles = makeStyles({\n tableContainer: ({width, height}: Dimensions) => ({\n height: height,\n width: width,\n display: 'flex',\n flexDirection: 'column'\n }),\n cellBorder: {\n borderLeft: 'none',\n borderRight: 'none'\n }\n});\n","import React, {useMemo} from 'react';\nimport i18n from 'ui-i18n';\nimport {BasicTable} from '../../BasicTableView';\nimport HeadCellRenderer from './cell-renderers/HeadCellRenderer';\nimport AttributeCellRenderer from './cell-renderers/AttributeCellRenderer';\nimport NumberCellValueRenderer from './cell-renderers/NumberCellValueRenderer';\nimport {ChartProps, TableWithBarsOptions} from '../types';\n\nimport {useStyles} from './styles';\n\ntype TableWithBarsProps = ChartProps & {\n options?: TableWithBarsOptions;\n basicTableRef?: React.MutableRefObject<any> | null;\n};\n\nconst TableWithBars = ({width, height, data, options = {}, basicTableRef, onItemClick}: TableWithBarsProps) => {\n const styles = useStyles({width, height});\n\n const {headers: [labelHeader, valueHeader] = [], showValues = true} = options;\n\n const tableClasses = useMemo(() => ({cellBorder: styles.cellBorder}), [styles]);\n const maxValue = useMemo(() => Math.max(...data.map((item) => item.value)), [data]);\n\n const headData = useMemo(\n () => [\n {\n id: 'label',\n label: labelHeader || i18n.text('Attributes'),\n resizable: false,\n headCellRenderer: HeadCellRenderer,\n rowCellValueRenderer: AttributeCellRenderer,\n initialWidth: width * 0.4\n },\n ...(showValues\n ? [\n {\n id: 'value',\n label: valueHeader || i18n.text('No of Profiles'),\n resizable: false,\n headCellRenderer: HeadCellRenderer,\n rowCellValueRenderer: NumberCellValueRenderer,\n maxValue,\n initialWidth: width * 0.6\n }\n ]\n : [])\n ],\n [maxValue, width, valueHeader, labelHeader, showValues]\n );\n\n const context = useMemo(\n () => ({\n onItemClick\n }),\n [onItemClick]\n );\n\n return (\n <div className={styles.tableContainer}>\n <BasicTable\n columnsData={headData}\n rowsData={data}\n headRowHeight={48}\n getRowCellHeight={null}\n classes={tableClasses}\n defaultColumnWidth={100}\n defaultColumnMinWidth={100}\n ref={basicTableRef}\n context={context}\n />\n </div>\n );\n};\n\nexport default TableWithBars;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n treeBlock: {\n fill: '#6BAED6',\n stroke: '#fff',\n strokeOpacity: 1\n },\n treeLabel: {\n fill: 'black',\n fontSize: '14px',\n letterSpacing: 0\n }\n});\n","import React, {useRef} from 'react';\nimport {Text, Tooltip, Treemap} from 'recharts';\nimport {ChartProps} from '../types';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useStyles} from './styles';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\nimport {nanoid} from 'nanoid';\n\ntype ContentProps = {\n x?: number;\n y?: number;\n width?: number;\n height?: number;\n label?: string;\n group?: string;\n onClick: (group: string) => void;\n};\n\nconst CustomizedContent = ({x, y, width, height, label, onClick, group}: ContentProps) => {\n const styles = useStyles();\n const clickable = useClickableStyle(onClick);\n const clipPathId = useRef(nanoid()).current;\n const strokeWidth = 2;\n return (\n <g className={clickable} onClick={onClick && (() => onClick(group))}>\n <clipPath id={clipPathId}>\n <rect\n x={x + strokeWidth}\n y={y + strokeWidth}\n width={width - strokeWidth * 2}\n height={height - strokeWidth * 2}\n />\n </clipPath>\n <rect x={x} y={y} width={width} height={height} strokeWidth={strokeWidth} className={styles.treeBlock} />\n <Text\n clipPath={`url(#${clipPathId})`}\n textAnchor={'middle'}\n verticalAnchor={'middle'}\n width={width}\n x={x + width / 2}\n y={y + height / 2}\n className={styles.treeLabel}\n >\n {label}\n </Text>\n </g>\n );\n};\n\nconst normalizeValues = (data) => {\n const dataTotal = data.reduce((acc, item) => acc + item.value, 0);\n const threshold = dataTotal / (data.length * 10);\n return data.map((item) => {\n return {\n ...item,\n normalizedValue: item.value < threshold ? threshold : item.value\n };\n });\n};\n\nconst TreeChart = ({data, width, height, onItemClick}: ChartProps) => {\n return (\n <Treemap\n dataKey=\"normalizedValue\"\n nameKey=\"label\"\n content={<CustomizedContent onClick={onItemClick} />}\n data={normalizeValues(data)}\n width={width}\n animationDuration={500}\n height={height}\n >\n <Tooltip content={<CustomTooltip />} />\n </Treemap>\n );\n};\n\nexport default TreeChart;\n","import {makeStyles} from '@mui/styles';\n\nconst useStyles = makeStyles({\n clickable: {\n cursor: 'pointer'\n }\n});\n\nexport const useClickableStyle = (clickable) => {\n const styles = useStyles();\n return clickable ? styles.clickable : undefined;\n};\n","import React, {createContext, useCallback, useContext, useEffect, useState} from 'react';\nimport {RequestStates} from '../../types';\n\nconst ReloadFacetSignalContext = createContext(null);\nconst ReloadFacetActionContext = createContext(null);\n\ntype Props = {\n children: React.ReactNode;\n};\n\nexport const ReloadFacetProvider = ({children}: Props) => {\n const [refreshSignal, setRefreshSignal] = useState<number>(0);\n const refreshAll = useCallback(() => {\n setRefreshSignal((signal) => signal + 1);\n }, [setRefreshSignal]);\n return (\n <ReloadFacetActionContext.Provider value={refreshAll}>\n <ReloadFacetSignalContext.Provider value={refreshSignal}>{children}</ReloadFacetSignalContext.Provider>\n </ReloadFacetActionContext.Provider>\n );\n};\n\nexport const useReloadAllFacets = () => {\n const refreshAll = useContext(ReloadFacetActionContext);\n\n if (refreshAll === undefined) {\n throw new Error('useReloadAllFacets must be used within a ReloadFacetProvider');\n }\n\n return refreshAll;\n};\n\ntype useReloadFacetProps = {\n state: RequestStates;\n reload: () => void;\n};\n\nexport const useReloadFacet = ({state, reload}: useReloadFacetProps) => {\n const refreshSignal = useContext(ReloadFacetSignalContext);\n\n if (refreshSignal === undefined) {\n throw new Error('useReloadFacet must be used within a ReloadFacetProvider');\n }\n\n useEffect(() => {\n if (state === RequestStates.LOADED || state === RequestStates.ERROR) {\n reload();\n }\n }, [refreshSignal]);\n};\n","import React from 'react';\nimport {SearchFilter} from '@reltio/mdm-sdk';\n\nexport const SearchFiltersContext = React.createContext<SearchFilter[]>([]);\n\nSearchFiltersContext.displayName = 'SearchFiltersContext';\n"],"names":["useActivitiesLoader","filter","max","offset","useCallback","async","filterString","buildActivitiesFilterString","data","getActivities","total","getActivitiesTotal","width","height","options","onItemClick","barChart","cartesianGrid","bar","tooltip","xAxis","yAxis","margin","isHorizontal","isLabelRotated","layout","barCategoryGap","dataKey","fill","type","tick","opacity","angle","textAnchor","stroke","undefined","tickFormatter","formatNumberAsMetric","tickCount","mirror","strokeDasharray","strokeOpacity","vertical","cursor","getBarChartSettings","onBarClick","group","clickable","useClickableStyle","content","CustomTooltip","shape","className","onClick","tooltipState","setTooltipState","useState","active","showTooltip","coordinate","label","payload","value","name","hideTooltip","state","useStyles","makeStyles","bubbleChart","position","withPercents","styles","showLegend","initialRect","x","propOr","y","initialLegendProps","getLegendProps","legendBox","setLegendBox","rect","legendProps","adjustRectWithLegend","bubbles","useMemo","pack","size","padding","bubblesLayout","hierarchy","children","sum","d","sort","a","b","leaves","useBubbles","useTooltipState","circles","map","bubble","cx","cy","key","r","onMouseEnter","onMouseLeave","getChartItemColor","attributeName","from","to","dur","style","item","id","color","percent","chartWidth","chartHeight","onBBoxUpdate","viewBox","CustomDot","otherProps","lineChart","line","strokeWidth","dot","activeDot","getLineChartSettings","theme","legendContainer","top","alignTop","alignBottom","bottom","legendBar","colors","background","join","right","legendLabel","fontSize","lineHeight","fontWeight","palette","text","primary","textAlign","paddingRight","boxSizing","overflowWrap","minValue","maxValue","Typography","classnames","mapChart","display","geography","outline","MAP_COLORS","geoUrl","geoIdName","values","pluck","Math","min","mapWidth","colorScale","scaleLog","domain","range","setGeography","useEffect","fetch","then","res","ok","Error","statusText","json","catch","error","console","warn","useGeography","getProjectionFunc","projection","geoFunc","d3Geo","geoObj","objects","Object","keys","featureObj","feature","fitSize","projectionFunc","MapProvider","projectionConfig","Geographies","geographies","geo","geoId","properties","geoLabel","cur","find","Geography","rsmKey","event","mapRect","target","parentElement","getBoundingClientRect","clientX","clientY","container","transition","userSelect","animation","animationDuration","maxFontSize","words","dataValues","minDataValue","maxDataValue","minFont","log","scale","d3Cloud","floor","exp","font","random","word","rotate","start","useCloud","cloudWords","transform","ChartsFactory","chartType","props","ChartTypes","BarChart","PieChart","isDonut","TreeChart","TableWithBars","wrapper","justifyContent","flexWrap","gridAutoRows","gridTemplateColumns","minWidth","maxWidth","alignItems","marginRight","itemColor","flexShrink","letterSpacing","alignRight","isTwoCols","length","align","verticalAlign","wrapperStyle","overflowY","maxHeight","tooltipWrapper","borderRadius","tooltipTitle","tooltipValue","tooltipValueBold","tooltipPercent","tooltipPayload","localizedValue","tooltipLabel","isNil","enrichDataWithPercents","percents","countPercents","i","Component","WithPercents","dataWithPercents","displayName","midAngle","innerRadius","outerRadius","startAngle","endAngle","RADIAN","PI","sin","cos","mx","my","circleX","circleY","textX","linePath","sectorProps","dy","showActiveShape","activeId","setActiveId","onPieClick","activeIndex","activeShape","ActiveShape","_","index","entry","textOverflow","pointerEvents","headCell","headLabel","whiteSpace","overflow","attribute","numberContainer","flexDirection","number","colorBarContainer","marginLeft","backgroundColor","headCellData","DefaultHeadCellRenderer","ExpandedValueTooltip","withTableContext","rowValue","columnData","ColorBar","tableContainer","cellBorder","borderLeft","borderRight","basicTableRef","headers","labelHeader","valueHeader","showValues","tableClasses","headData","i18n","resizable","headCellRenderer","HeadCellRenderer","rowCellValueRenderer","AttributeCellRenderer","initialWidth","NumberCellValueRenderer","context","BasicTable","columnsData","rowsData","headRowHeight","getRowCellHeight","classes","defaultColumnWidth","defaultColumnMinWidth","ref","treeBlock","treeLabel","CustomizedContent","clipPathId","useRef","nanoid","current","clipPath","verticalAnchor","normalizeValues","threshold","reduce","acc","normalizedValue","nameKey","ReloadFacetSignalContext","createContext","ReloadFacetActionContext","ReloadFacetProvider","refreshSignal","setRefreshSignal","refreshAll","signal","Provider","useReloadAllFacets","useContext","useReloadFacet","reload","RequestStates","SearchFiltersContext","React"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"7422.js","mappings":"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","sources":["webpack://@reltio/remotes/../components/src/components/activityLog/hooks/useActivitiesLoader.ts","webpack://@reltio/remotes/../components/src/components/charts/BarChart/BarChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/BarChart/getBarChartSettings.ts","webpack://@reltio/remotes/../components/src/components/charts/hooks/useTooltipState.ts","webpack://@reltio/remotes/../components/src/components/charts/BubbleChart/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/BubbleChart/BubbleChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/BubbleChart/helpers.ts","webpack://@reltio/remotes/../components/src/components/charts/BubbleChart/useBubbles.ts","webpack://@reltio/remotes/../components/src/components/charts/LineChart/LineChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/LineChart/getLineChartSettings.ts","webpack://@reltio/remotes/../components/src/components/charts/MapChart/Legend/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/MapChart/Legend/Legend.tsx","webpack://@reltio/remotes/../components/src/components/charts/MapChart/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/MapChart/MapChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/MapChart/useGeography.ts","webpack://@reltio/remotes/../components/src/components/charts/CloudChart/useCloud.ts","webpack://@reltio/remotes/../components/src/components/charts/CloudChart/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/CloudChart/CloudChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/ChartsFactory.js","webpack://@reltio/remotes/../components/src/components/charts/CustomLegend/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/CustomLegend/CustomLegend.tsx","webpack://@reltio/remotes/../components/src/components/charts/CustomLegend/getLegendProps.tsx","webpack://@reltio/remotes/../components/src/components/charts/CustomTooltip/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/CustomTooltip/CustomTooltip.tsx","webpack://@reltio/remotes/../components/src/components/charts/HOCs/withPercents.tsx","webpack://@reltio/remotes/../components/src/components/charts/ActiveShape/ActiveShape.tsx","webpack://@reltio/remotes/../components/src/components/charts/PieChart/PieChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/cell-renderers/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/cell-renderers/HeadCellRenderer.tsx","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/cell-renderers/AttributeCellRenderer.tsx","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/cell-renderers/NumberCellValueRenderer.tsx","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/TableWithBars/TableWithBars.tsx","webpack://@reltio/remotes/../components/src/components/charts/TreeChart/styles.ts","webpack://@reltio/remotes/../components/src/components/charts/TreeChart/TreeChart.tsx","webpack://@reltio/remotes/../components/src/components/charts/hooks/useClickableStyle.ts","webpack://@reltio/remotes/../components/src/contexts/ReloadFacetContext/index.tsx","webpack://@reltio/remotes/../components/src/contexts/SearchFiltersContext/index.ts"],"sourcesContent":["import {useCallback} from 'react';\nimport {ActivitiesFilter} from '../types';\nimport {getActivities, getActivitiesTotal} from '@reltio/mdm-sdk';\nimport {buildActivitiesFilterString} from '../utils/filters';\n\ntype Props = {\n filter: ActivitiesFilter;\n max: number;\n offset: number;\n};\n\nexport const useActivitiesLoader = ({filter, max, offset}: Props) => {\n return useCallback(async () => {\n const filterString = buildActivitiesFilterString(filter);\n const data = await getActivities({filter: filterString, max, offset});\n const {total} = await getActivitiesTotal({filter: filterString});\n return {data, total};\n }, [filter, max, offset]);\n};\n","import React from 'react';\nimport {Bar, Rectangle, BarChart as BarChartWidget, CartesianGrid, Tooltip, XAxis, YAxis} from 'recharts';\nimport {BarChartOptions, ChartProps} from '../types';\nimport getBarChartSettings from './getBarChartSettings';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype BarChartProps = ChartProps & {\n options?: BarChartOptions;\n};\n\nconst BarChart = ({width, height, data, options = {}, onItemClick}: BarChartProps) => {\n const {barChart, cartesianGrid, bar, tooltip, xAxis, yAxis} = getBarChartSettings(options);\n const onBarClick = onItemClick && (({group}) => onItemClick(group));\n const clickable = useClickableStyle(onBarClick);\n return (\n <BarChartWidget width={width} height={height} data={data} {...barChart}>\n <CartesianGrid {...cartesianGrid} />\n <Tooltip content={<CustomTooltip />} {...tooltip} />\n <Bar {...bar} shape={<Rectangle className={clickable} />} onClick={onBarClick} />\n <XAxis {...xAxis} />\n <YAxis {...yAxis} />\n </BarChartWidget>\n );\n};\n\nexport default BarChart;\n","import {BarChartProps, BarProps, CartesianGridProps, TooltipProps, XAxisProps, YAxisProps} from 'recharts';\nimport {formatNumberAsMetric} from '@reltio/mdm-sdk';\nimport {BarChartOptions} from '../types';\n\ntype BarChartSettings = {\n barChart: BarChartProps;\n bar: BarProps;\n xAxis: XAxisProps;\n yAxis: YAxisProps;\n cartesianGrid: CartesianGridProps;\n tooltip: TooltipProps;\n};\n\nconst getBarChartSettings = ({margin, isHorizontal, isLabelRotated}: BarChartOptions): BarChartSettings => {\n return {\n barChart: {\n layout: isHorizontal ? 'vertical' : 'horizontal',\n barCategoryGap: '30%',\n margin: margin\n },\n bar: {\n dataKey: 'value',\n fill: isHorizontal ? '#9FC3FF' : '#0072CE'\n },\n xAxis: {\n type: isHorizontal ? 'number' : 'category',\n dataKey: isHorizontal ? '' : 'label',\n tick: {\n fill: '#000',\n opacity: '0.54'\n },\n angle: isLabelRotated ? -45 : 0,\n textAnchor: isLabelRotated ? 'end' : 'middle',\n stroke: '#666'\n },\n yAxis: {\n dataKey: isHorizontal ? 'label' : '',\n type: isHorizontal ? 'category' : 'number',\n tick: {\n fill: '#000',\n opacity: isHorizontal ? '0.87' : '0.54',\n width: isHorizontal ? 150 : undefined\n },\n tickFormatter: formatNumberAsMetric,\n stroke: '#666',\n tickCount: 8,\n mirror: isHorizontal\n },\n cartesianGrid: {\n strokeDasharray: '3 3',\n stroke: '#666',\n strokeOpacity: '0.4',\n vertical: !isHorizontal\n },\n tooltip: {\n cursor: {\n fill: '#000',\n opacity: '0.1'\n }\n }\n };\n};\n\nexport default getBarChartSettings;\n","import {useState, useCallback} from 'react';\nimport {Coordinate, TooltipProps} from 'recharts';\nimport {ChartData} from '../types';\n\nconst useTooltipState = () => {\n const [tooltipState, setTooltipState] = useState<TooltipProps>({active: false});\n const showTooltip = useCallback((data: ChartData, coordinate: Coordinate) => {\n setTooltipState({\n active: true,\n label: data.label,\n coordinate,\n payload: [{value: data.value, payload: data, name: data.label}]\n });\n }, []);\n const hideTooltip = useCallback(() => {\n setTooltipState((state) => ({\n ...state,\n active: false\n }));\n }, []);\n return {tooltipState, showTooltip, hideTooltip};\n};\n\nexport default useTooltipState;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n bubbleChart: {\n position: 'relative',\n cursor: 'default'\n }\n});\n","import React, {useMemo, useState} from 'react';\nimport {Legend, Margin, Tooltip} from 'recharts';\nimport useBubbles from './useBubbles';\nimport {ChartProps} from '../types';\nimport getLegendProps from '../CustomLegend/getLegendProps';\nimport {adjustRectWithLegend} from './helpers';\nimport withPercents from '../HOCs/withPercents';\nimport {propOr} from 'ramda';\nimport {getChartItemColor} from '@reltio/mdm-sdk';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport useTooltipState from '../hooks/useTooltipState';\n\nimport {useStyles} from './styles';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype Props = ChartProps & {\n options?: {\n showLegend?: boolean;\n margin?: Margin;\n };\n};\n\nexport const BubbleChart = ({width, height, data, options = {}, onItemClick}: Props) => {\n const styles = useStyles();\n const {showLegend = true, margin} = options;\n\n const initialRect = {\n x: propOr(0, 'left', margin),\n y: propOr(0, 'top', margin),\n width: width - propOr(0, 'left', margin) - propOr(0, 'right', margin),\n height: height - propOr(0, 'top', margin) - propOr(0, 'bottom', margin)\n };\n const initialLegendProps = getLegendProps(width);\n const [legendBox, setLegendBox] = useState({width: 0, height: 0});\n\n const {rect, legendProps} = adjustRectWithLegend(initialRect, initialLegendProps, legendBox);\n\n const bubbles = useBubbles({data, width: rect.width, height: rect.height});\n const {tooltipState, showTooltip, hideTooltip} = useTooltipState();\n\n const clickable = useClickableStyle(onItemClick);\n\n const circles = useMemo(\n () =>\n bubbles.map((bubble) => {\n const cx = rect.x + bubble.x;\n const cy = rect.y + bubble.y;\n return (\n <circle\n key={bubble.data.label}\n cx={cx}\n cy={cy}\n r={bubble.r}\n onMouseEnter={() => showTooltip(bubble.data, {x: cx, y: cy})}\n onMouseLeave={() => hideTooltip()}\n onClick={onItemClick && (() => onItemClick(bubble.data.group))}\n fill={getChartItemColor(bubble.data.label)}\n className={clickable}\n >\n <animate attributeName={'r'} from={0} to={bubble.r} dur=\"0.5s\" />\n </circle>\n );\n }),\n [bubbles, hideTooltip, rect.x, rect.y, showTooltip, onItemClick, clickable]\n );\n\n return (\n <div className={styles.bubbleChart} style={{width, height}}>\n <svg width={width} height={height}>\n {circles}\n </svg>\n {showLegend && (\n <Legend\n {...legendProps}\n payload={(data || []).map((item) => ({\n id: item.label,\n type: 'square',\n color: getChartItemColor(item.label),\n value: `${item.label} (${item.percent}%)`\n }))}\n chartWidth={width}\n chartHeight={height}\n margin={margin}\n onBBoxUpdate={setLegendBox}\n />\n )}\n <Tooltip viewBox={rect} content={<CustomTooltip />} {...tooltipState} />\n </div>\n );\n};\n\nexport default withPercents(BubbleChart);\n","import {LegendProps, ViewBox} from 'recharts';\n\nconst adjustRectWithLegend = (rect: ViewBox, legendProps: LegendProps, legendBox: ViewBox) => {\n const {layout} = legendProps;\n\n if (layout === 'vertical') {\n return {rect: {...rect, width: rect.width - legendBox.width}, legendProps};\n }\n\n if (layout === 'horizontal') {\n return {\n rect: {...rect, height: rect.height - legendBox.height},\n legendProps: {...legendProps, width: rect.width}\n };\n }\n\n return {rect, legendProps};\n};\n\nexport {adjustRectWithLegend};\n","import {useMemo} from 'react';\nimport {hierarchy, pack} from 'd3-hierarchy';\nimport {ChartData} from '../types';\n\ntype Props = {\n width: number;\n height: number;\n data: ChartData[];\n};\n\nexport type Bubble = {\n data: ChartData;\n r: number;\n x: number;\n y: number;\n};\n\nconst useBubbles = ({data, width, height}: Props): Bubble[] => {\n return useMemo(() => {\n if (width === 0 || height === 0) {\n return [];\n }\n\n const bubblesLayout = pack().size([width, height]).padding(2);\n\n const bubblesData = hierarchy({children: data})\n .sum((d) => d.value)\n .sort((a, b) => b.value - a.value);\n\n return bubblesLayout(bubblesData).leaves();\n }, [data, height, width]);\n};\n\nexport default useBubbles;\n","import React from 'react';\nimport {ChartProps, LineChartOptions} from '../types';\nimport {CartesianGrid, Dot, Line, LineChart as LineChartWidget, Tooltip, XAxis, YAxis} from 'recharts';\nimport getLineChartSettings from './getLineChartSettings';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\nconst CustomDot = ({payload, onClick, ...otherProps}: any) => {\n const clickable = useClickableStyle(onClick);\n return (\n <Dot\n className={clickable}\n payload={payload}\n onClick={onClick && (() => onClick(payload.group))}\n {...otherProps}\n />\n );\n};\n\ntype LineChartProps = ChartProps & {\n options?: LineChartOptions;\n};\n\nconst LineChart = ({width, height, data, options = {}, onItemClick}: LineChartProps) => {\n const {cartesianGrid, tooltip, xAxis, yAxis, lineChart, line} = getLineChartSettings(options);\n return (\n <LineChartWidget width={width} height={height} data={data} {...lineChart}>\n <CartesianGrid {...cartesianGrid} />\n <XAxis {...xAxis} />\n <YAxis {...yAxis} />\n <Tooltip content={<CustomTooltip />} {...tooltip} />\n <Line\n {...line}\n activeDot={<CustomDot {...(line.activeDot as Record<string, unknown>)} onClick={onItemClick} />}\n />\n </LineChartWidget>\n );\n};\n\nexport default LineChart;\n","import {CartesianGridProps, LineChartProps, LineProps, TooltipProps, XAxisProps, YAxisProps} from 'recharts';\nimport {formatNumberAsMetric} from '@reltio/mdm-sdk';\nimport {LineChartOptions} from '../types/LineChartOptions';\n\ntype LineChartSettings = {\n lineChart: LineChartProps;\n xAxis: XAxisProps;\n yAxis: YAxisProps;\n cartesianGrid: CartesianGridProps;\n tooltip: TooltipProps;\n line: LineProps;\n};\n\nconst getLineChartSettings = ({margin, isLabelRotated}: LineChartOptions): LineChartSettings => {\n return {\n lineChart: {\n layout: 'horizontal',\n margin: margin\n },\n xAxis: {\n type: 'category',\n dataKey: 'label',\n tick: {\n fill: '#000',\n opacity: '0.54'\n },\n angle: isLabelRotated ? -45 : 0,\n textAnchor: isLabelRotated ? 'end' : 'middle',\n stroke: '#666'\n },\n yAxis: {\n dataKey: '',\n type: 'number',\n tick: {\n fill: '#000',\n opacity: '0.54',\n width: undefined\n },\n tickFormatter: formatNumberAsMetric,\n stroke: '#666',\n tickCount: 8\n },\n cartesianGrid: {\n strokeDasharray: '3 3',\n stroke: '#666',\n strokeOpacity: '0.4'\n },\n tooltip: {\n cursor: {\n fill: '#000',\n opacity: '0.1'\n }\n },\n line: {\n type: 'linear',\n dataKey: 'value',\n stroke: '#4BAFFF',\n strokeWidth: 3,\n dot: {\n strokeWidth: 2,\n r: 5\n },\n activeDot: {\n strokeWidth: 2,\n r: 5,\n stroke: '#4BAFFF'\n }\n }\n };\n};\n\nexport default getLineChartSettings;\n","import {makeStyles} from '@mui/styles';\n\ntype StylesProps = {\n colors: string[];\n width: number;\n};\n\nconst barWidth = 15;\n\nexport const useStyles = makeStyles((theme) => ({\n legendContainer: ({width}: StylesProps) => ({\n width: `${width}px`,\n top: '5%',\n height: '90%',\n position: 'relative'\n }),\n alignTop: {\n top: 0\n },\n alignBottom: {\n bottom: 0\n },\n legendBar: ({colors}: StylesProps) => ({\n background: `linear-gradient(to top, ${colors.join(', ')})`,\n width: `${barWidth}px`,\n position: 'absolute',\n top: 0,\n right: 0,\n bottom: 0\n }),\n legendLabel: ({width}: StylesProps) => ({\n position: 'absolute',\n fontSize: '13px',\n lineHeight: '15px',\n fontWeight: 'normal',\n color: theme.palette.text.primary,\n width: `${width - barWidth}px`,\n textAlign: 'right',\n right: `${barWidth}px`,\n paddingRight: '10px',\n boxSizing: 'border-box',\n overflowWrap: 'break-word'\n })\n}));\n","import React from 'react';\nimport Typography from '@mui/material/Typography';\nimport {formatNumberAsMetric} from '@reltio/mdm-sdk';\nimport classnames from 'classnames';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n minValue: number;\n maxValue: number;\n colors: string[];\n width: number;\n};\n\nconst Legend = ({minValue, maxValue, colors, width}: Props) => {\n const styles = useStyles({\n colors,\n width\n });\n\n return (\n <div className={styles.legendContainer}>\n <Typography className={classnames(styles.legendLabel, styles.alignTop)}>\n {formatNumberAsMetric(maxValue)}\n </Typography>\n <div className={styles.legendBar} />\n <Typography className={classnames(styles.legendLabel, styles.alignBottom)}>\n {formatNumberAsMetric(minValue)}\n </Typography>\n </div>\n );\n};\n\nexport default Legend;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n mapChart: {\n position: 'relative',\n cursor: 'default',\n display: 'flex'\n },\n geography: {\n '&:focus': {\n outline: 'none'\n }\n }\n});\n","import React, {useMemo, useCallback} from 'react';\nimport withPercents from '../HOCs/withPercents';\nimport {ChartProps} from '../types';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport {Geographies, Geography, MapProvider} from 'react-simple-maps';\nimport {scaleLog} from 'd3-scale';\nimport * as d3Geo from 'd3-geo';\nimport {feature} from 'topojson-client';\nimport useGeography from './useGeography';\nimport {pluck} from 'ramda';\nimport Legend from './Legend/Legend';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {Tooltip} from 'recharts';\nimport useTooltipState from '../hooks/useTooltipState';\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype Props = ChartProps & {\n options?: {\n geoUrl?: string;\n projection?: string;\n geoIdName?: string;\n showLegend?: boolean;\n };\n};\n\nconst USA_MAP = 'https://s3.amazonaws.com/reltio-ui-files/map_resources/us-albers.json';\nconst MAP_COLORS = ['#CDE0FE', '#0160AD'];\nexport const LEGEND_WIDTH = 75;\n\nexport const MapChart = ({data, width, height, options, onItemClick}: Props) => {\n const styles = useStyles();\n\n const {geoUrl, geoIdName, showLegend = true} = options || {};\n const values = pluck('value', data);\n const minValue = Math.min(...values);\n const maxValue = Math.max(...values);\n\n const mapWidth = width < LEGEND_WIDTH ? 0 : width - (showLegend ? 1 : 0) * LEGEND_WIDTH;\n const colorScale = scaleLog().domain([minValue, maxValue]).range(MAP_COLORS);\n\n const geography = useGeography(geoUrl || USA_MAP);\n\n const getProjectionFunc = useCallback(\n (projection: string) => {\n const geoFunc = (projection && d3Geo[projection]) || d3Geo['geoEqualEarth'];\n const geoObj = geography.objects && geography.objects[Object.keys(geography.objects)[0]];\n const featureObj = geography.type === 'FeatureCollection' ? geography : feature(geography, geoObj);\n return geoFunc().fitSize([mapWidth, height], featureObj);\n },\n [geography, height, mapWidth]\n );\n\n const projection = geoUrl ? options.projection : 'geoAlbersUsa';\n const projectionFunc = useMemo(\n () => (geography ? getProjectionFunc(projection) : undefined),\n [geography, getProjectionFunc, projection]\n );\n\n const {tooltipState, showTooltip, hideTooltip} = useTooltipState();\n const clickable = useClickableStyle(onItemClick);\n\n return (\n <div className={styles.mapChart} style={{width, height}}>\n <MapProvider width={mapWidth} height={height} projection={projectionFunc} projectionConfig={{}}>\n <svg width={mapWidth} height={height} viewBox={`0 0 ${mapWidth} ${height}`} className={'rsm-svg'}>\n <Geographies geography={geography}>\n {({geographies}) => {\n return geographies.map((geo) => {\n const geoId = geo.properties[geoIdName || 'name'];\n const geoLabel = geo.properties.name;\n const cur = data.find(({group}) => group === geoId);\n return (\n <Geography\n key={geo.rsmKey}\n geography={geo}\n fill={cur ? colorScale(cur.value) : '#EEE'}\n stroke={'#FFF'}\n className={classnames(styles.geography, clickable)}\n onMouseEnter={(event) => {\n const data = cur || {label: geoLabel, value: 0, percent: 0, group: geoId};\n const mapRect = (\n event.target as Element\n ).parentElement.parentElement.getBoundingClientRect();\n const coordinate = {\n x: event.clientX - mapRect.x,\n y: event.clientY - mapRect.y\n };\n showTooltip(data, coordinate);\n }}\n onMouseLeave={() => hideTooltip()}\n onClick={onItemClick && (() => onItemClick(geoId))}\n />\n );\n });\n }}\n </Geographies>\n </svg>\n </MapProvider>\n {showLegend && <Legend width={LEGEND_WIDTH} minValue={minValue} maxValue={maxValue} colors={MAP_COLORS} />}\n <Tooltip\n viewBox={{\n x: 0,\n y: 0,\n width: mapWidth,\n height\n }}\n content={<CustomTooltip />}\n {...tooltipState}\n />\n </div>\n );\n};\n\nexport default withPercents(MapChart);\n","import {useEffect, useState} from 'react';\n\nconst useGeography = (geoUrl) => {\n const [geography, setGeography] = useState(null);\n\n useEffect(() => {\n fetch(geoUrl)\n .then((res) => {\n if (!res.ok) {\n throw Error(res.statusText);\n }\n return res.json();\n })\n .then((geography) => {\n setGeography(geography);\n })\n .catch((error) => {\n console.warn(`Could not load map ${geoUrl} :`, error);\n });\n }, []); // eslint-disable-line\n\n return geography;\n};\n\nexport default useGeography;\n","import d3Cloud, {Word} from 'd3-cloud';\nimport {useMemo} from 'react';\nimport {ChartData} from '../types';\n\ntype Props = {\n data: ChartData[];\n width: number;\n height: number;\n maxFontSize: number;\n};\n\nexport type CloudWord = Word & {\n data?: ChartData;\n};\n\nconst useCloud = ({data, width, height, maxFontSize = 40}: Props): CloudWord[] =>\n useMemo(() => {\n if (!width || !height) return [];\n const dataValues = data.map((item) => item.value);\n const minDataValue = Math.min(...dataValues);\n const maxDataValue = Math.max(...dataValues);\n\n const minFont = Math.log(12);\n const maxFont = Math.log(maxFontSize);\n const valDiff = maxDataValue - minDataValue;\n const scale = (maxFont - minFont) / (valDiff || 1);\n const layout = d3Cloud()\n .size([width, height])\n .words(\n data.map((item) => ({\n text: item.label,\n size: Math.floor(Math.exp(minFont + scale * (item.value - minDataValue))),\n font: 'Roboto',\n data: item\n }))\n )\n .random(() => 0.5)\n .fontSize((word) => word.size)\n .rotate(0)\n .padding(3)\n .start();\n\n return layout.words();\n }, [data, width, height, maxFontSize]);\n\nexport default useCloud;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n container: {\n position: 'relative',\n '& text': {\n transition: 'transform .5s',\n userSelect: 'none',\n animation: '$fadeInOpacity ease-in',\n '&:nth-child(4n+1)': {\n animationDuration: '0.25s'\n },\n '&:nth-child(4n+2)': {\n animationDuration: '1.5s'\n },\n '&:nth-child(4n+3)': {\n animationDuration: '1s'\n },\n '&:nth-child(4n+4)': {\n animationDuration: '0.5s'\n }\n }\n },\n\n '@keyframes fadeInOpacity': {\n '0%': {\n opacity: 0\n },\n '100%': {\n opacity: 1\n }\n }\n});\n","import React, {useMemo} from 'react';\nimport {Tooltip, ViewBox} from 'recharts';\nimport useCloud from './useCloud';\nimport {ChartProps} from '../types';\nimport withPercents from '../HOCs/withPercents';\nimport {getChartItemColor} from '@reltio/mdm-sdk';\nimport {useStyles} from './styles';\nimport useTooltipState from '../hooks/useTooltipState';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype Props = ChartProps & {\n options?: {\n maxFontSize?: number;\n };\n};\n\nexport const CloudChart = ({width, height, data, options = {}, onItemClick}: Props) => {\n const {tooltipState, showTooltip, hideTooltip} = useTooltipState();\n const {maxFontSize} = options;\n const styles = useStyles();\n const clickable = useClickableStyle(onItemClick);\n\n const rect: ViewBox = useMemo(\n () => ({\n x: 0,\n y: 0,\n width: width || 0,\n height: height || 0\n }),\n [width, height]\n );\n\n const words = useCloud({data, width, height, maxFontSize});\n\n const cloudWords = useMemo(() => {\n const cx = rect.width / 2;\n const cy = rect.height / 2;\n\n return (\n <g transform={`translate(${cx},${cy})`}>\n {words.map(({text, data, x, y, size}) => (\n <text\n key={text}\n onMouseEnter={() => showTooltip(data, {x: cx + x, y: cy + y})}\n onMouseLeave={() => hideTooltip()}\n fill={getChartItemColor(text)}\n textAnchor=\"middle\"\n transform={`translate(${x},${y})`}\n fontSize={size}\n className={clickable}\n onClick={onItemClick && (() => onItemClick(data.group))}\n >\n {text}\n </text>\n ))}\n </g>\n );\n }, [rect.width, rect.height, words, clickable, onItemClick, showTooltip, hideTooltip]);\n\n return (\n <div className={styles.container}>\n <svg width={rect.width} height={rect.height}>\n {cloudWords}\n </svg>\n <Tooltip offset={5} viewBox={rect} content={<CustomTooltip />} {...tooltipState} />\n </div>\n );\n};\n\nexport default withPercents(CloudChart);\n","import React from 'react';\nimport BarChart from './BarChart/BarChart';\nimport PieChart from './PieChart/PieChart';\nimport TreeChart from './TreeChart/TreeChart';\nimport TableWithBars from './TableWithBars/TableWithBars';\nimport BubbleChart from './BubbleChart/BubbleChart';\nimport LineChart from './LineChart/LineChart';\nimport MapChart from './MapChart/MapChart';\nimport CloudChart from './CloudChart/CloudChart';\nimport {ChartTypes} from '@reltio/mdm-sdk';\n\nexport default class ChartsFactory {\n static build(chartType, props = {}) {\n switch (chartType) {\n case ChartTypes.BAR:\n return <BarChart {...props} />;\n case ChartTypes.DONUT:\n return <PieChart {...props} isDonut />;\n case ChartTypes.PIE:\n return <PieChart {...props} />;\n case ChartTypes.TREE:\n return <TreeChart {...props} />;\n case ChartTypes.TABLE:\n return <TableWithBars {...props} />;\n case ChartTypes.BUBBLE:\n return <BubbleChart {...props} />;\n case ChartTypes.LINE:\n return <LineChart {...props} />;\n case ChartTypes.MAP:\n return <MapChart {...props} />;\n case ChartTypes.CLOUD:\n return <CloudChart {...props} />;\n default:\n return <div />;\n }\n }\n}\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n wrapper: {\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n margin: 'auto',\n flexWrap: 'wrap',\n '&.alignRight': {\n display: 'grid',\n gridAutoRows: 'min-content',\n gridTemplateColumns: '1fr',\n '&.isTwoCols': {\n gridTemplateColumns: '1fr 1fr',\n minWidth: '141px',\n maxWidth: '282px'\n }\n }\n },\n item: {\n display: 'flex',\n alignItems: 'baseline',\n '&:not(:last-child)': {\n marginRight: 10\n }\n },\n itemColor: {\n width: 12,\n height: 12,\n marginRight: 10,\n flexShrink: 0\n },\n value: {\n fontSize: '14px',\n lineHeight: '27px',\n letterSpacing: '0.5px'\n }\n});\n","import React from 'react';\nimport {LegendProps} from 'recharts';\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\n\ntype CustomLegendProps = LegendProps & {\n alignRight: boolean;\n};\n\nconst CustomLegend = ({payload, alignRight}: CustomLegendProps) => {\n const isTwoCols = payload.length > 8;\n const styles = useStyles();\n return (\n <div className={classnames(styles.wrapper, {isTwoCols}, {alignRight})}>\n {payload.map((item) => (\n <div key={item.id} className={styles.item}>\n <div style={{background: item.color}} className={styles.itemColor} />\n <span className={styles.value}>{item.value}</span>\n </div>\n ))}\n </div>\n );\n};\n\nexport default CustomLegend;\n","import React from 'react';\nimport {LegendProps} from 'recharts';\nimport CustomLegend from './CustomLegend';\n\nconst getLegendProps = (width: number): LegendProps => {\n const alignRight = width > 550;\n return {\n layout: alignRight ? 'vertical' : 'horizontal',\n align: alignRight ? 'right' : 'center',\n verticalAlign: alignRight ? 'middle' : 'bottom',\n wrapperStyle: {\n display: 'flex',\n overflowY: 'auto',\n maxHeight: alignRight ? '100%' : '50%',\n maxWidth: alignRight ? '50%' : '100%'\n },\n content: <CustomLegend alignRight={alignRight} />\n };\n};\n\nexport default getLegendProps;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n tooltipWrapper: {\n borderRadius: '4px',\n background: 'rgba(0, 0, 0, 0.54)',\n padding: '6px 8px 7px 8px',\n textAlign: 'center',\n color: '#FFFFFF',\n '& p': {\n fontSize: '12px',\n lineHeight: '14px',\n padding: 0,\n margin: 0\n }\n },\n tooltipTitle: {\n fontWeight: 500\n },\n tooltipValue: {\n fontWeight: 'normal'\n },\n tooltipValueBold: {\n fontWeight: 500\n },\n tooltipPercent: {\n fontWeight: 'normal'\n }\n});\n","import {useStyles} from './styles';\nimport React from 'react';\nimport {TooltipProps} from 'recharts';\nimport {isNil} from 'ramda';\n\nexport const CustomTooltip = ({payload, active}: TooltipProps) => {\n const styles = useStyles();\n const tooltipPayload = payload?.[0]?.payload;\n const localizedValue = tooltipPayload?.localizedValue || tooltipPayload?.value;\n const tooltipLabel = tooltipPayload?.label;\n const percent = tooltipPayload?.percent;\n\n return (\n active && (\n <div className={styles.tooltipWrapper}>\n <p className={styles.tooltipTitle}>{tooltipLabel}</p>\n {isNil(percent) ? (\n <p className={styles.tooltipValue}>Value: {localizedValue}</p>\n ) : (\n <p className={styles.tooltipValueBold}>\n {localizedValue}\n <span className={styles.tooltipPercent}> ({percent}%)</span>\n </p>\n )}\n </div>\n )\n );\n};\n","import React, {useMemo} from 'react';\nimport {countPercents} from '@reltio/mdm-sdk';\nimport {pluck} from 'ramda';\nimport {ChartData} from '../types';\n\ntype PropsWithChartData = {\n data: ChartData[];\n};\n\nexport const enrichDataWithPercents = (data: ChartData[]): ChartData[] => {\n const percents = countPercents(pluck('value', data), 1);\n return data.map((item, i) => ({...item, percent: percents[i]}));\n};\n\nconst withPercents = <T extends PropsWithChartData>(Component: React.ComponentType<T>) => {\n const WithPercents = ({data, ...otherProps}: T) => {\n const dataWithPercents = useMemo(() => data && enrichDataWithPercents(data), [data]);\n return <Component data={dataWithPercents} {...(otherProps as T)} />;\n };\n\n WithPercents.displayName = 'WithPercents';\n\n return WithPercents;\n};\n\nexport default withPercents;\n","import React from 'react';\nimport {PieLabelRenderProps, Sector, SectorProps} from 'recharts';\n\ntype ActiveShapeProps = PieLabelRenderProps & {\n cx: number;\n cy: number;\n innerRadius: number;\n outerRadius: number;\n};\n\nconst ActiveShape = ({\n cx,\n cy,\n midAngle,\n innerRadius,\n outerRadius,\n startAngle,\n endAngle,\n fill,\n percent,\n value,\n label\n}: ActiveShapeProps) => {\n const RADIAN = Math.PI / 180;\n const sin = Math.sin(-RADIAN * midAngle);\n const cos = Math.cos(-RADIAN * midAngle);\n\n const sx = cx + (outerRadius + 10) * cos;\n const sy = cy + (outerRadius + 10) * sin;\n const mx = cx + (outerRadius + 30) * cos;\n const my = cy + (outerRadius + 30) * sin;\n\n const circleX = mx + (cos >= 0 ? 1 : -1) * 20;\n const circleY = my;\n const textX = circleX + (cos >= 0 ? 1 : -1) * 12;\n const textAnchor = cos >= 0 ? 'start' : 'end';\n const linePath = `M${sx},${sy}L${mx},${my}L${circleX},${circleY}`;\n\n const sectorProps: SectorProps = {\n cx,\n cy,\n innerRadius,\n outerRadius,\n startAngle,\n endAngle,\n fill\n };\n\n return (\n <g>\n <Sector {...sectorProps} />\n <Sector {...sectorProps} innerRadius={outerRadius + 6} outerRadius={outerRadius + 10} />\n <path d={linePath} stroke={fill} fill=\"none\" />\n <circle cx={circleX} cy={circleY} r={2} fill={fill} />\n <text x={textX} y={circleY} textAnchor={textAnchor} fill=\"#444\" fontSize={12} fontWeight={500}>\n {label}\n </text>\n <text x={textX} y={circleY} dy={14} textAnchor={textAnchor} fill=\"#000\" opacity={0.6} fontSize={12}>\n <tspan fontWeight={500}>{value}</tspan>\n <tspan fontWeight={400}>{` (${percent}%)`}</tspan>\n </text>\n </g>\n );\n};\n\nexport default ActiveShape;\n","import React, {useState} from 'react';\nimport {Cell, Legend, Margin, Pie, PieChart as PieChartWidget, Tooltip} from 'recharts';\nimport {getChartItemColor} from '@reltio/mdm-sdk';\nimport {ChartProps} from '../types';\nimport withPercents from '../HOCs/withPercents';\nimport getLegendProps from '../CustomLegend/getLegendProps';\nimport ActiveShape from '../ActiveShape/ActiveShape';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\n\ntype Props = ChartProps & {\n options?: {\n margin?: Margin;\n showLegend?: boolean;\n showActiveShape?: boolean;\n };\n isDonut?: boolean;\n};\n\nexport const PieChart = ({width, height, data, options = {}, isDonut, onItemClick}: Props) => {\n const {showLegend = true, margin, showActiveShape} = options;\n const [activeId, setActiveId] = useState(-1);\n const onPieEnter = (_, index: number) => setActiveId(index);\n const onPieLeave = () => setActiveId(-1);\n const onPieClick = onItemClick && (({group}) => onItemClick(group));\n const clickable = useClickableStyle(onPieClick);\n\n return (\n <PieChartWidget width={width} height={height} margin={margin}>\n {!showActiveShape && <Tooltip content={<CustomTooltip />} />}\n {showLegend && (\n <Legend\n {...getLegendProps(width)}\n payload={(data || []).map((item) => ({\n id: item.label,\n type: 'square',\n color: getChartItemColor(item.label),\n value: `${item.label} (${item.percent}%)`\n }))}\n />\n )}\n <Pie\n dataKey=\"value\"\n data={data}\n activeIndex={activeId}\n activeShape={showActiveShape ? ActiveShape : undefined}\n onMouseEnter={showActiveShape ? onPieEnter : undefined}\n onMouseLeave={showActiveShape ? onPieLeave : undefined}\n innerRadius={isDonut ? (showActiveShape ? '50%' : '60%') : 0}\n outerRadius={showActiveShape ? '70%' : '80%'}\n onClick={onPieClick}\n >\n {(data || []).map((entry, index) => (\n <Cell key={index} fill={getChartItemColor(entry.label)} className={clickable} />\n ))}\n </Pie>\n </PieChartWidget>\n );\n};\n\nexport default withPercents(PieChart);\n","import {makeStyles} from '@mui/styles';\n\nconst textOverflow = {\n content: '\"\"',\n position: 'absolute',\n right: 0,\n top: 0,\n width: '40px',\n height: '100%',\n background: 'linear-gradient(to right, rgba(255, 255, 255, 0.2), #fff 100%)',\n pointerEvents: 'none'\n};\n\nexport const useStyles = makeStyles((theme) => ({\n headCell: {\n display: 'flex',\n alignItems: 'center',\n height: '100%',\n '&>div': {\n padding: '0 16px'\n }\n },\n headLabel: {\n color: theme.palette.text.primary,\n fontSize: '12px',\n fontWeight: 500,\n lineHeight: '16px',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n '&:after': textOverflow\n },\n attribute: {\n color: theme.palette.text.primary,\n fontSize: '13px',\n fontWeight: 'normal',\n lineHeight: '15px',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n height: '100%',\n padding: '0 16px',\n '&:after': textOverflow\n },\n numberContainer: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n padding: '0 16px',\n height: '100%'\n },\n number: {\n fontSize: '13px',\n lineHeight: '15px',\n fontWeight: 'normal',\n color: theme.palette.text.primary,\n width: '40px',\n flexShrink: 0\n },\n colorBarContainer: {\n position: 'relative',\n width: '100%',\n marginLeft: '16px',\n height: '20px',\n '&>div': {\n opacity: 1,\n backgroundColor: '#0072CE'\n }\n }\n}));\n","import React from 'react';\nimport classnames from 'classnames';\nimport DefaultHeadCellRenderer from 'react-components/dist/Table/DefaultHeadCellRenderer/DefaultHeadCellRenderer';\nimport ExpandedValueTooltip from '../../../ExpandedValueTooltip/ExpandedValueTooltip';\nimport {useStyles} from './styles';\n\ntype HeadCellRendererProps = {\n className?: string;\n headCellData: {\n label: string;\n };\n};\n\nconst HeadCellRenderer = ({className, headCellData, ...otherProps}: HeadCellRendererProps) => {\n const styles = useStyles();\n\n return (\n <div className={classnames(styles.headCell, className)}>\n <DefaultHeadCellRenderer\n {...otherProps}\n headCellData={{\n ...headCellData,\n label: (\n <ExpandedValueTooltip value={headCellData.label}>\n <div className={styles.headLabel}>{headCellData.label}</div>\n </ExpandedValueTooltip>\n )\n }}\n />\n </div>\n );\n};\n\nexport default HeadCellRenderer;\n","import React from 'react';\nimport ExpandedValueTooltip from '../../../ExpandedValueTooltip/ExpandedValueTooltip';\nimport {withTableContext} from '../../../BasicTableView';\nimport classnames from 'classnames';\nimport {useStyles} from './styles';\nimport {useClickableStyle} from '../../hooks/useClickableStyle';\n\ntype Props = {\n value?: string;\n onClick?: () => void;\n};\n\nexport const AttributeCellRenderer = ({value = '', onClick}: Props) => {\n const styles = useStyles();\n const clickable = useClickableStyle(onClick);\n return (\n <ExpandedValueTooltip value={value}>\n <div className={classnames(styles.attribute, clickable)} onClick={onClick}>\n {value}\n </div>\n </ExpandedValueTooltip>\n );\n};\n\nexport default withTableContext(({onItemClick}, {rowValue: {group}}) => {\n return {\n onClick:\n onItemClick &&\n (() => {\n onItemClick(group);\n })\n };\n})(AttributeCellRenderer);\n","import React from 'react';\nimport {isNil} from 'ramda';\nimport {formatNumberAsMetric} from '@reltio/mdm-sdk';\nimport Typography from '@mui/material/Typography';\nimport ColorBar from '../../../ColorBar/ColorBar';\n\nimport {useStyles} from './styles';\n\ntype NumberCellValueRendererProps = {\n value: number;\n columnData: {\n maxValue?: number;\n };\n};\n\nconst NumberCellValueRenderer = ({value, columnData: {maxValue}}: NumberCellValueRendererProps) => {\n const styles = useStyles();\n\n return (\n <div className={styles.numberContainer}>\n <Typography className={styles.number}>{formatNumberAsMetric(value, 9999)}</Typography>\n {!isNil(maxValue) && (\n <div className={styles.colorBarContainer}>\n <ColorBar width={value} maxWidth={maxValue} />\n </div>\n )}\n </div>\n );\n};\n\nexport default NumberCellValueRenderer;\n","import {makeStyles} from '@mui/styles';\n\ntype Dimensions = {\n width: number | string;\n height: number | string;\n};\n\nexport const useStyles = makeStyles({\n tableContainer: ({width, height}: Dimensions) => ({\n height: height,\n width: width,\n display: 'flex',\n flexDirection: 'column'\n }),\n cellBorder: {\n borderLeft: 'none',\n borderRight: 'none'\n }\n});\n","import React, {useMemo} from 'react';\nimport i18n from 'ui-i18n';\nimport {BasicTable} from '../../BasicTableView';\nimport HeadCellRenderer from './cell-renderers/HeadCellRenderer';\nimport AttributeCellRenderer from './cell-renderers/AttributeCellRenderer';\nimport NumberCellValueRenderer from './cell-renderers/NumberCellValueRenderer';\nimport {ChartProps, TableWithBarsOptions} from '../types';\n\nimport {useStyles} from './styles';\n\ntype TableWithBarsProps = ChartProps & {\n options?: TableWithBarsOptions;\n basicTableRef?: React.MutableRefObject<any> | null;\n};\n\nconst TableWithBars = ({width, height, data, options = {}, basicTableRef, onItemClick}: TableWithBarsProps) => {\n const styles = useStyles({width, height});\n\n const {headers: [labelHeader, valueHeader] = [], showValues = true} = options;\n\n const tableClasses = useMemo(() => ({cellBorder: styles.cellBorder}), [styles]);\n const maxValue = useMemo(() => Math.max(...data.map((item) => item.value)), [data]);\n\n const headData = useMemo(\n () => [\n {\n id: 'label',\n label: labelHeader || i18n.text('Attributes'),\n resizable: false,\n headCellRenderer: HeadCellRenderer,\n rowCellValueRenderer: AttributeCellRenderer,\n initialWidth: width * 0.4\n },\n ...(showValues\n ? [\n {\n id: 'value',\n label: valueHeader || i18n.text('No of Profiles'),\n resizable: false,\n headCellRenderer: HeadCellRenderer,\n rowCellValueRenderer: NumberCellValueRenderer,\n maxValue,\n initialWidth: width * 0.6\n }\n ]\n : [])\n ],\n [maxValue, width, valueHeader, labelHeader, showValues]\n );\n\n const context = useMemo(\n () => ({\n onItemClick\n }),\n [onItemClick]\n );\n\n return (\n <div className={styles.tableContainer}>\n <BasicTable\n columnsData={headData}\n rowsData={data}\n headRowHeight={48}\n getRowCellHeight={null}\n classes={tableClasses}\n defaultColumnWidth={100}\n defaultColumnMinWidth={100}\n ref={basicTableRef}\n context={context}\n />\n </div>\n );\n};\n\nexport default TableWithBars;\n","import {makeStyles} from '@mui/styles';\n\nexport const useStyles = makeStyles({\n treeBlock: {\n fill: '#6BAED6',\n stroke: '#fff',\n strokeOpacity: 1\n },\n treeLabel: {\n fill: 'black',\n fontSize: '14px',\n letterSpacing: 0\n }\n});\n","import React, {useRef} from 'react';\nimport {Text, Tooltip, Treemap} from 'recharts';\nimport {ChartProps} from '../types';\nimport {CustomTooltip} from '../CustomTooltip/CustomTooltip';\nimport {useStyles} from './styles';\nimport {useClickableStyle} from '../hooks/useClickableStyle';\nimport {nanoid} from 'nanoid';\n\ntype ContentProps = {\n x?: number;\n y?: number;\n width?: number;\n height?: number;\n label?: string;\n group?: string;\n onClick: (group: string) => void;\n};\n\nconst CustomizedContent = ({x, y, width, height, label, onClick, group}: ContentProps) => {\n const styles = useStyles();\n const clickable = useClickableStyle(onClick);\n const clipPathId = useRef(nanoid()).current;\n const strokeWidth = 2;\n return (\n <g className={clickable} onClick={onClick && (() => onClick(group))}>\n <clipPath id={clipPathId}>\n <rect\n x={x + strokeWidth}\n y={y + strokeWidth}\n width={Math.max(width - strokeWidth * 2, 0)}\n height={Math.max(height - strokeWidth * 2, 0)}\n />\n </clipPath>\n <rect x={x} y={y} width={width} height={height} strokeWidth={strokeWidth} className={styles.treeBlock} />\n <Text\n clipPath={`url(#${clipPathId})`}\n textAnchor={'middle'}\n verticalAnchor={'middle'}\n width={width}\n x={x + width / 2}\n y={y + height / 2}\n className={styles.treeLabel}\n >\n {label}\n </Text>\n </g>\n );\n};\n\nconst normalizeValues = (data) => {\n const dataTotal = data.reduce((acc, item) => acc + item.value, 0);\n const threshold = dataTotal / (data.length * 10);\n return data.map((item) => {\n return {\n ...item,\n normalizedValue: item.value < threshold ? threshold : item.value\n };\n });\n};\n\nconst TreeChart = ({data, width, height, onItemClick}: ChartProps) => {\n return (\n <Treemap\n dataKey=\"normalizedValue\"\n nameKey=\"label\"\n content={<CustomizedContent onClick={onItemClick} />}\n data={normalizeValues(data)}\n width={width}\n animationDuration={500}\n height={height}\n >\n <Tooltip content={<CustomTooltip />} />\n </Treemap>\n );\n};\n\nexport default TreeChart;\n","import {makeStyles} from '@mui/styles';\n\nconst useStyles = makeStyles({\n clickable: {\n cursor: 'pointer'\n }\n});\n\nexport const useClickableStyle = (clickable) => {\n const styles = useStyles();\n return clickable ? styles.clickable : undefined;\n};\n","import React, {createContext, useCallback, useContext, useEffect, useState} from 'react';\nimport {RequestStates} from '../../types';\n\nconst ReloadFacetSignalContext = createContext(null);\nconst ReloadFacetActionContext = createContext(null);\n\ntype Props = {\n children: React.ReactNode;\n};\n\nexport const ReloadFacetProvider = ({children}: Props) => {\n const [refreshSignal, setRefreshSignal] = useState<number>(0);\n const refreshAll = useCallback(() => {\n setRefreshSignal((signal) => signal + 1);\n }, [setRefreshSignal]);\n return (\n <ReloadFacetActionContext.Provider value={refreshAll}>\n <ReloadFacetSignalContext.Provider value={refreshSignal}>{children}</ReloadFacetSignalContext.Provider>\n </ReloadFacetActionContext.Provider>\n );\n};\n\nexport const useReloadAllFacets = () => {\n const refreshAll = useContext(ReloadFacetActionContext);\n\n if (refreshAll === undefined) {\n throw new Error('useReloadAllFacets must be used within a ReloadFacetProvider');\n }\n\n return refreshAll;\n};\n\ntype useReloadFacetProps = {\n state: RequestStates;\n reload: () => void;\n};\n\nexport const useReloadFacet = ({state, reload}: useReloadFacetProps) => {\n const refreshSignal = useContext(ReloadFacetSignalContext);\n\n if (refreshSignal === undefined) {\n throw new Error('useReloadFacet must be used within a ReloadFacetProvider');\n }\n\n useEffect(() => {\n if (state === RequestStates.LOADED || state === RequestStates.ERROR) {\n reload();\n }\n }, [refreshSignal]);\n};\n","import React from 'react';\nimport {SearchFilter} from '@reltio/mdm-sdk';\n\nexport const SearchFiltersContext = React.createContext<SearchFilter[]>([]);\n\nSearchFiltersContext.displayName = 'SearchFiltersContext';\n"],"names":["useActivitiesLoader","filter","max","offset","useCallback","async","filterString","buildActivitiesFilterString","data","getActivities","total","getActivitiesTotal","width","height","options","onItemClick","barChart","cartesianGrid","bar","tooltip","xAxis","yAxis","margin","isHorizontal","isLabelRotated","layout","barCategoryGap","dataKey","fill","type","tick","opacity","angle","textAnchor","stroke","undefined","tickFormatter","formatNumberAsMetric","tickCount","mirror","strokeDasharray","strokeOpacity","vertical","cursor","getBarChartSettings","onBarClick","group","clickable","useClickableStyle","content","CustomTooltip","shape","className","onClick","tooltipState","setTooltipState","useState","active","showTooltip","coordinate","label","payload","value","name","hideTooltip","state","useStyles","makeStyles","bubbleChart","position","withPercents","styles","showLegend","initialRect","x","propOr","y","initialLegendProps","getLegendProps","legendBox","setLegendBox","rect","legendProps","adjustRectWithLegend","bubbles","useMemo","pack","size","padding","bubblesLayout","hierarchy","children","sum","d","sort","a","b","leaves","useBubbles","useTooltipState","circles","map","bubble","cx","cy","key","r","onMouseEnter","onMouseLeave","getChartItemColor","attributeName","from","to","dur","style","item","id","color","percent","chartWidth","chartHeight","onBBoxUpdate","viewBox","CustomDot","otherProps","lineChart","line","strokeWidth","dot","activeDot","getLineChartSettings","theme","legendContainer","top","alignTop","alignBottom","bottom","legendBar","colors","background","join","right","legendLabel","fontSize","lineHeight","fontWeight","palette","text","primary","textAlign","paddingRight","boxSizing","overflowWrap","minValue","maxValue","Typography","classnames","mapChart","display","geography","outline","MAP_COLORS","geoUrl","geoIdName","values","pluck","Math","min","mapWidth","colorScale","scaleLog","domain","range","setGeography","useEffect","fetch","then","res","ok","Error","statusText","json","catch","error","console","warn","useGeography","getProjectionFunc","projection","geoFunc","d3Geo","geoObj","objects","Object","keys","featureObj","feature","fitSize","projectionFunc","MapProvider","projectionConfig","Geographies","geographies","geo","geoId","properties","geoLabel","cur","find","Geography","rsmKey","event","mapRect","target","parentElement","getBoundingClientRect","clientX","clientY","container","transition","userSelect","animation","animationDuration","maxFontSize","words","dataValues","minDataValue","maxDataValue","minFont","log","scale","d3Cloud","floor","exp","font","random","word","rotate","start","useCloud","cloudWords","transform","ChartsFactory","chartType","props","ChartTypes","BarChart","PieChart","isDonut","TreeChart","TableWithBars","wrapper","justifyContent","flexWrap","gridAutoRows","gridTemplateColumns","minWidth","maxWidth","alignItems","marginRight","itemColor","flexShrink","letterSpacing","alignRight","isTwoCols","length","align","verticalAlign","wrapperStyle","overflowY","maxHeight","tooltipWrapper","borderRadius","tooltipTitle","tooltipValue","tooltipValueBold","tooltipPercent","tooltipPayload","localizedValue","tooltipLabel","isNil","enrichDataWithPercents","percents","countPercents","i","Component","WithPercents","dataWithPercents","displayName","midAngle","innerRadius","outerRadius","startAngle","endAngle","RADIAN","PI","sin","cos","mx","my","circleX","circleY","textX","linePath","sectorProps","dy","showActiveShape","activeId","setActiveId","onPieClick","activeIndex","activeShape","ActiveShape","_","index","entry","textOverflow","pointerEvents","headCell","headLabel","whiteSpace","overflow","attribute","numberContainer","flexDirection","number","colorBarContainer","marginLeft","backgroundColor","headCellData","DefaultHeadCellRenderer","ExpandedValueTooltip","withTableContext","rowValue","columnData","ColorBar","tableContainer","cellBorder","borderLeft","borderRight","basicTableRef","headers","labelHeader","valueHeader","showValues","tableClasses","headData","i18n","resizable","headCellRenderer","HeadCellRenderer","rowCellValueRenderer","AttributeCellRenderer","initialWidth","NumberCellValueRenderer","context","BasicTable","columnsData","rowsData","headRowHeight","getRowCellHeight","classes","defaultColumnWidth","defaultColumnMinWidth","ref","treeBlock","treeLabel","CustomizedContent","clipPathId","useRef","nanoid","current","clipPath","verticalAnchor","normalizeValues","threshold","reduce","acc","normalizedValue","nameKey","ReloadFacetSignalContext","createContext","ReloadFacetActionContext","ReloadFacetProvider","refreshSignal","setRefreshSignal","refreshAll","signal","Provider","useReloadAllFacets","useContext","useReloadFacet","reload","RequestStates","SearchFiltersContext","React"],"sourceRoot":""}
|
package/7626.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},r=(new Error).stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="25e95666-52da-4f8e-95c0-330f6e6885c7",e._sentryDebugIdIdentifier="sentry-dbid-25e95666-52da-4f8e-95c0-330f6e6885c7")}catch(e){}}();var _global="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};_global.SENTRY_RELEASE={id:"1.4.
|
|
1
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},r=(new Error).stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="25e95666-52da-4f8e-95c0-330f6e6885c7",e._sentryDebugIdIdentifier="sentry-dbid-25e95666-52da-4f8e-95c0-330f6e6885c7")}catch(e){}}();var _global="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};_global.SENTRY_RELEASE={id:"1.4.1634"},(self.webpackChunk_reltio_remotes=self.webpackChunk_reltio_remotes||[]).push([[7626],{90838:(e,r,a)=>{a.d(r,{Z:()=>x});var t=a(31461),o=a(7896),n=a(24328),c=a(6277),f=a(69075),i=a(46324),s=a(7342),d=a(43853),l=a(65992),b=a(96457),u=a(52322);const v=["className","color","disableShrink","size","style","thickness","value","variant"];let m,p,h,A,Z=e=>e;const y=(0,i.keyframes)(m||(m=Z`
|
|
2
2
|
0% {
|
|
3
3
|
transform: rotate(0deg);
|
|
4
4
|
}
|