@plenustech/design-system 0.2.2 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/actions/ButtonTile/ButtonTile.cjs +2 -0
- package/dist/components/actions/ButtonTile/ButtonTile.cjs.map +1 -0
- package/dist/components/actions/ButtonTile/ButtonTile.js +23 -0
- package/dist/components/actions/ButtonTile/ButtonTile.js.map +1 -0
- package/dist/components/actions/ButtonTile/ButtonTile.module.css.cjs +2 -0
- package/dist/components/actions/ButtonTile/ButtonTile.module.css.cjs.map +1 -0
- package/dist/components/actions/ButtonTile/ButtonTile.module.css.js +16 -0
- package/dist/components/actions/ButtonTile/ButtonTile.module.css.js.map +1 -0
- package/dist/components/actions/Toolbar/Toolbar.cjs +2 -0
- package/dist/components/actions/Toolbar/Toolbar.cjs.map +1 -0
- package/dist/components/actions/Toolbar/Toolbar.js +118 -0
- package/dist/components/actions/Toolbar/Toolbar.js.map +1 -0
- package/dist/components/actions/Toolbar/Toolbar.module.css.cjs +2 -0
- package/dist/components/actions/Toolbar/Toolbar.module.css.cjs.map +1 -0
- package/dist/components/actions/Toolbar/Toolbar.module.css.js +20 -0
- package/dist/components/actions/Toolbar/Toolbar.module.css.js.map +1 -0
- package/dist/components/charts/ChartArea/ChartArea.cjs +1 -1
- package/dist/components/charts/ChartArea/ChartArea.cjs.map +1 -1
- package/dist/components/charts/ChartArea/ChartArea.js +196 -148
- package/dist/components/charts/ChartArea/ChartArea.js.map +1 -1
- package/dist/components/charts/ChartArea/ChartArea.module.css.cjs +1 -1
- package/dist/components/charts/ChartArea/ChartArea.module.css.js +12 -10
- package/dist/components/charts/ChartArea/ChartArea.module.css.js.map +1 -1
- package/dist/components/charts/ChartBar/ChartBar.cjs +1 -1
- package/dist/components/charts/ChartBar/ChartBar.cjs.map +1 -1
- package/dist/components/charts/ChartBar/ChartBar.js +168 -145
- package/dist/components/charts/ChartBar/ChartBar.js.map +1 -1
- package/dist/components/charts/ChartBar/ChartBar.module.css.cjs +1 -1
- package/dist/components/charts/ChartBar/ChartBar.module.css.js +12 -10
- package/dist/components/charts/ChartBar/ChartBar.module.css.js.map +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.cjs +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.cjs.map +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.js +179 -154
- package/dist/components/charts/ChartCombo/ChartCombo.js.map +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.module.css.cjs +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.module.css.js +16 -14
- package/dist/components/charts/ChartCombo/ChartCombo.module.css.js.map +1 -1
- package/dist/components/charts/ChartDonut/ChartDonut.cjs +1 -1
- package/dist/components/charts/ChartDonut/ChartDonut.cjs.map +1 -1
- package/dist/components/charts/ChartDonut/ChartDonut.js +72 -61
- package/dist/components/charts/ChartDonut/ChartDonut.js.map +1 -1
- package/dist/components/charts/ChartGauge/ChartGauge.cjs +2 -0
- package/dist/components/charts/ChartGauge/ChartGauge.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/ChartGauge.js +307 -0
- package/dist/components/charts/ChartGauge/ChartGauge.js.map +1 -0
- package/dist/components/charts/ChartGauge/ChartGauge.module.css.cjs +2 -0
- package/dist/components/charts/ChartGauge/ChartGauge.module.css.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/ChartGauge.module.css.js +76 -0
- package/dist/components/charts/ChartGauge/ChartGauge.module.css.js.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeLayout.cjs +2 -0
- package/dist/components/charts/ChartGauge/gaugeLayout.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeLayout.js +107 -0
- package/dist/components/charts/ChartGauge/gaugeLayout.js.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeReading.cjs +2 -0
- package/dist/components/charts/ChartGauge/gaugeReading.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeReading.js +112 -0
- package/dist/components/charts/ChartGauge/gaugeReading.js.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeScale.cjs +2 -0
- package/dist/components/charts/ChartGauge/gaugeScale.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeScale.js +57 -0
- package/dist/components/charts/ChartGauge/gaugeScale.js.map +1 -0
- package/dist/components/charts/ChartLine/ChartLine.cjs +1 -1
- package/dist/components/charts/ChartLine/ChartLine.cjs.map +1 -1
- package/dist/components/charts/ChartLine/ChartLine.js +196 -143
- package/dist/components/charts/ChartLine/ChartLine.js.map +1 -1
- package/dist/components/charts/ChartLine/ChartLine.module.css.cjs +1 -1
- package/dist/components/charts/ChartLine/ChartLine.module.css.js +16 -14
- package/dist/components/charts/ChartLine/ChartLine.module.css.js.map +1 -1
- package/dist/components/charts/ChartMap/ChartMap.cjs +2 -0
- package/dist/components/charts/ChartMap/ChartMap.cjs.map +1 -0
- package/dist/components/charts/ChartMap/ChartMap.js +523 -0
- package/dist/components/charts/ChartMap/ChartMap.js.map +1 -0
- package/dist/components/charts/ChartMap/ChartMap.module.css.cjs +2 -0
- package/dist/components/charts/ChartMap/ChartMap.module.css.cjs.map +1 -0
- package/dist/components/charts/ChartMap/ChartMap.module.css.js +124 -0
- package/dist/components/charts/ChartMap/ChartMap.module.css.js.map +1 -0
- package/dist/components/charts/ChartMap/ChartMapLegend.cjs +2 -0
- package/dist/components/charts/ChartMap/ChartMapLegend.cjs.map +1 -0
- package/dist/components/charts/ChartMap/ChartMapLegend.js +102 -0
- package/dist/components/charts/ChartMap/ChartMapLegend.js.map +1 -0
- package/dist/components/charts/ChartMap/ChartMapTable.cjs +2 -0
- package/dist/components/charts/ChartMap/ChartMapTable.cjs.map +1 -0
- package/dist/components/charts/ChartMap/ChartMapTable.js +118 -0
- package/dist/components/charts/ChartMap/ChartMapTable.js.map +1 -0
- package/dist/components/charts/ChartMap/mapGeometry.cjs +2 -0
- package/dist/components/charts/ChartMap/mapGeometry.cjs.map +1 -0
- package/dist/components/charts/ChartMap/mapGeometry.js +113 -0
- package/dist/components/charts/ChartMap/mapGeometry.js.map +1 -0
- package/dist/components/charts/ChartMap/mapLabels.cjs +2 -0
- package/dist/components/charts/ChartMap/mapLabels.cjs.map +1 -0
- package/dist/components/charts/ChartMap/mapLabels.js +80 -0
- package/dist/components/charts/ChartMap/mapLabels.js.map +1 -0
- package/dist/components/charts/ChartMap/mapScales.cjs +2 -0
- package/dist/components/charts/ChartMap/mapScales.cjs.map +1 -0
- package/dist/components/charts/ChartMap/mapScales.js +131 -0
- package/dist/components/charts/ChartMap/mapScales.js.map +1 -0
- package/dist/components/charts/ChartMap/polylabel.cjs +2 -0
- package/dist/components/charts/ChartMap/polylabel.cjs.map +1 -0
- package/dist/components/charts/ChartMap/polylabel.js +50 -0
- package/dist/components/charts/ChartMap/polylabel.js.map +1 -0
- package/dist/components/charts/ChartPie/ChartPie.cjs +1 -1
- package/dist/components/charts/ChartPie/ChartPie.cjs.map +1 -1
- package/dist/components/charts/ChartPie/ChartPie.js +71 -60
- package/dist/components/charts/ChartPie/ChartPie.js.map +1 -1
- package/dist/components/charts/ChartRadial/ChartRadial.cjs +1 -1
- package/dist/components/charts/ChartRadial/ChartRadial.cjs.map +1 -1
- package/dist/components/charts/ChartRadial/ChartRadial.js +101 -84
- package/dist/components/charts/ChartRadial/ChartRadial.js.map +1 -1
- package/dist/components/charts/ChartSankey/ChartSankey.cjs +1 -1
- package/dist/components/charts/ChartSankey/ChartSankey.cjs.map +1 -1
- package/dist/components/charts/ChartSankey/ChartSankey.js +148 -125
- package/dist/components/charts/ChartSankey/ChartSankey.js.map +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.cjs +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.cjs.map +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.js +138 -106
- package/dist/components/charts/ChartScatter/ChartScatter.js.map +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.module.css.cjs +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.module.css.js +3 -3
- package/dist/components/charts/ChartSunburst/ChartSunburst.cjs +1 -1
- package/dist/components/charts/ChartSunburst/ChartSunburst.cjs.map +1 -1
- package/dist/components/charts/ChartSunburst/ChartSunburst.js +115 -100
- package/dist/components/charts/ChartSunburst/ChartSunburst.js.map +1 -1
- package/dist/components/charts/ChartTimeline/ChartTimeline.cjs +2 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.js +703 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.js.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.cjs +2 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.js +124 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.js.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimelineTable.cjs +2 -0
- package/dist/components/charts/ChartTimeline/ChartTimelineTable.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimelineTable.js +42 -0
- package/dist/components/charts/ChartTimeline/ChartTimelineTable.js.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineLayout.cjs +2 -0
- package/dist/components/charts/ChartTimeline/timelineLayout.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineLayout.js +109 -0
- package/dist/components/charts/ChartTimeline/timelineLayout.js.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineTime.cjs +2 -0
- package/dist/components/charts/ChartTimeline/timelineTime.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineTime.js +91 -0
- package/dist/components/charts/ChartTimeline/timelineTime.js.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineTooltip.cjs +2 -0
- package/dist/components/charts/ChartTimeline/timelineTooltip.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineTooltip.js +77 -0
- package/dist/components/charts/ChartTimeline/timelineTooltip.js.map +1 -0
- package/dist/components/charts/ChartTooltip/ChartTooltip.cjs +1 -1
- package/dist/components/charts/ChartTooltip/ChartTooltip.cjs.map +1 -1
- package/dist/components/charts/ChartTooltip/ChartTooltip.js +1 -1
- package/dist/components/charts/ChartTooltip/ChartTooltip.js.map +1 -1
- package/dist/components/charts/ChartTreemap/ChartTreemap.cjs +1 -1
- package/dist/components/charts/ChartTreemap/ChartTreemap.cjs.map +1 -1
- package/dist/components/charts/ChartTreemap/ChartTreemap.js +100 -89
- package/dist/components/charts/ChartTreemap/ChartTreemap.js.map +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.cjs +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.cjs.map +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.js +125 -105
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.js.map +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.cjs +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.js +8 -6
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.js.map +1 -1
- package/dist/components/charts/core/CartesianFrame.cjs +1 -1
- package/dist/components/charts/core/CartesianFrame.cjs.map +1 -1
- package/dist/components/charts/core/CartesianFrame.js +61 -96
- package/dist/components/charts/core/CartesianFrame.js.map +1 -1
- package/dist/components/charts/core/Chart.module.css.cjs +1 -1
- package/dist/components/charts/core/Chart.module.css.js +52 -54
- package/dist/components/charts/core/Chart.module.css.js.map +1 -1
- package/dist/components/charts/core/ChartFrame.cjs +1 -1
- package/dist/components/charts/core/ChartFrame.cjs.map +1 -1
- package/dist/components/charts/core/ChartFrame.js +53 -47
- package/dist/components/charts/core/ChartFrame.js.map +1 -1
- package/dist/components/charts/core/ChartLegend.cjs +1 -1
- package/dist/components/charts/core/ChartLegend.cjs.map +1 -1
- package/dist/components/charts/core/ChartLegend.js +37 -25
- package/dist/components/charts/core/ChartLegend.js.map +1 -1
- package/dist/components/charts/core/PointBands.cjs +2 -0
- package/dist/components/charts/core/PointBands.cjs.map +1 -0
- package/dist/components/charts/core/PointBands.js +41 -0
- package/dist/components/charts/core/PointBands.js.map +1 -0
- package/dist/components/charts/core/cartesianLayout.cjs +1 -1
- package/dist/components/charts/core/cartesianLayout.cjs.map +1 -1
- package/dist/components/charts/core/cartesianLayout.js +49 -41
- package/dist/components/charts/core/cartesianLayout.js.map +1 -1
- package/dist/components/charts/core/hoverPath.cjs +2 -0
- package/dist/components/charts/core/hoverPath.cjs.map +1 -0
- package/dist/components/charts/core/hoverPath.js +7 -0
- package/dist/components/charts/core/hoverPath.js.map +1 -0
- package/dist/components/charts/core/pointLabels.cjs +2 -0
- package/dist/components/charts/core/pointLabels.cjs.map +1 -0
- package/dist/components/charts/core/pointLabels.js +12 -0
- package/dist/components/charts/core/pointLabels.js.map +1 -0
- package/dist/components/charts/core/tooltips.cjs +2 -0
- package/dist/components/charts/core/tooltips.cjs.map +1 -0
- package/dist/components/charts/core/tooltips.js +48 -0
- package/dist/components/charts/core/tooltips.js.map +1 -0
- package/dist/components/charts/core/useCartesianLayout.cjs +2 -0
- package/dist/components/charts/core/useCartesianLayout.cjs.map +1 -0
- package/dist/components/charts/core/useCartesianLayout.js +38 -0
- package/dist/components/charts/core/useCartesianLayout.js.map +1 -0
- package/dist/components/charts/core/useChartMetrics.cjs +1 -1
- package/dist/components/charts/core/useChartMetrics.cjs.map +1 -1
- package/dist/components/charts/core/useChartMetrics.js +20 -25
- package/dist/components/charts/core/useChartMetrics.js.map +1 -1
- package/dist/components/charts/core/useSeriesToggle.cjs +1 -1
- package/dist/components/charts/core/useSeriesToggle.cjs.map +1 -1
- package/dist/components/charts/core/useSeriesToggle.js +19 -12
- package/dist/components/charts/core/useSeriesToggle.js.map +1 -1
- package/dist/components/data-display/Accordion/Accordion.cjs +1 -1
- package/dist/components/data-display/Accordion/Accordion.cjs.map +1 -1
- package/dist/components/data-display/Accordion/Accordion.js +56 -46
- package/dist/components/data-display/Accordion/Accordion.js.map +1 -1
- package/dist/components/data-display/Accordion/Accordion.module.css.cjs +1 -1
- package/dist/components/data-display/Accordion/Accordion.module.css.js +16 -16
- package/dist/components/data-display/List/List.cjs.map +1 -1
- package/dist/components/data-display/List/List.js.map +1 -1
- package/dist/components/data-display/List/List.module.css.cjs +1 -1
- package/dist/components/data-display/List/List.module.css.js +34 -24
- package/dist/components/data-display/List/List.module.css.js.map +1 -1
- package/dist/components/data-display/List/ListingOptions.cjs +1 -1
- package/dist/components/data-display/List/ListingOptions.cjs.map +1 -1
- package/dist/components/data-display/List/ListingOptions.js +98 -74
- package/dist/components/data-display/List/ListingOptions.js.map +1 -1
- package/dist/components/data-display/List/useListing.cjs.map +1 -1
- package/dist/components/data-display/List/useListing.js.map +1 -1
- package/dist/components/data-display/SortableList/SortableList.cjs +2 -0
- package/dist/components/data-display/SortableList/SortableList.cjs.map +1 -0
- package/dist/components/data-display/SortableList/SortableList.js +168 -0
- package/dist/components/data-display/SortableList/SortableList.js.map +1 -0
- package/dist/components/data-display/SortableList/SortableList.module.css.cjs +2 -0
- package/dist/components/data-display/SortableList/SortableList.module.css.cjs.map +1 -0
- package/dist/components/data-display/SortableList/SortableList.module.css.js +34 -0
- package/dist/components/data-display/SortableList/SortableList.module.css.js.map +1 -0
- package/dist/components/data-display/Table/Table.cjs +1 -1
- package/dist/components/data-display/Table/Table.cjs.map +1 -1
- package/dist/components/data-display/Table/Table.js +86 -85
- package/dist/components/data-display/Table/Table.js.map +1 -1
- package/dist/components/data-display/Table/Table.module.css.cjs +1 -1
- package/dist/components/data-display/Table/Table.module.css.js +50 -51
- package/dist/components/data-display/Table/Table.module.css.js.map +1 -1
- package/dist/components/data-display/Tag/Tag.cjs +2 -0
- package/dist/components/data-display/Tag/Tag.cjs.map +1 -0
- package/dist/components/data-display/Tag/Tag.js +50 -0
- package/dist/components/data-display/Tag/Tag.js.map +1 -0
- package/dist/components/data-display/Tag/Tag.module.css.cjs +2 -0
- package/dist/components/data-display/Tag/Tag.module.css.cjs.map +1 -0
- package/dist/components/data-display/Tag/Tag.module.css.js +22 -0
- package/dist/components/data-display/Tag/Tag.module.css.js.map +1 -0
- package/dist/components/data-display/Timeline/Timeline.cjs +2 -0
- package/dist/components/data-display/Timeline/Timeline.cjs.map +1 -0
- package/dist/components/data-display/Timeline/Timeline.js +31 -0
- package/dist/components/data-display/Timeline/Timeline.js.map +1 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.cjs +2 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.cjs.map +1 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.js +30 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.js.map +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.cjs +2 -0
- package/dist/components/feedback/Skeleton/Skeleton.cjs.map +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.js +17 -0
- package/dist/components/feedback/Skeleton/Skeleton.js.map +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.cjs +2 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.cjs.map +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.js +15 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.js.map +1 -0
- package/dist/components/feedback/Toast/Toast.module.css.cjs +2 -0
- package/dist/components/feedback/Toast/Toast.module.css.cjs.map +1 -0
- package/dist/components/feedback/Toast/Toast.module.css.js +31 -0
- package/dist/components/feedback/Toast/Toast.module.css.js.map +1 -0
- package/dist/components/feedback/Toast/ToastRegion.cjs +2 -0
- package/dist/components/feedback/Toast/ToastRegion.cjs.map +1 -0
- package/dist/components/feedback/Toast/ToastRegion.js +62 -0
- package/dist/components/feedback/Toast/ToastRegion.js.map +1 -0
- package/dist/components/feedback/Toast/toastStore.cjs +2 -0
- package/dist/components/feedback/Toast/toastStore.cjs.map +1 -0
- package/dist/components/feedback/Toast/toastStore.js +33 -0
- package/dist/components/feedback/Toast/toastStore.js.map +1 -0
- package/dist/components/forms/Checkbox/Checkbox.cjs +1 -1
- package/dist/components/forms/Checkbox/Checkbox.cjs.map +1 -1
- package/dist/components/forms/Checkbox/Checkbox.js +43 -31
- package/dist/components/forms/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/forms/Checkbox/Checkbox.module.css.cjs +1 -1
- package/dist/components/forms/Checkbox/Checkbox.module.css.js +1 -1
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.cjs +2 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.cjs.map +1 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.js +54 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.js.map +1 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.cjs +2 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.cjs.map +1 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.js +22 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.js.map +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.cjs +2 -0
- package/dist/components/forms/ColorPicker/ColorPicker.cjs.map +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.js +57 -0
- package/dist/components/forms/ColorPicker/ColorPicker.js.map +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.cjs +2 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.cjs.map +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.js +22 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.js.map +1 -0
- package/dist/components/forms/ComboBox/ComboBox.cjs.map +1 -1
- package/dist/components/forms/ComboBox/ComboBox.js.map +1 -1
- package/dist/components/forms/ComboBox/ComboBox.module.css.cjs +1 -1
- package/dist/components/forms/ComboBox/ComboBox.module.css.js +20 -20
- package/dist/components/forms/Field/Field.cjs +1 -1
- package/dist/components/forms/Field/Field.cjs.map +1 -1
- package/dist/components/forms/Field/Field.js +21 -20
- package/dist/components/forms/Field/Field.js.map +1 -1
- package/dist/components/forms/Field/Field.module.css.cjs +1 -1
- package/dist/components/forms/Field/Field.module.css.js +18 -12
- package/dist/components/forms/Field/Field.module.css.js.map +1 -1
- package/dist/components/forms/FileUpload/FileUpload.cjs +2 -0
- package/dist/components/forms/FileUpload/FileUpload.cjs.map +1 -0
- package/dist/components/forms/FileUpload/FileUpload.js +142 -0
- package/dist/components/forms/FileUpload/FileUpload.js.map +1 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.cjs +2 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.cjs.map +1 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.js +46 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.js.map +1 -0
- package/dist/components/forms/InputPassword/InputPassword.module.css.cjs +1 -1
- package/dist/components/forms/InputPassword/InputPassword.module.css.js +12 -12
- package/dist/components/forms/InputText/InputText.cjs +1 -1
- package/dist/components/forms/InputText/InputText.cjs.map +1 -1
- package/dist/components/forms/InputText/InputText.js +55 -47
- package/dist/components/forms/InputText/InputText.js.map +1 -1
- package/dist/components/forms/InputText/InputText.module.css.cjs +1 -1
- package/dist/components/forms/InputText/InputText.module.css.js +10 -10
- package/dist/components/forms/RadioGroup/RadioGroup.module.css.cjs +1 -1
- package/dist/components/forms/RadioGroup/RadioGroup.module.css.js +4 -4
- package/dist/components/forms/SegmentedControl/SegmentedControl.cjs +2 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.cjs.map +1 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.js +52 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.js.map +1 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.cjs +2 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.cjs.map +1 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.js +22 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.js.map +1 -0
- package/dist/components/forms/Select/Select.module.css.cjs +1 -1
- package/dist/components/forms/Select/Select.module.css.js +13 -13
- package/dist/components/forms/Switch/Switch.module.css.cjs +1 -1
- package/dist/components/forms/Switch/Switch.module.css.js +2 -2
- package/dist/components/icons/icons.cjs +1 -1
- package/dist/components/icons/icons.cjs.map +1 -1
- package/dist/components/icons/icons.js +198 -40
- package/dist/components/icons/icons.js.map +1 -1
- package/dist/components/navigation/SkipLink/SkipLink.cjs +2 -0
- package/dist/components/navigation/SkipLink/SkipLink.cjs.map +1 -0
- package/dist/components/navigation/SkipLink/SkipLink.js +9 -0
- package/dist/components/navigation/SkipLink/SkipLink.js.map +1 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.cjs +2 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.cjs.map +1 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.js +8 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.js.map +1 -0
- package/dist/components/navigation/Steps/Steps.cjs +2 -0
- package/dist/components/navigation/Steps/Steps.cjs.map +1 -0
- package/dist/components/navigation/Steps/Steps.js +30 -0
- package/dist/components/navigation/Steps/Steps.js.map +1 -0
- package/dist/components/navigation/Steps/Steps.module.css.cjs +2 -0
- package/dist/components/navigation/Steps/Steps.module.css.cjs.map +1 -0
- package/dist/components/navigation/Steps/Steps.module.css.js +26 -0
- package/dist/components/navigation/Steps/Steps.module.css.js.map +1 -0
- package/dist/components/navigation/Tabs/Tabs.cjs +1 -1
- package/dist/components/navigation/Tabs/Tabs.cjs.map +1 -1
- package/dist/components/navigation/Tabs/Tabs.js +88 -79
- package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
- package/dist/components/navigation/Tabs/Tabs.module.css.cjs +1 -1
- package/dist/components/navigation/Tabs/Tabs.module.css.js +18 -14
- package/dist/components/navigation/Tabs/Tabs.module.css.js.map +1 -1
- package/dist/components/navigation/TabsNav/TabsNav.cjs +2 -0
- package/dist/components/navigation/TabsNav/TabsNav.cjs.map +1 -0
- package/dist/components/navigation/TabsNav/TabsNav.js +21 -0
- package/dist/components/navigation/TabsNav/TabsNav.js.map +1 -0
- package/dist/components/navigation/TabsNav/TabsNav.module.css.cjs +2 -0
- package/dist/components/navigation/TabsNav/TabsNav.module.css.cjs.map +1 -0
- package/dist/components/navigation/TabsNav/TabsNav.module.css.js +18 -0
- package/dist/components/navigation/TabsNav/TabsNav.module.css.js.map +1 -0
- package/dist/components/overlays/Dialog/Dialog.cjs +1 -1
- package/dist/components/overlays/Dialog/Dialog.cjs.map +1 -1
- package/dist/components/overlays/Dialog/Dialog.js +11 -58
- package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
- package/dist/components/overlays/Dialog/DialogFrame.cjs +2 -0
- package/dist/components/overlays/Dialog/DialogFrame.cjs.map +1 -0
- package/dist/components/overlays/Dialog/DialogFrame.js +65 -0
- package/dist/components/overlays/Dialog/DialogFrame.js.map +1 -0
- package/dist/components/overlays/Drawer/Drawer.cjs +2 -0
- package/dist/components/overlays/Drawer/Drawer.cjs.map +1 -0
- package/dist/components/overlays/Drawer/Drawer.js +17 -0
- package/dist/components/overlays/Drawer/Drawer.js.map +1 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.cjs +2 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.cjs.map +1 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.js +23 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.js.map +1 -0
- package/dist/components/overlays/Menu/Menu.cjs +1 -1
- package/dist/components/overlays/Menu/Menu.cjs.map +1 -1
- package/dist/components/overlays/Menu/Menu.js +105 -86
- package/dist/components/overlays/Menu/Menu.js.map +1 -1
- package/dist/components/overlays/Menu/Menu.module.css.cjs +1 -1
- package/dist/components/overlays/Menu/Menu.module.css.js +24 -6
- package/dist/components/overlays/Menu/Menu.module.css.js.map +1 -1
- package/dist/design-system.css +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +190 -118
- package/dist/index.js.map +1 -1
- package/dist/types/components/actions/ButtonTile/ButtonTile.d.ts +14 -0
- package/dist/types/components/actions/ButtonTile/index.d.ts +2 -0
- package/dist/types/components/actions/Toolbar/Toolbar.d.ts +27 -0
- package/dist/types/components/actions/Toolbar/index.d.ts +2 -0
- package/dist/types/components/charts/ChartArea/ChartArea.d.ts +15 -4
- package/dist/types/components/charts/ChartBar/ChartBar.d.ts +11 -4
- package/dist/types/components/charts/ChartCombo/ChartCombo.d.ts +16 -4
- package/dist/types/components/charts/ChartDonut/ChartDonut.d.ts +5 -1
- package/dist/types/components/charts/ChartGauge/ChartGauge.d.ts +83 -0
- package/dist/types/components/charts/ChartGauge/gaugeLayout.d.ts +64 -0
- package/dist/types/components/charts/ChartGauge/gaugeReading.d.ts +97 -0
- package/dist/types/components/charts/ChartGauge/gaugeScale.d.ts +38 -0
- package/dist/types/components/charts/ChartGauge/index.d.ts +2 -0
- package/dist/types/components/charts/ChartLine/ChartLine.d.ts +15 -4
- package/dist/types/components/charts/ChartMap/ChartMap.d.ts +104 -0
- package/dist/types/components/charts/ChartMap/ChartMapLegend.d.ts +44 -0
- package/dist/types/components/charts/ChartMap/ChartMapTable.d.ts +38 -0
- package/dist/types/components/charts/ChartMap/index.d.ts +4 -0
- package/dist/types/components/charts/ChartMap/mapGeometry.d.ts +56 -0
- package/dist/types/components/charts/ChartMap/mapLabels.d.ts +51 -0
- package/dist/types/components/charts/ChartMap/mapScales.d.ts +76 -0
- package/dist/types/components/charts/ChartMap/polylabel.d.ts +9 -0
- package/dist/types/components/charts/ChartPie/ChartPie.d.ts +5 -1
- package/dist/types/components/charts/ChartRadial/ChartRadial.d.ts +5 -1
- package/dist/types/components/charts/ChartSankey/ChartSankey.d.ts +5 -1
- package/dist/types/components/charts/ChartScatter/ChartScatter.d.ts +7 -1
- package/dist/types/components/charts/ChartSunburst/ChartSunburst.d.ts +11 -2
- package/dist/types/components/charts/ChartTimeline/ChartTimeline.d.ts +137 -0
- package/dist/types/components/charts/ChartTimeline/ChartTimelineTable.d.ts +25 -0
- package/dist/types/components/charts/ChartTimeline/index.d.ts +2 -0
- package/dist/types/components/charts/ChartTimeline/timelineLayout.d.ts +70 -0
- package/dist/types/components/charts/ChartTimeline/timelineTime.d.ts +16 -0
- package/dist/types/components/charts/ChartTimeline/timelineTooltip.d.ts +45 -0
- package/dist/types/components/charts/ChartTooltip/ChartTooltip.d.ts +2 -0
- package/dist/types/components/charts/ChartTreemap/ChartTreemap.d.ts +11 -2
- package/dist/types/components/charts/ChartWaterfall/ChartWaterfall.d.ts +8 -3
- package/dist/types/components/charts/core/CartesianFrame.d.ts +6 -1
- package/dist/types/components/charts/core/ChartFrame.d.ts +7 -1
- package/dist/types/components/charts/core/ChartLegend.d.ts +3 -1
- package/dist/types/components/charts/core/PointBands.d.ts +22 -0
- package/dist/types/components/charts/core/cartesianLayout.d.ts +10 -4
- package/dist/types/components/charts/core/hoverPath.d.ts +10 -0
- package/dist/types/components/charts/core/index.d.ts +13 -3
- package/dist/types/components/charts/core/pointLabels.d.ts +13 -0
- package/dist/types/components/charts/core/tooltips.d.ts +49 -0
- package/dist/types/components/charts/core/useCartesianLayout.d.ts +20 -0
- package/dist/types/components/charts/core/useSeriesToggle.d.ts +15 -1
- package/dist/types/components/data-display/Accordion/Accordion.d.ts +6 -1
- package/dist/types/components/data-display/Accordion/index.d.ts +1 -1
- package/dist/types/components/data-display/List/List.d.ts +1 -1
- package/dist/types/components/data-display/List/useListing.d.ts +7 -1
- package/dist/types/components/data-display/SortableList/SortableList.d.ts +22 -0
- package/dist/types/components/data-display/SortableList/index.d.ts +2 -0
- package/dist/types/components/data-display/Tag/Tag.d.ts +13 -0
- package/dist/types/components/data-display/Tag/index.d.ts +2 -0
- package/dist/types/components/data-display/Timeline/Timeline.d.ts +15 -0
- package/dist/types/components/data-display/Timeline/index.d.ts +2 -0
- package/dist/types/components/feedback/Skeleton/Skeleton.d.ts +13 -0
- package/dist/types/components/feedback/Skeleton/index.d.ts +2 -0
- package/dist/types/components/feedback/Toast/ToastRegion.d.ts +2 -0
- package/dist/types/components/feedback/Toast/index.d.ts +3 -0
- package/dist/types/components/feedback/Toast/toastStore.d.ts +24 -0
- package/dist/types/components/forms/CheckboxGroup/CheckboxGroup.d.ts +28 -0
- package/dist/types/components/forms/CheckboxGroup/index.d.ts +2 -0
- package/dist/types/components/forms/ColorPicker/ColorPicker.d.ts +26 -0
- package/dist/types/components/forms/ColorPicker/index.d.ts +2 -0
- package/dist/types/components/forms/ComboBox/ComboBox.d.ts +7 -1
- package/dist/types/components/forms/Field/Field.d.ts +6 -2
- package/dist/types/components/forms/Field/index.d.ts +1 -1
- package/dist/types/components/forms/FileUpload/FileUpload.d.ts +37 -0
- package/dist/types/components/forms/FileUpload/index.d.ts +2 -0
- package/dist/types/components/forms/InputText/InputText.d.ts +4 -2
- package/dist/types/components/forms/SegmentedControl/SegmentedControl.d.ts +23 -0
- package/dist/types/components/forms/SegmentedControl/index.d.ts +2 -0
- package/dist/types/components/icons/icons.d.ts +29 -0
- package/dist/types/components/icons/index.d.ts +1 -1
- package/dist/types/components/navigation/SkipLink/SkipLink.d.ts +7 -0
- package/dist/types/components/navigation/SkipLink/index.d.ts +2 -0
- package/dist/types/components/navigation/Steps/Steps.d.ts +16 -0
- package/dist/types/components/navigation/Steps/index.d.ts +2 -0
- package/dist/types/components/navigation/Tabs/Tabs.d.ts +5 -1
- package/dist/types/components/navigation/TabsNav/TabsNav.d.ts +20 -0
- package/dist/types/components/navigation/TabsNav/index.d.ts +2 -0
- package/dist/types/components/overlays/Dialog/Dialog.d.ts +21 -9
- package/dist/types/components/overlays/Dialog/DialogFrame.d.ts +13 -0
- package/dist/types/components/overlays/Drawer/Drawer.d.ts +9 -0
- package/dist/types/components/overlays/Drawer/index.d.ts +2 -0
- package/dist/types/components/overlays/Menu/Menu.d.ts +16 -2
- package/dist/types/components/overlays/Menu/index.d.ts +1 -1
- package/dist/types/index.d.ts +43 -7
- package/dist/types/utils/formatters/formatarDuracao.d.ts +5 -0
- package/dist/types/utils/formatters/formatarNumero.d.ts +6 -1
- package/dist/types/utils/formatters/formatarTamanhoDeArquivo.d.ts +7 -0
- package/dist/types/utils/formatters/index.d.ts +4 -1
- package/dist/utils/formatters/formatarDuracao.cjs +2 -0
- package/dist/utils/formatters/formatarDuracao.cjs.map +1 -0
- package/dist/utils/formatters/formatarDuracao.js +10 -0
- package/dist/utils/formatters/formatarDuracao.js.map +1 -0
- package/dist/utils/formatters/formatarNumero.cjs +1 -1
- package/dist/utils/formatters/formatarNumero.cjs.map +1 -1
- package/dist/utils/formatters/formatarNumero.js +42 -17
- package/dist/utils/formatters/formatarNumero.js.map +1 -1
- package/dist/utils/formatters/formatarTamanhoDeArquivo.cjs +2 -0
- package/dist/utils/formatters/formatarTamanhoDeArquivo.cjs.map +1 -0
- package/dist/utils/formatters/formatarTamanhoDeArquivo.js +17 -0
- package/dist/utils/formatters/formatarTamanhoDeArquivo.js.map +1 -0
- package/package.json +3 -1
|
@@ -1,180 +1,205 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useMemo as
|
|
1
|
+
import { jsxs as S, jsx as b } from "react/jsx-runtime";
|
|
2
|
+
import { useState as To, useMemo as c } from "react";
|
|
3
3
|
import m from "./ChartCombo.module.css.js";
|
|
4
|
-
import { useChartMetrics as
|
|
5
|
-
import { useSeriesToggle as
|
|
6
|
-
import { useHoveredBand as
|
|
7
|
-
import { resolveSeriesColors as
|
|
8
|
-
import { useTweenedNumbers as
|
|
9
|
-
import { alignZeros as
|
|
10
|
-
import {
|
|
11
|
-
import { valueLabelRoom as
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
|
|
17
|
-
|
|
4
|
+
import { useChartMetrics as Bo } from "../core/useChartMetrics.js";
|
|
5
|
+
import { useSeriesToggle as So, seriesInScale as Po } from "../core/useSeriesToggle.js";
|
|
6
|
+
import { useHoveredBand as jo } from "../core/useHoveredBand.js";
|
|
7
|
+
import { resolveSeriesColors as wo } from "../palette/seriesColor.js";
|
|
8
|
+
import { useTweenedNumbers as lo } from "../core/useTweenedNumbers.js";
|
|
9
|
+
import { alignZeros as zo, bandScale as _o, linearScale as k, ticksFor as io, mergeDomains as Io, domainOf as Zo } from "../scales/scales.js";
|
|
10
|
+
import { useCartesianLayout as Go } from "../core/useCartesianLayout.js";
|
|
11
|
+
import { valueLabelRoom as Jo, barSlots as Ko, NO_BAR_SLOT as Qo } from "../core/spacing.js";
|
|
12
|
+
import { valueLabelsFor as eo, markShown as P, chartHeight as Uo } from "../core/cartesianLayout.js";
|
|
13
|
+
import { CartesianFrame as Wo } from "../core/CartesianFrame.js";
|
|
14
|
+
import { BandCursor as Xo } from "../core/BandCursor.js";
|
|
15
|
+
import { roundedBarPath as Yo, linePath as Vo } from "../core/shapes.js";
|
|
16
|
+
import { categoryTooltip as oa } from "../core/tooltips.js";
|
|
17
|
+
import { formatarNumero as aa } from "../../../utils/formatters/formatarNumero.js";
|
|
18
|
+
function ta(s, a) {
|
|
19
|
+
return s[a] !== null && !s[a - 1] && !s[a + 1];
|
|
18
20
|
}
|
|
19
|
-
function
|
|
20
|
-
return
|
|
21
|
+
function E(s) {
|
|
22
|
+
return s.axis ?? "left";
|
|
21
23
|
}
|
|
22
|
-
function
|
|
23
|
-
return
|
|
24
|
-
|
|
24
|
+
function ro(s, a, p) {
|
|
25
|
+
return Io(
|
|
26
|
+
Po(
|
|
27
|
+
s.filter((v) => E(v) === a),
|
|
28
|
+
p
|
|
29
|
+
).map((v) => Zo(v.values.filter((M) => M !== null)))
|
|
25
30
|
);
|
|
26
31
|
}
|
|
27
|
-
function
|
|
28
|
-
const [
|
|
29
|
-
return { max:
|
|
32
|
+
function so(s) {
|
|
33
|
+
const [a = 0, p = 0] = k({ domain: s, range: [0, 1] }).domain();
|
|
34
|
+
return { max: p, min: a };
|
|
30
35
|
}
|
|
31
|
-
function
|
|
32
|
-
accent:
|
|
33
|
-
categories:
|
|
34
|
-
curve:
|
|
35
|
-
defaultHiddenSeries:
|
|
36
|
+
function ya({
|
|
37
|
+
accent: s,
|
|
38
|
+
categories: a,
|
|
39
|
+
curve: p = "smooth",
|
|
40
|
+
defaultHiddenSeries: v,
|
|
36
41
|
emptyMessage: M = "Sem dados no período",
|
|
37
|
-
formatRightValue:
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
42
|
+
formatRightValue: mo,
|
|
43
|
+
formatTooltipValue: uo,
|
|
44
|
+
formatValue: g = aa,
|
|
45
|
+
height: ho = 260,
|
|
46
|
+
hiddenSeries: co,
|
|
47
|
+
labelAngle: fo = "auto",
|
|
48
|
+
legend: bo = "bottom",
|
|
49
|
+
legendAlign: po,
|
|
50
|
+
onHiddenSeriesChange: vo,
|
|
51
|
+
onHoverCategory: go,
|
|
52
|
+
series: i,
|
|
53
|
+
showDataLabels: x = "hidden",
|
|
54
|
+
showTooltip: xo = !0,
|
|
55
|
+
showDots: yo = "onHover",
|
|
56
|
+
title: Do,
|
|
57
|
+
xAxis: j = "visible",
|
|
51
58
|
yAxis: w = "visible",
|
|
52
|
-
yAxisRight:
|
|
59
|
+
yAxisRight: $o
|
|
53
60
|
}) {
|
|
54
|
-
const { font:
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
61
|
+
const { font: z, height: No, radius: F, ref: ko, width: _ } = Bo(), { fillHeight: Eo, value: L } = Uo(ho, No), { isHidden: y, isOutOfScale: O, toggle: Fo } = So({
|
|
62
|
+
defaultHiddenSeries: v,
|
|
63
|
+
hiddenSeries: co,
|
|
64
|
+
labels: i.map((o) => o.label),
|
|
65
|
+
onHiddenSeriesChange: vo
|
|
66
|
+
}), { hover: I, hovered: D } = jo(go), [Lo, Z] = To(null), R = mo ?? g, A = i.some((o) => E(o) === "right"), $ = c(() => wo(i, { accent: s }), [s, i]), Ro = lo(i.map((o) => y(o.label) ? 0 : 1)), [T, B] = c(() => {
|
|
67
|
+
const o = so(ro(i, "left", O));
|
|
68
|
+
return A ? zo(o, so(ro(i, "right", O))) : [o, o];
|
|
69
|
+
}, [O, i, A]), G = $o ?? (A ? "visible" : "hidden"), { axisReveal: qo, margins: Co, plot: e, rotation: Ho } = Go({
|
|
70
|
+
bottomLabels: a,
|
|
71
|
+
font: z,
|
|
72
|
+
height: L,
|
|
73
|
+
labelAngle: fo,
|
|
74
|
+
leftLabels: eo(T, L, g),
|
|
75
|
+
rightLabels: eo(B, L, R),
|
|
76
|
+
topRoom: x === "hidden" ? 0 : Jo(z),
|
|
77
|
+
width: _,
|
|
78
|
+
xAxis: j,
|
|
67
79
|
yAxis: w,
|
|
68
|
-
yAxisRight:
|
|
69
|
-
}),
|
|
70
|
-
() =>
|
|
71
|
-
[
|
|
72
|
-
),
|
|
73
|
-
() =>
|
|
74
|
-
[
|
|
75
|
-
),
|
|
76
|
-
() =>
|
|
77
|
-
[B,
|
|
78
|
-
), [
|
|
79
|
-
...
|
|
80
|
-
...
|
|
81
|
-
]),
|
|
82
|
-
() =>
|
|
83
|
-
[
|
|
84
|
-
),
|
|
85
|
-
() =>
|
|
86
|
-
[
|
|
87
|
-
),
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
),
|
|
91
|
-
label:
|
|
92
|
-
position: (
|
|
93
|
-
})),
|
|
94
|
-
return /* @__PURE__ */
|
|
95
|
-
|
|
80
|
+
yAxisRight: G
|
|
81
|
+
}), f = c(
|
|
82
|
+
() => _o({ domain: a, range: [0, e.width] }),
|
|
83
|
+
[a, e.width]
|
|
84
|
+
), J = c(
|
|
85
|
+
() => k({ domain: T, nice: !1, range: [e.height, 0] }),
|
|
86
|
+
[T, e.height]
|
|
87
|
+
), K = c(
|
|
88
|
+
() => k({ domain: B, nice: !1, range: [e.height, 0] }),
|
|
89
|
+
[B, e.height]
|
|
90
|
+
), [Q, U, W, X] = lo([
|
|
91
|
+
...J.domain(),
|
|
92
|
+
...K.domain()
|
|
93
|
+
]), q = c(
|
|
94
|
+
() => k({ domain: { min: Q, max: U }, nice: !1, range: [e.height, 0] }),
|
|
95
|
+
[U, Q, e.height]
|
|
96
|
+
), Y = c(
|
|
97
|
+
() => k({ domain: { min: W, max: X }, nice: !1, range: [e.height, 0] }),
|
|
98
|
+
[X, W, e.height]
|
|
99
|
+
), V = (o) => E(o) === "right" ? Y : q, oo = (o) => E(o) === "right" ? R : g, ao = io(J, e.height), Mo = io(K, e.height), C = f.bandwidth(), Oo = Ko(
|
|
100
|
+
C,
|
|
101
|
+
i.map((o, t) => o.kind === "bar" ? Ro[t] ?? 0 : 0)
|
|
102
|
+
), H = (o) => Oo[o] ?? Qo, Ao = a.map((o) => ({
|
|
103
|
+
label: o,
|
|
104
|
+
position: (f(o) ?? 0) + C / 2
|
|
105
|
+
})), to = (o, t, d) => o.map((u) => ({ label: d(u), position: t(u) }));
|
|
106
|
+
return /* @__PURE__ */ S(
|
|
107
|
+
Wo,
|
|
96
108
|
{
|
|
97
|
-
|
|
98
|
-
|
|
109
|
+
axisReveal: qo,
|
|
110
|
+
containerRef: ko,
|
|
111
|
+
empty: i.length === 0 || a.length === 0,
|
|
99
112
|
emptyMessage: M,
|
|
100
|
-
fillHeight:
|
|
113
|
+
fillHeight: Eo,
|
|
101
114
|
grid: [
|
|
102
115
|
{
|
|
103
|
-
baseline:
|
|
104
|
-
lines:
|
|
116
|
+
baseline: q(0),
|
|
117
|
+
lines: ao.map((o) => q(o)),
|
|
105
118
|
orientation: "horizontal"
|
|
106
119
|
}
|
|
107
120
|
],
|
|
108
|
-
height:
|
|
109
|
-
legend:
|
|
110
|
-
color:
|
|
111
|
-
hidden:
|
|
112
|
-
label:
|
|
121
|
+
height: L,
|
|
122
|
+
legend: i.map((o, t) => ({
|
|
123
|
+
color: $[t],
|
|
124
|
+
hidden: y(o.label),
|
|
125
|
+
label: o.label
|
|
113
126
|
})),
|
|
114
|
-
legendAlign:
|
|
115
|
-
legendPosition:
|
|
116
|
-
margins:
|
|
117
|
-
onToggleSeries:
|
|
118
|
-
plot:
|
|
119
|
-
title:
|
|
120
|
-
|
|
121
|
-
|
|
127
|
+
legendAlign: po,
|
|
128
|
+
legendPosition: bo,
|
|
129
|
+
margins: Co,
|
|
130
|
+
onToggleSeries: Fo,
|
|
131
|
+
plot: e,
|
|
132
|
+
title: Do,
|
|
133
|
+
tooltip: xo ? oa({
|
|
134
|
+
categories: a,
|
|
135
|
+
colors: $,
|
|
136
|
+
format: uo ?? g,
|
|
137
|
+
index: D,
|
|
138
|
+
isHidden: y,
|
|
139
|
+
series: i.map((o) => ({ ...o, format: E(o) === "right" ? R : void 0 }))
|
|
140
|
+
}) : void 0,
|
|
141
|
+
width: _,
|
|
142
|
+
xAxis: { labelRotation: Ho, ticks: Ao, visibility: j },
|
|
122
143
|
yAxis: {
|
|
123
144
|
hideLine: !0,
|
|
124
|
-
ticks:
|
|
145
|
+
ticks: to(ao, q, g),
|
|
125
146
|
visibility: w
|
|
126
147
|
},
|
|
127
148
|
yAxisRight: {
|
|
128
149
|
hideLine: !0,
|
|
129
|
-
ticks:
|
|
130
|
-
visibility:
|
|
150
|
+
ticks: to(Mo, Y, R),
|
|
151
|
+
visibility: G
|
|
131
152
|
},
|
|
132
153
|
children: [
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
if (
|
|
154
|
+
D !== null && /* @__PURE__ */ b(Xo, { offset: f(a[D]) ?? 0, plot: e, size: C }),
|
|
155
|
+
i.map((o, t) => {
|
|
156
|
+
if (o.kind !== "bar")
|
|
136
157
|
return null;
|
|
137
|
-
const
|
|
138
|
-
return /* @__PURE__ */
|
|
158
|
+
const d = y(o.label), u = V(o), N = oo(o), h = u(0);
|
|
159
|
+
return /* @__PURE__ */ S(
|
|
139
160
|
"g",
|
|
140
161
|
{
|
|
141
|
-
"aria-hidden":
|
|
142
|
-
className: `${m.series} ${
|
|
162
|
+
"aria-hidden": d || void 0,
|
|
163
|
+
className: `${m.series} ${d ? m.seriesOff : ""}`,
|
|
143
164
|
children: [
|
|
144
|
-
|
|
145
|
-
const l =
|
|
165
|
+
a.map((r, n) => {
|
|
166
|
+
const l = o.values[n];
|
|
146
167
|
if (l == null || !Number.isFinite(l))
|
|
147
168
|
return null;
|
|
148
|
-
const
|
|
149
|
-
return /* @__PURE__ */
|
|
169
|
+
const no = u(l);
|
|
170
|
+
return /* @__PURE__ */ b(
|
|
150
171
|
"path",
|
|
151
172
|
{
|
|
152
|
-
"aria-label": `${
|
|
173
|
+
"aria-label": `${o.label}, ${r}: ${N(l)}`,
|
|
153
174
|
className: m.bar,
|
|
154
|
-
d:
|
|
155
|
-
(
|
|
156
|
-
Math.min(
|
|
157
|
-
|
|
158
|
-
Math.abs(
|
|
159
|
-
[
|
|
175
|
+
d: Yo(
|
|
176
|
+
(f(r) ?? 0) + H(t).offset,
|
|
177
|
+
Math.min(h, no),
|
|
178
|
+
H(t).thickness,
|
|
179
|
+
Math.abs(no - h),
|
|
180
|
+
[F, F, F, F]
|
|
160
181
|
),
|
|
161
|
-
fill:
|
|
162
|
-
onMouseEnter: () =>
|
|
163
|
-
|
|
182
|
+
fill: $[t],
|
|
183
|
+
onMouseEnter: () => {
|
|
184
|
+
I(n), Z(t);
|
|
185
|
+
},
|
|
186
|
+
onMouseLeave: () => {
|
|
187
|
+
I(null), Z(null);
|
|
188
|
+
}
|
|
164
189
|
},
|
|
165
190
|
n
|
|
166
191
|
);
|
|
167
192
|
}),
|
|
168
|
-
|
|
169
|
-
const l =
|
|
170
|
-
return l == null || !Number.isFinite(l) ? null : /* @__PURE__ */
|
|
193
|
+
x !== "hidden" && a.map((r, n) => {
|
|
194
|
+
const l = o.values[n];
|
|
195
|
+
return l == null || !Number.isFinite(l) ? null : /* @__PURE__ */ b(
|
|
171
196
|
"text",
|
|
172
197
|
{
|
|
173
|
-
className: m.valueLabel,
|
|
198
|
+
className: `${m.valueLabel} ${P(x, t === Lo) ? "" : m.valueLabelHidden}`,
|
|
174
199
|
textAnchor: "middle",
|
|
175
|
-
x: (
|
|
200
|
+
x: (f(r) ?? 0) + H(t).offset + H(t).thickness / 2,
|
|
176
201
|
y: u(l) - 6,
|
|
177
|
-
children:
|
|
202
|
+
children: N(l)
|
|
178
203
|
},
|
|
179
204
|
n
|
|
180
205
|
);
|
|
@@ -184,51 +209,51 @@ function eo({
|
|
|
184
209
|
t
|
|
185
210
|
);
|
|
186
211
|
}),
|
|
187
|
-
|
|
188
|
-
if (
|
|
212
|
+
i.map((o, t) => {
|
|
213
|
+
if (o.kind !== "line")
|
|
189
214
|
return null;
|
|
190
|
-
const
|
|
191
|
-
const l =
|
|
192
|
-
return l == null || !Number.isFinite(l) ? null : { x: (
|
|
215
|
+
const d = y(o.label), u = V(o), N = oo(o), h = a.map((r, n) => {
|
|
216
|
+
const l = o.values[n];
|
|
217
|
+
return l == null || !Number.isFinite(l) ? null : { x: (f(r) ?? 0) + C / 2, y: u(l) };
|
|
193
218
|
});
|
|
194
|
-
return /* @__PURE__ */
|
|
219
|
+
return /* @__PURE__ */ S(
|
|
195
220
|
"g",
|
|
196
221
|
{
|
|
197
|
-
"aria-hidden":
|
|
198
|
-
className: `${m.series} ${
|
|
222
|
+
"aria-hidden": d || void 0,
|
|
223
|
+
className: `${m.series} ${d ? m.seriesOff : ""}`,
|
|
199
224
|
children: [
|
|
200
|
-
/* @__PURE__ */
|
|
225
|
+
/* @__PURE__ */ b(
|
|
201
226
|
"path",
|
|
202
227
|
{
|
|
203
228
|
className: m.line,
|
|
204
|
-
d:
|
|
229
|
+
d: Vo(h, p),
|
|
205
230
|
fill: "none",
|
|
206
|
-
stroke:
|
|
231
|
+
stroke: $[t]
|
|
207
232
|
}
|
|
208
233
|
),
|
|
209
|
-
|
|
210
|
-
(r, n) => r === null ? null : /* @__PURE__ */
|
|
234
|
+
h.map(
|
|
235
|
+
(r, n) => r === null ? null : /* @__PURE__ */ b(
|
|
211
236
|
"circle",
|
|
212
237
|
{
|
|
213
|
-
"aria-label": `${
|
|
214
|
-
className:
|
|
238
|
+
"aria-label": `${o.label}, ${a[n]}: ${N(o.values[n] ?? 0)}`,
|
|
239
|
+
className: P(yo, n === D) || ta(h, n) ? m.dotVisible : m.dot,
|
|
215
240
|
cx: r.x,
|
|
216
241
|
cy: r.y,
|
|
217
|
-
|
|
242
|
+
stroke: $[t],
|
|
218
243
|
r: 4
|
|
219
244
|
},
|
|
220
245
|
n
|
|
221
246
|
)
|
|
222
247
|
),
|
|
223
|
-
|
|
224
|
-
(r, n) => r === null ? null : /* @__PURE__ */
|
|
248
|
+
x !== "hidden" && h.map(
|
|
249
|
+
(r, n) => r === null ? null : /* @__PURE__ */ b(
|
|
225
250
|
"text",
|
|
226
251
|
{
|
|
227
|
-
className: m.valueLabel,
|
|
252
|
+
className: `${m.valueLabel} ${P(x, n === D) ? "" : m.valueLabelHidden}`,
|
|
228
253
|
textAnchor: "middle",
|
|
229
254
|
x: r.x,
|
|
230
255
|
y: r.y - 10,
|
|
231
|
-
children:
|
|
256
|
+
children: N(o.values[n] ?? 0)
|
|
232
257
|
},
|
|
233
258
|
n
|
|
234
259
|
)
|
|
@@ -243,6 +268,6 @@ function eo({
|
|
|
243
268
|
);
|
|
244
269
|
}
|
|
245
270
|
export {
|
|
246
|
-
|
|
271
|
+
ya as ChartCombo
|
|
247
272
|
};
|
|
248
273
|
//# sourceMappingURL=ChartCombo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartCombo.js","sources":["../../../../src/components/charts/ChartCombo/ChartCombo.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport {\n BandCursor,\n CartesianFrame,\n NO_BAR_SLOT,\n barSlots,\n cartesianLayout,\n chartHeight,\n linePath,\n roundedBarPath,\n useChartMetrics,\n useHoveredBand,\n useSeriesToggle,\n useTweenedNumbers,\n valueLabelRoom,\n valueLabelsFor,\n type AxisLabelAngle,\n type AxisTick,\n type AxisVisibility,\n type ChartCurve,\n type ChartHeight,\n type ChartLegendAlign,\n type ChartLegendPosition,\n type ChartPoint,\n} from '../core';\nimport { resolveSeriesColors, type SeriesAppearance } from '../palette';\nimport { alignZeros, bandScale, domainOf, linearScale, mergeDomains, ticksFor, type NumericRange } from '../scales';\nimport { formatarNumero } from '../../../utils/formatters';\nimport styles from './ChartCombo.module.css';\n/**\n * Ponto sem vizinho desenhado. A curva entre ele e o nada nao tem tracado, e o\n * marcador so no hover deixaria o dado invisivel — entao ele aparece sempre.\n */\nfunction isolado(pontos: readonly (ChartPoint | null)[], indice: number) {\n return pontos[indice] !== null && !pontos[indice - 1] && !pontos[indice + 1];\n}\n\n\nexport type ChartComboKind = 'bar' | 'line';\n\n/**\n * Eixo de valor a que a serie pertence. A escolha e sempre do produto: o\n * grafico nunca parte a escala por conta propria.\n */\nexport type ChartComboAxis = 'left' | 'right';\n\nexport interface ChartComboSeries extends SeriesAppearance {\n axis?: ChartComboAxis;\n kind: ChartComboKind;\n label: string;\n values: readonly (number | null)[];\n}\n\nexport interface ChartComboProps {\n accent?: string;\n categories: readonly string[];\n curve?: ChartCurve;\n defaultHiddenSeries?: readonly string[];\n emptyMessage?: string;\n formatRightValue?: (value: number) => string;\n formatValue?: (value: number) => string;\n height?: ChartHeight;\n hiddenSeries?: readonly string[];\n labelAngle?: AxisLabelAngle;\n legend?: ChartLegendPosition;\n legendAlign?: ChartLegendAlign;\n onHiddenSeriesChange?: (hidden: readonly string[]) => void;\n /** Indice da categoria sob o ponteiro, ou `null` ao sair dela. */\n onHoverCategory?: (index: number | null) => void;\n series: readonly ChartComboSeries[];\n showDataLabels?: boolean;\n showDots?: boolean;\n title: string;\n xAxis?: AxisVisibility;\n yAxis?: AxisVisibility;\n yAxisRight?: AxisVisibility;\n}\n\nfunction eixoDa(serie: ChartComboSeries): ChartComboAxis {\n return serie.axis ?? 'left';\n}\n\n/** Dominio de um eixo: so as series visiveis que pertencem a ele. */\nfunction dominioDoEixo(\n series: readonly ChartComboSeries[],\n axis: ChartComboAxis,\n oculta: (label: string) => boolean,\n) {\n return mergeDomains(\n series\n .filter((serie) => eixoDa(serie) === axis && !oculta(serie.label))\n .map((serie) => domainOf(serie.values.filter((valor) => valor !== null))),\n );\n}\n\n/** Dominio com os limites arredondados que o eixo mostraria sozinho. */\nfunction arredondado(dominio: NumericRange): NumericRange {\n const [min = 0, max = 0] = linearScale({ domain: dominio, range: [0, 1] }).domain();\n\n return { max, min };\n}\n\n/**\n * Barras e linhas sobre o mesmo eixo de categorias. Uma serie declara a que\n * eixo de valor pertence; sem nenhuma a direita, o dominio e unico e o eixo\n * direito espelha o esquerdo.\n */\nexport function ChartCombo({\n accent,\n categories,\n curve = 'smooth',\n defaultHiddenSeries,\n emptyMessage = 'Sem dados no período',\n formatRightValue,\n formatValue = formatarNumero,\n height = 260,\n hiddenSeries,\n labelAngle = 'auto',\n legend = 'bottom',\n legendAlign,\n onHiddenSeriesChange,\n onHoverCategory,\n series,\n showDataLabels = false,\n showDots = false,\n title,\n xAxis = 'visible',\n yAxis = 'visible',\n yAxisRight,\n}: ChartComboProps) {\n const { font, height: alturaMedida, radius: raioDoCanto, ref, width } = useChartMetrics();\n const { fillHeight, value: alturaDoDesenho } = chartHeight(height, alturaMedida);\n const { isHidden, toggle } = useSeriesToggle({ defaultHiddenSeries, hiddenSeries, onHiddenSeriesChange });\n const { hover: focarFaixa, hovered: faixaEmFoco } = useHoveredBand(onHoverCategory);\n\n const formatarDireita = formatRightValue ?? formatValue;\n const temEixoDireito = series.some((serie) => eixoDa(serie) === 'right');\n\n // A cor sai da lista inteira, e nao das visiveis: desligar uma serie nao pode\n // repintar as demais.\n const cores = useMemo(() => resolveSeriesColors(series, { accent }), [accent, series]);\n\n // Presenca de cada serie, entre zero e um. E ela que reparte a faixa, entao a\n // barra desligada encolhe enquanto as demais ocupam o lugar dela.\n const presencas = useTweenedNumbers(series.map((serie) => (isHidden(serie.label) ? 0 : 1)));\n\n // Com serie a direita, o zero fica na mesma altura nos dois eixos: as barras crescem da mesma base.\n const [dominioEsquerda, dominioDireita] = useMemo(() => {\n const esquerda = arredondado(dominioDoEixo(series, 'left', isHidden));\n\n return temEixoDireito\n ? alignZeros(esquerda, arredondado(dominioDoEixo(series, 'right', isHidden)))\n : [esquerda, esquerda];\n }, [isHidden, series, temEixoDireito]);\n\n // Uma segunda escala sem eixo para le-la e o duplo eixo que engana. Havendo\n // serie a direita, o eixo aparece sem ninguem pedir.\n const visibilidadeDireita = yAxisRight ?? (temEixoDireito ? 'visible' : 'hidden');\n\n const { margins, plot, rotation } = cartesianLayout({\n bottomLabels: categories,\n font,\n height: alturaDoDesenho,\n labelAngle,\n leftLabels: valueLabelsFor(dominioEsquerda, alturaDoDesenho, formatValue),\n rightLabels: valueLabelsFor(dominioDireita, alturaDoDesenho, formatarDireita),\n topRoom: showDataLabels ? valueLabelRoom(font) : 0,\n width,\n xAxis,\n yAxis,\n yAxisRight: visibilidadeDireita,\n });\n\n // Barras e linhas compartilham a escala de faixas: a linha passa pelo centro\n // da faixa, que e onde a marca do eixo de categoria tambem fica.\n const escalaCategorias = useMemo(\n () => bandScale({ domain: categories, range: [0, plot.width] }),\n [categories, plot.width],\n );\n\n // A escala alvo fixa as marcas; a animada posiciona o desenho. Sem separar as\n // duas, as marcas exibiriam valores quebrados durante a transicao.\n const alvoEsquerda = useMemo(\n () => linearScale({ domain: dominioEsquerda, nice: false, range: [plot.height, 0] }),\n [dominioEsquerda, plot.height],\n );\n\n const alvoDireita = useMemo(\n () => linearScale({ domain: dominioDireita, nice: false, range: [plot.height, 0] }),\n [dominioDireita, plot.height],\n );\n\n // Os dois dominios caminham numa animacao so, e por isso chegam juntos.\n const [minEsquerda, maxEsquerda, minDireita, maxDireita] = useTweenedNumbers([\n ...alvoEsquerda.domain(),\n ...alvoDireita.domain(),\n ]);\n\n const escalaEsquerda = useMemo(\n () =>\n linearScale({ domain: { min: minEsquerda, max: maxEsquerda }, nice: false, range: [plot.height, 0] }),\n [maxEsquerda, minEsquerda, plot.height],\n );\n\n const escalaDireita = useMemo(\n () => linearScale({ domain: { min: minDireita, max: maxDireita }, nice: false, range: [plot.height, 0] }),\n [maxDireita, minDireita, plot.height],\n );\n\n const escalaDa = (serie: ChartComboSeries) =>\n eixoDa(serie) === 'right' ? escalaDireita : escalaEsquerda;\n const formatoDa = (serie: ChartComboSeries) =>\n eixoDa(serie) === 'right' ? formatarDireita : formatValue;\n\n const marcasEsquerda = ticksFor(alvoEsquerda, plot.height);\n const marcasDireita = ticksFor(alvoDireita, plot.height);\n\n const vao = escalaCategorias.bandwidth();\n\n // So as barras repartem a faixa: a linha passa pelo centro dela, e por isso\n // entra na conta com presenca zero.\n const faixas = barSlots(\n vao,\n series.map((serie, indice) => (serie.kind === 'bar' ? presencas[indice] ?? 0 : 0)),\n );\n const faixaDa = (indice: number) => faixas[indice] ?? NO_BAR_SLOT;\n\n const marcasCategoria: AxisTick[] = categories.map((categoria) => ({\n label: categoria,\n position: (escalaCategorias(categoria) ?? 0) + vao / 2,\n }));\n\n const marcasDeValor = (\n valores: readonly number[],\n escala: (valor: number) => number,\n formatar: (valor: number) => string,\n ): AxisTick[] => valores.map((valor) => ({ label: formatar(valor), position: escala(valor) }));\n\n return (\n <CartesianFrame\n containerRef={ref}\n empty={series.length === 0 || categories.length === 0}\n emptyMessage={emptyMessage}\n fillHeight={fillHeight}\n grid={[\n {\n baseline: escalaEsquerda(0),\n lines: marcasEsquerda.map((valor) => escalaEsquerda(valor)),\n orientation: 'horizontal',\n },\n ]}\n height={alturaDoDesenho}\n legend={series.map((serie, indice) => ({\n color: cores[indice],\n hidden: isHidden(serie.label),\n label: serie.label,\n }))}\n legendAlign={legendAlign}\n legendPosition={legend}\n margins={margins}\n onToggleSeries={toggle}\n plot={plot}\n title={title}\n width={width}\n xAxis={{ labelRotation: rotation, ticks: marcasCategoria, visibility: xAxis }}\n yAxis={{\n hideLine: true,\n ticks: marcasDeValor(marcasEsquerda, escalaEsquerda, formatValue),\n visibility: yAxis,\n }}\n yAxisRight={{\n hideLine: true,\n ticks: marcasDeValor(marcasDireita, escalaDireita, formatarDireita),\n visibility: visibilidadeDireita,\n }}\n >\n {faixaEmFoco !== null && (\n <BandCursor offset={escalaCategorias(categories[faixaEmFoco]) ?? 0} plot={plot} size={vao} />\n )}\n\n {series.map((serie, indiceSerie) => {\n if (serie.kind !== 'bar') {\n return null;\n }\n\n const oculta = isHidden(serie.label);\n const escala = escalaDa(serie);\n const formatar = formatoDa(serie);\n const base = escala(0);\n\n return (\n <g\n aria-hidden={oculta || undefined}\n className={`${styles.series} ${oculta ? styles.seriesOff : ''}`}\n key={indiceSerie}\n >\n {categories.map((categoria, indiceCategoria) => {\n const valor = serie.values[indiceCategoria];\n\n if (valor === null || valor === undefined || !Number.isFinite(valor)) {\n return null;\n }\n\n const ponta = escala(valor);\n\n return (\n <path\n aria-label={`${serie.label}, ${categoria}: ${formatar(valor)}`}\n className={styles.bar}\n d={roundedBarPath(\n (escalaCategorias(categoria) ?? 0) + faixaDa(indiceSerie).offset,\n Math.min(base, ponta),\n faixaDa(indiceSerie).thickness,\n Math.abs(ponta - base),\n [raioDoCanto, raioDoCanto, raioDoCanto, raioDoCanto],\n )}\n fill={cores[indiceSerie]}\n key={indiceCategoria}\n onMouseEnter={() => focarFaixa(indiceCategoria)}\n onMouseLeave={() => focarFaixa(null)}\n />\n );\n })}\n\n {showDataLabels &&\n categories.map((categoria, indiceCategoria) => {\n const valor = serie.values[indiceCategoria];\n\n if (valor === null || valor === undefined || !Number.isFinite(valor)) {\n return null;\n }\n\n return (\n <text\n className={styles.valueLabel}\n key={indiceCategoria}\n textAnchor=\"middle\"\n x={\n (escalaCategorias(categoria) ?? 0) +\n faixaDa(indiceSerie).offset +\n faixaDa(indiceSerie).thickness / 2\n }\n y={escala(valor) - 6}\n >\n {formatar(valor)}\n </text>\n );\n })}\n </g>\n );\n })}\n\n {series.map((serie, indiceSerie) => {\n if (serie.kind !== 'line') {\n return null;\n }\n\n const oculta = isHidden(serie.label);\n const escala = escalaDa(serie);\n const formatar = formatoDa(serie);\n const pontos = categories.map<ChartPoint | null>((categoria, indice) => {\n const valor = serie.values[indice];\n\n if (valor === null || valor === undefined || !Number.isFinite(valor)) {\n return null;\n }\n\n return { x: (escalaCategorias(categoria) ?? 0) + vao / 2, y: escala(valor) };\n });\n\n return (\n <g\n aria-hidden={oculta || undefined}\n className={`${styles.series} ${oculta ? styles.seriesOff : ''}`}\n key={indiceSerie}\n >\n <path\n className={styles.line}\n d={linePath(pontos, curve)}\n fill=\"none\"\n stroke={cores[indiceSerie]}\n />\n\n {pontos.map((ponto, indice) =>\n ponto === null ? null : (\n <circle\n aria-label={`${serie.label}, ${categories[indice]}: ${formatar(serie.values[indice] ?? 0)}`}\n className={showDots || isolado(pontos, indice) ? styles.dotVisible : styles.dot}\n cx={ponto.x}\n cy={ponto.y}\n fill={cores[indiceSerie]}\n key={indice}\n r={4}\n />\n ),\n )}\n\n {showDataLabels &&\n pontos.map((ponto, indice) =>\n ponto === null ? null : (\n <text\n className={styles.valueLabel}\n key={indice}\n textAnchor=\"middle\"\n x={ponto.x}\n y={ponto.y - 10}\n >\n {formatar(serie.values[indice] ?? 0)}\n </text>\n ),\n )}\n </g>\n );\n })}\n </CartesianFrame>\n );\n}\n"],"names":["isolado","pontos","indice","eixoDa","serie","dominioDoEixo","series","axis","oculta","mergeDomains","domainOf","valor","arredondado","dominio","min","max","linearScale","ChartCombo","accent","categories","curve","defaultHiddenSeries","emptyMessage","formatRightValue","formatValue","formatarNumero","height","hiddenSeries","labelAngle","legend","legendAlign","onHiddenSeriesChange","onHoverCategory","showDataLabels","showDots","title","xAxis","yAxis","yAxisRight","font","alturaMedida","raioDoCanto","ref","width","useChartMetrics","fillHeight","alturaDoDesenho","chartHeight","isHidden","toggle","useSeriesToggle","focarFaixa","faixaEmFoco","useHoveredBand","formatarDireita","temEixoDireito","cores","useMemo","resolveSeriesColors","presencas","useTweenedNumbers","dominioEsquerda","dominioDireita","esquerda","alignZeros","visibilidadeDireita","margins","plot","rotation","cartesianLayout","valueLabelsFor","valueLabelRoom","escalaCategorias","bandScale","alvoEsquerda","alvoDireita","minEsquerda","maxEsquerda","minDireita","maxDireita","escalaEsquerda","escalaDireita","escalaDa","formatoDa","marcasEsquerda","ticksFor","marcasDireita","vao","faixas","barSlots","faixaDa","NO_BAR_SLOT","marcasCategoria","categoria","marcasDeValor","valores","escala","formatar","jsxs","CartesianFrame","jsx","BandCursor","indiceSerie","base","styles","indiceCategoria","ponta","roundedBarPath","linePath","ponto"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChartCombo.js","sources":["../../../../src/components/charts/ChartCombo/ChartCombo.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\nimport {\n BandCursor,\n markShown,\n categoryTooltip,\n CartesianFrame,\n NO_BAR_SLOT,\n barSlots,\n seriesInScale,\n useCartesianLayout,\n chartHeight,\n linePath,\n roundedBarPath,\n useChartMetrics,\n useHoveredBand,\n useSeriesToggle,\n useTweenedNumbers,\n valueLabelRoom,\n valueLabelsFor,\n type AxisLabelAngle,\n type AxisTick,\n type AxisVisibility,\n type ChartCurve,\n type ChartHeight,\n type ChartLegendAlign,\n type ChartLegendPosition,\n type MarkVisibility,\n type ChartPoint,\n} from '../core';\nimport { resolveSeriesColors, type SeriesAppearance } from '../palette';\nimport { alignZeros, bandScale, domainOf, linearScale, mergeDomains, ticksFor, type NumericRange } from '../scales';\nimport { formatarNumero } from '../../../utils/formatters';\nimport styles from './ChartCombo.module.css';\n/**\n * Ponto sem vizinho desenhado. A curva entre ele e o nada nao tem tracado, e o\n * marcador so no hover deixaria o dado invisivel — entao ele aparece sempre.\n */\nfunction isolado(pontos: readonly (ChartPoint | null)[], indice: number) {\n return pontos[indice] !== null && !pontos[indice - 1] && !pontos[indice + 1];\n}\n\n\nexport type ChartComboKind = 'bar' | 'line';\n\n/**\n * Eixo de valor a que a serie pertence. A escolha e sempre do produto: o\n * grafico nunca parte a escala por conta propria.\n */\nexport type ChartComboAxis = 'left' | 'right';\n\nexport interface ChartComboSeries extends SeriesAppearance {\n axis?: ChartComboAxis;\n kind: ChartComboKind;\n label: string;\n values: readonly (number | null)[];\n}\n\nexport interface ChartComboProps {\n accent?: string;\n categories: readonly string[];\n curve?: ChartCurve;\n defaultHiddenSeries?: readonly string[];\n emptyMessage?: string;\n formatRightValue?: (value: number) => string;\n /**\n * Formato no balao das series da esquerda. Sem ele, vale o `formatValue`: o eixo pode sair compacto e o\n * balao, exato. As da direita seguem `formatRightValue`.\n */\n formatTooltipValue?: (value: number) => string;\n formatValue?: (value: number) => string;\n height?: ChartHeight;\n hiddenSeries?: readonly string[];\n labelAngle?: AxisLabelAngle;\n legend?: ChartLegendPosition;\n legendAlign?: ChartLegendAlign;\n onHiddenSeriesChange?: (hidden: readonly string[]) => void;\n /** Indice da categoria sob o ponteiro, ou `null` ao sair dela. */\n onHoverCategory?: (index: number | null) => void;\n series: readonly ChartComboSeries[];\n /**\n * Valor de cada barra e de cada ponto. Em `onHover`, nas barras os da serie da barra sob o ponteiro; nas\n * linhas, que nao tem alvo proprio, os da categoria sob o ponteiro.\n */\n showDataLabels?: MarkVisibility;\n /** Pontos das linhas. Em `onHover`, os da categoria sob o ponteiro. */\n showDots?: MarkVisibility;\n /** Balao com as series da categoria sob o ponteiro, cada uma no formato do seu eixo. Desligue para montar o proprio `ChartTooltip`. */\n showTooltip?: boolean;\n title: string;\n xAxis?: AxisVisibility;\n yAxis?: AxisVisibility;\n yAxisRight?: AxisVisibility;\n}\n\nfunction eixoDa(serie: ChartComboSeries): ChartComboAxis {\n return serie.axis ?? 'left';\n}\n\n/** Dominio de um eixo: as series que pertencem a ele e entram na escala. */\nfunction dominioDoEixo(\n series: readonly ChartComboSeries[],\n axis: ChartComboAxis,\n oculta: (label: string) => boolean,\n) {\n return mergeDomains(\n seriesInScale(\n series.filter((serie) => eixoDa(serie) === axis),\n oculta,\n ).map((serie) => domainOf(serie.values.filter((valor) => valor !== null))),\n );\n}\n\n/** Dominio com os limites arredondados que o eixo mostraria sozinho. */\nfunction arredondado(dominio: NumericRange): NumericRange {\n const [min = 0, max = 0] = linearScale({ domain: dominio, range: [0, 1] }).domain();\n\n return { max, min };\n}\n\n/**\n * Barras e linhas sobre o mesmo eixo de categorias. Uma serie declara a que\n * eixo de valor pertence; sem nenhuma a direita, o dominio e unico e o eixo\n * direito espelha o esquerdo.\n */\nexport function ChartCombo({\n accent,\n categories,\n curve = 'smooth',\n defaultHiddenSeries,\n emptyMessage = 'Sem dados no período',\n formatRightValue,\n formatTooltipValue,\n formatValue = formatarNumero,\n height = 260,\n hiddenSeries,\n labelAngle = 'auto',\n legend = 'bottom',\n legendAlign,\n onHiddenSeriesChange,\n onHoverCategory,\n series,\n showDataLabels = 'hidden',\n showTooltip = true,\n showDots = 'onHover',\n title,\n xAxis = 'visible',\n yAxis = 'visible',\n yAxisRight,\n}: ChartComboProps) {\n const { font, height: alturaMedida, radius: raioDoCanto, ref, width } = useChartMetrics();\n const { fillHeight, value: alturaDoDesenho } = chartHeight(height, alturaMedida);\n const { isHidden, isOutOfScale, toggle } = useSeriesToggle({\n defaultHiddenSeries,\n hiddenSeries,\n labels: series.map((serie) => serie.label),\n onHiddenSeriesChange,\n });\n const { hover: focarFaixa, hovered: faixaEmFoco } = useHoveredBand(onHoverCategory);\n const [serieEmFoco, setSerieEmFoco] = useState<number | null>(null);\n\n const formatarDireita = formatRightValue ?? formatValue;\n const temEixoDireito = series.some((serie) => eixoDa(serie) === 'right');\n\n // A cor sai da lista inteira, e nao das visiveis: desligar uma serie nao pode\n // repintar as demais.\n const cores = useMemo(() => resolveSeriesColors(series, { accent }), [accent, series]);\n\n // Presenca de cada serie, entre zero e um. E ela que reparte a faixa, entao a\n // barra desligada encolhe enquanto as demais ocupam o lugar dela.\n const presencas = useTweenedNumbers(series.map((serie) => (isHidden(serie.label) ? 0 : 1)));\n\n // Com serie a direita, o zero fica na mesma altura nos dois eixos: as barras crescem da mesma base.\n const [dominioEsquerda, dominioDireita] = useMemo(() => {\n const esquerda = arredondado(dominioDoEixo(series, 'left', isOutOfScale));\n\n return temEixoDireito\n ? alignZeros(esquerda, arredondado(dominioDoEixo(series, 'right', isOutOfScale)))\n : [esquerda, esquerda];\n }, [isOutOfScale, series, temEixoDireito]);\n\n // Uma segunda escala sem eixo para le-la e o duplo eixo que engana. Havendo\n // serie a direita, o eixo aparece sem ninguem pedir.\n const visibilidadeDireita = yAxisRight ?? (temEixoDireito ? 'visible' : 'hidden');\n\n const { axisReveal, margins, plot, rotation } = useCartesianLayout({\n bottomLabels: categories,\n font,\n height: alturaDoDesenho,\n labelAngle,\n leftLabels: valueLabelsFor(dominioEsquerda, alturaDoDesenho, formatValue),\n rightLabels: valueLabelsFor(dominioDireita, alturaDoDesenho, formatarDireita),\n topRoom: showDataLabels === 'hidden' ? 0 : valueLabelRoom(font),\n width,\n xAxis,\n yAxis,\n yAxisRight: visibilidadeDireita,\n });\n\n // Barras e linhas compartilham a escala de faixas: a linha passa pelo centro\n // da faixa, que e onde a marca do eixo de categoria tambem fica.\n const escalaCategorias = useMemo(\n () => bandScale({ domain: categories, range: [0, plot.width] }),\n [categories, plot.width],\n );\n\n // A escala alvo fixa as marcas; a animada posiciona o desenho. Sem separar as\n // duas, as marcas exibiriam valores quebrados durante a transicao.\n const alvoEsquerda = useMemo(\n () => linearScale({ domain: dominioEsquerda, nice: false, range: [plot.height, 0] }),\n [dominioEsquerda, plot.height],\n );\n\n const alvoDireita = useMemo(\n () => linearScale({ domain: dominioDireita, nice: false, range: [plot.height, 0] }),\n [dominioDireita, plot.height],\n );\n\n // Os dois dominios caminham numa animacao so, e por isso chegam juntos.\n const [minEsquerda, maxEsquerda, minDireita, maxDireita] = useTweenedNumbers([\n ...alvoEsquerda.domain(),\n ...alvoDireita.domain(),\n ]);\n\n const escalaEsquerda = useMemo(\n () =>\n linearScale({ domain: { min: minEsquerda, max: maxEsquerda }, nice: false, range: [plot.height, 0] }),\n [maxEsquerda, minEsquerda, plot.height],\n );\n\n const escalaDireita = useMemo(\n () => linearScale({ domain: { min: minDireita, max: maxDireita }, nice: false, range: [plot.height, 0] }),\n [maxDireita, minDireita, plot.height],\n );\n\n const escalaDa = (serie: ChartComboSeries) =>\n eixoDa(serie) === 'right' ? escalaDireita : escalaEsquerda;\n const formatoDa = (serie: ChartComboSeries) =>\n eixoDa(serie) === 'right' ? formatarDireita : formatValue;\n\n const marcasEsquerda = ticksFor(alvoEsquerda, plot.height);\n const marcasDireita = ticksFor(alvoDireita, plot.height);\n\n const vao = escalaCategorias.bandwidth();\n\n // So as barras repartem a faixa: a linha passa pelo centro dela, e por isso\n // entra na conta com presenca zero.\n const faixas = barSlots(\n vao,\n series.map((serie, indice) => (serie.kind === 'bar' ? presencas[indice] ?? 0 : 0)),\n );\n const faixaDa = (indice: number) => faixas[indice] ?? NO_BAR_SLOT;\n\n const marcasCategoria: AxisTick[] = categories.map((categoria) => ({\n label: categoria,\n position: (escalaCategorias(categoria) ?? 0) + vao / 2,\n }));\n\n const marcasDeValor = (\n valores: readonly number[],\n escala: (valor: number) => number,\n formatar: (valor: number) => string,\n ): AxisTick[] => valores.map((valor) => ({ label: formatar(valor), position: escala(valor) }));\n\n return (\n <CartesianFrame\n axisReveal={axisReveal}\n containerRef={ref}\n empty={series.length === 0 || categories.length === 0}\n emptyMessage={emptyMessage}\n fillHeight={fillHeight}\n grid={[\n {\n baseline: escalaEsquerda(0),\n lines: marcasEsquerda.map((valor) => escalaEsquerda(valor)),\n orientation: 'horizontal',\n },\n ]}\n height={alturaDoDesenho}\n legend={series.map((serie, indice) => ({\n color: cores[indice],\n hidden: isHidden(serie.label),\n label: serie.label,\n }))}\n legendAlign={legendAlign}\n legendPosition={legend}\n margins={margins}\n onToggleSeries={toggle}\n plot={plot}\n title={title}\n tooltip={\n showTooltip\n ? categoryTooltip({\n categories,\n colors: cores,\n format: formatTooltipValue ?? formatValue,\n index: faixaEmFoco,\n isHidden,\n series: series.map((serie) => ({ ...serie, format: eixoDa(serie) === 'right' ? formatarDireita : undefined })),\n })\n : undefined\n }\n width={width}\n xAxis={{ labelRotation: rotation, ticks: marcasCategoria, visibility: xAxis }}\n yAxis={{\n hideLine: true,\n ticks: marcasDeValor(marcasEsquerda, escalaEsquerda, formatValue),\n visibility: yAxis,\n }}\n yAxisRight={{\n hideLine: true,\n ticks: marcasDeValor(marcasDireita, escalaDireita, formatarDireita),\n visibility: visibilidadeDireita,\n }}\n >\n {faixaEmFoco !== null && (\n <BandCursor offset={escalaCategorias(categories[faixaEmFoco]) ?? 0} plot={plot} size={vao} />\n )}\n\n {series.map((serie, indiceSerie) => {\n if (serie.kind !== 'bar') {\n return null;\n }\n\n const oculta = isHidden(serie.label);\n const escala = escalaDa(serie);\n const formatar = formatoDa(serie);\n const base = escala(0);\n\n return (\n <g\n aria-hidden={oculta || undefined}\n className={`${styles.series} ${oculta ? styles.seriesOff : ''}`}\n key={indiceSerie}\n >\n {categories.map((categoria, indiceCategoria) => {\n const valor = serie.values[indiceCategoria];\n\n if (valor === null || valor === undefined || !Number.isFinite(valor)) {\n return null;\n }\n\n const ponta = escala(valor);\n\n return (\n <path\n aria-label={`${serie.label}, ${categoria}: ${formatar(valor)}`}\n className={styles.bar}\n d={roundedBarPath(\n (escalaCategorias(categoria) ?? 0) + faixaDa(indiceSerie).offset,\n Math.min(base, ponta),\n faixaDa(indiceSerie).thickness,\n Math.abs(ponta - base),\n [raioDoCanto, raioDoCanto, raioDoCanto, raioDoCanto],\n )}\n fill={cores[indiceSerie]}\n key={indiceCategoria}\n onMouseEnter={() => {\n focarFaixa(indiceCategoria);\n setSerieEmFoco(indiceSerie);\n }}\n onMouseLeave={() => {\n focarFaixa(null);\n setSerieEmFoco(null);\n }}\n />\n );\n })}\n\n {showDataLabels !== 'hidden' &&\n categories.map((categoria, indiceCategoria) => {\n const valor = serie.values[indiceCategoria];\n\n if (valor === null || valor === undefined || !Number.isFinite(valor)) {\n return null;\n }\n\n return (\n <text\n className={`${styles.valueLabel} ${markShown(showDataLabels, indiceSerie === serieEmFoco) ? '' : styles.valueLabelHidden}`}\n key={indiceCategoria}\n textAnchor=\"middle\"\n x={\n (escalaCategorias(categoria) ?? 0) +\n faixaDa(indiceSerie).offset +\n faixaDa(indiceSerie).thickness / 2\n }\n y={escala(valor) - 6}\n >\n {formatar(valor)}\n </text>\n );\n })}\n </g>\n );\n })}\n\n {series.map((serie, indiceSerie) => {\n if (serie.kind !== 'line') {\n return null;\n }\n\n const oculta = isHidden(serie.label);\n const escala = escalaDa(serie);\n const formatar = formatoDa(serie);\n const pontos = categories.map<ChartPoint | null>((categoria, indice) => {\n const valor = serie.values[indice];\n\n if (valor === null || valor === undefined || !Number.isFinite(valor)) {\n return null;\n }\n\n return { x: (escalaCategorias(categoria) ?? 0) + vao / 2, y: escala(valor) };\n });\n\n return (\n <g\n aria-hidden={oculta || undefined}\n className={`${styles.series} ${oculta ? styles.seriesOff : ''}`}\n key={indiceSerie}\n >\n <path\n className={styles.line}\n d={linePath(pontos, curve)}\n fill=\"none\"\n stroke={cores[indiceSerie]}\n />\n\n {pontos.map((ponto, indice) =>\n ponto === null ? null : (\n <circle\n aria-label={`${serie.label}, ${categories[indice]}: ${formatar(serie.values[indice] ?? 0)}`}\n className={markShown(showDots, indice === faixaEmFoco) || isolado(pontos, indice) ? styles.dotVisible : styles.dot}\n cx={ponto.x}\n cy={ponto.y}\n stroke={cores[indiceSerie]}\n key={indice}\n r={4}\n />\n ),\n )}\n\n {showDataLabels !== 'hidden' &&\n pontos.map((ponto, indice) =>\n ponto === null ? null : (\n <text\n className={`${styles.valueLabel} ${markShown(showDataLabels, indice === faixaEmFoco) ? '' : styles.valueLabelHidden}`}\n key={indice}\n textAnchor=\"middle\"\n x={ponto.x}\n y={ponto.y - 10}\n >\n {formatar(serie.values[indice] ?? 0)}\n </text>\n ),\n )}\n </g>\n );\n })}\n </CartesianFrame>\n );\n}\n"],"names":["isolado","pontos","indice","eixoDa","serie","dominioDoEixo","series","axis","oculta","mergeDomains","seriesInScale","domainOf","valor","arredondado","dominio","min","max","linearScale","ChartCombo","accent","categories","curve","defaultHiddenSeries","emptyMessage","formatRightValue","formatTooltipValue","formatValue","formatarNumero","height","hiddenSeries","labelAngle","legend","legendAlign","onHiddenSeriesChange","onHoverCategory","showDataLabels","showTooltip","showDots","title","xAxis","yAxis","yAxisRight","font","alturaMedida","raioDoCanto","ref","width","useChartMetrics","fillHeight","alturaDoDesenho","chartHeight","isHidden","isOutOfScale","toggle","useSeriesToggle","focarFaixa","faixaEmFoco","useHoveredBand","serieEmFoco","setSerieEmFoco","useState","formatarDireita","temEixoDireito","cores","useMemo","resolveSeriesColors","presencas","useTweenedNumbers","dominioEsquerda","dominioDireita","esquerda","alignZeros","visibilidadeDireita","axisReveal","margins","plot","rotation","useCartesianLayout","valueLabelsFor","valueLabelRoom","escalaCategorias","bandScale","alvoEsquerda","alvoDireita","minEsquerda","maxEsquerda","minDireita","maxDireita","escalaEsquerda","escalaDireita","escalaDa","formatoDa","marcasEsquerda","ticksFor","marcasDireita","vao","faixas","barSlots","faixaDa","NO_BAR_SLOT","marcasCategoria","categoria","marcasDeValor","valores","escala","formatar","jsxs","CartesianFrame","categoryTooltip","jsx","BandCursor","indiceSerie","base","styles","indiceCategoria","ponta","roundedBarPath","markShown","linePath","ponto"],"mappings":";;;;;;;;;;;;;;;;;AAqCA,SAASA,GAAQC,GAAwCC,GAAgB;AACvE,SAAOD,EAAOC,CAAM,MAAM,QAAQ,CAACD,EAAOC,IAAS,CAAC,KAAK,CAACD,EAAOC,IAAS,CAAC;AAC7E;AAuDA,SAASC,EAAOC,GAAyC;AACvD,SAAOA,EAAM,QAAQ;AACvB;AAGA,SAASC,GACPC,GACAC,GACAC,GACA;AACA,SAAOC;AAAA,IACLC;AAAA,MACEJ,EAAO,OAAO,CAACF,MAAUD,EAAOC,CAAK,MAAMG,CAAI;AAAA,MAC/CC;AAAA,IAAA,EACA,IAAI,CAACJ,MAAUO,GAASP,EAAM,OAAO,OAAO,CAACQ,MAAUA,MAAU,IAAI,CAAC,CAAC;AAAA,EAAA;AAE7E;AAGA,SAASC,GAAYC,GAAqC;AACxD,QAAM,CAACC,IAAM,GAAGC,IAAM,CAAC,IAAIC,EAAY,EAAE,QAAQH,GAAS,OAAO,CAAC,GAAG,CAAC,EAAA,CAAG,EAAE,OAAA;AAE3E,SAAO,EAAE,KAAAE,GAAK,KAAAD,EAAA;AAChB;AAOO,SAASG,GAAW;AAAA,EACzB,QAAAC;AAAA,EACA,YAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,qBAAAC;AAAA,EACA,cAAAC,IAAe;AAAA,EACf,kBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,aAAAC,IAAcC;AAAA,EACd,QAAAC,KAAS;AAAA,EACT,cAAAC;AAAA,EACA,YAAAC,KAAa;AAAA,EACb,QAAAC,KAAS;AAAA,EACT,aAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,QAAA5B;AAAA,EACA,gBAAA6B,IAAiB;AAAA,EACjB,aAAAC,KAAc;AAAA,EACd,UAAAC,KAAW;AAAA,EACX,OAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,OAAAC,IAAQ;AAAA,EACR,YAAAC;AACF,GAAoB;AAClB,QAAM,EAAE,MAAAC,GAAM,QAAQC,IAAc,QAAQC,GAAa,KAAAC,IAAK,OAAAC,EAAA,IAAUC,GAAA,GAClE,EAAE,YAAAC,IAAY,OAAOC,MAAoBC,GAAYtB,IAAQe,EAAY,GACzE,EAAE,UAAAQ,GAAU,cAAAC,GAAc,QAAAC,GAAA,IAAWC,GAAgB;AAAA,IACzD,qBAAAhC;AAAA,IACA,cAAAO;AAAA,IACA,QAAQvB,EAAO,IAAI,CAACF,MAAUA,EAAM,KAAK;AAAA,IACzC,sBAAA6B;AAAA,EAAA,CACD,GACK,EAAE,OAAOsB,GAAY,SAASC,EAAA,IAAgBC,GAAevB,EAAe,GAC5E,CAACwB,IAAaC,CAAc,IAAIC,GAAwB,IAAI,GAE5DC,IAAkBrC,MAAoBE,GACtCoC,IAAiBxD,EAAO,KAAK,CAACF,MAAUD,EAAOC,CAAK,MAAM,OAAO,GAIjE2D,IAAQC,EAAQ,MAAMC,GAAoB3D,GAAQ,EAAE,QAAAa,EAAA,CAAQ,GAAG,CAACA,GAAQb,CAAM,CAAC,GAI/E4D,KAAYC,GAAkB7D,EAAO,IAAI,CAACF,MAAW+C,EAAS/C,EAAM,KAAK,IAAI,IAAI,CAAE,CAAC,GAGpF,CAACgE,GAAiBC,CAAc,IAAIL,EAAQ,MAAM;AACtD,UAAMM,IAAWzD,GAAYR,GAAcC,GAAQ,QAAQ8C,CAAY,CAAC;AAExE,WAAOU,IACHS,GAAWD,GAAUzD,GAAYR,GAAcC,GAAQ,SAAS8C,CAAY,CAAC,CAAC,IAC9E,CAACkB,GAAUA,CAAQ;AAAA,EACzB,GAAG,CAAClB,GAAc9C,GAAQwD,CAAc,CAAC,GAInCU,IAAsB/B,OAAeqB,IAAiB,YAAY,WAElE,EAAE,YAAAW,IAAY,SAAAC,IAAS,MAAAC,GAAM,UAAAC,GAAA,IAAaC,GAAmB;AAAA,IACjE,cAAczD;AAAA,IACd,MAAAsB;AAAA,IACA,QAAQO;AAAA,IACR,YAAAnB;AAAA,IACA,YAAYgD,GAAeV,GAAiBnB,GAAiBvB,CAAW;AAAA,IACxE,aAAaoD,GAAeT,GAAgBpB,GAAiBY,CAAe;AAAA,IAC5E,SAAS1B,MAAmB,WAAW,IAAI4C,GAAerC,CAAI;AAAA,IAC9D,OAAAI;AAAA,IACA,OAAAP;AAAA,IACA,OAAAC;AAAA,IACA,YAAYgC;AAAA,EAAA,CACb,GAIKQ,IAAmBhB;AAAA,IACvB,MAAMiB,GAAU,EAAE,QAAQ7D,GAAY,OAAO,CAAC,GAAGuD,EAAK,KAAK,GAAG;AAAA,IAC9D,CAACvD,GAAYuD,EAAK,KAAK;AAAA,EAAA,GAKnBO,IAAelB;AAAA,IACnB,MAAM/C,EAAY,EAAE,QAAQmD,GAAiB,MAAM,IAAO,OAAO,CAACO,EAAK,QAAQ,CAAC,GAAG;AAAA,IACnF,CAACP,GAAiBO,EAAK,MAAM;AAAA,EAAA,GAGzBQ,IAAcnB;AAAA,IAClB,MAAM/C,EAAY,EAAE,QAAQoD,GAAgB,MAAM,IAAO,OAAO,CAACM,EAAK,QAAQ,CAAC,GAAG;AAAA,IAClF,CAACN,GAAgBM,EAAK,MAAM;AAAA,EAAA,GAIxB,CAACS,GAAaC,GAAaC,GAAYC,CAAU,IAAIpB,GAAkB;AAAA,IAC3E,GAAGe,EAAa,OAAA;AAAA,IAChB,GAAGC,EAAY,OAAA;AAAA,EAAO,CACvB,GAEKK,IAAiBxB;AAAA,IACrB,MACE/C,EAAY,EAAE,QAAQ,EAAE,KAAKmE,GAAa,KAAKC,EAAA,GAAe,MAAM,IAAO,OAAO,CAACV,EAAK,QAAQ,CAAC,GAAG;AAAA,IACtG,CAACU,GAAaD,GAAaT,EAAK,MAAM;AAAA,EAAA,GAGlCc,IAAgBzB;AAAA,IACpB,MAAM/C,EAAY,EAAE,QAAQ,EAAE,KAAKqE,GAAY,KAAKC,EAAA,GAAc,MAAM,IAAO,OAAO,CAACZ,EAAK,QAAQ,CAAC,GAAG;AAAA,IACxG,CAACY,GAAYD,GAAYX,EAAK,MAAM;AAAA,EAAA,GAGhCe,IAAW,CAACtF,MAChBD,EAAOC,CAAK,MAAM,UAAUqF,IAAgBD,GACxCG,KAAY,CAACvF,MACjBD,EAAOC,CAAK,MAAM,UAAUyD,IAAkBnC,GAE1CkE,KAAiBC,GAASX,GAAcP,EAAK,MAAM,GACnDmB,KAAgBD,GAASV,GAAaR,EAAK,MAAM,GAEjDoB,IAAMf,EAAiB,UAAA,GAIvBgB,KAASC;AAAA,IACbF;AAAA,IACAzF,EAAO,IAAI,CAACF,GAAOF,MAAYE,EAAM,SAAS,QAAQ8D,GAAUhE,CAAM,KAAK,IAAI,CAAE;AAAA,EAAA,GAE7EgG,IAAU,CAAChG,MAAmB8F,GAAO9F,CAAM,KAAKiG,IAEhDC,KAA8BhF,EAAW,IAAI,CAACiF,OAAe;AAAA,IACjE,OAAOA;AAAA,IACP,WAAWrB,EAAiBqB,CAAS,KAAK,KAAKN,IAAM;AAAA,EAAA,EACrD,GAEIO,KAAgB,CACpBC,GACAC,GACAC,MACeF,EAAQ,IAAI,CAAC3F,OAAW,EAAE,OAAO6F,EAAS7F,CAAK,GAAG,UAAU4F,EAAO5F,CAAK,IAAI;AAE7F,SACE,gBAAA8F;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,YAAAlC;AAAA,MACA,cAAc5B;AAAA,MACd,OAAOvC,EAAO,WAAW,KAAKc,EAAW,WAAW;AAAA,MACpD,cAAAG;AAAA,MACA,YAAAyB;AAAA,MACA,MAAM;AAAA,QACJ;AAAA,UACE,UAAUwC,EAAe,CAAC;AAAA,UAC1B,OAAOI,GAAe,IAAI,CAAChF,MAAU4E,EAAe5E,CAAK,CAAC;AAAA,UAC1D,aAAa;AAAA,QAAA;AAAA,MACf;AAAA,MAEF,QAAQqC;AAAA,MACR,QAAQ3C,EAAO,IAAI,CAACF,GAAOF,OAAY;AAAA,QACrC,OAAO6D,EAAM7D,CAAM;AAAA,QACnB,QAAQiD,EAAS/C,EAAM,KAAK;AAAA,QAC5B,OAAOA,EAAM;AAAA,MAAA,EACb;AAAA,MACF,aAAA4B;AAAA,MACA,gBAAgBD;AAAA,MAChB,SAAA2C;AAAA,MACA,gBAAgBrB;AAAA,MAChB,MAAAsB;AAAA,MACA,OAAArC;AAAA,MACA,SACEF,KACIwE,GAAgB;AAAA,QACd,YAAAxF;AAAA,QACA,QAAQ2C;AAAA,QACR,QAAQtC,MAAsBC;AAAA,QAC9B,OAAO8B;AAAA,QACP,UAAAL;AAAA,QACA,QAAQ7C,EAAO,IAAI,CAACF,OAAW,EAAE,GAAGA,GAAO,QAAQD,EAAOC,CAAK,MAAM,UAAUyD,IAAkB,SAAY;AAAA,MAAA,CAC9G,IACD;AAAA,MAEN,OAAAf;AAAA,MACA,OAAO,EAAE,eAAe8B,IAAU,OAAOwB,IAAiB,YAAY7D,EAAA;AAAA,MACtE,OAAO;AAAA,QACL,UAAU;AAAA,QACV,OAAO+D,GAAcV,IAAgBJ,GAAgB9D,CAAW;AAAA,QAChE,YAAYc;AAAA,MAAA;AAAA,MAEd,YAAY;AAAA,QACV,UAAU;AAAA,QACV,OAAO8D,GAAcR,IAAeL,GAAe5B,CAAe;AAAA,QAClE,YAAYW;AAAA,MAAA;AAAA,MAGb,UAAA;AAAA,QAAAhB,MAAgB,QACf,gBAAAqD,EAACC,IAAA,EAAW,QAAQ9B,EAAiB5D,EAAWoC,CAAW,CAAC,KAAK,GAAG,MAAAmB,GAAY,MAAMoB,EAAA,CAAK;AAAA,QAG5FzF,EAAO,IAAI,CAACF,GAAO2G,MAAgB;AAClC,cAAI3G,EAAM,SAAS;AACjB,mBAAO;AAGT,gBAAMI,IAAS2C,EAAS/C,EAAM,KAAK,GAC7BoG,IAASd,EAAStF,CAAK,GACvBqG,IAAWd,GAAUvF,CAAK,GAC1B4G,IAAOR,EAAO,CAAC;AAErB,iBACE,gBAAAE;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,eAAalG,KAAU;AAAA,cACvB,WAAW,GAAGyG,EAAO,MAAM,IAAIzG,IAASyG,EAAO,YAAY,EAAE;AAAA,cAG5D,UAAA;AAAA,gBAAA7F,EAAW,IAAI,CAACiF,GAAWa,MAAoB;AAC9C,wBAAMtG,IAAQR,EAAM,OAAO8G,CAAe;AAE1C,sBAAItG,KAAU,QAA+B,CAAC,OAAO,SAASA,CAAK;AACjE,2BAAO;AAGT,wBAAMuG,KAAQX,EAAO5F,CAAK;AAE1B,yBACE,gBAAAiG;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC,cAAY,GAAGzG,EAAM,KAAK,KAAKiG,CAAS,KAAKI,EAAS7F,CAAK,CAAC;AAAA,sBAC5D,WAAWqG,EAAO;AAAA,sBAClB,GAAGG;AAAA,yBACApC,EAAiBqB,CAAS,KAAK,KAAKH,EAAQa,CAAW,EAAE;AAAA,wBAC1D,KAAK,IAAIC,GAAMG,EAAK;AAAA,wBACpBjB,EAAQa,CAAW,EAAE;AAAA,wBACrB,KAAK,IAAII,KAAQH,CAAI;AAAA,wBACrB,CAACpE,GAAaA,GAAaA,GAAaA,CAAW;AAAA,sBAAA;AAAA,sBAErD,MAAMmB,EAAMgD,CAAW;AAAA,sBAEvB,cAAc,MAAM;AAClB,wBAAAxD,EAAW2D,CAAe,GAC1BvD,EAAeoD,CAAW;AAAA,sBAC5B;AAAA,sBACA,cAAc,MAAM;AAClB,wBAAAxD,EAAW,IAAI,GACfI,EAAe,IAAI;AAAA,sBACrB;AAAA,oBAAA;AAAA,oBARKuD;AAAA,kBAAA;AAAA,gBAWX,CAAC;AAAA,gBAEA/E,MAAmB,YAClBf,EAAW,IAAI,CAACiF,GAAWa,MAAoB;AAC7C,wBAAMtG,IAAQR,EAAM,OAAO8G,CAAe;AAE1C,yBAAItG,KAAU,QAA+B,CAAC,OAAO,SAASA,CAAK,IAC1D,OAIP,gBAAAiG;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC,WAAW,GAAGI,EAAO,UAAU,IAAII,EAAUlF,GAAgB4E,MAAgBrD,EAAW,IAAI,KAAKuD,EAAO,gBAAgB;AAAA,sBAExH,YAAW;AAAA,sBACX,IACGjC,EAAiBqB,CAAS,KAAK,KAChCH,EAAQa,CAAW,EAAE,SACrBb,EAAQa,CAAW,EAAE,YAAY;AAAA,sBAEnC,GAAGP,EAAO5F,CAAK,IAAI;AAAA,sBAElB,YAASA,CAAK;AAAA,oBAAA;AAAA,oBATVsG;AAAA,kBAAA;AAAA,gBAYX,CAAC;AAAA,cAAA;AAAA,YAAA;AAAA,YA3DEH;AAAA,UAAA;AAAA,QA8DX,CAAC;AAAA,QAEAzG,EAAO,IAAI,CAACF,GAAO2G,MAAgB;AAClC,cAAI3G,EAAM,SAAS;AACjB,mBAAO;AAGT,gBAAMI,IAAS2C,EAAS/C,EAAM,KAAK,GAC7BoG,IAASd,EAAStF,CAAK,GACvBqG,IAAWd,GAAUvF,CAAK,GAC1BH,IAASmB,EAAW,IAAuB,CAACiF,GAAWnG,MAAW;AACtE,kBAAMU,IAAQR,EAAM,OAAOF,CAAM;AAEjC,mBAAIU,KAAU,QAA+B,CAAC,OAAO,SAASA,CAAK,IAC1D,OAGF,EAAE,IAAIoE,EAAiBqB,CAAS,KAAK,KAAKN,IAAM,GAAG,GAAGS,EAAO5F,CAAK,EAAA;AAAA,UAC3E,CAAC;AAED,iBACE,gBAAA8F;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,eAAalG,KAAU;AAAA,cACvB,WAAW,GAAGyG,EAAO,MAAM,IAAIzG,IAASyG,EAAO,YAAY,EAAE;AAAA,cAG7D,UAAA;AAAA,gBAAA,gBAAAJ;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,WAAWI,EAAO;AAAA,oBAClB,GAAGK,GAASrH,GAAQoB,CAAK;AAAA,oBACzB,MAAK;AAAA,oBACL,QAAQ0C,EAAMgD,CAAW;AAAA,kBAAA;AAAA,gBAAA;AAAA,gBAG1B9G,EAAO;AAAA,kBAAI,CAACsH,GAAOrH,MAClBqH,MAAU,OAAO,OACf,gBAAAV;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC,cAAY,GAAGzG,EAAM,KAAK,KAAKgB,EAAWlB,CAAM,CAAC,KAAKuG,EAASrG,EAAM,OAAOF,CAAM,KAAK,CAAC,CAAC;AAAA,sBACzF,WAAWmH,EAAUhF,IAAUnC,MAAWsD,CAAW,KAAKxD,GAAQC,GAAQC,CAAM,IAAI+G,EAAO,aAAaA,EAAO;AAAA,sBAC/G,IAAIM,EAAM;AAAA,sBACV,IAAIA,EAAM;AAAA,sBACV,QAAQxD,EAAMgD,CAAW;AAAA,sBAEzB,GAAG;AAAA,oBAAA;AAAA,oBADE7G;AAAA,kBAAA;AAAA,gBAEP;AAAA,gBAIHiC,MAAmB,YAClBlC,EAAO;AAAA,kBAAI,CAACsH,GAAOrH,MACjBqH,MAAU,OAAO,OACf,gBAAAV;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC,WAAW,GAAGI,EAAO,UAAU,IAAII,EAAUlF,GAAgBjC,MAAWsD,CAAW,IAAI,KAAKyD,EAAO,gBAAgB;AAAA,sBAEnH,YAAW;AAAA,sBACX,GAAGM,EAAM;AAAA,sBACT,GAAGA,EAAM,IAAI;AAAA,sBAEZ,UAAAd,EAASrG,EAAM,OAAOF,CAAM,KAAK,CAAC;AAAA,oBAAA;AAAA,oBAL9BA;AAAA,kBAAA;AAAA,gBAMP;AAAA,cAEJ;AAAA,YAAA;AAAA,YApCG6G;AAAA,UAAA;AAAA,QAuCX,CAAC;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGP;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="_bar_ef56n_1",_="_line_ef56n_5 _line_yf6oe_121",s="_dot_ef56n_9 _dot_yf6oe_130",l="_dotVisible_ef56n_13 _dotVisible_yf6oe_137",i="_valueLabel_ef56n_17 _valueLabel_yf6oe_103",o="_series_ef56n_21 _series_yf6oe_211",n="_seriesOff_ef56n_25 _seriesOff_yf6oe_215",a="_valueLabelHidden_ef56n_29 _valueLabelHidden_yf6oe_116",t={bar:e,line:_,dot:s,dotVisible:l,valueLabel:i,series:o,seriesOff:n,valueLabelHidden:a};exports.bar=e;exports.default=t;exports.dot=s;exports.dotVisible=l;exports.line=_;exports.series=o;exports.seriesOff=n;exports.valueLabel=i;exports.valueLabelHidden=a;
|
|
2
2
|
//# sourceMappingURL=ChartCombo.module.css.cjs.map
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
const
|
|
2
|
-
bar:
|
|
3
|
-
line:
|
|
1
|
+
const e = "_bar_ef56n_1", _ = "_line_ef56n_5 _line_yf6oe_121", s = "_dot_ef56n_9 _dot_yf6oe_130", l = "_dotVisible_ef56n_13 _dotVisible_yf6oe_137", n = "_valueLabel_ef56n_17 _valueLabel_yf6oe_103", o = "_series_ef56n_21 _series_yf6oe_211", f = "_seriesOff_ef56n_25 _seriesOff_yf6oe_215", i = "_valueLabelHidden_ef56n_29 _valueLabelHidden_yf6oe_116", a = {
|
|
2
|
+
bar: e,
|
|
3
|
+
line: _,
|
|
4
4
|
dot: s,
|
|
5
|
-
dotVisible:
|
|
6
|
-
valueLabel:
|
|
7
|
-
series:
|
|
8
|
-
seriesOff:
|
|
5
|
+
dotVisible: l,
|
|
6
|
+
valueLabel: n,
|
|
7
|
+
series: o,
|
|
8
|
+
seriesOff: f,
|
|
9
|
+
valueLabelHidden: i
|
|
9
10
|
};
|
|
10
11
|
export {
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
e as bar,
|
|
13
|
+
a as default,
|
|
13
14
|
s as dot,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
l as dotVisible,
|
|
16
|
+
_ as line,
|
|
17
|
+
o as series,
|
|
18
|
+
f as seriesOff,
|
|
19
|
+
n as valueLabel,
|
|
20
|
+
i as valueLabelHidden
|
|
19
21
|
};
|
|
20
22
|
//# sourceMappingURL=ChartCombo.module.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartCombo.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ChartCombo.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),l=require("./ChartDonut.module.css.cjs"),I=require("../core/useChartMetrics.cjs"),P=require("../core/useSliceRing.cjs"),_=require("../core/centerText.cjs"),k=require("../../../utils/formatters/formatarNumero.cjs"),B=require("../core/ChartFrame.cjs"),G=require("../core/arcs.cjs"),J=require("../core/tooltips.cjs"),K=require("../core/cartesianLayout.cjs"),Q=require("../core/spacing.cjs");function U({accent:f,centerLabel:x="Total",defaultHiddenSlices:v,emptyMessage:q="Sem dados no período",formatPercent:i=c=>`${Math.round(c*100)}%`,formatTooltipValue:M,formatValue:n=k.formatarNumero,height:b=260,hiddenSlices:p,legend:y="right",legendAlign:C,onHiddenSlicesChange:j,onHoverSlice:D,otherLabel:R="Outros",showCenter:S=!0,showLegendValues:N=!0,showTooltip:T=!0,sliceRadius:O,slices:u,smallSliceThreshold:H=.02,thickness:$=.38,title:z}){const{font:c,height:F,radius:L,ref:w,width:d}=I.useChartMetrics(),{fillHeight:A,value:h}=K.chartHeight(b,F),e=P.useSliceRing({accent:f,defaultHiddenSlices:v,hiddenSlices:p,onHiddenSlicesChange:j,onHoverSlice:D,otherLabel:R,slices:u,smallSliceThreshold:H}),m=Q.ringDiameter(d,h)/2,g=m*(1-Math.min(Math.max($,0),1)),E=O??L,s=e.focused===null?void 0:e.slices[e.focused],r=_.fitCenterText(n(s?Math.max(s.value,0):e.total),s?s.label:x,c,g*2);return a.jsxs(B.ChartFrame,{centerOrigin:!0,containerRef:w,empty:e.slices.length===0||u.every(o=>!(o.value>0)),emptyMessage:q,fillHeight:A,height:h,legend:e.slices.map((o,t)=>({color:e.colors[t],hidden:e.isHidden(o.label),label:o.label,value:N?i(e.ratioOf(t)):void 0})),legendAlign:C,legendPosition:y,onToggleSeries:e.toggle,swatch:"dot",title:z,tooltip:T?J.sliceTooltip({colors:e.colors,formatPercent:i,formatValue:M??n,index:e.focused,slices:e.slices,total:e.total}):void 0,width:d,children:[e.slices.map((o,t)=>a.jsx("path",{"aria-label":`${o.label}: ${n(Math.max(o.value,0))} (${i(e.ratioOf(t))})`,className:l.default.slice,d:G.arcPath({...e.angles[t],cornerRadius:E,innerRadius:g,outerRadius:m}),fill:e.colors[t],onMouseEnter:()=>e.focus(t),onMouseLeave:()=>e.focus(null)},t)),S&&a.jsxs("g",{className:l.default.center,children:[a.jsx("text",{className:l.default.centerValue,dy:r.size*.1,style:{fontFamily:r.family,fontSize:r.size},textAnchor:"middle",children:r.value}),a.jsx("text",{className:l.default.centerLabel,dy:r.lineHeight*.62,textAnchor:"middle",children:r.label})]})]})}exports.ChartDonut=U;
|
|
2
2
|
//# sourceMappingURL=ChartDonut.cjs.map
|