@redsift/charts 11.5.0 → 11.6.0-alpha.0
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/_internal/Arc.js +2 -0
- package/_internal/Arc.js.map +1 -0
- package/_internal/Arc2.js +117 -0
- package/_internal/Arc2.js.map +1 -0
- package/_internal/Arcs.js +2 -0
- package/_internal/Arcs.js.map +1 -0
- package/_internal/Arcs2.js +94 -0
- package/_internal/Arcs2.js.map +1 -0
- package/_internal/Axis.js +2 -0
- package/_internal/Axis.js.map +1 -0
- package/_internal/Axis2.js +388 -0
- package/_internal/Axis2.js.map +1 -0
- package/_internal/Bar.js +2 -0
- package/_internal/Bar.js.map +1 -0
- package/_internal/Bar2.js +170 -0
- package/_internal/Bar2.js.map +1 -0
- package/_internal/BarChart.js +2 -0
- package/_internal/BarChart.js.map +1 -0
- package/_internal/BarChart2.js +1419 -0
- package/_internal/BarChart2.js.map +1 -0
- package/_internal/ChartContainer.js +2 -0
- package/_internal/ChartContainer.js.map +1 -0
- package/_internal/ChartContainer2.js +266 -0
- package/_internal/ChartContainer2.js.map +1 -0
- package/_internal/DataPoint.js +2 -0
- package/_internal/DataPoint.js.map +1 -0
- package/_internal/DataPoint2.js +110 -0
- package/_internal/DataPoint2.js.map +1 -0
- package/_internal/Dot.js +2 -0
- package/_internal/Dot.js.map +1 -0
- package/_internal/Dot2.js +110 -0
- package/_internal/Dot2.js.map +1 -0
- package/_internal/Legend.js +2 -0
- package/_internal/Legend.js.map +1 -0
- package/_internal/Legend3.js +84 -0
- package/_internal/Legend3.js.map +1 -0
- package/_internal/LegendItem.js +2 -0
- package/_internal/LegendItem.js.map +1 -0
- package/_internal/LegendItem2.js +153 -0
- package/_internal/LegendItem2.js.map +1 -0
- package/_internal/Line.js +2 -0
- package/_internal/Line.js.map +1 -0
- package/_internal/Line2.js +59 -0
- package/_internal/Line2.js.map +1 -0
- package/_internal/LineChart.js +2 -0
- package/_internal/LineChart.js.map +1 -0
- package/_internal/LineChart2.js +669 -0
- package/_internal/LineChart2.js.map +1 -0
- package/_internal/PieChart.js +2 -0
- package/_internal/PieChart.js.map +1 -0
- package/_internal/PieChart2.js +605 -0
- package/_internal/PieChart2.js.map +1 -0
- package/_internal/ScatterPlot.js +2 -0
- package/_internal/ScatterPlot.js.map +1 -0
- package/_internal/ScatterPlot2.js +744 -0
- package/_internal/ScatterPlot2.js.map +1 -0
- package/_internal/_rollupPluginBabelHelpers.js +93 -0
- package/_internal/_rollupPluginBabelHelpers.js.map +1 -0
- package/_internal/config.js +13 -0
- package/_internal/config.js.map +1 -0
- package/_internal/legend2.js +21 -0
- package/_internal/legend2.js.map +1 -0
- package/_internal/scheme.js +47 -0
- package/_internal/scheme.js.map +1 -0
- package/_internal/theme.js +79 -0
- package/_internal/theme.js.map +1 -0
- package/_internal/useFormatCategoricalData.js +56 -0
- package/_internal/useFormatCategoricalData.js.map +1 -0
- package/index.js +17 -5118
- package/index.js.map +1 -1
- package/index2.js +16 -0
- package/index2.js.map +1 -0
- package/package.json +4 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PieChart2.js","sources":["../../src/components/PieChart/types.ts","../../src/components/PieChart/styles.ts","../../src/components/PieChart/LoadingPieChart.tsx","../../src/components/PieChart/utils.ts","../../src/components/PieChart/EmptyPieChart.tsx","../../src/components/PieChart/intl/index.ts","../../src/components/PieChart/RenderedPieChart.tsx","../../src/components/PieChart/PieChart.tsx"],"sourcesContent":["import { ComponentProps, ReactElement, ReactNode } from 'react';\nimport { PieArcDatum as d3PieArcDatum } from 'd3-shape';\nimport {\n ChartDimensions,\n ChartSize,\n ChartTheme,\n ArcDatum,\n TooltipVariant,\n CategoryData,\n CategoryDatum,\n Statistics,\n} from '../../types';\nimport { Theme, ValueOf } from '@redsift/design-system';\nimport { ArcProps } from '../Arc';\nimport { ChartContainerProps } from '../ChartContainer';\nimport { LegendProps } from '../Legend';\nimport { SortingMethod } from '../../utils';\nimport { AnchorProps } from '../DataPoint';\n\n/**\n * Component variant.\n */\nexport const PieChartVariant = {\n plain: 'plain',\n spaced: 'spaced',\n donut: 'donut',\n spacedDonut: 'spacedDonut',\n} as const;\nexport type PieChartVariant = ValueOf<typeof PieChartVariant>;\n\n/**\n * Component's labels variant.\n */\nexport const PieChartLegendVariant = {\n none: 'none',\n internal: 'internal',\n externalLabel: 'externalLabel',\n externalLabelValue: 'externalLabelValue',\n externalLabelPercent: 'externalLabelPercent',\n custom: 'custom',\n} as const;\nexport type PieChartLegendVariant = ValueOf<typeof PieChartLegendVariant>;\n\ninterface LocaleText {\n emptyChartText: string;\n}\n\nexport type PieChartDimensions = ChartDimensions & {\n smallFontSize: number;\n fontSize: number;\n innerRadius: number;\n};\n\n/**\n * Component props.\n */\nexport interface PieChartProps extends ChartContainerProps {\n /** Number of categories to use, the rest being put into a new category called \"Others\". */\n caping?: number;\n /** Dataset to use to generate the chart, should be a list of objects containing a key and a value. */\n data?: CategoryData;\n /** Component to use if the chart is empty (replacing the default one). */\n emptyComponent?: ReactNode;\n /** Method used to define the anchor props to use when the slice is a navigation link. */\n getSliceAnchorProps?: (datum: ArcDatum) => AnchorProps;\n /** Whether the pie or donut is cut in half or not. */\n isHalf?: boolean;\n /** Method to determine whether a slice is selected or not. */\n isSliceSelected?: (datum: ArcDatum) => boolean | undefined;\n /** Method to override the data labels. */\n labelDecorator?: (\n datum: ArcDatum,\n props?: { index?: number; isSelected?: boolean; color?: string }\n ) => string | ReactElement;\n /** Method modifying what's displayed within the legend when the legendVariant is \"custom\". */\n legendDecorator?: (\n datum: ArcDatum,\n props?: { index?: number; isSelected?: boolean; color?: string }\n ) => string | ReactElement;\n /** Define whether the labels should be displayed inside or outside the charts and if they should contain raw or percentage values. If set to \"custom\", use `legendDecorator` to customize it. */\n legendVariant?: PieChartLegendVariant;\n /** Props to forward to the Legend block. Can be used to make the legend selectable. */\n legendProps?: Omit<LegendProps, 'data' | 'ref' | 'variant'> & { extraLegendItems?: Statistics };\n /** Labels and texts. */\n localeText?: LocaleText;\n /** Method to be called on a click on a slice. For a navigation link, please use `getSliceAnchorProps` instead. */\n onSliceClick?: (datum: ArcDatum) => void;\n /** Whether a category should be displayed for categories that has been removed by the caping option. Optionaly, this prop can be used to change the label of this category. */\n others?: boolean | string;\n /** PieChart size. */\n size?: ChartSize | PieChartDimensions;\n /** Native HTML props to forward to each slice. */\n sliceProps?: Omit<ComponentProps<'g'>, 'onClick' | 'ref' | 'width'>;\n /** Slice role. If an onClick is provided, the slices will have the role `button`. For a navigation link, please use `getSliceAnchorProps` instead. */\n sliceRole?: ArcProps['role'];\n /** Define how to sort categories. */\n sortingMethod?: SortingMethod;\n /** Secondary text to be displayed in the middle of the chart, between the main text and subtext. Recommended to be used with donut variants only. */\n middleText?: string | ReactElement | ((data: d3PieArcDatum<CategoryDatum>[], total: number) => string | ReactElement);\n /** Secondary text to be displayed in the middle of the chart, above the main text. Recommended to be used with `donut` variants only. */\n subtext?: string | ReactElement | ((data: d3PieArcDatum<CategoryDatum>[], total: number) => string | ReactElement);\n /** Main text to be displayed in the middle of the chart. Recommended to be used with `donut` variants only. */\n text?: string | ReactElement | ((data: d3PieArcDatum<CategoryDatum>[], total: number) => string | ReactElement);\n /** Color palette to use. You can choose among the list of available color palette or also choose to use the success/warning/danger theme for which you have to specify which key corresponds to which status. */\n colorTheme?: ChartTheme;\n /** PieChart variant. */\n variant?: PieChartVariant;\n /** Method modifying what's displayed within the tooltip when the tooltipVariant is \"custom\". */\n tooltipDecorator?: (\n data: ArcDatum,\n props?: { index?: number; isSelected?: boolean; color?: string }\n ) => string | ReactElement;\n /** Tooltip variant. */\n tooltipVariant?: TooltipVariant;\n /** Theme. */\n theme?: Theme;\n}\n\nexport type StyledPieChartProps = PieChartProps & {};\n","import styled, { css } from 'styled-components';\nimport { StyledPieChartProps } from './types';\nimport { ChartContainer } from '../ChartContainer';\nimport { Theme } from '@redsift/design-system';\n\n/**\n * Component style.\n */\nexport const StyledPieChart = styled(ChartContainer)<StyledPieChartProps>`\n .redsift-piechart__chart-wrapper {\n position: relative;\n }\n`;\n\nexport const StyledPieChartCenterText = styled.div<{\n $maxWidth: number;\n $textSize: number;\n $smallTextSize: number;\n $theme: Theme;\n}>`\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n pointer-events: none;\n\n > * {\n max-width: ${({ $maxWidth }) => $maxWidth}px;\n }\n\n > b {\n font-family: var(--redsift-typography-font-family-poppins);\n color: ${({ $theme }) => `var(--redsift-color-${$theme}-components-text-primary)`};\n font-weight: var(--redsift-typography-font-weight-medium);\n font-size: ${({ $textSize }) => $textSize}px;\n line-height: ${({ $textSize }) => $textSize}px;\n\n &:nth-child(2) {\n font-weight: normal;\n margin-top: 8px;\n font-family: var(--redsift-typography-font-family-poppins);\n font-size: ${({ $smallTextSize }) => $smallTextSize}px;\n line-height: ${({ $smallTextSize }) => $smallTextSize}px;\n }\n }\n > span {\n color: ${({ $theme }) => `var(--redsift-color-${$theme}-components-text-primary)`};\n font-size: ${({ $textSize }) => $textSize}px;\n line-height: ${({ $textSize }) => $textSize}px;\n &:nth-child(3) {\n margin-top: 4px;\n font-size: ${({ $smallTextSize }) => $smallTextSize}px;\n line-height: ${({ $smallTextSize }) => $smallTextSize}px;\n }\n }\n > b + span {\n font-size: var(--redsift-typography-body-font-size);\n font-family: var(--redsift-typography-font-family-poppins);\n line-height: var(--redsift-typography-badge-line-height);\n color: ${({ $theme }) => ($theme === Theme.light ? 'rgba(0, 0, 0, 0.6)' : 'rgba(255, 255, 255, 0.6)')};\n text-align: center;\n }\n`;\n\nexport const StyledPieChartEmptyText = styled.div<{\n $maxWidth: number;\n $textSize: number;\n $isDonut: boolean;\n $theme: Theme;\n}>`\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n pointer-events: none;\n\n > * {\n max-width: ${({ $maxWidth }) => $maxWidth}px;\n }\n\n > span {\n font-family: var(--redsift-typography-font-family-poppins);\n color: ${({ $isDonut, $theme }) =>\n $isDonut\n ? css`var(--redsift-color-neutral-mid-grey)`\n : css`var(--redsift-color-${$theme}-components-text-primary)`};\n font-size: ${({ $textSize }) => $textSize}px;\n line-height: ${({ $textSize }) => $textSize}px;\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\n\nimport { PieChartProps } from './types';\nimport { StyledPieChart } from './styles';\n\nexport const LoadingPieChart = forwardRef<HTMLDivElement, PieChartProps>(\n (props, ref) => {\n const { className, ...forwardedProps } = props;\n\n return (\n <StyledPieChart\n {...forwardedProps}\n className={className}\n ref={ref as RefObject<HTMLDivElement>}\n >\n Loading...\n </StyledPieChart>\n );\n }\n);\n","import { ChartSize } from '../../types';\nimport { PieChartDimensions } from './types';\n\nexport const sizeToDimension = (size: ChartSize | PieChartDimensions, isHalf?: boolean): PieChartDimensions => {\n if (typeof size !== 'string') {\n return size;\n }\n\n switch (size) {\n case ChartSize.small:\n return {\n width: 200,\n height: 200 * (isHalf ? 0.5 : 1),\n smallFontSize: 13,\n fontSize: 30,\n innerRadius: 55,\n };\n case ChartSize.large:\n return {\n width: 300,\n height: 300 * (isHalf ? 0.5 : 1),\n smallFontSize: 18,\n fontSize: 38,\n innerRadius: 80,\n };\n case ChartSize.medium:\n default:\n return {\n width: 240,\n height: 240 * (isHalf ? 0.5 : 1),\n smallFontSize: 14,\n fontSize: 34,\n innerRadius: 65,\n };\n }\n};\n","import React, { forwardRef, RefObject } from 'react';\nimport { arc as d3arc } from 'd3';\n\nimport { ArcDatum } from '../../types';\nimport { PieChartProps, PieChartVariant } from './types';\nimport { StyledPieChart, StyledPieChartEmptyText } from './styles';\nimport { Arcs } from '../Arcs';\nimport { empty } from '../../scheme';\nimport { sizeToDimension } from './utils';\nimport { useTheme } from '@redsift/design-system';\n\nexport const EmptyPieChart = forwardRef<HTMLDivElement, PieChartProps>((props, ref) => {\n const { className, emptyComponent, localeText, size, variant, ...forwardedProps } = props;\n const theme = useTheme();\n\n const isDonut = variant === PieChartVariant.donut || variant === PieChartVariant.spacedDonut;\n\n const { width, height, fontSize, innerRadius } = sizeToDimension(size!);\n const externalRadiusPadding = 8;\n\n const createArc = d3arc<ArcDatum>()\n .innerRadius(isDonut ? innerRadius : 0)\n .outerRadius(width / 2 - externalRadiusPadding);\n\n return (\n <StyledPieChart {...forwardedProps} className={className} ref={ref as RefObject<HTMLDivElement>}>\n {emptyComponent ?? (\n <>\n <StyledPieChartEmptyText\n $maxWidth={innerRadius * 2}\n $textSize={fontSize / 2}\n $isDonut={isDonut}\n $theme={theme}\n >\n <span>{localeText?.emptyChartText}</span>\n </StyledPieChartEmptyText>\n <svg width={width} height={height}>\n <Arcs\n arcs={[\n {\n createArc,\n previousData: {\n data: {\n key: '',\n value: 0,\n },\n startAngle: 0,\n endAngle: 0,\n padAngle: 0,\n value: 0,\n index: 0,\n },\n data: {\n data: {\n key: 'No Data',\n value: 0,\n },\n index: 0,\n value: 0,\n startAngle: 0,\n endAngle: 2 * Math.PI,\n padAngle: 0,\n },\n dataset: [\n {\n data: {\n key: 'No Data',\n value: 0,\n },\n index: 0,\n value: 0,\n startAngle: 0,\n endAngle: 2 * Math.PI,\n padAngle: 0,\n },\n ],\n color: empty,\n },\n ]}\n transform={`translate(${width / 2} ${height / 2})`}\n />\n </svg>\n </>\n )}\n </StyledPieChart>\n );\n});\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import React, { forwardRef, RefObject, useEffect, useRef } from 'react';\nimport { arc as d3arc, pie as d3pie, sum as d3sum } from 'd3';\n\nimport { useTheme, useMessageFormatter } from '@redsift/design-system';\nimport intlMessages from './intl';\n\nimport { LegendVariant, ArcDatum, CategoryData, CategoryDatum, LegendItemDatum } from '../../types';\nimport { PieChartLegendVariant, PieChartProps, PieChartVariant } from './types';\nimport { StyledPieChartCenterText, StyledPieChart } from './styles';\nimport { Arcs } from '../Arcs';\nimport { useFormatCategoricalData } from '../../hooks';\nimport { Legend } from '../Legend';\nimport { sizeToDimension } from './utils';\nimport { PieChart } from './PieChart';\nimport { getSortingMethod, mergeLegends } from '../../utils';\n\ninterface RenderedPieChartProps extends Required<Pick<PieChartProps, 'data'>>, Omit<PieChartProps, 'data'> {}\n\nexport const RenderedPieChart = forwardRef<HTMLDivElement, RenderedPieChartProps>((props, ref) => {\n const {\n caping,\n className,\n data: propsData,\n disableAnimations,\n getSliceAnchorProps,\n id,\n isHalf,\n isSliceSelected,\n labelDecorator,\n legendDecorator,\n legendVariant,\n legendProps,\n middleText: propsMiddleText,\n onSliceClick,\n others,\n size,\n sliceProps,\n sliceRole,\n sortingMethod,\n subtext: propsSubtext,\n text: propsText,\n colorTheme,\n tooltipVariant,\n variant,\n ...forwardedProps\n } = props;\n\n const cache = useRef<CategoryData>();\n const theme = useTheme();\n\n const format = useMessageFormatter(intlMessages);\n\n const isDonut = variant === PieChartVariant.donut || variant === PieChartVariant.spacedDonut;\n const isSpaced = variant === PieChartVariant.spaced || variant === PieChartVariant.spacedDonut;\n\n const { data, colorScale } = useFormatCategoricalData({\n data: propsData,\n colorTheme: colorTheme!,\n sortingMethod: sortingMethod!,\n caping,\n others,\n theme,\n });\n\n useEffect(() => {\n cache.current = data;\n });\n\n const { width, height, smallFontSize, fontSize, innerRadius } = sizeToDimension(size!, isHalf);\n const externalRadiusPadding = 8;\n\n const createPie = d3pie<CategoryDatum>()\n .value((d) => d.value)\n .sort(null)\n .startAngle(isHalf ? Math.PI * -0.5 : 0)\n .endAngle(isHalf ? Math.PI * 0.5 : Math.PI * 2);\n const createArc = d3arc<ArcDatum>()\n .innerRadius(isDonut ? innerRadius : 0)\n .outerRadius(width / 2 - externalRadiusPadding);\n const pieData = createPie(data);\n const previousPieData = cache.current ? createPie(cache.current) : undefined;\n const total = d3sum(data, (d) => d.value);\n const legendWidth = useRef<string>();\n if (data && !legendWidth.current) {\n legendWidth.current = `${Math.max(...data.map((d) => d.key.length + String(d.value).length)) * 8 + 32}px`;\n }\n\n const text =\n typeof propsText === 'function'\n ? propsText(\n pieData.map((datum) => {\n const percent = datum.data.value / total;\n return { ...datum, data: { ...datum.data, percent } };\n }),\n total\n )\n : propsText;\n const subtext =\n typeof propsSubtext === 'function'\n ? propsSubtext(\n pieData.map((datum) => {\n const percent = datum.data.value / total;\n return { ...datum, data: { ...datum.data, percent } };\n }),\n total\n )\n : propsSubtext;\n const middleText =\n typeof propsMiddleText === 'function'\n ? propsMiddleText(\n pieData.map((datum) => {\n const percent = datum.data.value / total;\n return { ...datum, data: { ...datum.data, percent } };\n }),\n total\n )\n : propsMiddleText;\n\n const filteredPieData = pieData.filter((datum) => datum.data.value);\n\n const { extraLegendItems, ...forwardedLegendProps } = legendProps || {};\n\n return (\n <StyledPieChart\n mode={typeof onSliceClick === 'function' || typeof getSliceAnchorProps === 'function' ? 'interactive' : 'static'}\n definition={format('definition', { sliceLength: filteredPieData.length })}\n dataTableRepresentation={{\n header: (\n <thead>\n <tr>\n <th scope=\"col\">Key</th>\n <th scope=\"col\">Value</th>\n </tr>\n </thead>\n ),\n body: (\n <tbody>\n {filteredPieData.map((datum) => (\n <tr key={datum.data.key}>\n <th scope=\"row\">{datum.data.key}</th>\n <td>{datum.data.value}</td>\n </tr>\n ))}\n </tbody>\n ),\n }}\n {...forwardedProps}\n className={className}\n id={id}\n ref={ref as RefObject<HTMLDivElement>}\n >\n <div className={`${PieChart.className}__chart-wrapper`}>\n {text ? (\n <StyledPieChartCenterText\n $maxWidth={innerRadius * 2}\n $textSize={fontSize}\n $smallTextSize={smallFontSize}\n $theme={theme}\n >\n {subtext ? <b>{text}</b> : <span>{text}</span>}\n {middleText ? <b>{middleText}</b> : null}\n <span>{subtext}</span>\n </StyledPieChartCenterText>\n ) : null}\n <svg\n width={width}\n height={isHalf ? height + externalRadiusPadding : height}\n aria-label={\n typeof onSliceClick === 'function' || typeof getSliceAnchorProps === 'function'\n ? format('interactive-chart')\n : format('static-chart')\n }\n aria-hidden=\"false\"\n >\n <Arcs\n arcs={filteredPieData.map((datum, index) => {\n const percent = datum.data.value / total;\n const from = previousPieData\n ? previousPieData[index]\n : {\n data: {\n key: '',\n value: 0,\n },\n startAngle: isHalf ? Math.PI * -0.5 : 0,\n endAngle: isHalf ? Math.PI * -0.5 : 0,\n padAngle: 0,\n value: 0,\n index: index,\n };\n const to = { ...datum, data: { ...datum.data, percent } };\n\n return {\n color: colorScale?.(to.data.key),\n createArc,\n previousData: from,\n id: `id${id}__arc-${index}`,\n index,\n isSelected: isSliceSelected!(to),\n key: `id${id}__arc-${index}`,\n data: to,\n dataset: pieData,\n anchorProps: getSliceAnchorProps ? getSliceAnchorProps(to) : undefined,\n };\n })}\n disableAnimations={disableAnimations}\n hasLabels={legendVariant === PieChartLegendVariant.internal}\n hasStroke={isSpaced}\n labelDecorator={labelDecorator}\n onClick={onSliceClick}\n role={sliceRole}\n sliceProps={sliceProps}\n tooltipVariant={tooltipVariant}\n transform={`translate(${width / 2} ${isHalf ? height : height / 2})`}\n />\n </svg>\n </div>\n {legendVariant !== PieChartLegendVariant.none && legendVariant !== PieChartLegendVariant.internal ? (\n <Legend\n data={(extraLegendItems\n ? mergeLegends(extraLegendItems, data).sort(getSortingMethod(sortingMethod!))\n : data\n ).map((d) => ({\n ...d,\n color: colorScale?.(d.key)!,\n }))}\n variant={\n legendVariant === PieChartLegendVariant.externalLabelValue\n ? LegendVariant.value\n : legendVariant === PieChartLegendVariant.externalLabelPercent\n ? LegendVariant.percent\n : legendVariant === PieChartLegendVariant.externalLabel\n ? LegendVariant.label\n : LegendVariant.custom\n }\n width={legendWidth.current}\n labelDecorator={\n labelDecorator ? (datum: LegendItemDatum, props) => labelDecorator(datum as ArcDatum, props) : undefined\n }\n legendDecorator={\n legendDecorator ? (datum: LegendItemDatum, props) => legendDecorator(datum as ArcDatum, props) : undefined\n }\n {...forwardedLegendProps}\n />\n ) : null}\n </StyledPieChart>\n );\n});\n","import React, { forwardRef } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp, useId } from '@redsift/design-system';\n\nimport { ChartSize, ColorTheme, TooltipVariant } from '../../types';\nimport { PieChartLegendVariant, PieChartProps, PieChartVariant } from './types';\nimport { LoadingPieChart } from './LoadingPieChart';\nimport { EmptyPieChart } from './EmptyPieChart';\nimport { RenderedPieChart } from './RenderedPieChart';\n\nconst COMPONENT_NAME = 'PieChart';\nconst CLASSNAME = 'redsift-piechart';\n\nexport const PieChart: Comp<PieChartProps, HTMLDivElement> = forwardRef((props, ref) => {\n const {\n caping,\n chartRef,\n className,\n colorTheme = ColorTheme.default,\n data: propsData,\n emptyComponent,\n id: propsId,\n isSliceSelected = () => true,\n labelDecorator,\n legendDecorator,\n legendVariant: propsLegendVariant,\n localeText = { emptyChartText: 'No Data' },\n middleText,\n onSliceClick,\n others = true,\n size = ChartSize.medium,\n sliceRole,\n sortingMethod = 'desc-value',\n subtext,\n text,\n tooltipDecorator,\n tooltipVariant = TooltipVariant.value,\n variant = PieChartVariant.spaced,\n ...forwardedProps\n } = props;\n const [_id] = useId();\n const id = propsId ?? _id;\n\n const legendVariant = propsLegendVariant ?? PieChartLegendVariant.none;\n\n if (propsData === undefined || propsData === null) {\n return <LoadingPieChart id={id} {...forwardedProps} ref={ref} />;\n }\n\n if (propsData.length === 0) {\n return (\n <EmptyPieChart\n data={propsData}\n emptyComponent={emptyComponent}\n id={id}\n localeText={localeText}\n size={size}\n sortingMethod={sortingMethod}\n variant={variant}\n {...forwardedProps}\n ref={ref}\n />\n );\n }\n\n return (\n <RenderedPieChart\n caping={caping}\n chartRef={chartRef}\n className={classNames(PieChart.className, className)}\n data={propsData}\n id={id}\n isSliceSelected={isSliceSelected}\n labelDecorator={labelDecorator}\n legendDecorator={legendDecorator}\n legendVariant={legendVariant}\n middleText={middleText}\n onSliceClick={onSliceClick}\n others={others}\n size={size}\n sliceRole={sliceRole}\n sortingMethod={sortingMethod}\n subtext={subtext}\n text={text}\n colorTheme={colorTheme}\n tooltipDecorator={tooltipDecorator}\n tooltipVariant={tooltipVariant}\n variant={variant}\n {...forwardedProps}\n ref={ref}\n />\n );\n});\nPieChart.className = CLASSNAME;\nPieChart.displayName = COMPONENT_NAME;\n"],"names":["PieChartVariant","plain","spaced","donut","spacedDonut","PieChartLegendVariant","none","internal","externalLabel","externalLabelValue","externalLabelPercent","custom","StyledPieChart","styled","ChartContainer","StyledPieChartCenterText","div","_ref","$maxWidth","_ref2","$theme","_ref3","$textSize","_ref4","_ref5","$smallTextSize","_ref6","_ref7","_ref8","_ref9","_ref10","_ref11","_ref12","Theme","light","StyledPieChartEmptyText","_ref13","_ref14","$isDonut","css","_ref15","_ref16","LoadingPieChart","forwardRef","props","ref","className","forwardedProps","_objectWithoutProperties","_excluded","React","createElement","_extends","sizeToDimension","size","isHalf","ChartSize","small","width","height","smallFontSize","fontSize","innerRadius","large","medium","EmptyPieChart","emptyComponent","localeText","variant","theme","useTheme","isDonut","externalRadiusPadding","createArc","d3arc","outerRadius","Fragment","emptyChartText","Arcs","arcs","previousData","data","key","value","startAngle","endAngle","padAngle","index","Math","PI","dataset","color","empty","transform","enUS","frFR","RenderedPieChart","caping","propsData","disableAnimations","getSliceAnchorProps","id","isSliceSelected","labelDecorator","legendDecorator","legendVariant","legendProps","middleText","propsMiddleText","onSliceClick","others","sliceProps","sliceRole","sortingMethod","subtext","propsSubtext","text","propsText","colorTheme","tooltipVariant","cache","useRef","format","useMessageFormatter","intlMessages","isSpaced","colorScale","useFormatCategoricalData","useEffect","current","createPie","d3pie","d","sort","pieData","previousPieData","undefined","total","d3sum","legendWidth","max","map","length","String","datum","percent","_objectSpread","filteredPieData","filter","extraLegendItems","forwardedLegendProps","_excluded2","mode","definition","sliceLength","dataTableRepresentation","header","scope","body","PieChart","from","to","isSelected","anchorProps","hasLabels","hasStroke","onClick","role","Legend","mergeLegends","getSortingMethod","LegendVariant","label","COMPONENT_NAME","CLASSNAME","chartRef","ColorTheme","default","propsId","propsLegendVariant","tooltipDecorator","TooltipVariant","_id","useId","classNames","displayName"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScatterPlot.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|