siesa-ui-kit 1.0.147 → 1.0.148

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/{BarChart-CvmMmIXu.js → BarChart-C-i5of4Y.js} +5 -5
  2. package/dist/{BarChart-CvmMmIXu.js.map → BarChart-C-i5of4Y.js.map} +1 -1
  3. package/dist/{BarChart--Y6K95vz.cjs → BarChart-Rjocw3H9.cjs} +2 -2
  4. package/dist/{BarChart--Y6K95vz.cjs.map → BarChart-Rjocw3H9.cjs.map} +1 -1
  5. package/dist/{ChartBarHorizontal-Hz6VgTcd.cjs → ChartBarHorizontal-BdWLXuku.cjs} +2 -2
  6. package/dist/{ChartBarHorizontal-Hz6VgTcd.cjs.map → ChartBarHorizontal-BdWLXuku.cjs.map} +1 -1
  7. package/dist/{ChartBarHorizontal-SjgHGKb3.js → ChartBarHorizontal-DL96XTcK.js} +5 -5
  8. package/dist/{ChartBarHorizontal-SjgHGKb3.js.map → ChartBarHorizontal-DL96XTcK.js.map} +1 -1
  9. package/dist/{ChartDonut-lyBGgzMK.js → ChartDonut-BSE8fjqa.js} +5 -5
  10. package/dist/{ChartDonut-lyBGgzMK.js.map → ChartDonut-BSE8fjqa.js.map} +1 -1
  11. package/dist/{ChartDonut-DzVMDmqN.cjs → ChartDonut-DgxhaVoj.cjs} +2 -2
  12. package/dist/{ChartDonut-DzVMDmqN.cjs.map → ChartDonut-DgxhaVoj.cjs.map} +1 -1
  13. package/dist/{ChartLine-BdmX_xGy.cjs → ChartLine-BdUvE4At.cjs} +2 -2
  14. package/dist/{ChartLine-BdmX_xGy.cjs.map → ChartLine-BdUvE4At.cjs.map} +1 -1
  15. package/dist/{ChartLine-DLWVzmS2.js → ChartLine-D-vVWI3t.js} +4 -4
  16. package/dist/{ChartLine-DLWVzmS2.js.map → ChartLine-D-vVWI3t.js.map} +1 -1
  17. package/dist/{ChartVentasMensual-BcX5Qpy1.cjs → ChartVentasMensual-B3eyj9f3.cjs} +2 -2
  18. package/dist/{ChartVentasMensual-BcX5Qpy1.cjs.map → ChartVentasMensual-B3eyj9f3.cjs.map} +1 -1
  19. package/dist/{ChartVentasMensual-4tR8QITV.js → ChartVentasMensual-ClCePaTo.js} +5 -5
  20. package/dist/{ChartVentasMensual-4tR8QITV.js.map → ChartVentasMensual-ClCePaTo.js.map} +1 -1
  21. package/dist/{KpiVentasHoy-DFGjBgPP.js → KpiVentasHoy-BEQ7IUea.js} +2 -2
  22. package/dist/{KpiVentasHoy-DFGjBgPP.js.map → KpiVentasHoy-BEQ7IUea.js.map} +1 -1
  23. package/dist/{KpiVentasHoy-e72249lU.cjs → KpiVentasHoy-BpaAS9KS.cjs} +2 -2
  24. package/dist/{KpiVentasHoy-e72249lU.cjs.map → KpiVentasHoy-BpaAS9KS.cjs.map} +1 -1
  25. package/dist/{StaticImageWidget-DRyIz6pc.js → StaticImageWidget-BJvBq0mX.js} +2 -2
  26. package/dist/{StaticImageWidget-DRyIz6pc.js.map → StaticImageWidget-BJvBq0mX.js.map} +1 -1
  27. package/dist/{StaticImageWidget-DUlJD1I6.cjs → StaticImageWidget-BVD72zyl.cjs} +2 -2
  28. package/dist/{StaticImageWidget-DUlJD1I6.cjs.map → StaticImageWidget-BVD72zyl.cjs.map} +1 -1
  29. package/dist/{TableStockCritico-BUnNpMgt.cjs → TableStockCritico-B01RIs_D.cjs} +2 -2
  30. package/dist/{TableStockCritico-BUnNpMgt.cjs.map → TableStockCritico-B01RIs_D.cjs.map} +1 -1
  31. package/dist/{TableStockCritico-BYdApQed.js → TableStockCritico-CQPn8Pbf.js} +3 -3
  32. package/dist/{TableStockCritico-BYdApQed.js.map → TableStockCritico-CQPn8Pbf.js.map} +1 -1
  33. package/dist/{aggregateChartData-DOX-R8x3.cjs → aggregateChartData-CJTTxh2k.cjs} +2 -2
  34. package/dist/{aggregateChartData-DOX-R8x3.cjs.map → aggregateChartData-CJTTxh2k.cjs.map} +1 -1
  35. package/dist/{aggregateChartData-B2UAW-WP.js → aggregateChartData-DfMWQUiV.js} +2 -2
  36. package/dist/{aggregateChartData-B2UAW-WP.js.map → aggregateChartData-DfMWQUiV.js.map} +1 -1
  37. package/dist/components/MasterDocument/HeaderRenderer.d.ts.map +1 -1
  38. package/dist/components/MasterDocument/MasterDocument.types.d.ts +14 -0
  39. package/dist/components/MasterDocument/MasterDocument.types.d.ts.map +1 -1
  40. package/dist/components/MasterDocument/smart/SmartMasterDocument.d.ts.map +1 -1
  41. package/dist/{index-DieYMRjT.cjs → index-DOwUCRbF.cjs} +3 -3
  42. package/dist/{index-DieYMRjT.cjs.map → index-DOwUCRbF.cjs.map} +1 -1
  43. package/dist/{index-BMDgaTO4.js → index-D_AyI9xa.js} +13 -9
  44. package/dist/{index-BMDgaTO4.js.map → index-D_AyI9xa.js.map} +1 -1
  45. package/dist/siesa-ui-kit.cjs +1 -1
  46. package/dist/siesa-ui-kit.mjs +1 -1
  47. package/dist/{tooltipContext-CH5FhWSK.js → tooltipContext-Bm4TsIIS.js} +2 -2
  48. package/dist/{tooltipContext-CH5FhWSK.js.map → tooltipContext-Bm4TsIIS.js.map} +1 -1
  49. package/dist/{tooltipContext-DMgzQCQh.cjs → tooltipContext-DYc8x5pj.cjs} +2 -2
  50. package/dist/{tooltipContext-DMgzQCQh.cjs.map → tooltipContext-DYc8x5pj.cjs.map} +1 -1
  51. package/dist/{useChartData-0fNBg8Ez.cjs → useChartData-CJq1lJYY.cjs} +2 -2
  52. package/dist/{useChartData-0fNBg8Ez.cjs.map → useChartData-CJq1lJYY.cjs.map} +1 -1
  53. package/dist/{useChartData-CTX9NnMa.js → useChartData-CzMMMf58.js} +4 -4
  54. package/dist/{useChartData-CTX9NnMa.js.map → useChartData-CzMMMf58.js.map} +1 -1
  55. package/dist/{useWidgetFetch-KHtyWHSX.cjs → useWidgetFetch-BkxK2-zy.cjs} +2 -2
  56. package/dist/{useWidgetFetch-KHtyWHSX.cjs.map → useWidgetFetch-BkxK2-zy.cjs.map} +1 -1
  57. package/dist/{useWidgetFetch-C43Q4m8v.js → useWidgetFetch-fkAbLXjl.js} +2 -2
  58. package/dist/{useWidgetFetch-C43Q4m8v.js.map → useWidgetFetch-fkAbLXjl.js.map} +1 -1
  59. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ChartDonut-lyBGgzMK.js","sources":["../node_modules/recharts/es6/state/selectors/polarSelectors.js","../node_modules/recharts/es6/state/selectors/pieSelectors.js","../node_modules/recharts/es6/polar/Pie.js","../node_modules/recharts/es6/state/ReportPolarOptions.js","../node_modules/recharts/es6/chart/PolarChart.js","../node_modules/recharts/es6/chart/PieChart.js","../src/dashboard/widgets/ChartDonut.tsx"],"sourcesContent":["import { createSelector } from 'reselect';\nimport { selectChartDataAndAlwaysIgnoreIndexes, selectChartDataSliceIgnoringIndexes } from './dataSelectors';\nimport { combineAppliedValues, combineAxisDomain, combineAxisDomainWithNiceTicks, combineDisplayedData, combineDomainOfAllAppliedNumericalValuesIncludingErrorValues, combineGraphicalItemsData, combineGraphicalItemsSettings, combineNiceTicks, combineNumericalDomain, itemAxisPredicate, selectAllErrorBarSettings, selectBaseAxis, selectDomainDefinition, selectDomainFromUserPreference, selectRealScaleType, selectRenderableAxisSettings } from './axisSelectors';\nimport { selectChartLayout } from '../../context/chartLayoutContext';\nimport { getValueByDataKey } from '../../util/ChartUtils';\nimport { pickAxisType } from './pickAxisType';\nimport { pickAxisId } from './pickAxisId';\nimport { selectStackOffsetType } from './rootPropsSelectors';\nimport { combineCheckedDomain } from './combiners/combineCheckedDomain';\nexport var selectUnfilteredPolarItems = state => state.graphicalItems.polarItems;\nvar selectAxisPredicate = createSelector([pickAxisType, pickAxisId], itemAxisPredicate);\nexport var selectPolarItemsSettings = createSelector([selectUnfilteredPolarItems, selectBaseAxis, selectAxisPredicate], combineGraphicalItemsSettings);\nvar selectPolarGraphicalItemsData = createSelector([selectPolarItemsSettings], combineGraphicalItemsData);\nexport var selectPolarDisplayedData = createSelector([selectPolarGraphicalItemsData, selectChartDataAndAlwaysIgnoreIndexes], combineDisplayedData);\nexport var selectPolarAppliedValues = createSelector([selectPolarDisplayedData, selectBaseAxis, selectPolarItemsSettings], combineAppliedValues);\nexport var selectAllPolarAppliedNumericalValues = createSelector([selectPolarDisplayedData, selectBaseAxis, selectPolarItemsSettings], (data, axisSettings, items) => {\n if (items.length > 0) {\n return data.flatMap(entry => {\n return items.flatMap(item => {\n var _axisSettings$dataKey;\n var valueByDataKey = getValueByDataKey(entry, (_axisSettings$dataKey = axisSettings.dataKey) !== null && _axisSettings$dataKey !== void 0 ? _axisSettings$dataKey : item.dataKey);\n return {\n value: valueByDataKey,\n errorDomain: [] // polar charts do not have error bars\n };\n });\n }).filter(Boolean);\n }\n if ((axisSettings === null || axisSettings === void 0 ? void 0 : axisSettings.dataKey) != null) {\n return data.map(item => ({\n value: getValueByDataKey(item, axisSettings.dataKey),\n errorDomain: []\n }));\n }\n return data.map(entry => ({\n value: entry,\n errorDomain: []\n }));\n});\nvar unsupportedInPolarChart = () => undefined;\nvar selectDomainOfAllPolarAppliedNumericalValues = createSelector([selectPolarDisplayedData, selectBaseAxis, selectPolarItemsSettings, selectAllErrorBarSettings, pickAxisType, selectChartDataSliceIgnoringIndexes], combineDomainOfAllAppliedNumericalValuesIncludingErrorValues);\nvar selectPolarNumericalDomain = createSelector([selectBaseAxis, selectDomainDefinition, selectDomainFromUserPreference, unsupportedInPolarChart, selectDomainOfAllPolarAppliedNumericalValues, unsupportedInPolarChart, selectChartLayout, pickAxisType], combineNumericalDomain);\nexport var selectPolarAxisDomain = createSelector([selectBaseAxis, selectChartLayout, selectPolarDisplayedData, selectPolarAppliedValues, selectStackOffsetType, pickAxisType, selectPolarNumericalDomain], combineAxisDomain);\nexport var selectPolarNiceTicks = createSelector([selectPolarAxisDomain, selectRenderableAxisSettings, selectRealScaleType], combineNiceTicks);\nexport var selectPolarAxisDomainIncludingNiceTicks = createSelector([selectBaseAxis, selectPolarAxisDomain, selectPolarNiceTicks, pickAxisType], combineAxisDomainWithNiceTicks);\nexport var selectPolarAxisCheckedDomain = createSelector([selectRealScaleType, selectPolarAxisDomainIncludingNiceTicks], combineCheckedDomain);","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { createSelector } from 'reselect';\nimport { computePieSectors } from '../../polar/Pie';\nimport { selectChartDataAndAlwaysIgnoreIndexes } from './dataSelectors';\nimport { selectChartOffsetInternal } from './selectChartOffsetInternal';\nimport { getTooltipNameProp, getValueByDataKey } from '../../util/ChartUtils';\nimport { selectUnfilteredPolarItems } from './polarSelectors';\nvar pickId = (_state, id) => id;\nvar selectSynchronisedPieSettings = createSelector([selectUnfilteredPolarItems, pickId], (graphicalItems, id) => graphicalItems.filter(item => item.type === 'pie').find(item => item.id === id));\n\n// Keep stable reference to an empty array to prevent re-renders\nvar emptyArray = [];\nvar pickCells = (_state, _id, cells) => {\n if ((cells === null || cells === void 0 ? void 0 : cells.length) === 0) {\n return emptyArray;\n }\n return cells;\n};\nexport var selectDisplayedData = createSelector([selectChartDataAndAlwaysIgnoreIndexes, selectSynchronisedPieSettings, pickCells], (_ref, pieSettings, cells) => {\n var {\n chartData\n } = _ref;\n if (pieSettings == null) {\n return undefined;\n }\n var displayedData;\n if ((pieSettings === null || pieSettings === void 0 ? void 0 : pieSettings.data) != null && pieSettings.data.length > 0) {\n displayedData = pieSettings.data;\n } else {\n displayedData = chartData;\n }\n if ((!displayedData || !displayedData.length) && cells != null) {\n displayedData = cells.map(cell => _objectSpread(_objectSpread({}, pieSettings.presentationProps), cell.props));\n }\n if (displayedData == null) {\n return undefined;\n }\n return displayedData;\n});\nexport var selectPieLegend = createSelector([selectDisplayedData, selectSynchronisedPieSettings, pickCells], (displayedData, pieSettings, cells) => {\n if (displayedData == null || pieSettings == null) {\n return undefined;\n }\n return displayedData.map((entry, i) => {\n var _cells$i;\n var name = getValueByDataKey(entry, pieSettings.nameKey, pieSettings.name);\n var color;\n if (cells !== null && cells !== void 0 && (_cells$i = cells[i]) !== null && _cells$i !== void 0 && (_cells$i = _cells$i.props) !== null && _cells$i !== void 0 && _cells$i.fill) {\n color = cells[i].props.fill;\n } else if (typeof entry === 'object' && entry != null && 'fill' in entry) {\n color = entry.fill;\n } else {\n color = pieSettings.fill;\n }\n return {\n value: getTooltipNameProp(name, pieSettings.dataKey),\n color,\n // @ts-expect-error Legend payload.payload says it wants objects but our data can be unknown\n payload: entry,\n type: pieSettings.legendType\n };\n });\n});\nexport var selectPieSectors = createSelector([selectDisplayedData, selectSynchronisedPieSettings, pickCells, selectChartOffsetInternal], (displayedData, pieSettings, cells, offset) => {\n if (pieSettings == null || displayedData == null) {\n return undefined;\n }\n return computePieSectors({\n offset,\n pieSettings,\n displayedData,\n cells\n });\n});","var _excluded = [\"key\"],\n _excluded2 = [\"onMouseEnter\", \"onClick\", \"onMouseLeave\"],\n _excluded3 = [\"id\"],\n _excluded4 = [\"id\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport * as React from 'react';\nimport { useCallback, useMemo, useRef, useState } from 'react';\nimport get from 'es-toolkit/compat/get';\nimport { clsx } from 'clsx';\nimport { selectPieLegend, selectPieSectors } from '../state/selectors/pieSelectors';\nimport { useAppSelector } from '../state/hooks';\nimport { Layer } from '../container/Layer';\nimport { Curve } from '../shape/Curve';\nimport { Text } from '../component/Text';\nimport { Cell } from '../component/Cell';\nimport { findAllByType } from '../util/ReactUtils';\nimport { getMaxRadius, polarToCartesian } from '../util/PolarUtils';\nimport { getPercentValue, interpolate, isNumber, mathSign } from '../util/DataUtils';\nimport { getTooltipNameProp, getValueByDataKey } from '../util/ChartUtils';\nimport { adaptEventsOfChild } from '../util/types';\nimport { Shape } from '../util/ActiveShapeUtils';\nimport { useMouseClickItemDispatch, useMouseEnterItemDispatch, useMouseLeaveItemDispatch } from '../context/tooltipContext';\nimport { SetTooltipEntrySettings } from '../state/SetTooltipEntrySettings';\nimport { selectActiveTooltipDataKey, selectActiveTooltipGraphicalItemId, selectActiveTooltipIndex } from '../state/selectors/tooltipSelectors';\nimport { SetPolarLegendPayload } from '../state/SetLegendPayload';\nimport { DATA_ITEM_GRAPHICAL_ITEM_ID_ATTRIBUTE_NAME, DATA_ITEM_INDEX_ATTRIBUTE_NAME } from '../util/Constants';\nimport { useAnimationId } from '../util/useAnimationId';\nimport { resolveDefaultProps } from '../util/resolveDefaultProps';\nimport { RegisterGraphicalItemId } from '../context/RegisterGraphicalItemId';\nimport { SetPolarGraphicalItem } from '../state/SetGraphicalItem';\nimport { svgPropertiesNoEvents, svgPropertiesNoEventsFromUnknown } from '../util/svgPropertiesNoEvents';\nimport { JavascriptAnimate } from '../animation/JavascriptAnimate';\nimport { LabelListFromLabelProp, PolarLabelListContextProvider } from '../component/LabelList';\nimport { ZIndexLayer } from '../zIndex/ZIndexLayer';\nimport { DefaultZIndexes } from '../zIndex/DefaultZIndexes';\nimport { getClassNameFromUnknown } from '../util/getClassNameFromUnknown';\n\n/**\n * The `label` prop in Pie accepts a variety of alternatives.\n */\n\n/**\n * We spread the data object into the sector data item,\n * so we can't really know what is going to be inside.\n *\n * This type represents our best effort, but it all depends on the input data\n * and what is inside of it.\n *\n * https://github.com/recharts/recharts/issues/6380\n * https://github.com/recharts/recharts/discussions/6375\n */\n\n/**\n * Internal props, combination of external props + defaultProps + private Recharts state\n */\n\nfunction SetPiePayloadLegend(props) {\n var cells = useMemo(() => findAllByType(props.children, Cell), [props.children]);\n var legendPayload = useAppSelector(state => selectPieLegend(state, props.id, cells));\n if (legendPayload == null) {\n return null;\n }\n return /*#__PURE__*/React.createElement(SetPolarLegendPayload, {\n legendPayload: legendPayload\n });\n}\nfunction getActiveShapeFill(activeShape) {\n // activeShape can be boolean/function/element/object; only element/object can carry a static fill value.\n if (activeShape == null || typeof activeShape === 'boolean' || typeof activeShape === 'function') {\n return undefined;\n }\n if (/*#__PURE__*/React.isValidElement(activeShape)) {\n var _activeShape$props;\n // React element form: <Sector fill=\"...\"/> or custom element with fill prop.\n var _fill = (_activeShape$props = activeShape.props) === null || _activeShape$props === void 0 ? void 0 : _activeShape$props.fill;\n return typeof _fill === 'string' ? _fill : undefined;\n }\n var {\n fill\n } = activeShape;\n return typeof fill === 'string' ? fill : undefined;\n}\nvar SetPieTooltipEntrySettings = /*#__PURE__*/React.memo(_ref => {\n var {\n dataKey,\n nameKey,\n sectors,\n stroke,\n strokeWidth,\n fill,\n name,\n hide,\n tooltipType,\n id,\n activeShape\n } = _ref;\n var activeShapeFill = getActiveShapeFill(activeShape);\n var tooltipDataDefinedOnItem = sectors.map(sector => {\n var sectorTooltipPayload = sector.tooltipPayload;\n if (activeShapeFill == null || sectorTooltipPayload == null) {\n return sectorTooltipPayload;\n }\n return sectorTooltipPayload.map(item => _objectSpread(_objectSpread({}, item), {}, {\n color: activeShapeFill,\n fill: activeShapeFill\n }));\n });\n var tooltipEntrySettings = {\n dataDefinedOnItem: tooltipDataDefinedOnItem,\n getPosition: index => {\n var _sectors$Number;\n return (_sectors$Number = sectors[Number(index)]) === null || _sectors$Number === void 0 ? void 0 : _sectors$Number.tooltipPosition;\n },\n settings: {\n stroke,\n strokeWidth,\n fill,\n dataKey,\n nameKey,\n name: getTooltipNameProp(name, dataKey),\n hide,\n type: tooltipType,\n color: fill,\n unit: '',\n // why doesn't Pie support unit?\n graphicalItemId: id\n }\n };\n return /*#__PURE__*/React.createElement(SetTooltipEntrySettings, {\n tooltipEntrySettings: tooltipEntrySettings\n });\n});\nvar getTextAnchor = (x, cx) => {\n if (x > cx) {\n return 'start';\n }\n if (x < cx) {\n return 'end';\n }\n return 'middle';\n};\nvar getOuterRadius = (dataPoint, outerRadius, maxPieRadius) => {\n if (typeof outerRadius === 'function') {\n return getPercentValue(outerRadius(dataPoint), maxPieRadius, maxPieRadius * 0.8);\n }\n return getPercentValue(outerRadius, maxPieRadius, maxPieRadius * 0.8);\n};\nvar parseCoordinateOfPie = (pieSettings, offset, dataPoint) => {\n var {\n top,\n left,\n width,\n height\n } = offset;\n var maxPieRadius = getMaxRadius(width, height);\n var cx = left + getPercentValue(pieSettings.cx, width, width / 2);\n var cy = top + getPercentValue(pieSettings.cy, height, height / 2);\n var innerRadius = getPercentValue(pieSettings.innerRadius, maxPieRadius, 0);\n var outerRadius = getOuterRadius(dataPoint, pieSettings.outerRadius, maxPieRadius);\n var maxRadius = pieSettings.maxRadius || Math.sqrt(width * width + height * height) / 2;\n return {\n cx,\n cy,\n innerRadius,\n outerRadius,\n maxRadius\n };\n};\nvar parseDeltaAngle = (startAngle, endAngle) => {\n var sign = mathSign(endAngle - startAngle);\n var deltaAngle = Math.min(Math.abs(endAngle - startAngle), 360);\n return sign * deltaAngle;\n};\nvar renderLabelLineItem = (option, props) => {\n if (/*#__PURE__*/React.isValidElement(option)) {\n // @ts-expect-error we can't know if the type of props matches the element\n return /*#__PURE__*/React.cloneElement(option, props);\n }\n if (typeof option === 'function') {\n return option(props);\n }\n var className = clsx('recharts-pie-label-line', typeof option !== 'boolean' ? option.className : '');\n // React doesn't like it when we spread a key property onto an element\n var {\n key\n } = props,\n otherProps = _objectWithoutProperties(props, _excluded);\n return /*#__PURE__*/React.createElement(Curve, _extends({}, otherProps, {\n type: \"linear\",\n className: className\n }));\n};\nvar renderLabelItem = (option, props, value) => {\n if (/*#__PURE__*/React.isValidElement(option)) {\n // @ts-expect-error element cloning is not typed\n return /*#__PURE__*/React.cloneElement(option, props);\n }\n var label = value;\n if (typeof option === 'function') {\n label = option(props);\n if (/*#__PURE__*/React.isValidElement(label)) {\n return label;\n }\n }\n var className = clsx('recharts-pie-label-text', getClassNameFromUnknown(option));\n return /*#__PURE__*/React.createElement(Text, _extends({}, props, {\n alignmentBaseline: \"middle\",\n className: className\n }), label);\n};\nfunction PieLabels(_ref2) {\n var {\n sectors,\n props,\n showLabels\n } = _ref2;\n var {\n label,\n labelLine,\n dataKey\n } = props;\n if (!showLabels || !label || !sectors) {\n return null;\n }\n var pieProps = svgPropertiesNoEvents(props);\n var customLabelProps = svgPropertiesNoEventsFromUnknown(label);\n var customLabelLineProps = svgPropertiesNoEventsFromUnknown(labelLine);\n var offsetRadius = typeof label === 'object' && 'offsetRadius' in label && typeof label.offsetRadius === 'number' && label.offsetRadius || 20;\n var labels = sectors.map((entry, i) => {\n var midAngle = (entry.startAngle + entry.endAngle) / 2;\n var endPoint = polarToCartesian(entry.cx, entry.cy, entry.outerRadius + offsetRadius, midAngle);\n var labelProps = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, pieProps), entry), {}, {\n // @ts-expect-error customLabelProps is contributing unknown props\n stroke: 'none'\n }, customLabelProps), {}, {\n index: i,\n textAnchor: getTextAnchor(endPoint.x, entry.cx)\n }, endPoint);\n var lineProps = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, pieProps), entry), {}, {\n // @ts-expect-error customLabelLineProps is contributing unknown props\n fill: 'none',\n // @ts-expect-error customLabelLineProps is contributing unknown props\n stroke: entry.fill\n }, customLabelLineProps), {}, {\n index: i,\n points: [polarToCartesian(entry.cx, entry.cy, entry.outerRadius, midAngle), endPoint],\n key: 'line'\n });\n return /*#__PURE__*/React.createElement(ZIndexLayer, {\n zIndex: DefaultZIndexes.label,\n key: \"label-\".concat(entry.startAngle, \"-\").concat(entry.endAngle, \"-\").concat(entry.midAngle, \"-\").concat(i)\n }, /*#__PURE__*/React.createElement(Layer, null, labelLine && renderLabelLineItem(labelLine, lineProps), renderLabelItem(label, labelProps, getValueByDataKey(entry, dataKey))));\n });\n return /*#__PURE__*/React.createElement(Layer, {\n className: \"recharts-pie-labels\"\n }, labels);\n}\nfunction PieLabelList(_ref3) {\n var {\n sectors,\n props,\n showLabels\n } = _ref3;\n var {\n label\n } = props;\n if (typeof label === 'object' && label != null && 'position' in label) {\n return /*#__PURE__*/React.createElement(LabelListFromLabelProp, {\n label: label\n });\n }\n return /*#__PURE__*/React.createElement(PieLabels, {\n sectors: sectors,\n props: props,\n showLabels: showLabels\n });\n}\nfunction PieSectors(props) {\n var {\n sectors,\n activeShape,\n inactiveShape: inactiveShapeProp,\n allOtherPieProps,\n shape,\n id\n } = props;\n var activeIndex = useAppSelector(selectActiveTooltipIndex);\n var activeDataKey = useAppSelector(selectActiveTooltipDataKey);\n var activeGraphicalItemId = useAppSelector(selectActiveTooltipGraphicalItemId);\n var {\n onMouseEnter: onMouseEnterFromProps,\n onClick: onItemClickFromProps,\n onMouseLeave: onMouseLeaveFromProps\n } = allOtherPieProps,\n restOfAllOtherProps = _objectWithoutProperties(allOtherPieProps, _excluded2);\n var onMouseEnterFromContext = useMouseEnterItemDispatch(onMouseEnterFromProps, allOtherPieProps.dataKey, id);\n var onMouseLeaveFromContext = useMouseLeaveItemDispatch(onMouseLeaveFromProps);\n var onClickFromContext = useMouseClickItemDispatch(onItemClickFromProps, allOtherPieProps.dataKey, id);\n if (sectors == null || sectors.length === 0) {\n return null;\n }\n return /*#__PURE__*/React.createElement(React.Fragment, null, sectors.map((entry, i) => {\n if ((entry === null || entry === void 0 ? void 0 : entry.startAngle) === 0 && (entry === null || entry === void 0 ? void 0 : entry.endAngle) === 0 && sectors.length !== 1) return null;\n\n // For Pie charts, when multiple Pies share the same dataKey, we need to ensure only the hovered Pie's sector is active.\n // We do this by checking if the active graphical item ID matches this Pie's ID.\n var graphicalItemMatches = activeGraphicalItemId == null || activeGraphicalItemId === id;\n var isActive = String(i) === activeIndex && (activeDataKey == null || allOtherPieProps.dataKey === activeDataKey) && graphicalItemMatches;\n var inactiveShape = activeIndex ? inactiveShapeProp : null;\n var sectorOptions = activeShape && isActive ? activeShape : inactiveShape;\n var sectorProps = _objectSpread(_objectSpread({}, entry), {}, {\n stroke: entry.stroke,\n tabIndex: -1,\n [DATA_ITEM_INDEX_ATTRIBUTE_NAME]: i,\n [DATA_ITEM_GRAPHICAL_ITEM_ID_ATTRIBUTE_NAME]: id\n });\n return /*#__PURE__*/React.createElement(Layer, _extends({\n key: \"sector-\".concat(entry === null || entry === void 0 ? void 0 : entry.startAngle, \"-\").concat(entry === null || entry === void 0 ? void 0 : entry.endAngle, \"-\").concat(entry.midAngle, \"-\").concat(i),\n tabIndex: -1,\n className: \"recharts-pie-sector\"\n }, adaptEventsOfChild(restOfAllOtherProps, entry, i), {\n onMouseEnter: onMouseEnterFromContext(entry, i),\n onMouseLeave: onMouseLeaveFromContext(entry, i),\n onClick: onClickFromContext(entry, i)\n }), /*#__PURE__*/React.createElement(Shape, _extends({\n option: shape !== null && shape !== void 0 ? shape : sectorOptions,\n index: i,\n shapeType: \"sector\",\n isActive: isActive\n }, sectorProps)));\n }));\n}\nexport function computePieSectors(_ref4) {\n var _pieSettings$paddingA;\n var {\n pieSettings,\n displayedData,\n cells,\n offset\n } = _ref4;\n var {\n cornerRadius,\n startAngle,\n endAngle,\n dataKey,\n nameKey,\n tooltipType\n } = pieSettings;\n var minAngle = Math.abs(pieSettings.minAngle);\n var deltaAngle = parseDeltaAngle(startAngle, endAngle);\n var absDeltaAngle = Math.abs(deltaAngle);\n var paddingAngle = displayedData.length <= 1 ? 0 : (_pieSettings$paddingA = pieSettings.paddingAngle) !== null && _pieSettings$paddingA !== void 0 ? _pieSettings$paddingA : 0;\n var notZeroItemCount = displayedData.filter(entry => getValueByDataKey(entry, dataKey, 0) !== 0).length;\n var totalPaddingAngle = (absDeltaAngle >= 360 ? notZeroItemCount : notZeroItemCount - 1) * paddingAngle;\n var sum = displayedData.reduce((result, entry) => {\n var val = getValueByDataKey(entry, dataKey, 0);\n return result + (isNumber(val) ? val : 0);\n }, 0);\n\n // Only apply minAngle redistribution when at least one non-zero segment's\n // natural angle falls below the minAngle threshold. Otherwise, minAngle\n // unnecessarily shifts all segments even when none need the boost.\n // See: https://github.com/recharts/recharts/issues/6814\n var needsMinAngleAdjustment = minAngle > 0 && sum > 0 && displayedData.some(entry => {\n var val = getValueByDataKey(entry, dataKey, 0);\n var percent = (isNumber(val) ? val : 0) / sum;\n return val !== 0 && percent * absDeltaAngle < minAngle;\n });\n var effectiveMinAngle = needsMinAngleAdjustment ? minAngle : 0;\n var realTotalAngle = absDeltaAngle - notZeroItemCount * effectiveMinAngle - totalPaddingAngle;\n var sectors;\n if (sum > 0) {\n var prev;\n sectors = displayedData.map((entry, i) => {\n var val = getValueByDataKey(entry, dataKey, 0);\n var name = getValueByDataKey(entry, nameKey, i);\n var coordinate = parseCoordinateOfPie(pieSettings, offset, entry);\n var percent = (isNumber(val) ? val : 0) / sum;\n var tempStartAngle;\n\n // @ts-expect-error can't spread unknown\n var entryWithCellInfo = _objectSpread(_objectSpread({}, entry), cells && cells[i] && cells[i].props);\n var sectorColor = entryWithCellInfo != null && 'fill' in entryWithCellInfo && typeof entryWithCellInfo.fill === 'string' ? entryWithCellInfo.fill : pieSettings.fill;\n if (i) {\n tempStartAngle = prev.endAngle + mathSign(deltaAngle) * paddingAngle * (val !== 0 ? 1 : 0);\n } else {\n tempStartAngle = startAngle;\n }\n var tempEndAngle = tempStartAngle + mathSign(deltaAngle) * ((val !== 0 ? effectiveMinAngle : 0) + percent * realTotalAngle);\n var midAngle = (tempStartAngle + tempEndAngle) / 2;\n var middleRadius = (coordinate.innerRadius + coordinate.outerRadius) / 2;\n var tooltipPayload = [{\n name,\n value: val,\n payload: entryWithCellInfo,\n dataKey,\n type: tooltipType,\n color: sectorColor,\n fill: sectorColor,\n graphicalItemId: pieSettings.id\n }];\n var tooltipPosition = polarToCartesian(coordinate.cx, coordinate.cy, middleRadius, midAngle);\n prev = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, pieSettings.presentationProps), {}, {\n percent,\n cornerRadius: typeof cornerRadius === 'string' ? parseFloat(cornerRadius) : cornerRadius,\n name,\n tooltipPayload,\n midAngle,\n middleRadius,\n tooltipPosition\n }, entryWithCellInfo), coordinate), {}, {\n value: val,\n dataKey,\n startAngle: tempStartAngle,\n endAngle: tempEndAngle,\n payload: entryWithCellInfo,\n paddingAngle: val !== 0 ? mathSign(deltaAngle) * paddingAngle : 0\n });\n return prev;\n });\n }\n return sectors;\n}\nfunction PieLabelListProvider(_ref5) {\n var {\n showLabels,\n sectors,\n children\n } = _ref5;\n var labelListEntries = useMemo(() => {\n if (!showLabels || !sectors) {\n return [];\n }\n return sectors.map(entry => ({\n value: entry.value,\n payload: entry.payload,\n clockWise: false,\n parentViewBox: undefined,\n viewBox: {\n cx: entry.cx,\n cy: entry.cy,\n innerRadius: entry.innerRadius,\n outerRadius: entry.outerRadius,\n startAngle: entry.startAngle,\n endAngle: entry.endAngle,\n clockWise: false\n },\n fill: entry.fill\n }));\n }, [sectors, showLabels]);\n return /*#__PURE__*/React.createElement(PolarLabelListContextProvider, {\n value: showLabels ? labelListEntries : undefined\n }, children);\n}\nfunction SectorsWithAnimation(_ref6) {\n var {\n props,\n previousSectorsRef,\n id\n } = _ref6;\n var {\n sectors,\n isAnimationActive,\n animationBegin,\n animationDuration,\n animationEasing,\n activeShape,\n inactiveShape,\n onAnimationStart,\n onAnimationEnd\n } = props;\n var animationId = useAnimationId(props, 'recharts-pie-');\n var prevSectors = previousSectorsRef.current;\n var [isAnimating, setIsAnimating] = useState(false);\n var handleAnimationEnd = useCallback(() => {\n if (typeof onAnimationEnd === 'function') {\n onAnimationEnd();\n }\n setIsAnimating(false);\n }, [onAnimationEnd]);\n var handleAnimationStart = useCallback(() => {\n if (typeof onAnimationStart === 'function') {\n onAnimationStart();\n }\n setIsAnimating(true);\n }, [onAnimationStart]);\n return /*#__PURE__*/React.createElement(PieLabelListProvider, {\n showLabels: !isAnimating,\n sectors: sectors\n }, /*#__PURE__*/React.createElement(JavascriptAnimate, {\n animationId: animationId,\n begin: animationBegin,\n duration: animationDuration,\n isActive: isAnimationActive,\n easing: animationEasing,\n onAnimationStart: handleAnimationStart,\n onAnimationEnd: handleAnimationEnd,\n key: animationId\n }, t => {\n var _first$startAngle;\n var stepData = [];\n var first = sectors && sectors[0];\n var curAngle = (_first$startAngle = first === null || first === void 0 ? void 0 : first.startAngle) !== null && _first$startAngle !== void 0 ? _first$startAngle : 0;\n sectors === null || sectors === void 0 || sectors.forEach((entry, index) => {\n var prev = prevSectors && prevSectors[index];\n var paddingAngle = index > 0 ? get(entry, 'paddingAngle', 0) : 0;\n if (prev) {\n var angle = interpolate(prev.endAngle - prev.startAngle, entry.endAngle - entry.startAngle, t);\n var latest = _objectSpread(_objectSpread({}, entry), {}, {\n startAngle: curAngle + paddingAngle,\n endAngle: curAngle + angle + paddingAngle\n });\n stepData.push(latest);\n curAngle = latest.endAngle;\n } else {\n var {\n endAngle,\n startAngle\n } = entry;\n var deltaAngle = interpolate(0, endAngle - startAngle, t);\n var _latest = _objectSpread(_objectSpread({}, entry), {}, {\n startAngle: curAngle + paddingAngle,\n endAngle: curAngle + deltaAngle + paddingAngle\n });\n stepData.push(_latest);\n curAngle = _latest.endAngle;\n }\n });\n\n // eslint-disable-next-line no-param-reassign\n previousSectorsRef.current = stepData;\n return /*#__PURE__*/React.createElement(Layer, null, /*#__PURE__*/React.createElement(PieSectors, {\n sectors: stepData,\n activeShape: activeShape,\n inactiveShape: inactiveShape,\n allOtherPieProps: props,\n shape: props.shape,\n id: id\n }));\n }), /*#__PURE__*/React.createElement(PieLabelList, {\n showLabels: !isAnimating,\n sectors: sectors,\n props: props\n }), props.children);\n}\nexport var defaultPieProps = {\n animationBegin: 400,\n animationDuration: 1500,\n animationEasing: 'ease',\n cx: '50%',\n cy: '50%',\n dataKey: 'value',\n endAngle: 360,\n fill: '#808080',\n hide: false,\n innerRadius: 0,\n isAnimationActive: 'auto',\n label: false,\n labelLine: true,\n legendType: 'rect',\n minAngle: 0,\n nameKey: 'name',\n outerRadius: '80%',\n paddingAngle: 0,\n rootTabIndex: 0,\n startAngle: 0,\n stroke: '#fff',\n zIndex: DefaultZIndexes.area\n};\nfunction PieImpl(props) {\n var {\n id\n } = props,\n propsWithoutId = _objectWithoutProperties(props, _excluded3);\n var {\n hide,\n className,\n rootTabIndex\n } = props;\n var cells = useMemo(() => findAllByType(props.children, Cell), [props.children]);\n var sectors = useAppSelector(state => selectPieSectors(state, id, cells));\n var previousSectorsRef = useRef(null);\n var layerClass = clsx('recharts-pie', className);\n if (hide || sectors == null) {\n previousSectorsRef.current = null;\n return /*#__PURE__*/React.createElement(Layer, {\n tabIndex: rootTabIndex,\n className: layerClass\n });\n }\n return /*#__PURE__*/React.createElement(ZIndexLayer, {\n zIndex: props.zIndex\n }, /*#__PURE__*/React.createElement(SetPieTooltipEntrySettings, {\n dataKey: props.dataKey,\n nameKey: props.nameKey,\n sectors: sectors,\n stroke: props.stroke,\n strokeWidth: props.strokeWidth,\n fill: props.fill,\n name: props.name,\n hide: props.hide,\n tooltipType: props.tooltipType,\n id: id,\n activeShape: props.activeShape\n }), /*#__PURE__*/React.createElement(Layer, {\n tabIndex: rootTabIndex,\n className: layerClass\n }, /*#__PURE__*/React.createElement(SectorsWithAnimation, {\n props: _objectSpread(_objectSpread({}, propsWithoutId), {}, {\n sectors\n }),\n previousSectorsRef: previousSectorsRef,\n id: id\n })));\n}\n/**\n * @consumes PolarChartContext\n * @provides LabelListContext\n * @provides CellReader\n */\nfunction PieFn(outsideProps) {\n var props = resolveDefaultProps(outsideProps, defaultPieProps);\n var {\n id: externalId\n } = props,\n propsWithoutId = _objectWithoutProperties(props, _excluded4);\n var presentationProps = svgPropertiesNoEvents(propsWithoutId);\n return /*#__PURE__*/React.createElement(RegisterGraphicalItemId, {\n id: externalId,\n type: \"pie\"\n }, id => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SetPolarGraphicalItem, {\n type: \"pie\",\n id: id,\n data: propsWithoutId.data,\n dataKey: propsWithoutId.dataKey,\n hide: propsWithoutId.hide,\n angleAxisId: 0,\n radiusAxisId: 0,\n name: propsWithoutId.name,\n nameKey: propsWithoutId.nameKey,\n tooltipType: propsWithoutId.tooltipType,\n legendType: propsWithoutId.legendType,\n fill: propsWithoutId.fill,\n cx: propsWithoutId.cx,\n cy: propsWithoutId.cy,\n startAngle: propsWithoutId.startAngle,\n endAngle: propsWithoutId.endAngle,\n paddingAngle: propsWithoutId.paddingAngle,\n minAngle: propsWithoutId.minAngle,\n innerRadius: propsWithoutId.innerRadius,\n outerRadius: propsWithoutId.outerRadius,\n cornerRadius: propsWithoutId.cornerRadius,\n presentationProps: presentationProps,\n maxRadius: props.maxRadius\n }), /*#__PURE__*/React.createElement(SetPiePayloadLegend, _extends({}, propsWithoutId, {\n id: id\n })), /*#__PURE__*/React.createElement(PieImpl, _extends({}, propsWithoutId, {\n id: id\n }))));\n}\nexport var Pie = PieFn;\n// @ts-expect-error we need to set the displayName for debugging purposes\nPie.displayName = 'Pie';","import { useEffect } from 'react';\nimport { useAppDispatch } from './hooks';\nimport { updatePolarOptions } from './polarOptionsSlice';\nexport function ReportPolarOptions(props) {\n var dispatch = useAppDispatch();\n useEffect(() => {\n dispatch(updatePolarOptions(props));\n }, [dispatch, props]);\n return null;\n}","var _excluded = [\"layout\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { forwardRef } from 'react';\nimport * as React from 'react';\nimport { RechartsStoreProvider } from '../state/RechartsStoreProvider';\nimport { ChartDataContextProvider } from '../context/chartDataContext';\nimport { ReportMainChartProps } from '../state/ReportMainChartProps';\nimport { ReportChartProps } from '../state/ReportChartProps';\nimport { ReportEventSettings } from '../state/ReportEventSettings';\nimport { ReportPolarOptions } from '../state/ReportPolarOptions';\nimport { CategoricalChart } from './CategoricalChart';\nimport { resolveDefaultProps } from '../util/resolveDefaultProps';\nimport { initialEventSettingsState } from '../state/eventSettingsSlice';\nvar defaultMargin = {\n top: 5,\n right: 5,\n bottom: 5,\n left: 5\n};\n\n/**\n * These default props are the same for all PolarChart components.\n */\nexport var defaultPolarChartProps = _objectSpread({\n accessibilityLayer: true,\n stackOffset: 'none',\n barCategoryGap: '10%',\n barGap: 4,\n margin: defaultMargin,\n reverseStackOrder: false,\n syncMethod: 'index',\n layout: 'radial',\n responsive: false,\n cx: '50%',\n cy: '50%',\n innerRadius: 0,\n outerRadius: '80%'\n}, initialEventSettingsState);\n\n/**\n * These props are required for the PolarChart to function correctly.\n * Users usually would not need to specify these explicitly,\n * because the convenience components like PieChart, RadarChart, etc.\n * will provide these defaults.\n * We can't have the defaults in this file because each of those convenience components\n * have their own opinions about what they should be.\n */\n\n/**\n * These are one-time, immutable options that decide the chart's behavior.\n * Users who wish to call CartesianChart may decide to pass these options explicitly,\n * but usually we would expect that they use one of the convenience components like PieChart, RadarChart, etc.\n */\n\nexport var PolarChart = /*#__PURE__*/forwardRef(function PolarChart(props, ref) {\n var _polarChartProps$id;\n var polarChartProps = resolveDefaultProps(props.categoricalChartProps, defaultPolarChartProps);\n var {\n layout\n } = polarChartProps,\n otherCategoricalProps = _objectWithoutProperties(polarChartProps, _excluded);\n var {\n chartName,\n defaultTooltipEventType,\n validateTooltipEventTypes,\n tooltipPayloadSearcher\n } = props;\n var options = {\n chartName,\n defaultTooltipEventType,\n validateTooltipEventTypes,\n tooltipPayloadSearcher,\n eventEmitter: undefined\n };\n return /*#__PURE__*/React.createElement(RechartsStoreProvider, {\n preloadedState: {\n options\n },\n reduxStoreName: (_polarChartProps$id = polarChartProps.id) !== null && _polarChartProps$id !== void 0 ? _polarChartProps$id : chartName\n }, /*#__PURE__*/React.createElement(ChartDataContextProvider, {\n chartData: polarChartProps.data\n }), /*#__PURE__*/React.createElement(ReportMainChartProps, {\n layout: layout,\n margin: polarChartProps.margin\n }), /*#__PURE__*/React.createElement(ReportEventSettings, {\n throttleDelay: polarChartProps.throttleDelay,\n throttledEvents: polarChartProps.throttledEvents\n }), /*#__PURE__*/React.createElement(ReportChartProps, {\n baseValue: undefined,\n accessibilityLayer: polarChartProps.accessibilityLayer,\n barCategoryGap: polarChartProps.barCategoryGap,\n maxBarSize: polarChartProps.maxBarSize,\n stackOffset: polarChartProps.stackOffset,\n barGap: polarChartProps.barGap,\n barSize: polarChartProps.barSize,\n syncId: polarChartProps.syncId,\n syncMethod: polarChartProps.syncMethod,\n className: polarChartProps.className,\n reverseStackOrder: polarChartProps.reverseStackOrder\n }), /*#__PURE__*/React.createElement(ReportPolarOptions, {\n cx: polarChartProps.cx,\n cy: polarChartProps.cy,\n startAngle: polarChartProps.startAngle,\n endAngle: polarChartProps.endAngle,\n innerRadius: polarChartProps.innerRadius,\n outerRadius: polarChartProps.outerRadius\n }), /*#__PURE__*/React.createElement(CategoricalChart, _extends({}, otherCategoricalProps, {\n ref: ref\n })));\n});","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport * as React from 'react';\nimport { forwardRef } from 'react';\nimport { arrayTooltipSearcher } from '../state/optionsSlice';\nimport { defaultPolarChartProps, PolarChart } from './PolarChart';\nimport { resolveDefaultProps } from '../util/resolveDefaultProps';\nvar allowedTooltipTypes = ['item'];\nexport var defaultPieChartProps = _objectSpread(_objectSpread({}, defaultPolarChartProps), {}, {\n layout: 'centric',\n startAngle: 0,\n endAngle: 360\n});\n\n/**\n * @consumes ResponsiveContainerContext\n * @provides PolarViewBoxContext\n * @provides PolarChartContext\n */\nexport var PieChart = /*#__PURE__*/forwardRef((props, ref) => {\n var propsWithDefaults = resolveDefaultProps(props, defaultPieChartProps);\n return /*#__PURE__*/React.createElement(PolarChart, {\n chartName: \"PieChart\",\n defaultTooltipEventType: \"item\",\n validateTooltipEventTypes: allowedTooltipTypes,\n tooltipPayloadSearcher: arrayTooltipSearcher,\n categoricalChartProps: propsWithDefaults,\n ref: ref\n });\n});","import React, { useMemo } from 'react';\nimport {\n PieChart, Pie, Cell, Tooltip, Legend, ResponsiveContainer\n} from 'recharts';\nimport type { WidgetProps, ChartDataPoint, FieldMappingOverride } from '../types';\nimport { extractChartContract } from '../types';\nimport { useWidgetFetch } from '../hooks/useWidgetFetch';\nimport { aggregateChartData } from '../utils/aggregateChartData';\nimport { WidgetDataGuard } from '../components/WidgetDataGuard';\nimport { resolveChartFields, resolveLabel } from '../utils/resolveChartFields';\n\nimport { DEFAULT_CHART_COLORS } from '../utils/chartColors';\n\nconst ChartDonut: React.FC<WidgetProps> = ({ definition, period, preference }) => {\n const { data, loading, error } = useWidgetFetch<ChartDataPoint[]>(\n definition.widget_id,\n period,\n definition.refresh_policy,\n definition.field_mapping?.rename\n );\n\n const { chartData, valueKey, categoryField, valueLabel } = useMemo(() => {\n if (!data || data.length === 0) return { chartData: [], valueKey: 'value', categoryField: 'name', valueLabel: 'value' };\n const raw = data as Record<string, unknown>[];\n const userOverride = preference.config_json?.fieldMapping as FieldMappingOverride | undefined;\n const { categoryField, valueFields } = resolveChartFields(definition.config_schema, raw, userOverride, definition.field_mapping);\n const mergedAliases = { ...(definition.field_mapping?.aliases ?? {}), ...(userOverride?.aliases ?? {}) };\n const contract = extractChartContract(definition.config_schema);\n\n if (valueFields.length === 1) {\n const processed = aggregateChartData(raw, categoryField, valueFields, contract?.aggregation);\n return { chartData: processed, valueKey: valueFields[0], categoryField, valueLabel: resolveLabel(valueFields[0], mergedAliases) };\n }\n\n // Donut solo muestra 1 valor. Si hay 2+ (no debería pasar si getCompatibleTypes\n // filtró correctamente), suma como fallback defensivo.\n const merged = raw.map(row => {\n const total = valueFields.reduce((sum, k) => {\n const v = row[k];\n return sum + (typeof v === 'number' ? v : 0);\n }, 0);\n return { ...row, total };\n });\n const processed = aggregateChartData(merged, categoryField, ['total'], contract?.aggregation);\n return { chartData: processed, valueKey: 'total', categoryField, valueLabel: 'Total' };\n }, [data, definition.config_schema, definition.field_mapping, preference.config_json]);\n\n return (\n <WidgetDataGuard loading={loading} error={error} data={data}>\n <div className=\"w-full h-full p-4\">\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n <PieChart>\n <Pie data={chartData} innerRadius=\"60%\" outerRadius=\"80%\" paddingAngle={2} dataKey={valueKey} nameKey={categoryField}>\n {chartData.map((_, index) => (\n <Cell key={`cell-${index}`} fill={DEFAULT_CHART_COLORS[index % DEFAULT_CHART_COLORS.length]} />\n ))}\n </Pie>\n <Tooltip\n contentStyle={{ borderRadius: '8px', border: 'none', boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.1)' }}\n formatter={(value) => [value, valueLabel]}\n />\n <Legend verticalAlign=\"middle\" align=\"right\" layout=\"vertical\" wrapperStyle={{ right: 20 }} />\n </PieChart>\n </ResponsiveContainer>\n </div>\n </WidgetDataGuard>\n );\n};\n\nexport default ChartDonut;\n"],"names":["selectUnfilteredPolarItems","state","selectAxisPredicate","createSelector","pickAxisType","pickAxisId","itemAxisPredicate","selectPolarItemsSettings","selectBaseAxis","combineGraphicalItemsSettings","selectPolarGraphicalItemsData","combineGraphicalItemsData","selectPolarDisplayedData","selectChartDataAndAlwaysIgnoreIndexes","combineDisplayedData","selectPolarAppliedValues","combineAppliedValues","data","axisSettings","items","entry","item","_axisSettings$dataKey","valueByDataKey","getValueByDataKey","unsupportedInPolarChart","selectDomainOfAllPolarAppliedNumericalValues","selectAllErrorBarSettings","selectChartDataSliceIgnoringIndexes","combineDomainOfAllAppliedNumericalValuesIncludingErrorValues","selectPolarNumericalDomain","selectDomainDefinition","selectDomainFromUserPreference","selectChartLayout","combineNumericalDomain","selectPolarAxisDomain","selectStackOffsetType","combineAxisDomain","selectPolarNiceTicks","selectRenderableAxisSettings","selectRealScaleType","combineNiceTicks","selectPolarAxisDomainIncludingNiceTicks","combineAxisDomainWithNiceTicks","combineCheckedDomain","ownKeys","r","o","_objectSpread","_defineProperty","_toPropertyKey","t","i","_toPrimitive","e","pickId","_state","id","selectSynchronisedPieSettings","graphicalItems","emptyArray","pickCells","_id","cells","selectDisplayedData","_ref","pieSettings","chartData","displayedData","cell","selectPieLegend","_cells$i","name","color","getTooltipNameProp","selectPieSectors","selectChartOffsetInternal","offset","computePieSectors","_excluded","_excluded2","_excluded3","_excluded4","_extends","n","_objectWithoutProperties","_objectWithoutPropertiesLoose","SetPiePayloadLegend","props","useMemo","findAllByType","Cell","legendPayload","useAppSelector","React","SetPolarLegendPayload","getActiveShapeFill","activeShape","_activeShape$props","_fill","fill","SetPieTooltipEntrySettings","dataKey","nameKey","sectors","stroke","strokeWidth","hide","tooltipType","activeShapeFill","tooltipDataDefinedOnItem","sector","sectorTooltipPayload","tooltipEntrySettings","index","_sectors$Number","SetTooltipEntrySettings","getTextAnchor","x","cx","getOuterRadius","dataPoint","outerRadius","maxPieRadius","getPercentValue","parseCoordinateOfPie","top","left","width","height","getMaxRadius","cy","innerRadius","maxRadius","parseDeltaAngle","startAngle","endAngle","sign","mathSign","deltaAngle","renderLabelLineItem","option","className","clsx","key","otherProps","Curve","renderLabelItem","value","label","getClassNameFromUnknown","Text","PieLabels","_ref2","showLabels","labelLine","pieProps","svgPropertiesNoEvents","customLabelProps","svgPropertiesNoEventsFromUnknown","customLabelLineProps","offsetRadius","labels","midAngle","endPoint","polarToCartesian","labelProps","lineProps","ZIndexLayer","DefaultZIndexes","Layer","PieLabelList","_ref3","LabelListFromLabelProp","PieSectors","inactiveShapeProp","allOtherPieProps","shape","activeIndex","selectActiveTooltipIndex","activeDataKey","selectActiveTooltipDataKey","activeGraphicalItemId","selectActiveTooltipGraphicalItemId","onMouseEnterFromProps","onItemClickFromProps","onMouseLeaveFromProps","restOfAllOtherProps","onMouseEnterFromContext","useMouseEnterItemDispatch","onMouseLeaveFromContext","useMouseLeaveItemDispatch","onClickFromContext","useMouseClickItemDispatch","graphicalItemMatches","isActive","inactiveShape","sectorOptions","sectorProps","DATA_ITEM_INDEX_ATTRIBUTE_NAME","DATA_ITEM_GRAPHICAL_ITEM_ID_ATTRIBUTE_NAME","adaptEventsOfChild","Shape","_ref4","_pieSettings$paddingA","cornerRadius","minAngle","absDeltaAngle","paddingAngle","notZeroItemCount","totalPaddingAngle","sum","result","val","isNumber","needsMinAngleAdjustment","percent","effectiveMinAngle","realTotalAngle","prev","coordinate","tempStartAngle","entryWithCellInfo","sectorColor","tempEndAngle","middleRadius","tooltipPayload","tooltipPosition","PieLabelListProvider","_ref5","children","labelListEntries","PolarLabelListContextProvider","SectorsWithAnimation","_ref6","previousSectorsRef","isAnimationActive","animationBegin","animationDuration","animationEasing","onAnimationStart","onAnimationEnd","animationId","useAnimationId","prevSectors","isAnimating","setIsAnimating","useState","handleAnimationEnd","useCallback","handleAnimationStart","JavascriptAnimate","_first$startAngle","stepData","first","curAngle","get","angle","interpolate","latest","_latest","defaultPieProps","PieImpl","propsWithoutId","rootTabIndex","useRef","layerClass","PieFn","outsideProps","resolveDefaultProps","externalId","presentationProps","RegisterGraphicalItemId","SetPolarGraphicalItem","Pie","ReportPolarOptions","dispatch","useAppDispatch","useEffect","updatePolarOptions","defaultMargin","defaultPolarChartProps","initialEventSettingsState","PolarChart","forwardRef","ref","_polarChartProps$id","polarChartProps","layout","otherCategoricalProps","chartName","defaultTooltipEventType","validateTooltipEventTypes","tooltipPayloadSearcher","options","RechartsStoreProvider","ChartDataContextProvider","ReportMainChartProps","ReportEventSettings","ReportChartProps","CategoricalChart","allowedTooltipTypes","defaultPieChartProps","PieChart","propsWithDefaults","arrayTooltipSearcher","ChartDonut","definition","period","preference","loading","error","useWidgetFetch","valueKey","categoryField","valueLabel","raw","userOverride","valueFields","resolveChartFields","mergedAliases","contract","extractChartContract","aggregateChartData","resolveLabel","merged","row","total","k","v","WidgetDataGuard","jsx","ResponsiveContainer","_","DEFAULT_CHART_COLORS","Tooltip","Legend"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5]}
1
+ {"version":3,"file":"ChartDonut-BSE8fjqa.js","sources":["../node_modules/recharts/es6/state/selectors/polarSelectors.js","../node_modules/recharts/es6/state/selectors/pieSelectors.js","../node_modules/recharts/es6/polar/Pie.js","../node_modules/recharts/es6/state/ReportPolarOptions.js","../node_modules/recharts/es6/chart/PolarChart.js","../node_modules/recharts/es6/chart/PieChart.js","../src/dashboard/widgets/ChartDonut.tsx"],"sourcesContent":["import { createSelector } from 'reselect';\nimport { selectChartDataAndAlwaysIgnoreIndexes, selectChartDataSliceIgnoringIndexes } from './dataSelectors';\nimport { combineAppliedValues, combineAxisDomain, combineAxisDomainWithNiceTicks, combineDisplayedData, combineDomainOfAllAppliedNumericalValuesIncludingErrorValues, combineGraphicalItemsData, combineGraphicalItemsSettings, combineNiceTicks, combineNumericalDomain, itemAxisPredicate, selectAllErrorBarSettings, selectBaseAxis, selectDomainDefinition, selectDomainFromUserPreference, selectRealScaleType, selectRenderableAxisSettings } from './axisSelectors';\nimport { selectChartLayout } from '../../context/chartLayoutContext';\nimport { getValueByDataKey } from '../../util/ChartUtils';\nimport { pickAxisType } from './pickAxisType';\nimport { pickAxisId } from './pickAxisId';\nimport { selectStackOffsetType } from './rootPropsSelectors';\nimport { combineCheckedDomain } from './combiners/combineCheckedDomain';\nexport var selectUnfilteredPolarItems = state => state.graphicalItems.polarItems;\nvar selectAxisPredicate = createSelector([pickAxisType, pickAxisId], itemAxisPredicate);\nexport var selectPolarItemsSettings = createSelector([selectUnfilteredPolarItems, selectBaseAxis, selectAxisPredicate], combineGraphicalItemsSettings);\nvar selectPolarGraphicalItemsData = createSelector([selectPolarItemsSettings], combineGraphicalItemsData);\nexport var selectPolarDisplayedData = createSelector([selectPolarGraphicalItemsData, selectChartDataAndAlwaysIgnoreIndexes], combineDisplayedData);\nexport var selectPolarAppliedValues = createSelector([selectPolarDisplayedData, selectBaseAxis, selectPolarItemsSettings], combineAppliedValues);\nexport var selectAllPolarAppliedNumericalValues = createSelector([selectPolarDisplayedData, selectBaseAxis, selectPolarItemsSettings], (data, axisSettings, items) => {\n if (items.length > 0) {\n return data.flatMap(entry => {\n return items.flatMap(item => {\n var _axisSettings$dataKey;\n var valueByDataKey = getValueByDataKey(entry, (_axisSettings$dataKey = axisSettings.dataKey) !== null && _axisSettings$dataKey !== void 0 ? _axisSettings$dataKey : item.dataKey);\n return {\n value: valueByDataKey,\n errorDomain: [] // polar charts do not have error bars\n };\n });\n }).filter(Boolean);\n }\n if ((axisSettings === null || axisSettings === void 0 ? void 0 : axisSettings.dataKey) != null) {\n return data.map(item => ({\n value: getValueByDataKey(item, axisSettings.dataKey),\n errorDomain: []\n }));\n }\n return data.map(entry => ({\n value: entry,\n errorDomain: []\n }));\n});\nvar unsupportedInPolarChart = () => undefined;\nvar selectDomainOfAllPolarAppliedNumericalValues = createSelector([selectPolarDisplayedData, selectBaseAxis, selectPolarItemsSettings, selectAllErrorBarSettings, pickAxisType, selectChartDataSliceIgnoringIndexes], combineDomainOfAllAppliedNumericalValuesIncludingErrorValues);\nvar selectPolarNumericalDomain = createSelector([selectBaseAxis, selectDomainDefinition, selectDomainFromUserPreference, unsupportedInPolarChart, selectDomainOfAllPolarAppliedNumericalValues, unsupportedInPolarChart, selectChartLayout, pickAxisType], combineNumericalDomain);\nexport var selectPolarAxisDomain = createSelector([selectBaseAxis, selectChartLayout, selectPolarDisplayedData, selectPolarAppliedValues, selectStackOffsetType, pickAxisType, selectPolarNumericalDomain], combineAxisDomain);\nexport var selectPolarNiceTicks = createSelector([selectPolarAxisDomain, selectRenderableAxisSettings, selectRealScaleType], combineNiceTicks);\nexport var selectPolarAxisDomainIncludingNiceTicks = createSelector([selectBaseAxis, selectPolarAxisDomain, selectPolarNiceTicks, pickAxisType], combineAxisDomainWithNiceTicks);\nexport var selectPolarAxisCheckedDomain = createSelector([selectRealScaleType, selectPolarAxisDomainIncludingNiceTicks], combineCheckedDomain);","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { createSelector } from 'reselect';\nimport { computePieSectors } from '../../polar/Pie';\nimport { selectChartDataAndAlwaysIgnoreIndexes } from './dataSelectors';\nimport { selectChartOffsetInternal } from './selectChartOffsetInternal';\nimport { getTooltipNameProp, getValueByDataKey } from '../../util/ChartUtils';\nimport { selectUnfilteredPolarItems } from './polarSelectors';\nvar pickId = (_state, id) => id;\nvar selectSynchronisedPieSettings = createSelector([selectUnfilteredPolarItems, pickId], (graphicalItems, id) => graphicalItems.filter(item => item.type === 'pie').find(item => item.id === id));\n\n// Keep stable reference to an empty array to prevent re-renders\nvar emptyArray = [];\nvar pickCells = (_state, _id, cells) => {\n if ((cells === null || cells === void 0 ? void 0 : cells.length) === 0) {\n return emptyArray;\n }\n return cells;\n};\nexport var selectDisplayedData = createSelector([selectChartDataAndAlwaysIgnoreIndexes, selectSynchronisedPieSettings, pickCells], (_ref, pieSettings, cells) => {\n var {\n chartData\n } = _ref;\n if (pieSettings == null) {\n return undefined;\n }\n var displayedData;\n if ((pieSettings === null || pieSettings === void 0 ? void 0 : pieSettings.data) != null && pieSettings.data.length > 0) {\n displayedData = pieSettings.data;\n } else {\n displayedData = chartData;\n }\n if ((!displayedData || !displayedData.length) && cells != null) {\n displayedData = cells.map(cell => _objectSpread(_objectSpread({}, pieSettings.presentationProps), cell.props));\n }\n if (displayedData == null) {\n return undefined;\n }\n return displayedData;\n});\nexport var selectPieLegend = createSelector([selectDisplayedData, selectSynchronisedPieSettings, pickCells], (displayedData, pieSettings, cells) => {\n if (displayedData == null || pieSettings == null) {\n return undefined;\n }\n return displayedData.map((entry, i) => {\n var _cells$i;\n var name = getValueByDataKey(entry, pieSettings.nameKey, pieSettings.name);\n var color;\n if (cells !== null && cells !== void 0 && (_cells$i = cells[i]) !== null && _cells$i !== void 0 && (_cells$i = _cells$i.props) !== null && _cells$i !== void 0 && _cells$i.fill) {\n color = cells[i].props.fill;\n } else if (typeof entry === 'object' && entry != null && 'fill' in entry) {\n color = entry.fill;\n } else {\n color = pieSettings.fill;\n }\n return {\n value: getTooltipNameProp(name, pieSettings.dataKey),\n color,\n // @ts-expect-error Legend payload.payload says it wants objects but our data can be unknown\n payload: entry,\n type: pieSettings.legendType\n };\n });\n});\nexport var selectPieSectors = createSelector([selectDisplayedData, selectSynchronisedPieSettings, pickCells, selectChartOffsetInternal], (displayedData, pieSettings, cells, offset) => {\n if (pieSettings == null || displayedData == null) {\n return undefined;\n }\n return computePieSectors({\n offset,\n pieSettings,\n displayedData,\n cells\n });\n});","var _excluded = [\"key\"],\n _excluded2 = [\"onMouseEnter\", \"onClick\", \"onMouseLeave\"],\n _excluded3 = [\"id\"],\n _excluded4 = [\"id\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport * as React from 'react';\nimport { useCallback, useMemo, useRef, useState } from 'react';\nimport get from 'es-toolkit/compat/get';\nimport { clsx } from 'clsx';\nimport { selectPieLegend, selectPieSectors } from '../state/selectors/pieSelectors';\nimport { useAppSelector } from '../state/hooks';\nimport { Layer } from '../container/Layer';\nimport { Curve } from '../shape/Curve';\nimport { Text } from '../component/Text';\nimport { Cell } from '../component/Cell';\nimport { findAllByType } from '../util/ReactUtils';\nimport { getMaxRadius, polarToCartesian } from '../util/PolarUtils';\nimport { getPercentValue, interpolate, isNumber, mathSign } from '../util/DataUtils';\nimport { getTooltipNameProp, getValueByDataKey } from '../util/ChartUtils';\nimport { adaptEventsOfChild } from '../util/types';\nimport { Shape } from '../util/ActiveShapeUtils';\nimport { useMouseClickItemDispatch, useMouseEnterItemDispatch, useMouseLeaveItemDispatch } from '../context/tooltipContext';\nimport { SetTooltipEntrySettings } from '../state/SetTooltipEntrySettings';\nimport { selectActiveTooltipDataKey, selectActiveTooltipGraphicalItemId, selectActiveTooltipIndex } from '../state/selectors/tooltipSelectors';\nimport { SetPolarLegendPayload } from '../state/SetLegendPayload';\nimport { DATA_ITEM_GRAPHICAL_ITEM_ID_ATTRIBUTE_NAME, DATA_ITEM_INDEX_ATTRIBUTE_NAME } from '../util/Constants';\nimport { useAnimationId } from '../util/useAnimationId';\nimport { resolveDefaultProps } from '../util/resolveDefaultProps';\nimport { RegisterGraphicalItemId } from '../context/RegisterGraphicalItemId';\nimport { SetPolarGraphicalItem } from '../state/SetGraphicalItem';\nimport { svgPropertiesNoEvents, svgPropertiesNoEventsFromUnknown } from '../util/svgPropertiesNoEvents';\nimport { JavascriptAnimate } from '../animation/JavascriptAnimate';\nimport { LabelListFromLabelProp, PolarLabelListContextProvider } from '../component/LabelList';\nimport { ZIndexLayer } from '../zIndex/ZIndexLayer';\nimport { DefaultZIndexes } from '../zIndex/DefaultZIndexes';\nimport { getClassNameFromUnknown } from '../util/getClassNameFromUnknown';\n\n/**\n * The `label` prop in Pie accepts a variety of alternatives.\n */\n\n/**\n * We spread the data object into the sector data item,\n * so we can't really know what is going to be inside.\n *\n * This type represents our best effort, but it all depends on the input data\n * and what is inside of it.\n *\n * https://github.com/recharts/recharts/issues/6380\n * https://github.com/recharts/recharts/discussions/6375\n */\n\n/**\n * Internal props, combination of external props + defaultProps + private Recharts state\n */\n\nfunction SetPiePayloadLegend(props) {\n var cells = useMemo(() => findAllByType(props.children, Cell), [props.children]);\n var legendPayload = useAppSelector(state => selectPieLegend(state, props.id, cells));\n if (legendPayload == null) {\n return null;\n }\n return /*#__PURE__*/React.createElement(SetPolarLegendPayload, {\n legendPayload: legendPayload\n });\n}\nfunction getActiveShapeFill(activeShape) {\n // activeShape can be boolean/function/element/object; only element/object can carry a static fill value.\n if (activeShape == null || typeof activeShape === 'boolean' || typeof activeShape === 'function') {\n return undefined;\n }\n if (/*#__PURE__*/React.isValidElement(activeShape)) {\n var _activeShape$props;\n // React element form: <Sector fill=\"...\"/> or custom element with fill prop.\n var _fill = (_activeShape$props = activeShape.props) === null || _activeShape$props === void 0 ? void 0 : _activeShape$props.fill;\n return typeof _fill === 'string' ? _fill : undefined;\n }\n var {\n fill\n } = activeShape;\n return typeof fill === 'string' ? fill : undefined;\n}\nvar SetPieTooltipEntrySettings = /*#__PURE__*/React.memo(_ref => {\n var {\n dataKey,\n nameKey,\n sectors,\n stroke,\n strokeWidth,\n fill,\n name,\n hide,\n tooltipType,\n id,\n activeShape\n } = _ref;\n var activeShapeFill = getActiveShapeFill(activeShape);\n var tooltipDataDefinedOnItem = sectors.map(sector => {\n var sectorTooltipPayload = sector.tooltipPayload;\n if (activeShapeFill == null || sectorTooltipPayload == null) {\n return sectorTooltipPayload;\n }\n return sectorTooltipPayload.map(item => _objectSpread(_objectSpread({}, item), {}, {\n color: activeShapeFill,\n fill: activeShapeFill\n }));\n });\n var tooltipEntrySettings = {\n dataDefinedOnItem: tooltipDataDefinedOnItem,\n getPosition: index => {\n var _sectors$Number;\n return (_sectors$Number = sectors[Number(index)]) === null || _sectors$Number === void 0 ? void 0 : _sectors$Number.tooltipPosition;\n },\n settings: {\n stroke,\n strokeWidth,\n fill,\n dataKey,\n nameKey,\n name: getTooltipNameProp(name, dataKey),\n hide,\n type: tooltipType,\n color: fill,\n unit: '',\n // why doesn't Pie support unit?\n graphicalItemId: id\n }\n };\n return /*#__PURE__*/React.createElement(SetTooltipEntrySettings, {\n tooltipEntrySettings: tooltipEntrySettings\n });\n});\nvar getTextAnchor = (x, cx) => {\n if (x > cx) {\n return 'start';\n }\n if (x < cx) {\n return 'end';\n }\n return 'middle';\n};\nvar getOuterRadius = (dataPoint, outerRadius, maxPieRadius) => {\n if (typeof outerRadius === 'function') {\n return getPercentValue(outerRadius(dataPoint), maxPieRadius, maxPieRadius * 0.8);\n }\n return getPercentValue(outerRadius, maxPieRadius, maxPieRadius * 0.8);\n};\nvar parseCoordinateOfPie = (pieSettings, offset, dataPoint) => {\n var {\n top,\n left,\n width,\n height\n } = offset;\n var maxPieRadius = getMaxRadius(width, height);\n var cx = left + getPercentValue(pieSettings.cx, width, width / 2);\n var cy = top + getPercentValue(pieSettings.cy, height, height / 2);\n var innerRadius = getPercentValue(pieSettings.innerRadius, maxPieRadius, 0);\n var outerRadius = getOuterRadius(dataPoint, pieSettings.outerRadius, maxPieRadius);\n var maxRadius = pieSettings.maxRadius || Math.sqrt(width * width + height * height) / 2;\n return {\n cx,\n cy,\n innerRadius,\n outerRadius,\n maxRadius\n };\n};\nvar parseDeltaAngle = (startAngle, endAngle) => {\n var sign = mathSign(endAngle - startAngle);\n var deltaAngle = Math.min(Math.abs(endAngle - startAngle), 360);\n return sign * deltaAngle;\n};\nvar renderLabelLineItem = (option, props) => {\n if (/*#__PURE__*/React.isValidElement(option)) {\n // @ts-expect-error we can't know if the type of props matches the element\n return /*#__PURE__*/React.cloneElement(option, props);\n }\n if (typeof option === 'function') {\n return option(props);\n }\n var className = clsx('recharts-pie-label-line', typeof option !== 'boolean' ? option.className : '');\n // React doesn't like it when we spread a key property onto an element\n var {\n key\n } = props,\n otherProps = _objectWithoutProperties(props, _excluded);\n return /*#__PURE__*/React.createElement(Curve, _extends({}, otherProps, {\n type: \"linear\",\n className: className\n }));\n};\nvar renderLabelItem = (option, props, value) => {\n if (/*#__PURE__*/React.isValidElement(option)) {\n // @ts-expect-error element cloning is not typed\n return /*#__PURE__*/React.cloneElement(option, props);\n }\n var label = value;\n if (typeof option === 'function') {\n label = option(props);\n if (/*#__PURE__*/React.isValidElement(label)) {\n return label;\n }\n }\n var className = clsx('recharts-pie-label-text', getClassNameFromUnknown(option));\n return /*#__PURE__*/React.createElement(Text, _extends({}, props, {\n alignmentBaseline: \"middle\",\n className: className\n }), label);\n};\nfunction PieLabels(_ref2) {\n var {\n sectors,\n props,\n showLabels\n } = _ref2;\n var {\n label,\n labelLine,\n dataKey\n } = props;\n if (!showLabels || !label || !sectors) {\n return null;\n }\n var pieProps = svgPropertiesNoEvents(props);\n var customLabelProps = svgPropertiesNoEventsFromUnknown(label);\n var customLabelLineProps = svgPropertiesNoEventsFromUnknown(labelLine);\n var offsetRadius = typeof label === 'object' && 'offsetRadius' in label && typeof label.offsetRadius === 'number' && label.offsetRadius || 20;\n var labels = sectors.map((entry, i) => {\n var midAngle = (entry.startAngle + entry.endAngle) / 2;\n var endPoint = polarToCartesian(entry.cx, entry.cy, entry.outerRadius + offsetRadius, midAngle);\n var labelProps = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, pieProps), entry), {}, {\n // @ts-expect-error customLabelProps is contributing unknown props\n stroke: 'none'\n }, customLabelProps), {}, {\n index: i,\n textAnchor: getTextAnchor(endPoint.x, entry.cx)\n }, endPoint);\n var lineProps = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, pieProps), entry), {}, {\n // @ts-expect-error customLabelLineProps is contributing unknown props\n fill: 'none',\n // @ts-expect-error customLabelLineProps is contributing unknown props\n stroke: entry.fill\n }, customLabelLineProps), {}, {\n index: i,\n points: [polarToCartesian(entry.cx, entry.cy, entry.outerRadius, midAngle), endPoint],\n key: 'line'\n });\n return /*#__PURE__*/React.createElement(ZIndexLayer, {\n zIndex: DefaultZIndexes.label,\n key: \"label-\".concat(entry.startAngle, \"-\").concat(entry.endAngle, \"-\").concat(entry.midAngle, \"-\").concat(i)\n }, /*#__PURE__*/React.createElement(Layer, null, labelLine && renderLabelLineItem(labelLine, lineProps), renderLabelItem(label, labelProps, getValueByDataKey(entry, dataKey))));\n });\n return /*#__PURE__*/React.createElement(Layer, {\n className: \"recharts-pie-labels\"\n }, labels);\n}\nfunction PieLabelList(_ref3) {\n var {\n sectors,\n props,\n showLabels\n } = _ref3;\n var {\n label\n } = props;\n if (typeof label === 'object' && label != null && 'position' in label) {\n return /*#__PURE__*/React.createElement(LabelListFromLabelProp, {\n label: label\n });\n }\n return /*#__PURE__*/React.createElement(PieLabels, {\n sectors: sectors,\n props: props,\n showLabels: showLabels\n });\n}\nfunction PieSectors(props) {\n var {\n sectors,\n activeShape,\n inactiveShape: inactiveShapeProp,\n allOtherPieProps,\n shape,\n id\n } = props;\n var activeIndex = useAppSelector(selectActiveTooltipIndex);\n var activeDataKey = useAppSelector(selectActiveTooltipDataKey);\n var activeGraphicalItemId = useAppSelector(selectActiveTooltipGraphicalItemId);\n var {\n onMouseEnter: onMouseEnterFromProps,\n onClick: onItemClickFromProps,\n onMouseLeave: onMouseLeaveFromProps\n } = allOtherPieProps,\n restOfAllOtherProps = _objectWithoutProperties(allOtherPieProps, _excluded2);\n var onMouseEnterFromContext = useMouseEnterItemDispatch(onMouseEnterFromProps, allOtherPieProps.dataKey, id);\n var onMouseLeaveFromContext = useMouseLeaveItemDispatch(onMouseLeaveFromProps);\n var onClickFromContext = useMouseClickItemDispatch(onItemClickFromProps, allOtherPieProps.dataKey, id);\n if (sectors == null || sectors.length === 0) {\n return null;\n }\n return /*#__PURE__*/React.createElement(React.Fragment, null, sectors.map((entry, i) => {\n if ((entry === null || entry === void 0 ? void 0 : entry.startAngle) === 0 && (entry === null || entry === void 0 ? void 0 : entry.endAngle) === 0 && sectors.length !== 1) return null;\n\n // For Pie charts, when multiple Pies share the same dataKey, we need to ensure only the hovered Pie's sector is active.\n // We do this by checking if the active graphical item ID matches this Pie's ID.\n var graphicalItemMatches = activeGraphicalItemId == null || activeGraphicalItemId === id;\n var isActive = String(i) === activeIndex && (activeDataKey == null || allOtherPieProps.dataKey === activeDataKey) && graphicalItemMatches;\n var inactiveShape = activeIndex ? inactiveShapeProp : null;\n var sectorOptions = activeShape && isActive ? activeShape : inactiveShape;\n var sectorProps = _objectSpread(_objectSpread({}, entry), {}, {\n stroke: entry.stroke,\n tabIndex: -1,\n [DATA_ITEM_INDEX_ATTRIBUTE_NAME]: i,\n [DATA_ITEM_GRAPHICAL_ITEM_ID_ATTRIBUTE_NAME]: id\n });\n return /*#__PURE__*/React.createElement(Layer, _extends({\n key: \"sector-\".concat(entry === null || entry === void 0 ? void 0 : entry.startAngle, \"-\").concat(entry === null || entry === void 0 ? void 0 : entry.endAngle, \"-\").concat(entry.midAngle, \"-\").concat(i),\n tabIndex: -1,\n className: \"recharts-pie-sector\"\n }, adaptEventsOfChild(restOfAllOtherProps, entry, i), {\n onMouseEnter: onMouseEnterFromContext(entry, i),\n onMouseLeave: onMouseLeaveFromContext(entry, i),\n onClick: onClickFromContext(entry, i)\n }), /*#__PURE__*/React.createElement(Shape, _extends({\n option: shape !== null && shape !== void 0 ? shape : sectorOptions,\n index: i,\n shapeType: \"sector\",\n isActive: isActive\n }, sectorProps)));\n }));\n}\nexport function computePieSectors(_ref4) {\n var _pieSettings$paddingA;\n var {\n pieSettings,\n displayedData,\n cells,\n offset\n } = _ref4;\n var {\n cornerRadius,\n startAngle,\n endAngle,\n dataKey,\n nameKey,\n tooltipType\n } = pieSettings;\n var minAngle = Math.abs(pieSettings.minAngle);\n var deltaAngle = parseDeltaAngle(startAngle, endAngle);\n var absDeltaAngle = Math.abs(deltaAngle);\n var paddingAngle = displayedData.length <= 1 ? 0 : (_pieSettings$paddingA = pieSettings.paddingAngle) !== null && _pieSettings$paddingA !== void 0 ? _pieSettings$paddingA : 0;\n var notZeroItemCount = displayedData.filter(entry => getValueByDataKey(entry, dataKey, 0) !== 0).length;\n var totalPaddingAngle = (absDeltaAngle >= 360 ? notZeroItemCount : notZeroItemCount - 1) * paddingAngle;\n var sum = displayedData.reduce((result, entry) => {\n var val = getValueByDataKey(entry, dataKey, 0);\n return result + (isNumber(val) ? val : 0);\n }, 0);\n\n // Only apply minAngle redistribution when at least one non-zero segment's\n // natural angle falls below the minAngle threshold. Otherwise, minAngle\n // unnecessarily shifts all segments even when none need the boost.\n // See: https://github.com/recharts/recharts/issues/6814\n var needsMinAngleAdjustment = minAngle > 0 && sum > 0 && displayedData.some(entry => {\n var val = getValueByDataKey(entry, dataKey, 0);\n var percent = (isNumber(val) ? val : 0) / sum;\n return val !== 0 && percent * absDeltaAngle < minAngle;\n });\n var effectiveMinAngle = needsMinAngleAdjustment ? minAngle : 0;\n var realTotalAngle = absDeltaAngle - notZeroItemCount * effectiveMinAngle - totalPaddingAngle;\n var sectors;\n if (sum > 0) {\n var prev;\n sectors = displayedData.map((entry, i) => {\n var val = getValueByDataKey(entry, dataKey, 0);\n var name = getValueByDataKey(entry, nameKey, i);\n var coordinate = parseCoordinateOfPie(pieSettings, offset, entry);\n var percent = (isNumber(val) ? val : 0) / sum;\n var tempStartAngle;\n\n // @ts-expect-error can't spread unknown\n var entryWithCellInfo = _objectSpread(_objectSpread({}, entry), cells && cells[i] && cells[i].props);\n var sectorColor = entryWithCellInfo != null && 'fill' in entryWithCellInfo && typeof entryWithCellInfo.fill === 'string' ? entryWithCellInfo.fill : pieSettings.fill;\n if (i) {\n tempStartAngle = prev.endAngle + mathSign(deltaAngle) * paddingAngle * (val !== 0 ? 1 : 0);\n } else {\n tempStartAngle = startAngle;\n }\n var tempEndAngle = tempStartAngle + mathSign(deltaAngle) * ((val !== 0 ? effectiveMinAngle : 0) + percent * realTotalAngle);\n var midAngle = (tempStartAngle + tempEndAngle) / 2;\n var middleRadius = (coordinate.innerRadius + coordinate.outerRadius) / 2;\n var tooltipPayload = [{\n name,\n value: val,\n payload: entryWithCellInfo,\n dataKey,\n type: tooltipType,\n color: sectorColor,\n fill: sectorColor,\n graphicalItemId: pieSettings.id\n }];\n var tooltipPosition = polarToCartesian(coordinate.cx, coordinate.cy, middleRadius, midAngle);\n prev = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, pieSettings.presentationProps), {}, {\n percent,\n cornerRadius: typeof cornerRadius === 'string' ? parseFloat(cornerRadius) : cornerRadius,\n name,\n tooltipPayload,\n midAngle,\n middleRadius,\n tooltipPosition\n }, entryWithCellInfo), coordinate), {}, {\n value: val,\n dataKey,\n startAngle: tempStartAngle,\n endAngle: tempEndAngle,\n payload: entryWithCellInfo,\n paddingAngle: val !== 0 ? mathSign(deltaAngle) * paddingAngle : 0\n });\n return prev;\n });\n }\n return sectors;\n}\nfunction PieLabelListProvider(_ref5) {\n var {\n showLabels,\n sectors,\n children\n } = _ref5;\n var labelListEntries = useMemo(() => {\n if (!showLabels || !sectors) {\n return [];\n }\n return sectors.map(entry => ({\n value: entry.value,\n payload: entry.payload,\n clockWise: false,\n parentViewBox: undefined,\n viewBox: {\n cx: entry.cx,\n cy: entry.cy,\n innerRadius: entry.innerRadius,\n outerRadius: entry.outerRadius,\n startAngle: entry.startAngle,\n endAngle: entry.endAngle,\n clockWise: false\n },\n fill: entry.fill\n }));\n }, [sectors, showLabels]);\n return /*#__PURE__*/React.createElement(PolarLabelListContextProvider, {\n value: showLabels ? labelListEntries : undefined\n }, children);\n}\nfunction SectorsWithAnimation(_ref6) {\n var {\n props,\n previousSectorsRef,\n id\n } = _ref6;\n var {\n sectors,\n isAnimationActive,\n animationBegin,\n animationDuration,\n animationEasing,\n activeShape,\n inactiveShape,\n onAnimationStart,\n onAnimationEnd\n } = props;\n var animationId = useAnimationId(props, 'recharts-pie-');\n var prevSectors = previousSectorsRef.current;\n var [isAnimating, setIsAnimating] = useState(false);\n var handleAnimationEnd = useCallback(() => {\n if (typeof onAnimationEnd === 'function') {\n onAnimationEnd();\n }\n setIsAnimating(false);\n }, [onAnimationEnd]);\n var handleAnimationStart = useCallback(() => {\n if (typeof onAnimationStart === 'function') {\n onAnimationStart();\n }\n setIsAnimating(true);\n }, [onAnimationStart]);\n return /*#__PURE__*/React.createElement(PieLabelListProvider, {\n showLabels: !isAnimating,\n sectors: sectors\n }, /*#__PURE__*/React.createElement(JavascriptAnimate, {\n animationId: animationId,\n begin: animationBegin,\n duration: animationDuration,\n isActive: isAnimationActive,\n easing: animationEasing,\n onAnimationStart: handleAnimationStart,\n onAnimationEnd: handleAnimationEnd,\n key: animationId\n }, t => {\n var _first$startAngle;\n var stepData = [];\n var first = sectors && sectors[0];\n var curAngle = (_first$startAngle = first === null || first === void 0 ? void 0 : first.startAngle) !== null && _first$startAngle !== void 0 ? _first$startAngle : 0;\n sectors === null || sectors === void 0 || sectors.forEach((entry, index) => {\n var prev = prevSectors && prevSectors[index];\n var paddingAngle = index > 0 ? get(entry, 'paddingAngle', 0) : 0;\n if (prev) {\n var angle = interpolate(prev.endAngle - prev.startAngle, entry.endAngle - entry.startAngle, t);\n var latest = _objectSpread(_objectSpread({}, entry), {}, {\n startAngle: curAngle + paddingAngle,\n endAngle: curAngle + angle + paddingAngle\n });\n stepData.push(latest);\n curAngle = latest.endAngle;\n } else {\n var {\n endAngle,\n startAngle\n } = entry;\n var deltaAngle = interpolate(0, endAngle - startAngle, t);\n var _latest = _objectSpread(_objectSpread({}, entry), {}, {\n startAngle: curAngle + paddingAngle,\n endAngle: curAngle + deltaAngle + paddingAngle\n });\n stepData.push(_latest);\n curAngle = _latest.endAngle;\n }\n });\n\n // eslint-disable-next-line no-param-reassign\n previousSectorsRef.current = stepData;\n return /*#__PURE__*/React.createElement(Layer, null, /*#__PURE__*/React.createElement(PieSectors, {\n sectors: stepData,\n activeShape: activeShape,\n inactiveShape: inactiveShape,\n allOtherPieProps: props,\n shape: props.shape,\n id: id\n }));\n }), /*#__PURE__*/React.createElement(PieLabelList, {\n showLabels: !isAnimating,\n sectors: sectors,\n props: props\n }), props.children);\n}\nexport var defaultPieProps = {\n animationBegin: 400,\n animationDuration: 1500,\n animationEasing: 'ease',\n cx: '50%',\n cy: '50%',\n dataKey: 'value',\n endAngle: 360,\n fill: '#808080',\n hide: false,\n innerRadius: 0,\n isAnimationActive: 'auto',\n label: false,\n labelLine: true,\n legendType: 'rect',\n minAngle: 0,\n nameKey: 'name',\n outerRadius: '80%',\n paddingAngle: 0,\n rootTabIndex: 0,\n startAngle: 0,\n stroke: '#fff',\n zIndex: DefaultZIndexes.area\n};\nfunction PieImpl(props) {\n var {\n id\n } = props,\n propsWithoutId = _objectWithoutProperties(props, _excluded3);\n var {\n hide,\n className,\n rootTabIndex\n } = props;\n var cells = useMemo(() => findAllByType(props.children, Cell), [props.children]);\n var sectors = useAppSelector(state => selectPieSectors(state, id, cells));\n var previousSectorsRef = useRef(null);\n var layerClass = clsx('recharts-pie', className);\n if (hide || sectors == null) {\n previousSectorsRef.current = null;\n return /*#__PURE__*/React.createElement(Layer, {\n tabIndex: rootTabIndex,\n className: layerClass\n });\n }\n return /*#__PURE__*/React.createElement(ZIndexLayer, {\n zIndex: props.zIndex\n }, /*#__PURE__*/React.createElement(SetPieTooltipEntrySettings, {\n dataKey: props.dataKey,\n nameKey: props.nameKey,\n sectors: sectors,\n stroke: props.stroke,\n strokeWidth: props.strokeWidth,\n fill: props.fill,\n name: props.name,\n hide: props.hide,\n tooltipType: props.tooltipType,\n id: id,\n activeShape: props.activeShape\n }), /*#__PURE__*/React.createElement(Layer, {\n tabIndex: rootTabIndex,\n className: layerClass\n }, /*#__PURE__*/React.createElement(SectorsWithAnimation, {\n props: _objectSpread(_objectSpread({}, propsWithoutId), {}, {\n sectors\n }),\n previousSectorsRef: previousSectorsRef,\n id: id\n })));\n}\n/**\n * @consumes PolarChartContext\n * @provides LabelListContext\n * @provides CellReader\n */\nfunction PieFn(outsideProps) {\n var props = resolveDefaultProps(outsideProps, defaultPieProps);\n var {\n id: externalId\n } = props,\n propsWithoutId = _objectWithoutProperties(props, _excluded4);\n var presentationProps = svgPropertiesNoEvents(propsWithoutId);\n return /*#__PURE__*/React.createElement(RegisterGraphicalItemId, {\n id: externalId,\n type: \"pie\"\n }, id => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SetPolarGraphicalItem, {\n type: \"pie\",\n id: id,\n data: propsWithoutId.data,\n dataKey: propsWithoutId.dataKey,\n hide: propsWithoutId.hide,\n angleAxisId: 0,\n radiusAxisId: 0,\n name: propsWithoutId.name,\n nameKey: propsWithoutId.nameKey,\n tooltipType: propsWithoutId.tooltipType,\n legendType: propsWithoutId.legendType,\n fill: propsWithoutId.fill,\n cx: propsWithoutId.cx,\n cy: propsWithoutId.cy,\n startAngle: propsWithoutId.startAngle,\n endAngle: propsWithoutId.endAngle,\n paddingAngle: propsWithoutId.paddingAngle,\n minAngle: propsWithoutId.minAngle,\n innerRadius: propsWithoutId.innerRadius,\n outerRadius: propsWithoutId.outerRadius,\n cornerRadius: propsWithoutId.cornerRadius,\n presentationProps: presentationProps,\n maxRadius: props.maxRadius\n }), /*#__PURE__*/React.createElement(SetPiePayloadLegend, _extends({}, propsWithoutId, {\n id: id\n })), /*#__PURE__*/React.createElement(PieImpl, _extends({}, propsWithoutId, {\n id: id\n }))));\n}\nexport var Pie = PieFn;\n// @ts-expect-error we need to set the displayName for debugging purposes\nPie.displayName = 'Pie';","import { useEffect } from 'react';\nimport { useAppDispatch } from './hooks';\nimport { updatePolarOptions } from './polarOptionsSlice';\nexport function ReportPolarOptions(props) {\n var dispatch = useAppDispatch();\n useEffect(() => {\n dispatch(updatePolarOptions(props));\n }, [dispatch, props]);\n return null;\n}","var _excluded = [\"layout\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { forwardRef } from 'react';\nimport * as React from 'react';\nimport { RechartsStoreProvider } from '../state/RechartsStoreProvider';\nimport { ChartDataContextProvider } from '../context/chartDataContext';\nimport { ReportMainChartProps } from '../state/ReportMainChartProps';\nimport { ReportChartProps } from '../state/ReportChartProps';\nimport { ReportEventSettings } from '../state/ReportEventSettings';\nimport { ReportPolarOptions } from '../state/ReportPolarOptions';\nimport { CategoricalChart } from './CategoricalChart';\nimport { resolveDefaultProps } from '../util/resolveDefaultProps';\nimport { initialEventSettingsState } from '../state/eventSettingsSlice';\nvar defaultMargin = {\n top: 5,\n right: 5,\n bottom: 5,\n left: 5\n};\n\n/**\n * These default props are the same for all PolarChart components.\n */\nexport var defaultPolarChartProps = _objectSpread({\n accessibilityLayer: true,\n stackOffset: 'none',\n barCategoryGap: '10%',\n barGap: 4,\n margin: defaultMargin,\n reverseStackOrder: false,\n syncMethod: 'index',\n layout: 'radial',\n responsive: false,\n cx: '50%',\n cy: '50%',\n innerRadius: 0,\n outerRadius: '80%'\n}, initialEventSettingsState);\n\n/**\n * These props are required for the PolarChart to function correctly.\n * Users usually would not need to specify these explicitly,\n * because the convenience components like PieChart, RadarChart, etc.\n * will provide these defaults.\n * We can't have the defaults in this file because each of those convenience components\n * have their own opinions about what they should be.\n */\n\n/**\n * These are one-time, immutable options that decide the chart's behavior.\n * Users who wish to call CartesianChart may decide to pass these options explicitly,\n * but usually we would expect that they use one of the convenience components like PieChart, RadarChart, etc.\n */\n\nexport var PolarChart = /*#__PURE__*/forwardRef(function PolarChart(props, ref) {\n var _polarChartProps$id;\n var polarChartProps = resolveDefaultProps(props.categoricalChartProps, defaultPolarChartProps);\n var {\n layout\n } = polarChartProps,\n otherCategoricalProps = _objectWithoutProperties(polarChartProps, _excluded);\n var {\n chartName,\n defaultTooltipEventType,\n validateTooltipEventTypes,\n tooltipPayloadSearcher\n } = props;\n var options = {\n chartName,\n defaultTooltipEventType,\n validateTooltipEventTypes,\n tooltipPayloadSearcher,\n eventEmitter: undefined\n };\n return /*#__PURE__*/React.createElement(RechartsStoreProvider, {\n preloadedState: {\n options\n },\n reduxStoreName: (_polarChartProps$id = polarChartProps.id) !== null && _polarChartProps$id !== void 0 ? _polarChartProps$id : chartName\n }, /*#__PURE__*/React.createElement(ChartDataContextProvider, {\n chartData: polarChartProps.data\n }), /*#__PURE__*/React.createElement(ReportMainChartProps, {\n layout: layout,\n margin: polarChartProps.margin\n }), /*#__PURE__*/React.createElement(ReportEventSettings, {\n throttleDelay: polarChartProps.throttleDelay,\n throttledEvents: polarChartProps.throttledEvents\n }), /*#__PURE__*/React.createElement(ReportChartProps, {\n baseValue: undefined,\n accessibilityLayer: polarChartProps.accessibilityLayer,\n barCategoryGap: polarChartProps.barCategoryGap,\n maxBarSize: polarChartProps.maxBarSize,\n stackOffset: polarChartProps.stackOffset,\n barGap: polarChartProps.barGap,\n barSize: polarChartProps.barSize,\n syncId: polarChartProps.syncId,\n syncMethod: polarChartProps.syncMethod,\n className: polarChartProps.className,\n reverseStackOrder: polarChartProps.reverseStackOrder\n }), /*#__PURE__*/React.createElement(ReportPolarOptions, {\n cx: polarChartProps.cx,\n cy: polarChartProps.cy,\n startAngle: polarChartProps.startAngle,\n endAngle: polarChartProps.endAngle,\n innerRadius: polarChartProps.innerRadius,\n outerRadius: polarChartProps.outerRadius\n }), /*#__PURE__*/React.createElement(CategoricalChart, _extends({}, otherCategoricalProps, {\n ref: ref\n })));\n});","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport * as React from 'react';\nimport { forwardRef } from 'react';\nimport { arrayTooltipSearcher } from '../state/optionsSlice';\nimport { defaultPolarChartProps, PolarChart } from './PolarChart';\nimport { resolveDefaultProps } from '../util/resolveDefaultProps';\nvar allowedTooltipTypes = ['item'];\nexport var defaultPieChartProps = _objectSpread(_objectSpread({}, defaultPolarChartProps), {}, {\n layout: 'centric',\n startAngle: 0,\n endAngle: 360\n});\n\n/**\n * @consumes ResponsiveContainerContext\n * @provides PolarViewBoxContext\n * @provides PolarChartContext\n */\nexport var PieChart = /*#__PURE__*/forwardRef((props, ref) => {\n var propsWithDefaults = resolveDefaultProps(props, defaultPieChartProps);\n return /*#__PURE__*/React.createElement(PolarChart, {\n chartName: \"PieChart\",\n defaultTooltipEventType: \"item\",\n validateTooltipEventTypes: allowedTooltipTypes,\n tooltipPayloadSearcher: arrayTooltipSearcher,\n categoricalChartProps: propsWithDefaults,\n ref: ref\n });\n});","import React, { useMemo } from 'react';\nimport {\n PieChart, Pie, Cell, Tooltip, Legend, ResponsiveContainer\n} from 'recharts';\nimport type { WidgetProps, ChartDataPoint, FieldMappingOverride } from '../types';\nimport { extractChartContract } from '../types';\nimport { useWidgetFetch } from '../hooks/useWidgetFetch';\nimport { aggregateChartData } from '../utils/aggregateChartData';\nimport { WidgetDataGuard } from '../components/WidgetDataGuard';\nimport { resolveChartFields, resolveLabel } from '../utils/resolveChartFields';\n\nimport { DEFAULT_CHART_COLORS } from '../utils/chartColors';\n\nconst ChartDonut: React.FC<WidgetProps> = ({ definition, period, preference }) => {\n const { data, loading, error } = useWidgetFetch<ChartDataPoint[]>(\n definition.widget_id,\n period,\n definition.refresh_policy,\n definition.field_mapping?.rename\n );\n\n const { chartData, valueKey, categoryField, valueLabel } = useMemo(() => {\n if (!data || data.length === 0) return { chartData: [], valueKey: 'value', categoryField: 'name', valueLabel: 'value' };\n const raw = data as Record<string, unknown>[];\n const userOverride = preference.config_json?.fieldMapping as FieldMappingOverride | undefined;\n const { categoryField, valueFields } = resolveChartFields(definition.config_schema, raw, userOverride, definition.field_mapping);\n const mergedAliases = { ...(definition.field_mapping?.aliases ?? {}), ...(userOverride?.aliases ?? {}) };\n const contract = extractChartContract(definition.config_schema);\n\n if (valueFields.length === 1) {\n const processed = aggregateChartData(raw, categoryField, valueFields, contract?.aggregation);\n return { chartData: processed, valueKey: valueFields[0], categoryField, valueLabel: resolveLabel(valueFields[0], mergedAliases) };\n }\n\n // Donut solo muestra 1 valor. Si hay 2+ (no debería pasar si getCompatibleTypes\n // filtró correctamente), suma como fallback defensivo.\n const merged = raw.map(row => {\n const total = valueFields.reduce((sum, k) => {\n const v = row[k];\n return sum + (typeof v === 'number' ? v : 0);\n }, 0);\n return { ...row, total };\n });\n const processed = aggregateChartData(merged, categoryField, ['total'], contract?.aggregation);\n return { chartData: processed, valueKey: 'total', categoryField, valueLabel: 'Total' };\n }, [data, definition.config_schema, definition.field_mapping, preference.config_json]);\n\n return (\n <WidgetDataGuard loading={loading} error={error} data={data}>\n <div className=\"w-full h-full p-4\">\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n <PieChart>\n <Pie data={chartData} innerRadius=\"60%\" outerRadius=\"80%\" paddingAngle={2} dataKey={valueKey} nameKey={categoryField}>\n {chartData.map((_, index) => (\n <Cell key={`cell-${index}`} fill={DEFAULT_CHART_COLORS[index % DEFAULT_CHART_COLORS.length]} />\n ))}\n </Pie>\n <Tooltip\n contentStyle={{ borderRadius: '8px', border: 'none', boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.1)' }}\n formatter={(value) => [value, valueLabel]}\n />\n <Legend verticalAlign=\"middle\" align=\"right\" layout=\"vertical\" wrapperStyle={{ right: 20 }} />\n </PieChart>\n </ResponsiveContainer>\n </div>\n </WidgetDataGuard>\n );\n};\n\nexport default ChartDonut;\n"],"names":["selectUnfilteredPolarItems","state","selectAxisPredicate","createSelector","pickAxisType","pickAxisId","itemAxisPredicate","selectPolarItemsSettings","selectBaseAxis","combineGraphicalItemsSettings","selectPolarGraphicalItemsData","combineGraphicalItemsData","selectPolarDisplayedData","selectChartDataAndAlwaysIgnoreIndexes","combineDisplayedData","selectPolarAppliedValues","combineAppliedValues","data","axisSettings","items","entry","item","_axisSettings$dataKey","valueByDataKey","getValueByDataKey","unsupportedInPolarChart","selectDomainOfAllPolarAppliedNumericalValues","selectAllErrorBarSettings","selectChartDataSliceIgnoringIndexes","combineDomainOfAllAppliedNumericalValuesIncludingErrorValues","selectPolarNumericalDomain","selectDomainDefinition","selectDomainFromUserPreference","selectChartLayout","combineNumericalDomain","selectPolarAxisDomain","selectStackOffsetType","combineAxisDomain","selectPolarNiceTicks","selectRenderableAxisSettings","selectRealScaleType","combineNiceTicks","selectPolarAxisDomainIncludingNiceTicks","combineAxisDomainWithNiceTicks","combineCheckedDomain","ownKeys","r","o","_objectSpread","_defineProperty","_toPropertyKey","t","i","_toPrimitive","e","pickId","_state","id","selectSynchronisedPieSettings","graphicalItems","emptyArray","pickCells","_id","cells","selectDisplayedData","_ref","pieSettings","chartData","displayedData","cell","selectPieLegend","_cells$i","name","color","getTooltipNameProp","selectPieSectors","selectChartOffsetInternal","offset","computePieSectors","_excluded","_excluded2","_excluded3","_excluded4","_extends","n","_objectWithoutProperties","_objectWithoutPropertiesLoose","SetPiePayloadLegend","props","useMemo","findAllByType","Cell","legendPayload","useAppSelector","React","SetPolarLegendPayload","getActiveShapeFill","activeShape","_activeShape$props","_fill","fill","SetPieTooltipEntrySettings","dataKey","nameKey","sectors","stroke","strokeWidth","hide","tooltipType","activeShapeFill","tooltipDataDefinedOnItem","sector","sectorTooltipPayload","tooltipEntrySettings","index","_sectors$Number","SetTooltipEntrySettings","getTextAnchor","x","cx","getOuterRadius","dataPoint","outerRadius","maxPieRadius","getPercentValue","parseCoordinateOfPie","top","left","width","height","getMaxRadius","cy","innerRadius","maxRadius","parseDeltaAngle","startAngle","endAngle","sign","mathSign","deltaAngle","renderLabelLineItem","option","className","clsx","key","otherProps","Curve","renderLabelItem","value","label","getClassNameFromUnknown","Text","PieLabels","_ref2","showLabels","labelLine","pieProps","svgPropertiesNoEvents","customLabelProps","svgPropertiesNoEventsFromUnknown","customLabelLineProps","offsetRadius","labels","midAngle","endPoint","polarToCartesian","labelProps","lineProps","ZIndexLayer","DefaultZIndexes","Layer","PieLabelList","_ref3","LabelListFromLabelProp","PieSectors","inactiveShapeProp","allOtherPieProps","shape","activeIndex","selectActiveTooltipIndex","activeDataKey","selectActiveTooltipDataKey","activeGraphicalItemId","selectActiveTooltipGraphicalItemId","onMouseEnterFromProps","onItemClickFromProps","onMouseLeaveFromProps","restOfAllOtherProps","onMouseEnterFromContext","useMouseEnterItemDispatch","onMouseLeaveFromContext","useMouseLeaveItemDispatch","onClickFromContext","useMouseClickItemDispatch","graphicalItemMatches","isActive","inactiveShape","sectorOptions","sectorProps","DATA_ITEM_INDEX_ATTRIBUTE_NAME","DATA_ITEM_GRAPHICAL_ITEM_ID_ATTRIBUTE_NAME","adaptEventsOfChild","Shape","_ref4","_pieSettings$paddingA","cornerRadius","minAngle","absDeltaAngle","paddingAngle","notZeroItemCount","totalPaddingAngle","sum","result","val","isNumber","needsMinAngleAdjustment","percent","effectiveMinAngle","realTotalAngle","prev","coordinate","tempStartAngle","entryWithCellInfo","sectorColor","tempEndAngle","middleRadius","tooltipPayload","tooltipPosition","PieLabelListProvider","_ref5","children","labelListEntries","PolarLabelListContextProvider","SectorsWithAnimation","_ref6","previousSectorsRef","isAnimationActive","animationBegin","animationDuration","animationEasing","onAnimationStart","onAnimationEnd","animationId","useAnimationId","prevSectors","isAnimating","setIsAnimating","useState","handleAnimationEnd","useCallback","handleAnimationStart","JavascriptAnimate","_first$startAngle","stepData","first","curAngle","get","angle","interpolate","latest","_latest","defaultPieProps","PieImpl","propsWithoutId","rootTabIndex","useRef","layerClass","PieFn","outsideProps","resolveDefaultProps","externalId","presentationProps","RegisterGraphicalItemId","SetPolarGraphicalItem","Pie","ReportPolarOptions","dispatch","useAppDispatch","useEffect","updatePolarOptions","defaultMargin","defaultPolarChartProps","initialEventSettingsState","PolarChart","forwardRef","ref","_polarChartProps$id","polarChartProps","layout","otherCategoricalProps","chartName","defaultTooltipEventType","validateTooltipEventTypes","tooltipPayloadSearcher","options","RechartsStoreProvider","ChartDataContextProvider","ReportMainChartProps","ReportEventSettings","ReportChartProps","CategoricalChart","allowedTooltipTypes","defaultPieChartProps","PieChart","propsWithDefaults","arrayTooltipSearcher","ChartDonut","definition","period","preference","loading","error","useWidgetFetch","valueKey","categoryField","valueLabel","raw","userOverride","valueFields","resolveChartFields","mergedAliases","contract","extractChartContract","aggregateChartData","resolveLabel","merged","row","total","k","v","WidgetDataGuard","jsx","ResponsiveContainer","_","DEFAULT_CHART_COLORS","Tooltip","Legend"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const R=require("react/jsx-runtime"),D=require("react"),_=require("./index-DieYMRjT.cjs"),ue=require("./useWidgetFetch-KHtyWHSX.cjs"),n=require("./aggregateChartData-DOX-R8x3.cjs"),de=require("./WidgetDataGuard-CQ1bxuKY.cjs"),M=require("./tooltipContext-DMgzQCQh.cjs");function pe(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const o=pe(D);var ae=e=>e.graphicalItems.polarItems,ve=n.createSelector([n.pickAxisType,n.pickAxisId],n.itemAxisPredicate),$=n.createSelector([ae,n.selectBaseAxis,ve],n.combineGraphicalItemsSettings),fe=n.createSelector([$],n.combineGraphicalItemsData),W=n.createSelector([fe,n.selectChartDataAndAlwaysIgnoreIndexes],n.combineDisplayedData),me=n.createSelector([W,n.selectBaseAxis,$],n.combineAppliedValues);n.createSelector([W,n.selectBaseAxis,$],(e,t,r)=>r.length>0?e.flatMap(a=>r.flatMap(l=>{var i,c=n.getValueByDataKey(a,(i=t.dataKey)!==null&&i!==void 0?i:l.dataKey);return{value:c,errorDomain:[]}})).filter(Boolean):t?.dataKey!=null?e.map(a=>({value:n.getValueByDataKey(a,t.dataKey),errorDomain:[]})):e.map(a=>({value:a,errorDomain:[]})));var J=()=>{},ge=n.createSelector([W,n.selectBaseAxis,$,n.selectAllErrorBarSettings,n.pickAxisType,n.selectChartDataSliceIgnoringIndexes],n.combineDomainOfAllAppliedNumericalValuesIncludingErrorValues),ye=n.createSelector([n.selectBaseAxis,n.selectDomainDefinition,n.selectDomainFromUserPreference,J,ge,J,n.selectChartLayout,n.pickAxisType],n.combineNumericalDomain),ne=n.createSelector([n.selectBaseAxis,n.selectChartLayout,W,me,n.selectStackOffsetType,n.pickAxisType,ye],n.combineAxisDomain),be=n.createSelector([ne,n.selectRenderableAxisSettings,n.selectRealScaleType],n.combineNiceTicks),he=n.createSelector([n.selectBaseAxis,ne,be,n.pickAxisType],n.combineAxisDomainWithNiceTicks);n.createSelector([n.selectRealScaleType,he],n.combineCheckedDomain);function X(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),r.push.apply(r,a)}return r}function Q(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?X(Object(r),!0).forEach(function(a){Pe(e,a,r[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):X(Object(r)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})}return e}function Pe(e,t,r){return(t=Ae(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ae(e){var t=Oe(e,"string");return typeof t=="symbol"?t:t+""}function Oe(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var xe=(e,t)=>t,U=n.createSelector([ae,xe],(e,t)=>e.filter(r=>r.type==="pie").find(r=>r.id===t)),Ee=[],q=(e,t,r)=>r?.length===0?Ee:r,le=n.createSelector([n.selectChartDataAndAlwaysIgnoreIndexes,U,q],(e,t,r)=>{var{chartData:a}=e;if(t!=null){var l;if(t?.data!=null&&t.data.length>0?l=t.data:l=a,(!l||!l.length)&&r!=null&&(l=r.map(i=>Q(Q({},t.presentationProps),i.props))),l!=null)return l}}),Se=n.createSelector([le,U,q],(e,t,r)=>{if(!(e==null||t==null))return e.map((a,l)=>{var i,c=n.getValueByDataKey(a,t.nameKey,t.name),u;return r!=null&&(i=r[l])!==null&&i!==void 0&&(i=i.props)!==null&&i!==void 0&&i.fill?u=r[l].props.fill:typeof a=="object"&&a!=null&&"fill"in a?u=a.fill:u=t.fill,{value:n.getTooltipNameProp(c,t.dataKey),color:u,payload:a,type:t.legendType}})}),De=n.createSelector([le,U,q,n.selectChartOffsetInternal],(e,t,r,a)=>{if(!(t==null||e==null))return qe({offset:a,pieSettings:t,displayedData:e,cells:r})}),je=["key"],Ie=["onMouseEnter","onClick","onMouseLeave"],Te=["id"],we=["id"];function L(){return L=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},L.apply(null,arguments)}function G(e,t){if(e==null)return{};var r,a,l=Ce(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}function Ce(e,t){if(e==null)return{};var r={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(t.indexOf(a)!==-1)continue;r[a]=e[a]}return r}function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),r.push.apply(r,a)}return r}function v(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Y(Object(r),!0).forEach(function(a){Re(e,a,r[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y(Object(r)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})}return e}function Re(e,t,r){return(t=_e(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _e(e){var t=Le(e,"string");return typeof t=="symbol"?t:t+""}function Le(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ke(e){var t=D.useMemo(()=>n.findAllByType(e.children,M.Cell),[e.children]),r=n.useAppSelector(a=>Se(a,e.id,t));return r==null?null:o.createElement(n.SetPolarLegendPayload,{legendPayload:r})}function Ke(e){if(!(e==null||typeof e=="boolean"||typeof e=="function")){if(o.isValidElement(e)){var t,r=(t=e.props)===null||t===void 0?void 0:t.fill;return typeof r=="string"?r:void 0}var{fill:a}=e;return typeof a=="string"?a:void 0}}var Ne=o.memo(e=>{var{dataKey:t,nameKey:r,sectors:a,stroke:l,strokeWidth:i,fill:c,name:u,hide:b,tooltipType:p,id:f,activeShape:m}=e,s=Ke(m),g=a.map(h=>{var y=h.tooltipPayload;return s==null||y==null?y:y.map(d=>v(v({},d),{},{color:s,fill:s}))}),x={dataDefinedOnItem:g,getPosition:h=>{var y;return(y=a[Number(h)])===null||y===void 0?void 0:y.tooltipPosition},settings:{stroke:l,strokeWidth:i,fill:c,dataKey:t,nameKey:r,name:n.getTooltipNameProp(u,t),hide:b,type:p,color:c,unit:"",graphicalItemId:f}};return o.createElement(n.SetTooltipEntrySettings,{tooltipEntrySettings:x})}),Me=(e,t)=>e>t?"start":e<t?"end":"middle",Be=(e,t,r)=>typeof t=="function"?n.getPercentValue(t(e),r,r*.8):n.getPercentValue(t,r,r*.8),Fe=(e,t,r)=>{var{top:a,left:l,width:i,height:c}=t,u=n.getMaxRadius(i,c),b=l+n.getPercentValue(e.cx,i,i/2),p=a+n.getPercentValue(e.cy,c,c/2),f=n.getPercentValue(e.innerRadius,u,0),m=Be(r,e.outerRadius,u),s=e.maxRadius||Math.sqrt(i*i+c*c)/2;return{cx:b,cy:p,innerRadius:f,outerRadius:m,maxRadius:s}},Ve=(e,t)=>{var r=n.mathSign(t-e),a=Math.min(Math.abs(t-e),360);return r*a},$e=(e,t)=>{if(o.isValidElement(e))return o.cloneElement(e,t);if(typeof e=="function")return e(t);var r=_.clsx("recharts-pie-label-line",typeof e!="boolean"?e.className:""),{key:a}=t,l=G(t,je);return o.createElement(n.Curve,L({},l,{type:"linear",className:r}))},We=(e,t,r)=>{if(o.isValidElement(e))return o.cloneElement(e,t);var a=r;if(typeof e=="function"&&(a=e(t),o.isValidElement(a)))return a;var l=_.clsx("recharts-pie-label-text",n.getClassNameFromUnknown(e));return o.createElement(n.Text,L({},t,{alignmentBaseline:"middle",className:l}),a)};function Ge(e){var{sectors:t,props:r,showLabels:a}=e,{label:l,labelLine:i,dataKey:c}=r;if(!a||!l||!t)return null;var u=n.svgPropertiesNoEvents(r),b=n.svgPropertiesNoEventsFromUnknown(l),p=n.svgPropertiesNoEventsFromUnknown(i),f=typeof l=="object"&&"offsetRadius"in l&&typeof l.offsetRadius=="number"&&l.offsetRadius||20,m=t.map((s,g)=>{var x=(s.startAngle+s.endAngle)/2,h=n.polarToCartesian(s.cx,s.cy,s.outerRadius+f,x),y=v(v(v(v({},u),s),{},{stroke:"none"},b),{},{index:g,textAnchor:Me(h.x,s.cx)},h),d=v(v(v(v({},u),s),{},{fill:"none",stroke:s.fill},p),{},{index:g,points:[n.polarToCartesian(s.cx,s.cy,s.outerRadius,x),h],key:"line"});return o.createElement(n.ZIndexLayer,{zIndex:n.DefaultZIndexes.label,key:"label-".concat(s.startAngle,"-").concat(s.endAngle,"-").concat(s.midAngle,"-").concat(g)},o.createElement(n.Layer,null,i&&$e(i,d),We(l,y,n.getValueByDataKey(s,c))))});return o.createElement(n.Layer,{className:"recharts-pie-labels"},m)}function ze(e){var{sectors:t,props:r,showLabels:a}=e,{label:l}=r;return typeof l=="object"&&l!=null&&"position"in l?o.createElement(n.LabelListFromLabelProp,{label:l}):o.createElement(Ge,{sectors:t,props:r,showLabels:a})}function Ue(e){var{sectors:t,activeShape:r,inactiveShape:a,allOtherPieProps:l,shape:i,id:c}=e,u=n.useAppSelector(n.selectActiveTooltipIndex),b=n.useAppSelector(n.selectActiveTooltipDataKey),p=n.useAppSelector(n.selectActiveTooltipGraphicalItemId),{onMouseEnter:f,onClick:m,onMouseLeave:s}=l,g=G(l,Ie),x=M.useMouseEnterItemDispatch(f,l.dataKey,c),h=M.useMouseLeaveItemDispatch(s),y=M.useMouseClickItemDispatch(m,l.dataKey,c);return t==null||t.length===0?null:o.createElement(o.Fragment,null,t.map((d,P)=>{if(d?.startAngle===0&&d?.endAngle===0&&t.length!==1)return null;var C=p==null||p===c,j=String(P)===u&&(b==null||l.dataKey===b)&&C,T=u?a:null,I=r&&j?r:T,S=v(v({},d),{},{stroke:d.stroke,tabIndex:-1,[n.DATA_ITEM_INDEX_ATTRIBUTE_NAME]:P,[n.DATA_ITEM_GRAPHICAL_ITEM_ID_ATTRIBUTE_NAME]:c});return o.createElement(n.Layer,L({key:"sector-".concat(d?.startAngle,"-").concat(d?.endAngle,"-").concat(d.midAngle,"-").concat(P),tabIndex:-1,className:"recharts-pie-sector"},n.adaptEventsOfChild(g,d,P),{onMouseEnter:x(d,P),onMouseLeave:h(d,P),onClick:y(d,P)}),o.createElement(n.Shape,L({option:i??I,index:P,shapeType:"sector",isActive:j},S)))}))}function qe(e){var t,{pieSettings:r,displayedData:a,cells:l,offset:i}=e,{cornerRadius:c,startAngle:u,endAngle:b,dataKey:p,nameKey:f,tooltipType:m}=r,s=Math.abs(r.minAngle),g=Ve(u,b),x=Math.abs(g),h=a.length<=1?0:(t=r.paddingAngle)!==null&&t!==void 0?t:0,y=a.filter(A=>n.getValueByDataKey(A,p,0)!==0).length,d=(x>=360?y:y-1)*h,P=a.reduce((A,E)=>{var O=n.getValueByDataKey(E,p,0);return A+(n.isNumber(O)?O:0)},0),C=s>0&&P>0&&a.some(A=>{var E=n.getValueByDataKey(A,p,0),O=(n.isNumber(E)?E:0)/P;return E!==0&&O*x<s}),j=C?s:0,T=x-y*j-d,I;if(P>0){var S;I=a.map((A,E)=>{var O=n.getValueByDataKey(A,p,0),k=n.getValueByDataKey(A,f,E),K=Fe(r,i,A),B=(n.isNumber(O)?O:0)/P,N,w=v(v({},A),l&&l[E]&&l[E].props),V=w!=null&&"fill"in w&&typeof w.fill=="string"?w.fill:r.fill;E?N=S.endAngle+n.mathSign(g)*h*(O!==0?1:0):N=u;var F=N+n.mathSign(g)*((O!==0?j:0)+B*T),Z=(N+F)/2,H=(K.innerRadius+K.outerRadius)/2,se=[{name:k,value:O,payload:w,dataKey:p,type:m,color:V,fill:V,graphicalItemId:r.id}],ce=n.polarToCartesian(K.cx,K.cy,H,Z);return S=v(v(v(v({},r.presentationProps),{},{percent:B,cornerRadius:typeof c=="string"?parseFloat(c):c,name:k,tooltipPayload:se,midAngle:Z,middleRadius:H,tooltipPosition:ce},w),K),{},{value:O,dataKey:p,startAngle:N,endAngle:F,payload:w,paddingAngle:O!==0?n.mathSign(g)*h:0}),S})}return I}function Ze(e){var{showLabels:t,sectors:r,children:a}=e,l=D.useMemo(()=>!t||!r?[]:r.map(i=>({value:i.value,payload:i.payload,clockWise:!1,parentViewBox:void 0,viewBox:{cx:i.cx,cy:i.cy,innerRadius:i.innerRadius,outerRadius:i.outerRadius,startAngle:i.startAngle,endAngle:i.endAngle,clockWise:!1},fill:i.fill})),[r,t]);return o.createElement(n.PolarLabelListContextProvider,{value:t?l:void 0},a)}function He(e){var{props:t,previousSectorsRef:r,id:a}=e,{sectors:l,isAnimationActive:i,animationBegin:c,animationDuration:u,animationEasing:b,activeShape:p,inactiveShape:f,onAnimationStart:m,onAnimationEnd:s}=t,g=n.useAnimationId(t,"recharts-pie-"),x=r.current,[h,y]=D.useState(!1),d=D.useCallback(()=>{typeof s=="function"&&s(),y(!1)},[s]),P=D.useCallback(()=>{typeof m=="function"&&m(),y(!0)},[m]);return o.createElement(Ze,{showLabels:!h,sectors:l},o.createElement(n.JavascriptAnimate,{animationId:g,begin:c,duration:u,isActive:i,easing:b,onAnimationStart:P,onAnimationEnd:d,key:g},C=>{var j,T=[],I=l&&l[0],S=(j=I?.startAngle)!==null&&j!==void 0?j:0;return l?.forEach((A,E)=>{var O=x&&x[E],k=E>0?n.get(A,"paddingAngle",0):0;if(O){var K=n.interpolate(O.endAngle-O.startAngle,A.endAngle-A.startAngle,C),B=v(v({},A),{},{startAngle:S+k,endAngle:S+K+k});T.push(B),S=B.endAngle}else{var{endAngle:N,startAngle:w}=A,V=n.interpolate(0,N-w,C),F=v(v({},A),{},{startAngle:S+k,endAngle:S+V+k});T.push(F),S=F.endAngle}}),r.current=T,o.createElement(n.Layer,null,o.createElement(Ue,{sectors:T,activeShape:p,inactiveShape:f,allOtherPieProps:t,shape:t.shape,id:a}))}),o.createElement(ze,{showLabels:!h,sectors:l,props:t}),t.children)}var Je={animationBegin:400,animationDuration:1500,animationEasing:"ease",cx:"50%",cy:"50%",dataKey:"value",endAngle:360,fill:"#808080",hide:!1,innerRadius:0,isAnimationActive:"auto",label:!1,labelLine:!0,legendType:"rect",minAngle:0,nameKey:"name",outerRadius:"80%",paddingAngle:0,rootTabIndex:0,startAngle:0,stroke:"#fff",zIndex:n.DefaultZIndexes.area};function Xe(e){var{id:t}=e,r=G(e,Te),{hide:a,className:l,rootTabIndex:i}=e,c=D.useMemo(()=>n.findAllByType(e.children,M.Cell),[e.children]),u=n.useAppSelector(f=>De(f,t,c)),b=D.useRef(null),p=_.clsx("recharts-pie",l);return a||u==null?(b.current=null,o.createElement(n.Layer,{tabIndex:i,className:p})):o.createElement(n.ZIndexLayer,{zIndex:e.zIndex},o.createElement(Ne,{dataKey:e.dataKey,nameKey:e.nameKey,sectors:u,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,tooltipType:e.tooltipType,id:t,activeShape:e.activeShape}),o.createElement(n.Layer,{tabIndex:i,className:p},o.createElement(He,{props:v(v({},r),{},{sectors:u}),previousSectorsRef:b,id:t})))}function Qe(e){var t=n.resolveDefaultProps(e,Je),{id:r}=t,a=G(t,we),l=n.svgPropertiesNoEvents(a);return o.createElement(n.RegisterGraphicalItemId,{id:r,type:"pie"},i=>o.createElement(o.Fragment,null,o.createElement(n.SetPolarGraphicalItem,{type:"pie",id:i,data:a.data,dataKey:a.dataKey,hide:a.hide,angleAxisId:0,radiusAxisId:0,name:a.name,nameKey:a.nameKey,tooltipType:a.tooltipType,legendType:a.legendType,fill:a.fill,cx:a.cx,cy:a.cy,startAngle:a.startAngle,endAngle:a.endAngle,paddingAngle:a.paddingAngle,minAngle:a.minAngle,innerRadius:a.innerRadius,outerRadius:a.outerRadius,cornerRadius:a.cornerRadius,presentationProps:l,maxRadius:t.maxRadius}),o.createElement(ke,L({},a,{id:i})),o.createElement(Xe,L({},a,{id:i}))))}var ie=Qe;ie.displayName="Pie";function Ye(e){var t=n.useAppDispatch();return D.useEffect(()=>{t(n.updatePolarOptions(e))},[t,e]),null}var et=["layout"];function z(){return z=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},z.apply(null,arguments)}function tt(e,t){if(e==null)return{};var r,a,l=rt(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}function rt(e,t){if(e==null)return{};var r={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(t.indexOf(a)!==-1)continue;r[a]=e[a]}return r}function ee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),r.push.apply(r,a)}return r}function at(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ee(Object(r),!0).forEach(function(a){nt(e,a,r[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ee(Object(r)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})}return e}function nt(e,t,r){return(t=lt(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function lt(e){var t=it(e,"string");return typeof t=="symbol"?t:t+""}function it(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var ot={top:5,right:5,bottom:5,left:5},oe=at({accessibilityLayer:!0,stackOffset:"none",barCategoryGap:"10%",barGap:4,margin:ot,reverseStackOrder:!1,syncMethod:"index",layout:"radial",responsive:!1,cx:"50%",cy:"50%",innerRadius:0,outerRadius:"80%"},n.initialEventSettingsState),st=D.forwardRef(function(t,r){var a,l=n.resolveDefaultProps(t.categoricalChartProps,oe),{layout:i}=l,c=tt(l,et),{chartName:u,defaultTooltipEventType:b,validateTooltipEventTypes:p,tooltipPayloadSearcher:f}=t,m={chartName:u,defaultTooltipEventType:b,validateTooltipEventTypes:p,tooltipPayloadSearcher:f,eventEmitter:void 0};return o.createElement(n.RechartsStoreProvider,{preloadedState:{options:m},reduxStoreName:(a=l.id)!==null&&a!==void 0?a:u},o.createElement(n.ChartDataContextProvider,{chartData:l.data}),o.createElement(n.ReportMainChartProps,{layout:i,margin:l.margin}),o.createElement(n.ReportEventSettings,{throttleDelay:l.throttleDelay,throttledEvents:l.throttledEvents}),o.createElement(n.ReportChartProps,{baseValue:void 0,accessibilityLayer:l.accessibilityLayer,barCategoryGap:l.barCategoryGap,maxBarSize:l.maxBarSize,stackOffset:l.stackOffset,barGap:l.barGap,barSize:l.barSize,syncId:l.syncId,syncMethod:l.syncMethod,className:l.className,reverseStackOrder:l.reverseStackOrder}),o.createElement(Ye,{cx:l.cx,cy:l.cy,startAngle:l.startAngle,endAngle:l.endAngle,innerRadius:l.innerRadius,outerRadius:l.outerRadius}),o.createElement(n.CategoricalChart,z({},c,{ref:r})))});function te(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),r.push.apply(r,a)}return r}function re(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?te(Object(r),!0).forEach(function(a){ct(e,a,r[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):te(Object(r)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})}return e}function ct(e,t,r){return(t=ut(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ut(e){var t=dt(e,"string");return typeof t=="symbol"?t:t+""}function dt(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var pt=["item"],vt=re(re({},oe),{},{layout:"centric",startAngle:0,endAngle:360}),ft=D.forwardRef((e,t)=>{var r=n.resolveDefaultProps(e,vt);return o.createElement(st,{chartName:"PieChart",defaultTooltipEventType:"item",validateTooltipEventTypes:pt,tooltipPayloadSearcher:n.arrayTooltipSearcher,categoricalChartProps:r,ref:t})});const mt=({definition:e,period:t,preference:r})=>{const{data:a,loading:l,error:i}=ue.useWidgetFetch(e.widget_id,t,e.refresh_policy,e.field_mapping?.rename),{chartData:c,valueKey:u,categoryField:b,valueLabel:p}=D.useMemo(()=>{if(!a||a.length===0)return{chartData:[],valueKey:"value",categoryField:"name",valueLabel:"value"};const f=a,m=r.config_json?.fieldMapping,{categoryField:s,valueFields:g}=_.resolveChartFields(e.config_schema,f,m,e.field_mapping),x={...e.field_mapping?.aliases??{},...m?.aliases??{}},h=_.extractChartContract(e.config_schema);if(g.length===1)return{chartData:n.aggregateChartData(f,s,g,h?.aggregation),valueKey:g[0],categoryField:s,valueLabel:_.resolveLabel(g[0],x)};const y=f.map(P=>{const C=g.reduce((j,T)=>{const I=P[T];return j+(typeof I=="number"?I:0)},0);return{...P,total:C}});return{chartData:n.aggregateChartData(y,s,["total"],h?.aggregation),valueKey:"total",categoryField:s,valueLabel:"Total"}},[a,e.config_schema,e.field_mapping,r.config_json]);return R.jsx(de.WidgetDataGuard,{loading:l,error:i,data:a,children:R.jsx("div",{className:"w-full h-full p-4",children:R.jsx(n.ResponsiveContainer,{width:"100%",height:"100%",children:R.jsxs(ft,{children:[R.jsx(ie,{data:c,innerRadius:"60%",outerRadius:"80%",paddingAngle:2,dataKey:u,nameKey:b,children:c.map((f,m)=>R.jsx(M.Cell,{fill:_.DEFAULT_CHART_COLORS[m%_.DEFAULT_CHART_COLORS.length]},`cell-${m}`))}),R.jsx(n.Tooltip,{contentStyle:{borderRadius:"8px",border:"none",boxShadow:"0 4px 6px -1px rgba(0, 0, 0, 0.1)"},formatter:f=>[f,p]}),R.jsx(n.Legend,{verticalAlign:"middle",align:"right",layout:"vertical",wrapperStyle:{right:20}})]})})})})};exports.default=mt;
2
- //# sourceMappingURL=ChartDonut-DzVMDmqN.cjs.map
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const R=require("react/jsx-runtime"),D=require("react"),_=require("./index-DOwUCRbF.cjs"),ue=require("./useWidgetFetch-BkxK2-zy.cjs"),n=require("./aggregateChartData-CJTTxh2k.cjs"),de=require("./WidgetDataGuard-CQ1bxuKY.cjs"),M=require("./tooltipContext-DYc8x5pj.cjs");function pe(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const o=pe(D);var ae=e=>e.graphicalItems.polarItems,ve=n.createSelector([n.pickAxisType,n.pickAxisId],n.itemAxisPredicate),$=n.createSelector([ae,n.selectBaseAxis,ve],n.combineGraphicalItemsSettings),fe=n.createSelector([$],n.combineGraphicalItemsData),W=n.createSelector([fe,n.selectChartDataAndAlwaysIgnoreIndexes],n.combineDisplayedData),me=n.createSelector([W,n.selectBaseAxis,$],n.combineAppliedValues);n.createSelector([W,n.selectBaseAxis,$],(e,t,r)=>r.length>0?e.flatMap(a=>r.flatMap(l=>{var i,c=n.getValueByDataKey(a,(i=t.dataKey)!==null&&i!==void 0?i:l.dataKey);return{value:c,errorDomain:[]}})).filter(Boolean):t?.dataKey!=null?e.map(a=>({value:n.getValueByDataKey(a,t.dataKey),errorDomain:[]})):e.map(a=>({value:a,errorDomain:[]})));var J=()=>{},ge=n.createSelector([W,n.selectBaseAxis,$,n.selectAllErrorBarSettings,n.pickAxisType,n.selectChartDataSliceIgnoringIndexes],n.combineDomainOfAllAppliedNumericalValuesIncludingErrorValues),ye=n.createSelector([n.selectBaseAxis,n.selectDomainDefinition,n.selectDomainFromUserPreference,J,ge,J,n.selectChartLayout,n.pickAxisType],n.combineNumericalDomain),ne=n.createSelector([n.selectBaseAxis,n.selectChartLayout,W,me,n.selectStackOffsetType,n.pickAxisType,ye],n.combineAxisDomain),be=n.createSelector([ne,n.selectRenderableAxisSettings,n.selectRealScaleType],n.combineNiceTicks),he=n.createSelector([n.selectBaseAxis,ne,be,n.pickAxisType],n.combineAxisDomainWithNiceTicks);n.createSelector([n.selectRealScaleType,he],n.combineCheckedDomain);function X(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),r.push.apply(r,a)}return r}function Q(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?X(Object(r),!0).forEach(function(a){Pe(e,a,r[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):X(Object(r)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})}return e}function Pe(e,t,r){return(t=Ae(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ae(e){var t=Oe(e,"string");return typeof t=="symbol"?t:t+""}function Oe(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var xe=(e,t)=>t,U=n.createSelector([ae,xe],(e,t)=>e.filter(r=>r.type==="pie").find(r=>r.id===t)),Ee=[],q=(e,t,r)=>r?.length===0?Ee:r,le=n.createSelector([n.selectChartDataAndAlwaysIgnoreIndexes,U,q],(e,t,r)=>{var{chartData:a}=e;if(t!=null){var l;if(t?.data!=null&&t.data.length>0?l=t.data:l=a,(!l||!l.length)&&r!=null&&(l=r.map(i=>Q(Q({},t.presentationProps),i.props))),l!=null)return l}}),Se=n.createSelector([le,U,q],(e,t,r)=>{if(!(e==null||t==null))return e.map((a,l)=>{var i,c=n.getValueByDataKey(a,t.nameKey,t.name),u;return r!=null&&(i=r[l])!==null&&i!==void 0&&(i=i.props)!==null&&i!==void 0&&i.fill?u=r[l].props.fill:typeof a=="object"&&a!=null&&"fill"in a?u=a.fill:u=t.fill,{value:n.getTooltipNameProp(c,t.dataKey),color:u,payload:a,type:t.legendType}})}),De=n.createSelector([le,U,q,n.selectChartOffsetInternal],(e,t,r,a)=>{if(!(t==null||e==null))return qe({offset:a,pieSettings:t,displayedData:e,cells:r})}),je=["key"],Ie=["onMouseEnter","onClick","onMouseLeave"],Te=["id"],we=["id"];function L(){return L=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},L.apply(null,arguments)}function G(e,t){if(e==null)return{};var r,a,l=Ce(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}function Ce(e,t){if(e==null)return{};var r={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(t.indexOf(a)!==-1)continue;r[a]=e[a]}return r}function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),r.push.apply(r,a)}return r}function v(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Y(Object(r),!0).forEach(function(a){Re(e,a,r[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y(Object(r)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})}return e}function Re(e,t,r){return(t=_e(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _e(e){var t=Le(e,"string");return typeof t=="symbol"?t:t+""}function Le(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ke(e){var t=D.useMemo(()=>n.findAllByType(e.children,M.Cell),[e.children]),r=n.useAppSelector(a=>Se(a,e.id,t));return r==null?null:o.createElement(n.SetPolarLegendPayload,{legendPayload:r})}function Ke(e){if(!(e==null||typeof e=="boolean"||typeof e=="function")){if(o.isValidElement(e)){var t,r=(t=e.props)===null||t===void 0?void 0:t.fill;return typeof r=="string"?r:void 0}var{fill:a}=e;return typeof a=="string"?a:void 0}}var Ne=o.memo(e=>{var{dataKey:t,nameKey:r,sectors:a,stroke:l,strokeWidth:i,fill:c,name:u,hide:b,tooltipType:p,id:f,activeShape:m}=e,s=Ke(m),g=a.map(h=>{var y=h.tooltipPayload;return s==null||y==null?y:y.map(d=>v(v({},d),{},{color:s,fill:s}))}),x={dataDefinedOnItem:g,getPosition:h=>{var y;return(y=a[Number(h)])===null||y===void 0?void 0:y.tooltipPosition},settings:{stroke:l,strokeWidth:i,fill:c,dataKey:t,nameKey:r,name:n.getTooltipNameProp(u,t),hide:b,type:p,color:c,unit:"",graphicalItemId:f}};return o.createElement(n.SetTooltipEntrySettings,{tooltipEntrySettings:x})}),Me=(e,t)=>e>t?"start":e<t?"end":"middle",Be=(e,t,r)=>typeof t=="function"?n.getPercentValue(t(e),r,r*.8):n.getPercentValue(t,r,r*.8),Fe=(e,t,r)=>{var{top:a,left:l,width:i,height:c}=t,u=n.getMaxRadius(i,c),b=l+n.getPercentValue(e.cx,i,i/2),p=a+n.getPercentValue(e.cy,c,c/2),f=n.getPercentValue(e.innerRadius,u,0),m=Be(r,e.outerRadius,u),s=e.maxRadius||Math.sqrt(i*i+c*c)/2;return{cx:b,cy:p,innerRadius:f,outerRadius:m,maxRadius:s}},Ve=(e,t)=>{var r=n.mathSign(t-e),a=Math.min(Math.abs(t-e),360);return r*a},$e=(e,t)=>{if(o.isValidElement(e))return o.cloneElement(e,t);if(typeof e=="function")return e(t);var r=_.clsx("recharts-pie-label-line",typeof e!="boolean"?e.className:""),{key:a}=t,l=G(t,je);return o.createElement(n.Curve,L({},l,{type:"linear",className:r}))},We=(e,t,r)=>{if(o.isValidElement(e))return o.cloneElement(e,t);var a=r;if(typeof e=="function"&&(a=e(t),o.isValidElement(a)))return a;var l=_.clsx("recharts-pie-label-text",n.getClassNameFromUnknown(e));return o.createElement(n.Text,L({},t,{alignmentBaseline:"middle",className:l}),a)};function Ge(e){var{sectors:t,props:r,showLabels:a}=e,{label:l,labelLine:i,dataKey:c}=r;if(!a||!l||!t)return null;var u=n.svgPropertiesNoEvents(r),b=n.svgPropertiesNoEventsFromUnknown(l),p=n.svgPropertiesNoEventsFromUnknown(i),f=typeof l=="object"&&"offsetRadius"in l&&typeof l.offsetRadius=="number"&&l.offsetRadius||20,m=t.map((s,g)=>{var x=(s.startAngle+s.endAngle)/2,h=n.polarToCartesian(s.cx,s.cy,s.outerRadius+f,x),y=v(v(v(v({},u),s),{},{stroke:"none"},b),{},{index:g,textAnchor:Me(h.x,s.cx)},h),d=v(v(v(v({},u),s),{},{fill:"none",stroke:s.fill},p),{},{index:g,points:[n.polarToCartesian(s.cx,s.cy,s.outerRadius,x),h],key:"line"});return o.createElement(n.ZIndexLayer,{zIndex:n.DefaultZIndexes.label,key:"label-".concat(s.startAngle,"-").concat(s.endAngle,"-").concat(s.midAngle,"-").concat(g)},o.createElement(n.Layer,null,i&&$e(i,d),We(l,y,n.getValueByDataKey(s,c))))});return o.createElement(n.Layer,{className:"recharts-pie-labels"},m)}function ze(e){var{sectors:t,props:r,showLabels:a}=e,{label:l}=r;return typeof l=="object"&&l!=null&&"position"in l?o.createElement(n.LabelListFromLabelProp,{label:l}):o.createElement(Ge,{sectors:t,props:r,showLabels:a})}function Ue(e){var{sectors:t,activeShape:r,inactiveShape:a,allOtherPieProps:l,shape:i,id:c}=e,u=n.useAppSelector(n.selectActiveTooltipIndex),b=n.useAppSelector(n.selectActiveTooltipDataKey),p=n.useAppSelector(n.selectActiveTooltipGraphicalItemId),{onMouseEnter:f,onClick:m,onMouseLeave:s}=l,g=G(l,Ie),x=M.useMouseEnterItemDispatch(f,l.dataKey,c),h=M.useMouseLeaveItemDispatch(s),y=M.useMouseClickItemDispatch(m,l.dataKey,c);return t==null||t.length===0?null:o.createElement(o.Fragment,null,t.map((d,P)=>{if(d?.startAngle===0&&d?.endAngle===0&&t.length!==1)return null;var C=p==null||p===c,j=String(P)===u&&(b==null||l.dataKey===b)&&C,T=u?a:null,I=r&&j?r:T,S=v(v({},d),{},{stroke:d.stroke,tabIndex:-1,[n.DATA_ITEM_INDEX_ATTRIBUTE_NAME]:P,[n.DATA_ITEM_GRAPHICAL_ITEM_ID_ATTRIBUTE_NAME]:c});return o.createElement(n.Layer,L({key:"sector-".concat(d?.startAngle,"-").concat(d?.endAngle,"-").concat(d.midAngle,"-").concat(P),tabIndex:-1,className:"recharts-pie-sector"},n.adaptEventsOfChild(g,d,P),{onMouseEnter:x(d,P),onMouseLeave:h(d,P),onClick:y(d,P)}),o.createElement(n.Shape,L({option:i??I,index:P,shapeType:"sector",isActive:j},S)))}))}function qe(e){var t,{pieSettings:r,displayedData:a,cells:l,offset:i}=e,{cornerRadius:c,startAngle:u,endAngle:b,dataKey:p,nameKey:f,tooltipType:m}=r,s=Math.abs(r.minAngle),g=Ve(u,b),x=Math.abs(g),h=a.length<=1?0:(t=r.paddingAngle)!==null&&t!==void 0?t:0,y=a.filter(A=>n.getValueByDataKey(A,p,0)!==0).length,d=(x>=360?y:y-1)*h,P=a.reduce((A,E)=>{var O=n.getValueByDataKey(E,p,0);return A+(n.isNumber(O)?O:0)},0),C=s>0&&P>0&&a.some(A=>{var E=n.getValueByDataKey(A,p,0),O=(n.isNumber(E)?E:0)/P;return E!==0&&O*x<s}),j=C?s:0,T=x-y*j-d,I;if(P>0){var S;I=a.map((A,E)=>{var O=n.getValueByDataKey(A,p,0),k=n.getValueByDataKey(A,f,E),K=Fe(r,i,A),B=(n.isNumber(O)?O:0)/P,N,w=v(v({},A),l&&l[E]&&l[E].props),V=w!=null&&"fill"in w&&typeof w.fill=="string"?w.fill:r.fill;E?N=S.endAngle+n.mathSign(g)*h*(O!==0?1:0):N=u;var F=N+n.mathSign(g)*((O!==0?j:0)+B*T),Z=(N+F)/2,H=(K.innerRadius+K.outerRadius)/2,se=[{name:k,value:O,payload:w,dataKey:p,type:m,color:V,fill:V,graphicalItemId:r.id}],ce=n.polarToCartesian(K.cx,K.cy,H,Z);return S=v(v(v(v({},r.presentationProps),{},{percent:B,cornerRadius:typeof c=="string"?parseFloat(c):c,name:k,tooltipPayload:se,midAngle:Z,middleRadius:H,tooltipPosition:ce},w),K),{},{value:O,dataKey:p,startAngle:N,endAngle:F,payload:w,paddingAngle:O!==0?n.mathSign(g)*h:0}),S})}return I}function Ze(e){var{showLabels:t,sectors:r,children:a}=e,l=D.useMemo(()=>!t||!r?[]:r.map(i=>({value:i.value,payload:i.payload,clockWise:!1,parentViewBox:void 0,viewBox:{cx:i.cx,cy:i.cy,innerRadius:i.innerRadius,outerRadius:i.outerRadius,startAngle:i.startAngle,endAngle:i.endAngle,clockWise:!1},fill:i.fill})),[r,t]);return o.createElement(n.PolarLabelListContextProvider,{value:t?l:void 0},a)}function He(e){var{props:t,previousSectorsRef:r,id:a}=e,{sectors:l,isAnimationActive:i,animationBegin:c,animationDuration:u,animationEasing:b,activeShape:p,inactiveShape:f,onAnimationStart:m,onAnimationEnd:s}=t,g=n.useAnimationId(t,"recharts-pie-"),x=r.current,[h,y]=D.useState(!1),d=D.useCallback(()=>{typeof s=="function"&&s(),y(!1)},[s]),P=D.useCallback(()=>{typeof m=="function"&&m(),y(!0)},[m]);return o.createElement(Ze,{showLabels:!h,sectors:l},o.createElement(n.JavascriptAnimate,{animationId:g,begin:c,duration:u,isActive:i,easing:b,onAnimationStart:P,onAnimationEnd:d,key:g},C=>{var j,T=[],I=l&&l[0],S=(j=I?.startAngle)!==null&&j!==void 0?j:0;return l?.forEach((A,E)=>{var O=x&&x[E],k=E>0?n.get(A,"paddingAngle",0):0;if(O){var K=n.interpolate(O.endAngle-O.startAngle,A.endAngle-A.startAngle,C),B=v(v({},A),{},{startAngle:S+k,endAngle:S+K+k});T.push(B),S=B.endAngle}else{var{endAngle:N,startAngle:w}=A,V=n.interpolate(0,N-w,C),F=v(v({},A),{},{startAngle:S+k,endAngle:S+V+k});T.push(F),S=F.endAngle}}),r.current=T,o.createElement(n.Layer,null,o.createElement(Ue,{sectors:T,activeShape:p,inactiveShape:f,allOtherPieProps:t,shape:t.shape,id:a}))}),o.createElement(ze,{showLabels:!h,sectors:l,props:t}),t.children)}var Je={animationBegin:400,animationDuration:1500,animationEasing:"ease",cx:"50%",cy:"50%",dataKey:"value",endAngle:360,fill:"#808080",hide:!1,innerRadius:0,isAnimationActive:"auto",label:!1,labelLine:!0,legendType:"rect",minAngle:0,nameKey:"name",outerRadius:"80%",paddingAngle:0,rootTabIndex:0,startAngle:0,stroke:"#fff",zIndex:n.DefaultZIndexes.area};function Xe(e){var{id:t}=e,r=G(e,Te),{hide:a,className:l,rootTabIndex:i}=e,c=D.useMemo(()=>n.findAllByType(e.children,M.Cell),[e.children]),u=n.useAppSelector(f=>De(f,t,c)),b=D.useRef(null),p=_.clsx("recharts-pie",l);return a||u==null?(b.current=null,o.createElement(n.Layer,{tabIndex:i,className:p})):o.createElement(n.ZIndexLayer,{zIndex:e.zIndex},o.createElement(Ne,{dataKey:e.dataKey,nameKey:e.nameKey,sectors:u,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,tooltipType:e.tooltipType,id:t,activeShape:e.activeShape}),o.createElement(n.Layer,{tabIndex:i,className:p},o.createElement(He,{props:v(v({},r),{},{sectors:u}),previousSectorsRef:b,id:t})))}function Qe(e){var t=n.resolveDefaultProps(e,Je),{id:r}=t,a=G(t,we),l=n.svgPropertiesNoEvents(a);return o.createElement(n.RegisterGraphicalItemId,{id:r,type:"pie"},i=>o.createElement(o.Fragment,null,o.createElement(n.SetPolarGraphicalItem,{type:"pie",id:i,data:a.data,dataKey:a.dataKey,hide:a.hide,angleAxisId:0,radiusAxisId:0,name:a.name,nameKey:a.nameKey,tooltipType:a.tooltipType,legendType:a.legendType,fill:a.fill,cx:a.cx,cy:a.cy,startAngle:a.startAngle,endAngle:a.endAngle,paddingAngle:a.paddingAngle,minAngle:a.minAngle,innerRadius:a.innerRadius,outerRadius:a.outerRadius,cornerRadius:a.cornerRadius,presentationProps:l,maxRadius:t.maxRadius}),o.createElement(ke,L({},a,{id:i})),o.createElement(Xe,L({},a,{id:i}))))}var ie=Qe;ie.displayName="Pie";function Ye(e){var t=n.useAppDispatch();return D.useEffect(()=>{t(n.updatePolarOptions(e))},[t,e]),null}var et=["layout"];function z(){return z=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},z.apply(null,arguments)}function tt(e,t){if(e==null)return{};var r,a,l=rt(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}function rt(e,t){if(e==null)return{};var r={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(t.indexOf(a)!==-1)continue;r[a]=e[a]}return r}function ee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),r.push.apply(r,a)}return r}function at(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ee(Object(r),!0).forEach(function(a){nt(e,a,r[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ee(Object(r)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})}return e}function nt(e,t,r){return(t=lt(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function lt(e){var t=it(e,"string");return typeof t=="symbol"?t:t+""}function it(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var ot={top:5,right:5,bottom:5,left:5},oe=at({accessibilityLayer:!0,stackOffset:"none",barCategoryGap:"10%",barGap:4,margin:ot,reverseStackOrder:!1,syncMethod:"index",layout:"radial",responsive:!1,cx:"50%",cy:"50%",innerRadius:0,outerRadius:"80%"},n.initialEventSettingsState),st=D.forwardRef(function(t,r){var a,l=n.resolveDefaultProps(t.categoricalChartProps,oe),{layout:i}=l,c=tt(l,et),{chartName:u,defaultTooltipEventType:b,validateTooltipEventTypes:p,tooltipPayloadSearcher:f}=t,m={chartName:u,defaultTooltipEventType:b,validateTooltipEventTypes:p,tooltipPayloadSearcher:f,eventEmitter:void 0};return o.createElement(n.RechartsStoreProvider,{preloadedState:{options:m},reduxStoreName:(a=l.id)!==null&&a!==void 0?a:u},o.createElement(n.ChartDataContextProvider,{chartData:l.data}),o.createElement(n.ReportMainChartProps,{layout:i,margin:l.margin}),o.createElement(n.ReportEventSettings,{throttleDelay:l.throttleDelay,throttledEvents:l.throttledEvents}),o.createElement(n.ReportChartProps,{baseValue:void 0,accessibilityLayer:l.accessibilityLayer,barCategoryGap:l.barCategoryGap,maxBarSize:l.maxBarSize,stackOffset:l.stackOffset,barGap:l.barGap,barSize:l.barSize,syncId:l.syncId,syncMethod:l.syncMethod,className:l.className,reverseStackOrder:l.reverseStackOrder}),o.createElement(Ye,{cx:l.cx,cy:l.cy,startAngle:l.startAngle,endAngle:l.endAngle,innerRadius:l.innerRadius,outerRadius:l.outerRadius}),o.createElement(n.CategoricalChart,z({},c,{ref:r})))});function te(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),r.push.apply(r,a)}return r}function re(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?te(Object(r),!0).forEach(function(a){ct(e,a,r[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):te(Object(r)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})}return e}function ct(e,t,r){return(t=ut(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ut(e){var t=dt(e,"string");return typeof t=="symbol"?t:t+""}function dt(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var pt=["item"],vt=re(re({},oe),{},{layout:"centric",startAngle:0,endAngle:360}),ft=D.forwardRef((e,t)=>{var r=n.resolveDefaultProps(e,vt);return o.createElement(st,{chartName:"PieChart",defaultTooltipEventType:"item",validateTooltipEventTypes:pt,tooltipPayloadSearcher:n.arrayTooltipSearcher,categoricalChartProps:r,ref:t})});const mt=({definition:e,period:t,preference:r})=>{const{data:a,loading:l,error:i}=ue.useWidgetFetch(e.widget_id,t,e.refresh_policy,e.field_mapping?.rename),{chartData:c,valueKey:u,categoryField:b,valueLabel:p}=D.useMemo(()=>{if(!a||a.length===0)return{chartData:[],valueKey:"value",categoryField:"name",valueLabel:"value"};const f=a,m=r.config_json?.fieldMapping,{categoryField:s,valueFields:g}=_.resolveChartFields(e.config_schema,f,m,e.field_mapping),x={...e.field_mapping?.aliases??{},...m?.aliases??{}},h=_.extractChartContract(e.config_schema);if(g.length===1)return{chartData:n.aggregateChartData(f,s,g,h?.aggregation),valueKey:g[0],categoryField:s,valueLabel:_.resolveLabel(g[0],x)};const y=f.map(P=>{const C=g.reduce((j,T)=>{const I=P[T];return j+(typeof I=="number"?I:0)},0);return{...P,total:C}});return{chartData:n.aggregateChartData(y,s,["total"],h?.aggregation),valueKey:"total",categoryField:s,valueLabel:"Total"}},[a,e.config_schema,e.field_mapping,r.config_json]);return R.jsx(de.WidgetDataGuard,{loading:l,error:i,data:a,children:R.jsx("div",{className:"w-full h-full p-4",children:R.jsx(n.ResponsiveContainer,{width:"100%",height:"100%",children:R.jsxs(ft,{children:[R.jsx(ie,{data:c,innerRadius:"60%",outerRadius:"80%",paddingAngle:2,dataKey:u,nameKey:b,children:c.map((f,m)=>R.jsx(M.Cell,{fill:_.DEFAULT_CHART_COLORS[m%_.DEFAULT_CHART_COLORS.length]},`cell-${m}`))}),R.jsx(n.Tooltip,{contentStyle:{borderRadius:"8px",border:"none",boxShadow:"0 4px 6px -1px rgba(0, 0, 0, 0.1)"},formatter:f=>[f,p]}),R.jsx(n.Legend,{verticalAlign:"middle",align:"right",layout:"vertical",wrapperStyle:{right:20}})]})})})})};exports.default=mt;
2
+ //# sourceMappingURL=ChartDonut-DgxhaVoj.cjs.map