@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
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
import { jsx as t, jsxs as u } from "react/jsx-runtime";
|
|
2
|
+
import { useId as st, useState as rt } from "react";
|
|
3
|
+
import { layoutGauge as it, pointAt as Le } from "./gaugeLayout.js";
|
|
4
|
+
import { gaugeCenter as ct, gaugeValueText as mt, rangeText as ke, segmentName as Ae, valueTooltip as dt, segmentTooltip as ut, gaugeReading as ht, formatShown as U } from "./gaugeReading.js";
|
|
5
|
+
import { gaugeDomain as pt, targetBase as gt, gaugeSegments as ft, segmentAt as be, isNumber as Te, majorTicks as vt, clampToDomain as ee, gaugeOrigin as Nt, tickLabelPriority as $t } from "./gaugeScale.js";
|
|
6
|
+
import e from "./ChartGauge.module.css.js";
|
|
7
|
+
import { useChartMetrics as xt } from "../core/useChartMetrics.js";
|
|
8
|
+
import { useTweenedNumbers as Mt } from "../core/useTweenedNumbers.js";
|
|
9
|
+
import { resolveSeriesColors as yt, INTENT_TOKENS as Lt } from "../palette/seriesColor.js";
|
|
10
|
+
import { formatarNumero as kt } from "../../../utils/formatters/formatarNumero.js";
|
|
11
|
+
import { ChartLegend as At } from "../core/ChartLegend.js";
|
|
12
|
+
import { ChartTooltip as bt } from "../ChartTooltip/ChartTooltip.js";
|
|
13
|
+
import { chartHeight as Tt } from "../core/cartesianLayout.js";
|
|
14
|
+
import { arcPath as te } from "../core/arcs.js";
|
|
15
|
+
const wt = 10, Rt = 4, Ct = { rows: [] }, we = (l) => l * Math.PI / 180, Ht = (l) => l * 180 / Math.PI;
|
|
16
|
+
function A(l, N, T) {
|
|
17
|
+
const [i, $] = Le(l, N), [v, S] = Le(l, T);
|
|
18
|
+
return `M${i},${$}L${v},${S}`;
|
|
19
|
+
}
|
|
20
|
+
function qt({
|
|
21
|
+
accent: l,
|
|
22
|
+
ariaValueText: N,
|
|
23
|
+
centerLabel: T,
|
|
24
|
+
colorBySegment: i = !1,
|
|
25
|
+
color: $,
|
|
26
|
+
delta: v,
|
|
27
|
+
emptyMessage: S = "Sem dados no período",
|
|
28
|
+
endAngle: Re = 90,
|
|
29
|
+
formatTooltipValue: Ce,
|
|
30
|
+
formatValue: ae = kt,
|
|
31
|
+
height: He,
|
|
32
|
+
indicator: ne = "fill",
|
|
33
|
+
intent: Oe,
|
|
34
|
+
legend: x = "none",
|
|
35
|
+
loading: le = !1,
|
|
36
|
+
max: Pe,
|
|
37
|
+
min: Ee,
|
|
38
|
+
origin: Ie,
|
|
39
|
+
scaleLabels: Se = "minMax",
|
|
40
|
+
segmentStyle: oe = "track",
|
|
41
|
+
segmentUnit: se = "value",
|
|
42
|
+
segments: je = [],
|
|
43
|
+
showCenter: Be = !0,
|
|
44
|
+
showSegmentLabels: De = "hidden",
|
|
45
|
+
showTooltip: re = !0,
|
|
46
|
+
size: Ge = "default",
|
|
47
|
+
startAngle: _e = -90,
|
|
48
|
+
target: M,
|
|
49
|
+
thickness: ie = 16,
|
|
50
|
+
tickCount: ze = 5,
|
|
51
|
+
ticks: Fe = "hidden",
|
|
52
|
+
title: w,
|
|
53
|
+
trackRadius: Ke,
|
|
54
|
+
value: ce,
|
|
55
|
+
valueDisplay: Ve = "value"
|
|
56
|
+
}) {
|
|
57
|
+
const g = Ge === "compact", { font: We, height: Xe, radius: Ze, ref: qe, width: j } = xt(), { fillHeight: me, value: R } = Tt(He ?? (g ? 96 : 220), Xe), de = st().replace(/[^\w-]/g, ""), [C, B] = rt(null), m = !le && Te(ce) ? ce : null, c = le ? "loading" : m === null ? "empty" : "value", s = pt(Ee, Pe, M), H = gt(M), f = ht({ base: H, formatTooltipValue: Ce, formatValue: ae, segmentUnit: se, valueDisplay: Ve }), d = ft(je, s, { accent: l, unit: se === "percentOfTarget" && H !== null ? H : 1 }), D = Nt(Ie, s), G = m === null ? D : ee(m, s), [Je = G] = Mt([G]), K = ee(Je, s), O = m === null ? void 0 : be(d, G), V = yt([{ color: $, intent: Oe }], { accent: l })[0], b = we(_e), P = we(Re), r = (o) => b + (ee(o, s) - s.min) / (s.max - s.min) * (P - b), W = ne !== "needle", ue = ne !== "fill" && c === "value", he = oe === "rim" && d.length > 0 && c !== "loading", Qe = oe === "track" && d.length > 0 && c !== "loading", E = g ? 2 : 3, X = g ? 3 : 4, y = M && Te(M.value) && c !== "loading" ? M : void 0, Z = g ? "hidden" : Fe, pe = g ? "hidden" : Se, ge = g ? "hidden" : De, k = vt(s, ze, f.showsPercent ? H : null), Ye = [
|
|
58
|
+
...(ge === "hidden" ? [] : d).filter((o) => o.label).map((o) => ({ angle: r((o.from + o.to) / 2), kind: "segment", text: o.label })),
|
|
59
|
+
...y && !g ? [{ angle: r(y.value), kind: "target", text: `${y.label || "Meta"} ${ae(y.value)}` }] : []
|
|
60
|
+
], Ue = ct({
|
|
61
|
+
centerLabel: T,
|
|
62
|
+
compact: g,
|
|
63
|
+
delta: v,
|
|
64
|
+
domain: s,
|
|
65
|
+
emptyMessage: S,
|
|
66
|
+
reading: f,
|
|
67
|
+
showCenter: Be,
|
|
68
|
+
status: c,
|
|
69
|
+
value: m ?? 0
|
|
70
|
+
}), q = m === null ? void 0 : N ?? mt({ delta: v, domain: s, reading: f, segment: O, target: M, value: m }), et = c === "loading" ? `${w}: carregando` : c === "empty" ? `${w}: ${S.toLocaleLowerCase("pt-BR")}` : w;
|
|
71
|
+
function tt() {
|
|
72
|
+
if (m === null || C === null)
|
|
73
|
+
return Ct;
|
|
74
|
+
if (C === "value") {
|
|
75
|
+
const o = i && O ? O.color : V;
|
|
76
|
+
return dt({ color: o, delta: v, domain: s, reading: f, segment: O, target: M, title: w, value: m });
|
|
77
|
+
}
|
|
78
|
+
return ut({ current: O, reading: f, segment: d[C], target: M, value: m });
|
|
79
|
+
}
|
|
80
|
+
const _ = (he ? E + X : 0) + (y ? Rt : 0);
|
|
81
|
+
function fe() {
|
|
82
|
+
var ye;
|
|
83
|
+
const o = it({
|
|
84
|
+
center: Ue,
|
|
85
|
+
compact: g,
|
|
86
|
+
endAngle: P,
|
|
87
|
+
font: We,
|
|
88
|
+
height: R,
|
|
89
|
+
minMaxLabels: [
|
|
90
|
+
{ angle: b, text: U(f, s.min) },
|
|
91
|
+
{ angle: P, text: U(f, s.max) }
|
|
92
|
+
],
|
|
93
|
+
needle: ue,
|
|
94
|
+
outerBand: _,
|
|
95
|
+
outsideLabels: Ye,
|
|
96
|
+
scaleLabels: pe,
|
|
97
|
+
startAngle: b,
|
|
98
|
+
thickness: g ? Math.min(ie, wt) : ie,
|
|
99
|
+
tickLabels: $t(k, H).map((a) => ({
|
|
100
|
+
angle: r(k[a]),
|
|
101
|
+
text: U(f, k[a])
|
|
102
|
+
})),
|
|
103
|
+
ticks: Z,
|
|
104
|
+
width: j
|
|
105
|
+
}), { innerRadius: h, radius: p } = o, Ne = Math.max(0, Math.min(Ke ?? Ze, o.thickness / 2)), z = (a, n, L = h, I = p) => te({ endAngle: n, innerRadius: L, outerRadius: I, startAngle: a }), $e = te({
|
|
106
|
+
cornerRadius: Ne,
|
|
107
|
+
endAngle: P,
|
|
108
|
+
innerRadius: h,
|
|
109
|
+
outerRadius: p,
|
|
110
|
+
startAngle: b
|
|
111
|
+
}), lt = c !== "value" ? 0.5 : W ? 0.32 : 1, xe = (a) => `${e.segment} ${C === a ? e.segmentHot : typeof C == "number" ? e.segmentDimmed : ""}`, F = r(D), J = r(K), ot = i ? ((ye = be(d, K)) == null ? void 0 : ye.color) ?? V : V, Q = h - 4, Me = p + _ + 3, Y = (a) => re ? null : /* @__PURE__ */ t("title", { children: a });
|
|
112
|
+
return /* @__PURE__ */ u(
|
|
113
|
+
"svg",
|
|
114
|
+
{
|
|
115
|
+
"aria-busy": c === "loading" || void 0,
|
|
116
|
+
"aria-label": et,
|
|
117
|
+
"aria-valuemax": m === null ? void 0 : s.max,
|
|
118
|
+
"aria-valuemin": m === null ? void 0 : s.min,
|
|
119
|
+
"aria-valuenow": m === null ? void 0 : G,
|
|
120
|
+
"aria-valuetext": q,
|
|
121
|
+
className: e.canvas,
|
|
122
|
+
height: R,
|
|
123
|
+
role: m === null ? "img" : "meter",
|
|
124
|
+
viewBox: `0 0 ${j} ${R}`,
|
|
125
|
+
width: j,
|
|
126
|
+
children: [
|
|
127
|
+
/* @__PURE__ */ t("defs", { children: /* @__PURE__ */ t("clipPath", { id: de, children: /* @__PURE__ */ t("path", { d: $e }) }) }),
|
|
128
|
+
/* @__PURE__ */ u("g", { transform: `translate(${o.cx} ${o.cy})`, children: [
|
|
129
|
+
/* @__PURE__ */ u("g", { className: c === "loading" ? e.loading : void 0, children: [
|
|
130
|
+
/* @__PURE__ */ t("path", { className: e.track, d: $e }),
|
|
131
|
+
Qe && /* @__PURE__ */ u("g", { clipPath: `url(#${de})`, children: [
|
|
132
|
+
d.map((a, n) => /* @__PURE__ */ t(
|
|
133
|
+
"path",
|
|
134
|
+
{
|
|
135
|
+
className: xe(n),
|
|
136
|
+
d: z(r(a.from), r(a.to)),
|
|
137
|
+
fill: a.color,
|
|
138
|
+
opacity: lt
|
|
139
|
+
},
|
|
140
|
+
n
|
|
141
|
+
)),
|
|
142
|
+
d.slice(1).map((a, n) => /* @__PURE__ */ t("path", { className: e.separator, d: A(r(a.from), h, p) }, n))
|
|
143
|
+
] })
|
|
144
|
+
] }),
|
|
145
|
+
he && /* @__PURE__ */ u("g", { children: [
|
|
146
|
+
d.map((a, n) => /* @__PURE__ */ t(
|
|
147
|
+
"path",
|
|
148
|
+
{
|
|
149
|
+
className: xe(n),
|
|
150
|
+
d: z(r(a.from), r(a.to), p + E, p + E + X),
|
|
151
|
+
fill: a.color,
|
|
152
|
+
opacity: c === "value" ? 1 : 0.5
|
|
153
|
+
},
|
|
154
|
+
n
|
|
155
|
+
)),
|
|
156
|
+
d.slice(1).map((a, n) => /* @__PURE__ */ t(
|
|
157
|
+
"path",
|
|
158
|
+
{
|
|
159
|
+
className: e.separator,
|
|
160
|
+
d: A(r(a.from), p + E - 1, p + E + X + 1)
|
|
161
|
+
},
|
|
162
|
+
n
|
|
163
|
+
))
|
|
164
|
+
] }),
|
|
165
|
+
Z !== "hidden" && /* @__PURE__ */ u("g", { children: [
|
|
166
|
+
Z === "majorAndMinor" && k.slice(1).flatMap(
|
|
167
|
+
(a, n) => [1, 2, 3, 4].map((L) => /* @__PURE__ */ t(
|
|
168
|
+
"path",
|
|
169
|
+
{
|
|
170
|
+
className: e.tickMinor,
|
|
171
|
+
d: A(r(k[n] + L * (a - k[n]) / 5), h - 3, h - 6)
|
|
172
|
+
},
|
|
173
|
+
`${n}-${L}`
|
|
174
|
+
))
|
|
175
|
+
),
|
|
176
|
+
k.map((a, n) => /* @__PURE__ */ t("path", { className: e.tickMajor, d: A(r(a), h - 3, h - 9) }, n))
|
|
177
|
+
] }),
|
|
178
|
+
o.scaleLabels.map(({ anchor: a, label: n, x: L, y: I }) => /* @__PURE__ */ t(
|
|
179
|
+
"text",
|
|
180
|
+
{
|
|
181
|
+
className: e.scaleLabel,
|
|
182
|
+
dominantBaseline: pe === "ticks" ? "central" : void 0,
|
|
183
|
+
textAnchor: a,
|
|
184
|
+
x: L,
|
|
185
|
+
y: I,
|
|
186
|
+
children: n.text
|
|
187
|
+
},
|
|
188
|
+
`${n.angle}-${n.text}`
|
|
189
|
+
)),
|
|
190
|
+
c === "value" && D > s.min && D < s.max && /* @__PURE__ */ t("path", { className: e.originMark, d: A(F, h - 2, p + 2) }),
|
|
191
|
+
W && c === "value" && Math.abs(J - F) > 1e-4 && /* @__PURE__ */ t(
|
|
192
|
+
"path",
|
|
193
|
+
{
|
|
194
|
+
className: e.fill,
|
|
195
|
+
d: te({
|
|
196
|
+
cornerRadius: Ne,
|
|
197
|
+
endAngle: Math.max(F, J),
|
|
198
|
+
innerRadius: h,
|
|
199
|
+
outerRadius: p,
|
|
200
|
+
startAngle: Math.min(F, J)
|
|
201
|
+
}),
|
|
202
|
+
fill: ot
|
|
203
|
+
}
|
|
204
|
+
),
|
|
205
|
+
y && /* @__PURE__ */ u("g", { children: [
|
|
206
|
+
/* @__PURE__ */ t("path", { className: e.targetOutline, d: A(r(y.value), h - 3, p + _) }),
|
|
207
|
+
/* @__PURE__ */ t("path", { className: e.targetLine, d: A(r(y.value), h - 3, p + _) })
|
|
208
|
+
] }),
|
|
209
|
+
o.outsideLabels.map(({ anchor: a, label: n, x: L, y: I }) => /* @__PURE__ */ t(
|
|
210
|
+
"text",
|
|
211
|
+
{
|
|
212
|
+
className: n.kind === "target" ? e.targetLabel : `${e.segmentLabel} ${ge === "onHover" ? e.segmentLabelOnHover : ""}`,
|
|
213
|
+
dominantBaseline: "central",
|
|
214
|
+
textAnchor: a,
|
|
215
|
+
x: L,
|
|
216
|
+
y: I,
|
|
217
|
+
children: n.text
|
|
218
|
+
},
|
|
219
|
+
`${n.kind}-${n.angle}`
|
|
220
|
+
)),
|
|
221
|
+
ue && /* @__PURE__ */ u("g", { children: [
|
|
222
|
+
/* @__PURE__ */ t(
|
|
223
|
+
"path",
|
|
224
|
+
{
|
|
225
|
+
className: e.needle,
|
|
226
|
+
d: Ot(W ? h - 5 : p - o.thickness * 0.3, g ? 2.2 : 3.6),
|
|
227
|
+
transform: `rotate(${Ht(r(K))})`
|
|
228
|
+
}
|
|
229
|
+
),
|
|
230
|
+
/* @__PURE__ */ t("circle", { className: e.needle, r: o.pinRadius }),
|
|
231
|
+
/* @__PURE__ */ t("circle", { className: e.pinDot, r: g ? 1.5 : 2.6 })
|
|
232
|
+
] }),
|
|
233
|
+
/* @__PURE__ */ t(Pt, { center: o.center, empty: c === "empty" }),
|
|
234
|
+
c === "value" && /* @__PURE__ */ u("g", { className: e.hits, onMouseLeave: () => B(null), children: [
|
|
235
|
+
d.length > 0 ? d.map((a, n) => /* @__PURE__ */ t(
|
|
236
|
+
"path",
|
|
237
|
+
{
|
|
238
|
+
d: z(r(a.from), r(a.to), Q, Me),
|
|
239
|
+
onMouseEnter: () => B(n),
|
|
240
|
+
children: Y(`${Ae(a)}: ${ke(f, a)}`)
|
|
241
|
+
},
|
|
242
|
+
n
|
|
243
|
+
)) : /* @__PURE__ */ t("path", { d: z(b, P, Q, Me), onMouseEnter: () => B("value"), children: Y(q ?? "") }),
|
|
244
|
+
/* @__PURE__ */ t("circle", { onMouseEnter: () => B("value"), r: Math.max(Q * 0.85, 8), children: Y(q ?? "") })
|
|
245
|
+
] })
|
|
246
|
+
] })
|
|
247
|
+
]
|
|
248
|
+
}
|
|
249
|
+
);
|
|
250
|
+
}
|
|
251
|
+
const at = x === "left" || x === "right", ve = x !== "none" && d.length > 0 && /* @__PURE__ */ t(
|
|
252
|
+
At,
|
|
253
|
+
{
|
|
254
|
+
entries: d.map((o) => ({ color: o.color, label: Ae(o), value: ke(f, o) })),
|
|
255
|
+
position: x
|
|
256
|
+
}
|
|
257
|
+
), nt = tt();
|
|
258
|
+
return /* @__PURE__ */ u("figure", { className: e.figure, children: [
|
|
259
|
+
/* @__PURE__ */ t("figcaption", { className: e.title, children: w }),
|
|
260
|
+
/* @__PURE__ */ u("div", { className: `${e.body} ${at ? e.bodyRow : e.bodyColumn}`, children: [
|
|
261
|
+
(x === "top" || x === "left") && ve,
|
|
262
|
+
/* @__PURE__ */ t(
|
|
263
|
+
"div",
|
|
264
|
+
{
|
|
265
|
+
className: `${e.plot} ${me ? e.plotFill : ""}`,
|
|
266
|
+
ref: qe,
|
|
267
|
+
style: me ? void 0 : { minHeight: R },
|
|
268
|
+
children: j === 0 || R === 0 ? null : re ? /* @__PURE__ */ t(bt, { columns: [{ format: f.formatExact }], computed: "none", ...nt, children: fe() }) : fe()
|
|
269
|
+
}
|
|
270
|
+
),
|
|
271
|
+
(x === "bottom" || x === "right") && ve
|
|
272
|
+
] })
|
|
273
|
+
] });
|
|
274
|
+
}
|
|
275
|
+
function Ot(l, N) {
|
|
276
|
+
return `M${-N},0L-0.8,${-l}L0.8,${-l}L${N},0Z`;
|
|
277
|
+
}
|
|
278
|
+
function Pt({ center: l, empty: N }) {
|
|
279
|
+
const T = l.value ? l.value.size : 0;
|
|
280
|
+
return /* @__PURE__ */ u("g", { className: e.center, children: [
|
|
281
|
+
l.value && /* @__PURE__ */ t(
|
|
282
|
+
"text",
|
|
283
|
+
{
|
|
284
|
+
className: `${e.centerValue} ${N ? e.centerValueEmpty : ""}`,
|
|
285
|
+
style: { fontFamily: l.value.family, fontSize: l.value.size },
|
|
286
|
+
textAnchor: "middle",
|
|
287
|
+
y: l.top + l.value.size * 0.84,
|
|
288
|
+
children: l.value.text
|
|
289
|
+
}
|
|
290
|
+
),
|
|
291
|
+
l.lines.map((i, $) => {
|
|
292
|
+
const v = l.top + T + ($ + 1) * l.lineHeight - 3;
|
|
293
|
+
return i.kind === "text" ? /* @__PURE__ */ t("text", { className: e.centerLine, textAnchor: "middle", y: v, children: i.text }, $) : i.kind === "warn" ? /* @__PURE__ */ u("text", { className: e.centerWarn, textAnchor: "middle", y: v, children: [
|
|
294
|
+
/* @__PURE__ */ t("tspan", { className: e.warnGlyph, children: `${i.glyph} ` }),
|
|
295
|
+
i.text
|
|
296
|
+
] }, $) : /* @__PURE__ */ u("text", { className: e.centerLine, textAnchor: "middle", y: v, children: [
|
|
297
|
+
/* @__PURE__ */ t("tspan", { fill: Lt[i.intent], children: `${i.glyph} ` }),
|
|
298
|
+
/* @__PURE__ */ t("tspan", { className: e.deltaNumber, children: i.text }),
|
|
299
|
+
i.label && /* @__PURE__ */ t("tspan", { className: e.deltaLabel, children: ` ${i.label}` })
|
|
300
|
+
] }, $);
|
|
301
|
+
})
|
|
302
|
+
] });
|
|
303
|
+
}
|
|
304
|
+
export {
|
|
305
|
+
qt as ChartGauge
|
|
306
|
+
};
|
|
307
|
+
//# sourceMappingURL=ChartGauge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartGauge.js","sources":["../../../../src/components/charts/ChartGauge/ChartGauge.tsx"],"sourcesContent":["import { useId, useState } from 'react';\nimport { ChartTooltip } from '../ChartTooltip';\nimport {\n ChartLegend,\n arcPath,\n chartHeight,\n useChartMetrics,\n useTweenedNumbers,\n type ChartHeight,\n type ChartLegendPosition,\n type MarkVisibility,\n} from '../core';\nimport { INTENT_TOKENS, resolveSeriesColors, type SeriesAppearance, type SeriesIntent } from '../palette';\nimport { formatarNumero } from '../../../utils/formatters';\nimport { layoutGauge, pointAt, type GaugeCenterLayout, type OutsideLabel } from './gaugeLayout';\nimport {\n gaugeCenter,\n gaugeReading,\n gaugeValueText,\n rangeText,\n segmentName,\n segmentTooltip,\n valueTooltip,\n formatShown,\n type GaugeStatus,\n type GaugeTooltip,\n} from './gaugeReading';\nimport {\n clampToDomain,\n gaugeDomain,\n gaugeOrigin,\n gaugeSegments,\n isNumber,\n majorTicks,\n segmentAt,\n targetBase,\n tickLabelPriority,\n} from './gaugeScale';\nimport styles from './ChartGauge.module.css';\n\n/** Uma faixa da escala. A cor segue a regra da família: `color`, depois `intent`, depois a paleta. */\nexport interface ChartGaugeSegment extends SeriesAppearance {\n label?: string;\n /** Limite superior, na unidade de `segmentUnit`. Omitido na última faixa, vai até `max`. */\n to?: number;\n}\n\nexport interface ChartGaugeTarget {\n label?: string;\n value: number;\n}\n\nexport interface ChartGaugeDelta {\n /** Formato do módulo da variação; o sinal é do componente. */\n format?: (delta: number) => string;\n /** Sem ela, positiva quando sobe e negativa quando desce. */\n intent?: SeriesIntent;\n label?: string;\n value: number;\n}\n\nexport type ChartGaugeIndicator = 'fill' | 'needle' | 'fillAndNeedle';\nexport type ChartGaugeSegmentStyle = 'track' | 'rim' | 'hidden';\nexport type ChartGaugeScaleLabels = 'hidden' | 'minMax' | 'ticks';\nexport type ChartGaugeSize = 'default' | 'compact';\nexport type ChartGaugeTicks = 'hidden' | 'major' | 'majorAndMinor';\n/** Leitura contra a meta: a mesma palavra na exibição e na unidade das faixas. */\nexport type ChartGaugeValueDisplay = 'value' | 'percentOfTarget';\nexport type ChartGaugeSegmentUnit = 'value' | 'percentOfTarget';\n\nexport interface ChartGaugeProps {\n accent?: string;\n /** Troca a frase montada do `aria-valuetext`. */\n ariaValueText?: string;\n /** Texto sob o valor. Sem ele, na leitura contra a meta, a outra leitura. */\n centerLabel?: string;\n /** O arco assume a cor da faixa onde o valor está. */\n colorBySegment?: boolean;\n /** Cor do arco fora de `colorBySegment`. Vence `intent`. */\n color?: string;\n delta?: ChartGaugeDelta;\n emptyMessage?: string;\n /** Ângulo final, em graus a partir do topo. */\n endAngle?: number;\n /** Formato exato do balão e, na leitura contra a meta, do `aria-valuetext`. */\n formatTooltipValue?: (value: number) => string;\n /** Formato do centro, da escala e da meta. */\n formatValue?: (value: number) => string;\n height?: ChartHeight;\n indicator?: ChartGaugeIndicator;\n intent?: SeriesIntent;\n legend?: ChartLegendPosition;\n loading?: boolean;\n /** Fim da escala. Omitido com meta, vai a 120% dela. */\n max?: number;\n min?: number;\n /** De onde o arco preenchido parte. Sem ele, o zero quando a escala o cruza; senão, `min`. */\n origin?: number;\n scaleLabels?: ChartGaugeScaleLabels;\n segmentStyle?: ChartGaugeSegmentStyle;\n segmentUnit?: ChartGaugeSegmentUnit;\n segments?: readonly ChartGaugeSegment[];\n showCenter?: boolean;\n showSegmentLabels?: MarkVisibility;\n showTooltip?: boolean;\n size?: ChartGaugeSize;\n /** Ângulo inicial, em graus a partir do topo. */\n startAngle?: number;\n target?: ChartGaugeTarget;\n /** Espessura do arco, em pixels. No compacto, até 10. */\n thickness?: number;\n tickCount?: number;\n ticks?: ChartGaugeTicks;\n title: string;\n /** Raio das pontas, limitado a metade da espessura. Sem valor, o token de raio pequeno. */\n trackRadius?: number;\n /** `null` é sem dado. */\n value: number | null;\n valueDisplay?: ChartGaugeValueDisplay;\n}\n\ntype Hovered = number | 'value' | null;\n\nconst COMPACT_MAX_THICKNESS = 10;\nconst TARGET_MARK = 4;\nconst NO_TOOLTIP: GaugeTooltip = { rows: [] };\n\nconst toRadians = (degrees: number) => (degrees * Math.PI) / 180;\nconst toDegrees = (radians: number) => (radians * 180) / Math.PI;\n\nfunction radialPath(angle: number, from: number, to: number) {\n const [x1, y1] = pointAt(angle, from);\n const [x2, y2] = pointAt(angle, to);\n\n return `M${x1},${y1}L${x2},${y2}`;\n}\n\n/**\n * Medidor de um valor numa escala com faixas de significado. É `role=\"meter\"`: o leitor de tela ouve o valor, a faixa,\n * a meta e a variação. Carregando ou sem dado, vira `role=\"img\"`.\n */\nexport function ChartGauge({\n accent,\n ariaValueText,\n centerLabel,\n colorBySegment = false,\n color,\n delta,\n emptyMessage = 'Sem dados no período',\n endAngle = 90,\n formatTooltipValue,\n formatValue = formatarNumero,\n height,\n indicator = 'fill',\n intent,\n legend = 'none',\n loading = false,\n max,\n min,\n origin,\n scaleLabels = 'minMax',\n segmentStyle = 'track',\n segmentUnit = 'value',\n segments = [],\n showCenter = true,\n showSegmentLabels = 'hidden',\n showTooltip = true,\n size = 'default',\n startAngle = -90,\n target,\n thickness = 16,\n tickCount = 5,\n ticks = 'hidden',\n title,\n trackRadius,\n value,\n valueDisplay = 'value',\n}: ChartGaugeProps) {\n const compact = size === 'compact';\n const { font, height: measuredHeight, radius: tokenRadius, ref, width } = useChartMetrics();\n const { fillHeight, value: drawingHeight } = chartHeight(height ?? (compact ? 96 : 220), measuredHeight);\n const clipId = useId().replace(/[^\\w-]/g, '');\n const [hovered, setHovered] = useState<Hovered>(null);\n\n const measured = !loading && isNumber(value) ? value : null;\n const status: GaugeStatus = loading ? 'loading' : measured === null ? 'empty' : 'value';\n const domain = gaugeDomain(min, max, target);\n const base = targetBase(target);\n const reading = gaugeReading({ base, formatTooltipValue, formatValue, segmentUnit, valueDisplay });\n const unit = segmentUnit === 'percentOfTarget' && base !== null ? base : 1;\n const bands = gaugeSegments(segments, domain, { accent, unit });\n const start = gaugeOrigin(origin, domain);\n const reached = measured === null ? start : clampToDomain(measured, domain);\n const [tweened = reached] = useTweenedNumbers([reached]);\n const shown = clampToDomain(tweened, domain);\n const current = measured === null ? undefined : segmentAt(bands, reached);\n const arcColor = resolveSeriesColors([{ color, intent }], { accent })[0];\n\n const startRadians = toRadians(startAngle);\n const endRadians = toRadians(endAngle);\n const angleOf = (at: number) =>\n startRadians + ((clampToDomain(at, domain) - domain.min) / (domain.max - domain.min)) * (endRadians - startRadians);\n\n const showFill = indicator !== 'needle';\n const needle = indicator !== 'fill' && status === 'value';\n const rim = segmentStyle === 'rim' && bands.length > 0 && status !== 'loading';\n const trackBands = segmentStyle === 'track' && bands.length > 0 && status !== 'loading';\n const rimGap = compact ? 2 : 3;\n const rimWidth = compact ? 3 : 4;\n const shownTarget = target && isNumber(target.value) && status !== 'loading' ? target : undefined;\n const tickMode = compact ? 'hidden' : ticks;\n const scaleMode = compact ? 'hidden' : scaleLabels;\n const segmentLabels = compact ? 'hidden' : showSegmentLabels;\n const majors = majorTicks(domain, tickCount, reading.showsPercent ? base : null);\n\n const outsideLabels: OutsideLabel[] = [\n ...(segmentLabels === 'hidden' ? [] : bands)\n .filter((band) => band.label)\n .map((band) => ({ angle: angleOf((band.from + band.to) / 2), kind: 'segment' as const, text: band.label! })),\n ...(shownTarget && !compact\n ? [{ angle: angleOf(shownTarget.value), kind: 'target' as const, text: `${shownTarget.label || 'Meta'} ${formatValue(shownTarget.value)}` }]\n : []),\n ];\n\n const center = gaugeCenter({\n centerLabel,\n compact,\n delta,\n domain,\n emptyMessage,\n reading,\n showCenter,\n status,\n value: measured ?? 0,\n });\n\n const valueText =\n measured === null\n ? undefined\n : (ariaValueText ?? gaugeValueText({ delta, domain, reading, segment: current, target, value: measured }));\n const accessibleName =\n status === 'loading'\n ? `${title}: carregando`\n : status === 'empty'\n ? `${title}: ${emptyMessage.toLocaleLowerCase('pt-BR')}`\n : title;\n\n function tooltip(): GaugeTooltip {\n if (measured === null || hovered === null) {\n return NO_TOOLTIP;\n }\n\n if (hovered === 'value') {\n const tipColor = colorBySegment && current ? current.color : arcColor;\n return valueTooltip({ color: tipColor, delta, domain, reading, segment: current, target, title, value: measured });\n }\n\n return segmentTooltip({ current, reading, segment: bands[hovered], target, value: measured });\n }\n\n const outerBand = (rim ? rimGap + rimWidth : 0) + (shownTarget ? TARGET_MARK : 0);\n\n function drawing() {\n const layout = layoutGauge({\n center,\n compact,\n endAngle: endRadians,\n font,\n height: drawingHeight,\n minMaxLabels: [\n { angle: startRadians, text: formatShown(reading, domain.min) },\n { angle: endRadians, text: formatShown(reading, domain.max) },\n ],\n needle,\n outerBand,\n outsideLabels,\n scaleLabels: scaleMode,\n startAngle: startRadians,\n thickness: compact ? Math.min(thickness, COMPACT_MAX_THICKNESS) : thickness,\n tickLabels: tickLabelPriority(majors, base).map((index) => ({\n angle: angleOf(majors[index]),\n text: formatShown(reading, majors[index]),\n })),\n ticks: tickMode,\n width,\n });\n const { innerRadius, radius } = layout;\n const corner = Math.max(0, Math.min(trackRadius ?? tokenRadius, layout.thickness / 2));\n const ring = (from: number, to: number, inner = innerRadius, outer = radius) =>\n arcPath({ endAngle: to, innerRadius: inner, outerRadius: outer, startAngle: from });\n const trackPath = arcPath({\n cornerRadius: corner,\n endAngle: endRadians,\n innerRadius,\n outerRadius: radius,\n startAngle: startRadians,\n });\n const bandOpacity = status !== 'value' ? 0.5 : showFill ? 0.32 : 1;\n const bandClass = (index: number) =>\n `${styles.segment} ${hovered === index ? styles.segmentHot : typeof hovered === 'number' ? styles.segmentDimmed : ''}`;\n const fillStart = angleOf(start);\n const fillEnd = angleOf(shown);\n const fillColor = colorBySegment ? (segmentAt(bands, shown)?.color ?? arcColor) : arcColor;\n const hitInner = innerRadius - 4;\n const hitOuter = radius + outerBand + 3;\n const describe = (text: string) => (showTooltip ? null : <title>{text}</title>);\n\n return (\n <svg\n aria-busy={status === 'loading' || undefined}\n aria-label={accessibleName}\n aria-valuemax={measured === null ? undefined : domain.max}\n aria-valuemin={measured === null ? undefined : domain.min}\n aria-valuenow={measured === null ? undefined : reached}\n aria-valuetext={valueText}\n className={styles.canvas}\n height={drawingHeight}\n role={measured === null ? 'img' : 'meter'}\n viewBox={`0 0 ${width} ${drawingHeight}`}\n width={width}\n >\n <defs>\n <clipPath id={clipId}>\n <path d={trackPath} />\n </clipPath>\n </defs>\n\n <g transform={`translate(${layout.cx} ${layout.cy})`}>\n <g className={status === 'loading' ? styles.loading : undefined}>\n <path className={styles.track} d={trackPath} />\n {trackBands && (\n <g clipPath={`url(#${clipId})`}>\n {bands.map((band, index) => (\n <path\n className={bandClass(index)}\n d={ring(angleOf(band.from), angleOf(band.to))}\n fill={band.color}\n key={index}\n opacity={bandOpacity}\n />\n ))}\n {bands.slice(1).map((band, index) => (\n <path className={styles.separator} d={radialPath(angleOf(band.from), innerRadius, radius)} key={index} />\n ))}\n </g>\n )}\n </g>\n\n {rim && (\n <g>\n {bands.map((band, index) => (\n <path\n className={bandClass(index)}\n d={ring(angleOf(band.from), angleOf(band.to), radius + rimGap, radius + rimGap + rimWidth)}\n fill={band.color}\n key={index}\n opacity={status === 'value' ? 1 : 0.5}\n />\n ))}\n {bands.slice(1).map((band, index) => (\n <path\n className={styles.separator}\n d={radialPath(angleOf(band.from), radius + rimGap - 1, radius + rimGap + rimWidth + 1)}\n key={index}\n />\n ))}\n </g>\n )}\n\n {tickMode !== 'hidden' && (\n <g>\n {tickMode === 'majorAndMinor' &&\n majors.slice(1).flatMap((major, index) =>\n [1, 2, 3, 4].map((step) => (\n <path\n className={styles.tickMinor}\n d={radialPath(angleOf(majors[index] + (step * (major - majors[index])) / 5), innerRadius - 3, innerRadius - 6)}\n key={`${index}-${step}`}\n />\n )),\n )}\n {majors.map((major, index) => (\n <path className={styles.tickMajor} d={radialPath(angleOf(major), innerRadius - 3, innerRadius - 9)} key={index} />\n ))}\n </g>\n )}\n\n {layout.scaleLabels.map(({ anchor, label, x, y }) => (\n <text\n className={styles.scaleLabel}\n dominantBaseline={scaleMode === 'ticks' ? 'central' : undefined}\n key={`${label.angle}-${label.text}`}\n textAnchor={anchor}\n x={x}\n y={y}\n >\n {label.text}\n </text>\n ))}\n\n {status === 'value' && start > domain.min && start < domain.max && (\n <path className={styles.originMark} d={radialPath(fillStart, innerRadius - 2, radius + 2)} />\n )}\n\n {showFill && status === 'value' && Math.abs(fillEnd - fillStart) > 1e-4 && (\n <path\n className={styles.fill}\n d={arcPath({\n cornerRadius: corner,\n endAngle: Math.max(fillStart, fillEnd),\n innerRadius,\n outerRadius: radius,\n startAngle: Math.min(fillStart, fillEnd),\n })}\n fill={fillColor}\n />\n )}\n\n {shownTarget && (\n <g>\n <path className={styles.targetOutline} d={radialPath(angleOf(shownTarget.value), innerRadius - 3, radius + outerBand)} />\n <path className={styles.targetLine} d={radialPath(angleOf(shownTarget.value), innerRadius - 3, radius + outerBand)} />\n </g>\n )}\n\n {layout.outsideLabels.map(({ anchor, label, x, y }) => (\n <text\n className={\n label.kind === 'target'\n ? styles.targetLabel\n : `${styles.segmentLabel} ${segmentLabels === 'onHover' ? styles.segmentLabelOnHover : ''}`\n }\n dominantBaseline=\"central\"\n key={`${label.kind}-${label.angle}`}\n textAnchor={anchor}\n x={x}\n y={y}\n >\n {label.text}\n </text>\n ))}\n\n {needle && (\n <g>\n <path\n className={styles.needle}\n d={needlePath(showFill ? innerRadius - 5 : radius - layout.thickness * 0.3, compact ? 2.2 : 3.6)}\n transform={`rotate(${toDegrees(angleOf(shown))})`}\n />\n <circle className={styles.needle} r={layout.pinRadius} />\n <circle className={styles.pinDot} r={compact ? 1.5 : 2.6} />\n </g>\n )}\n\n <CenterText center={layout.center} empty={status === 'empty'} />\n\n {status === 'value' && (\n <g className={styles.hits} onMouseLeave={() => setHovered(null)}>\n {bands.length > 0\n ? bands.map((band, index) => (\n <path\n d={ring(angleOf(band.from), angleOf(band.to), hitInner, hitOuter)}\n key={index}\n onMouseEnter={() => setHovered(index)}\n >\n {describe(`${segmentName(band)}: ${rangeText(reading, band)}`)}\n </path>\n ))\n : (\n <path d={ring(startRadians, endRadians, hitInner, hitOuter)} onMouseEnter={() => setHovered('value')}>\n {describe(valueText ?? '')}\n </path>\n )}\n <circle onMouseEnter={() => setHovered('value')} r={Math.max(hitInner * 0.85, 8)}>\n {describe(valueText ?? '')}\n </circle>\n </g>\n )}\n </g>\n </svg>\n );\n }\n\n const lateral = legend === 'left' || legend === 'right';\n const legendView = legend !== 'none' && bands.length > 0 && (\n <ChartLegend\n entries={bands.map((band) => ({ color: band.color, label: segmentName(band), value: rangeText(reading, band) }))}\n position={legend}\n />\n );\n const tip = tooltip();\n\n return (\n <figure className={styles.figure}>\n <figcaption className={styles.title}>{title}</figcaption>\n\n <div className={`${styles.body} ${lateral ? styles.bodyRow : styles.bodyColumn}`}>\n {(legend === 'top' || legend === 'left') && legendView}\n\n <div\n className={`${styles.plot} ${fillHeight ? styles.plotFill : ''}`}\n ref={ref}\n style={fillHeight ? undefined : { minHeight: drawingHeight }}\n >\n {width === 0 || drawingHeight === 0 ? null : showTooltip ? (\n <ChartTooltip columns={[{ format: reading.formatExact }]} computed=\"none\" {...tip}>\n {drawing()}\n </ChartTooltip>\n ) : (\n drawing()\n )}\n </div>\n\n {(legend === 'bottom' || legend === 'right') && legendView}\n </div>\n </figure>\n );\n}\n\nfunction needlePath(length: number, halfBase: number) {\n return `M${-halfBase},0L-0.8,${-length}L0.8,${-length}L${halfBase},0Z`;\n}\n\n/** Valor e linhas do centro, cada linha na sua altura dentro do bloco medido pelo layout. */\nfunction CenterText({ center, empty }: { center: GaugeCenterLayout; empty: boolean }) {\n const valueHeight = center.value ? center.value.size : 0;\n\n return (\n <g className={styles.center}>\n {center.value && (\n <text\n className={`${styles.centerValue} ${empty ? styles.centerValueEmpty : ''}`}\n style={{ fontFamily: center.value.family, fontSize: center.value.size }}\n textAnchor=\"middle\"\n y={center.top + center.value.size * 0.84}\n >\n {center.value.text}\n </text>\n )}\n {center.lines.map((line, index) => {\n const y = center.top + valueHeight + (index + 1) * center.lineHeight - 3;\n\n if (line.kind === 'text') {\n return (\n <text className={styles.centerLine} key={index} textAnchor=\"middle\" y={y}>\n {line.text}\n </text>\n );\n }\n\n if (line.kind === 'warn') {\n return (\n <text className={styles.centerWarn} key={index} textAnchor=\"middle\" y={y}>\n <tspan className={styles.warnGlyph}>{`${line.glyph} `}</tspan>\n {line.text}\n </text>\n );\n }\n\n return (\n <text className={styles.centerLine} key={index} textAnchor=\"middle\" y={y}>\n <tspan fill={INTENT_TOKENS[line.intent]}>{`${line.glyph} `}</tspan>\n <tspan className={styles.deltaNumber}>{line.text}</tspan>\n {line.label && <tspan className={styles.deltaLabel}>{` ${line.label}`}</tspan>}\n </text>\n );\n })}\n </g>\n );\n}\n"],"names":["COMPACT_MAX_THICKNESS","TARGET_MARK","NO_TOOLTIP","toRadians","degrees","toDegrees","radians","radialPath","angle","from","to","x1","y1","pointAt","x2","y2","ChartGauge","accent","ariaValueText","centerLabel","colorBySegment","color","delta","emptyMessage","endAngle","formatTooltipValue","formatValue","formatarNumero","height","indicator","intent","legend","loading","max","min","origin","scaleLabels","segmentStyle","segmentUnit","segments","showCenter","showSegmentLabels","showTooltip","size","startAngle","target","thickness","tickCount","ticks","title","trackRadius","value","valueDisplay","compact","font","measuredHeight","tokenRadius","ref","width","useChartMetrics","fillHeight","drawingHeight","chartHeight","clipId","useId","hovered","setHovered","useState","measured","isNumber","status","domain","gaugeDomain","base","targetBase","reading","gaugeReading","bands","gaugeSegments","start","gaugeOrigin","reached","clampToDomain","tweened","useTweenedNumbers","shown","current","segmentAt","arcColor","resolveSeriesColors","startRadians","endRadians","angleOf","at","showFill","needle","rim","trackBands","rimGap","rimWidth","shownTarget","tickMode","scaleMode","segmentLabels","majors","majorTicks","outsideLabels","band","center","gaugeCenter","valueText","gaugeValueText","accessibleName","tooltip","tipColor","valueTooltip","segmentTooltip","outerBand","drawing","layout","layoutGauge","formatShown","tickLabelPriority","index","innerRadius","radius","corner","ring","inner","outer","arcPath","trackPath","bandOpacity","bandClass","styles","fillStart","fillEnd","fillColor","_a","hitInner","hitOuter","describe","text","jsx","jsxs","major","step","anchor","label","x","y","needlePath","CenterText","segmentName","rangeText","lateral","legendView","ChartLegend","tip","ChartTooltip","length","halfBase","empty","valueHeight","line","INTENT_TOKENS"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="_figure_1pcgg_1 _figure_yf6oe_1",t="_title_1pcgg_6 _title_yf6oe_9",n="_body_1pcgg_10 _body_yf6oe_20",_="_bodyColumn_1pcgg_14 _bodyColumn_yf6oe_42",g="_bodyRow_1pcgg_18 _bodyRow_yf6oe_46",o="_plot_1pcgg_22 _plot_yf6oe_29",c="_plotFill_1pcgg_26 _plotFill_yf6oe_37",l="_canvas_1pcgg_30 _canvas_yf6oe_51",a="_track_1pcgg_35",r="_loading_1pcgg_39",s="_fill_1pcgg_49",i="_segment_1pcgg_53",p="_segmentDimmed_1pcgg_58",m="_segmentHot_1pcgg_62",b="_separator_1pcgg_66",d="_tickMajor_1pcgg_71",u="_tickMinor_1pcgg_76",y="_originMark_1pcgg_81",L="_scaleLabel_1pcgg_86",f="_segmentLabel_1pcgg_87",k="_targetLabel_1pcgg_88",M="_centerLine_1pcgg_89",v="_centerWarn_1pcgg_90",w="_segmentLabelOnHover_1pcgg_105",O="_targetOutline_1pcgg_114",h="_targetLine_1pcgg_120",D="_needle_1pcgg_131",H="_pinDot_1pcgg_135",V="_center_1pcgg_89",j="_centerValue_1pcgg_143",C="_centerValueEmpty_1pcgg_149",F="_warnGlyph_1pcgg_162",R="_deltaNumber_1pcgg_166",E="_deltaLabel_1pcgg_171",G="_hits_1pcgg_176",N={figure:e,title:t,body:n,bodyColumn:_,bodyRow:g,plot:o,plotFill:c,canvas:l,track:a,loading:r,fill:s,segment:i,segmentDimmed:p,segmentHot:m,separator:b,tickMajor:d,tickMinor:u,originMark:y,scaleLabel:L,segmentLabel:f,targetLabel:k,centerLine:M,centerWarn:v,segmentLabelOnHover:w,targetOutline:O,targetLine:h,needle:D,pinDot:H,center:V,centerValue:j,centerValueEmpty:C,warnGlyph:F,deltaNumber:R,deltaLabel:E,hits:G};exports.body=n;exports.bodyColumn=_;exports.bodyRow=g;exports.canvas=l;exports.center=V;exports.centerLine=M;exports.centerValue=j;exports.centerValueEmpty=C;exports.centerWarn=v;exports.default=N;exports.deltaLabel=E;exports.deltaNumber=R;exports.figure=e;exports.fill=s;exports.hits=G;exports.loading=r;exports.needle=D;exports.originMark=y;exports.pinDot=H;exports.plot=o;exports.plotFill=c;exports.scaleLabel=L;exports.segment=i;exports.segmentDimmed=p;exports.segmentHot=m;exports.segmentLabel=f;exports.segmentLabelOnHover=w;exports.separator=b;exports.targetLabel=k;exports.targetLine=h;exports.targetOutline=O;exports.tickMajor=d;exports.tickMinor=u;exports.title=t;exports.track=a;exports.warnGlyph=F;
|
|
2
|
+
//# sourceMappingURL=ChartGauge.module.css.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartGauge.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
const e = "_figure_1pcgg_1 _figure_yf6oe_1", t = "_title_1pcgg_6 _title_yf6oe_9", _ = "_body_1pcgg_10 _body_yf6oe_20", n = "_bodyColumn_1pcgg_14 _bodyColumn_yf6oe_42", g = "_bodyRow_1pcgg_18 _bodyRow_yf6oe_46", c = "_plot_1pcgg_22 _plot_yf6oe_29", o = "_plotFill_1pcgg_26 _plotFill_yf6oe_37", l = "_canvas_1pcgg_30 _canvas_yf6oe_51", a = "_track_1pcgg_35", s = "_loading_1pcgg_39", r = "_fill_1pcgg_49", p = "_segment_1pcgg_53", i = "_segmentDimmed_1pcgg_58", m = "_segmentHot_1pcgg_62", b = "_separator_1pcgg_66", d = "_tickMajor_1pcgg_71", y = "_tickMinor_1pcgg_76", u = "_originMark_1pcgg_81", L = "_scaleLabel_1pcgg_86", f = "_segmentLabel_1pcgg_87", k = "_targetLabel_1pcgg_88", M = "_centerLine_1pcgg_89", v = "_centerWarn_1pcgg_90", w = "_segmentLabelOnHover_1pcgg_105", h = "_targetOutline_1pcgg_114", D = "_targetLine_1pcgg_120", H = "_needle_1pcgg_131", O = "_pinDot_1pcgg_135", V = "_center_1pcgg_89", C = "_centerValue_1pcgg_143", F = "_centerValueEmpty_1pcgg_149", R = "_warnGlyph_1pcgg_162", j = "_deltaNumber_1pcgg_166", E = "_deltaLabel_1pcgg_171", G = "_hits_1pcgg_176", N = {
|
|
2
|
+
figure: e,
|
|
3
|
+
title: t,
|
|
4
|
+
body: _,
|
|
5
|
+
bodyColumn: n,
|
|
6
|
+
bodyRow: g,
|
|
7
|
+
plot: c,
|
|
8
|
+
plotFill: o,
|
|
9
|
+
canvas: l,
|
|
10
|
+
track: a,
|
|
11
|
+
loading: s,
|
|
12
|
+
fill: r,
|
|
13
|
+
segment: p,
|
|
14
|
+
segmentDimmed: i,
|
|
15
|
+
segmentHot: m,
|
|
16
|
+
separator: b,
|
|
17
|
+
tickMajor: d,
|
|
18
|
+
tickMinor: y,
|
|
19
|
+
originMark: u,
|
|
20
|
+
scaleLabel: L,
|
|
21
|
+
segmentLabel: f,
|
|
22
|
+
targetLabel: k,
|
|
23
|
+
centerLine: M,
|
|
24
|
+
centerWarn: v,
|
|
25
|
+
segmentLabelOnHover: w,
|
|
26
|
+
targetOutline: h,
|
|
27
|
+
targetLine: D,
|
|
28
|
+
needle: H,
|
|
29
|
+
pinDot: O,
|
|
30
|
+
center: V,
|
|
31
|
+
centerValue: C,
|
|
32
|
+
centerValueEmpty: F,
|
|
33
|
+
warnGlyph: R,
|
|
34
|
+
deltaNumber: j,
|
|
35
|
+
deltaLabel: E,
|
|
36
|
+
hits: G
|
|
37
|
+
};
|
|
38
|
+
export {
|
|
39
|
+
_ as body,
|
|
40
|
+
n as bodyColumn,
|
|
41
|
+
g as bodyRow,
|
|
42
|
+
l as canvas,
|
|
43
|
+
V as center,
|
|
44
|
+
M as centerLine,
|
|
45
|
+
C as centerValue,
|
|
46
|
+
F as centerValueEmpty,
|
|
47
|
+
v as centerWarn,
|
|
48
|
+
N as default,
|
|
49
|
+
E as deltaLabel,
|
|
50
|
+
j as deltaNumber,
|
|
51
|
+
e as figure,
|
|
52
|
+
r as fill,
|
|
53
|
+
G as hits,
|
|
54
|
+
s as loading,
|
|
55
|
+
H as needle,
|
|
56
|
+
u as originMark,
|
|
57
|
+
O as pinDot,
|
|
58
|
+
c as plot,
|
|
59
|
+
o as plotFill,
|
|
60
|
+
L as scaleLabel,
|
|
61
|
+
p as segment,
|
|
62
|
+
i as segmentDimmed,
|
|
63
|
+
m as segmentHot,
|
|
64
|
+
f as segmentLabel,
|
|
65
|
+
w as segmentLabelOnHover,
|
|
66
|
+
b as separator,
|
|
67
|
+
k as targetLabel,
|
|
68
|
+
D as targetLine,
|
|
69
|
+
h as targetOutline,
|
|
70
|
+
d as tickMajor,
|
|
71
|
+
y as tickMinor,
|
|
72
|
+
t as title,
|
|
73
|
+
a as track,
|
|
74
|
+
R as warnGlyph
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=ChartGauge.module.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartGauge.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("../core/measureText.cjs"),j=95*Math.PI/180,D=24,U=5;function A(t,e){return[e*Math.sin(t),-e*Math.cos(t)]}function X(t){return t.kind==="text"?t.text:t.kind==="delta"&&t.label?`${t.glyph} ${t.text} ${t.label}`:`${t.glyph} ${t.text}`}function p(t,e,o){return t==="start"?e:t==="end"?e-o:e-o/2}function _(t,e){return t.some(o=>e.x0<o.x1&&e.x1>o.x0&&e.y0<o.y1&&e.y1>o.y0)?!1:(t.push(e),!0)}function J(t,e,o){const{center:c,compact:r,font:n,needle:h,scaleLabels:f,ticks:u}=e,m=Math.min(e.thickness,t*.42),s=t-m,i=Math.max(Math.abs(e.startAngle),Math.abs(e.endAngle))<=j,x=h&&i,y=r?4:7,g=n.lineHeight,I=(u!=="hidden"?10:3)+(f==="ticks"?14+.35*o:0),a=Math.max(s-I,6),l=x?1/0:(!h&&(i||f!=="ticks")?1.8:1.6)*a,w=x?1/0:i?a*.92:h?a*.8-y:a*1.45,M=d=>b.measureLabel(X(d),n),z=d=>M(d)<=l?d:d.kind==="delta"?{...d,label:void 0}:d.kind==="warn"?{...d,text:d.short}:d,v=c.lines.map(z).filter(d=>M(d)<=l),G=t*(r?.36:.3),T=n.centerSteps.filter(d=>d.size<=G),E=T.length>0?T:n.centerSteps.slice(-1),W=v.length*g+4,H=d=>{const k=W+d*.8;return x?1.6*a:i&&!h?1.84*Math.sqrt(Math.max(a*a-k*k,a*a*.2)):.95*l};let L;if(c.value!==void 0){const d=(R,Y)=>({...n,family:Y?n.headingFamily:n.family,size:R}),k=E.find(R=>b.measureLabel(c.value,d(R.size,R.display))<=H(R.size))??E[E.length-1],C=d(k.size,k.display);L={family:C.family,size:k.size,text:b.truncateToWidth(c.value,C,H(k.size))}}const P=[...v],$=()=>(L?L.size:0)+P.length*g;for(;P.length>0&&$()>w;)P.pop();const S=$(),q=h?y+(r?3:8):i?-S-(r?1:4):-S/2,N=Math.max(L?b.measureLabel(L.text,{...n,family:L.family,size:L.size}):0,...P.map(M),0);return{center:{height:S,lineHeight:g,lines:P,top:q,value:L,width:N},innerRadius:s,pinRadius:y,thickness:m}}function B(t,e,o){const[c,r]=A(t.angle,e+U),n=Math.sin(t.angle),h=n>.3?"start":n<-.3?"end":"middle",f=b.measureLabel(t.text,o);return{anchor:h,label:t,width:f,x:c,y:r-Math.cos(t.angle)*8}}function F(t,e,o){const[c,r]=A(t.angle,e-o/2);return{anchor:"middle",label:t,x:c,y:r+o/2+14}}function O(t,e,o){const c=J(t,e,o),r=t+e.outerBand,n={x0:1/0,x1:-1/0,y0:1/0,y1:-1/0},h=(s,i,x,y)=>{n.x0=Math.min(n.x0,s),n.x1=Math.max(n.x1,i),n.y0=Math.min(n.y0,x),n.y1=Math.max(n.y1,y)},f=([s,i])=>h(s,s,i,i),u=[-Math.PI,-Math.PI/2,0,Math.PI/2,Math.PI].filter(s=>s>e.startAngle&&s<e.endAngle);[e.startAngle,e.endAngle,...u].forEach(s=>f(A(s,r))),[e.startAngle,e.endAngle].forEach(s=>f(A(s,c.innerRadius))),e.outsideLabels.forEach(s=>{const{anchor:i,width:x,x:y,y:g}=B(s,r,e.font),I=p(i,y,x);h(I,I+x,g-8,g+8)}),e.scaleLabels==="minMax"&&e.minMaxLabels.forEach(s=>{const{x:i,y:x}=F(s,t,c.thickness),y=b.measureLabel(s.text,e.font);h(i-y/2,i+y/2,x-10,x+4)});const{center:m}=c;return m.height>0&&h(-m.width/2,m.width/2,m.top,m.top+m.height+2),e.needle&&h(-c.pinRadius,c.pinRadius,-c.pinRadius,c.pinRadius),{box:n,metrics:c}}function K(t){const{font:e,height:o,width:c}=t,r=t.scaleLabels==="ticks"?Math.max(0,...t.tickLabels.map(a=>b.measureLabel(a.text,e))):0,n=a=>{const{box:l}=O(a,t,r);return l.x1-l.x0<=c-2&&l.y1-l.y0<=o-2};let h=4,f=Math.max(c,o);for(let a=0;a<D;a+=1){const l=(h+f)/2;n(l)?h=l:f=l}const u=h,{box:m,metrics:s}=O(u,t,r),{center:i,innerRadius:x,thickness:y}=s,g=[],I=[...t.outsideLabels].sort((a,l)=>+(l.kind==="target")-+(a.kind==="target")).map(a=>B(a,u+t.outerBand,e)).filter(({anchor:a,width:l,x:w,y:M})=>{const z=p(a,w,l);return _(g,{x0:z-3,x1:z+l+3,y0:M-7,y1:M+7})}).map(({anchor:a,label:l,x:w,y:M})=>({anchor:a,label:l,x:w,y:M}));return{center:i,cx:-m.x0+(c-(m.x1-m.x0))/2,cy:-m.y0+(o-(m.y1-m.y0))/2,innerRadius:x,outsideLabels:I,pinRadius:s.pinRadius,radius:u,scaleLabels:Q(t,x,u,y,i),thickness:y}}function Q(t,e,o,c,r){if(t.scaleLabels==="minMax")return t.minMaxLabels.map(f=>F(f,o,c));if(t.scaleLabels==="hidden")return[];const n=e-(t.ticks!=="hidden"?14:6),h=[{x0:-r.width/2-3,x1:r.width/2+3,y0:r.top-2,y1:r.top+r.height+2}];return t.tickLabels.flatMap(f=>{const[u,m]=A(f.angle,n),s=Math.sin(f.angle),i=m+Math.cos(f.angle)*6,x=s>.3?"end":s<-.3?"start":"middle",y=b.measureLabel(f.text,t.font),g=p(x,u,y);return _(h,{x0:g-2,x1:g+y+2,y0:i-7,y1:i+7})?[{anchor:x,label:f,x:u,y:i}]:[]})}exports.layoutGauge=K;exports.pointAt=A;
|
|
2
|
+
//# sourceMappingURL=gaugeLayout.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gaugeLayout.cjs","sources":["../../../../src/components/charts/ChartGauge/gaugeLayout.ts"],"sourcesContent":["import { measureLabel, truncateToWidth, type LabelFont } from '../core';\nimport type { ChartGaugeScaleLabels, ChartGaugeTicks } from './ChartGauge';\nimport type { CenterLine, GaugeCenter } from './gaugeReading';\n\n/** Até essa meia-abertura o arco é uma meia-lua, e o centro se apoia na linha de base. */\nconst SEMICIRCLE_LIMIT = (95 * Math.PI) / 180;\nconst SEARCH_STEPS = 24;\nconst OUTSIDE_LABEL_GAP = 5;\n\nexport type TextAnchor = 'start' | 'middle' | 'end';\n\nexport interface AngledLabel {\n angle: number;\n text: string;\n}\n\nexport interface OutsideLabel extends AngledLabel {\n kind: 'segment' | 'target';\n}\n\nexport interface PlacedLabel<T extends AngledLabel = AngledLabel> {\n anchor: TextAnchor;\n label: T;\n x: number;\n y: number;\n}\n\nexport interface GaugeLayoutInput {\n center: GaugeCenter;\n compact: boolean;\n /** Radianos a partir do topo, no sentido horário. */\n endAngle: number;\n font: LabelFont;\n height: number;\n /** Rótulos de ponta, mínimo e máximo, quando `scaleLabels` é `minMax`. */\n minMaxLabels: readonly [AngledLabel, AngledLabel];\n needle: boolean;\n /** Régua e marca da meta, além do raio externo do arco. */\n outerBand: number;\n outsideLabels: readonly OutsideLabel[];\n scaleLabels: ChartGaugeScaleLabels;\n startAngle: number;\n thickness: number;\n /** Rótulos das marcas principais, na ordem em que disputam espaço. */\n tickLabels: readonly AngledLabel[];\n ticks: ChartGaugeTicks;\n width: number;\n}\n\nexport interface GaugeCenterLayout {\n height: number;\n lineHeight: number;\n lines: readonly CenterLine[];\n top: number;\n value?: { family: string; size: number; text: string };\n width: number;\n}\n\nexport interface GaugeLayout {\n center: GaugeCenterLayout;\n cx: number;\n cy: number;\n innerRadius: number;\n outsideLabels: readonly PlacedLabel<OutsideLabel>[];\n pinRadius: number;\n radius: number;\n scaleLabels: readonly PlacedLabel[];\n thickness: number;\n}\n\ninterface Box {\n x0: number;\n x1: number;\n y0: number;\n y1: number;\n}\n\nexport function pointAt(angle: number, radius: number): [number, number] {\n return [radius * Math.sin(angle), -radius * Math.cos(angle)];\n}\n\nfunction lineText(line: CenterLine) {\n if (line.kind === 'text') {\n return line.text;\n }\n\n return line.kind === 'delta' && line.label ? `${line.glyph} ${line.text} ${line.label}` : `${line.glyph} ${line.text}`;\n}\n\nfunction anchorX(anchor: TextAnchor, x: number, width: number) {\n return anchor === 'start' ? x : anchor === 'end' ? x - width : x - width / 2;\n}\n\n/** Rótulo que colide com um já posto não entra. */\nfunction place(placed: Box[], box: Box) {\n if (placed.some((other) => box.x0 < other.x1 && box.x1 > other.x0 && box.y0 < other.y1 && box.y1 > other.y0)) {\n return false;\n }\n\n placed.push(box);\n return true;\n}\n\n/**\n * O centro cabe no vazio do arco: o valor desce na escala tipográfica até caber, e as linhas que não cabem saem, de\n * baixo para cima. Na meia-lua com ponteiro, o bloco vai para baixo do pino, fora do arco.\n */\nfunction layoutCenter(radius: number, input: GaugeLayoutInput, tickLabelWidth: number) {\n const { center, compact, font, needle, scaleLabels, ticks } = input;\n const thickness = Math.min(input.thickness, radius * 0.42);\n const innerRadius = radius - thickness;\n const semicircle = Math.max(Math.abs(input.startAngle), Math.abs(input.endAngle)) <= SEMICIRCLE_LIMIT;\n const belowPin = needle && semicircle;\n const pinRadius = compact ? 4 : 7;\n const lineHeight = font.lineHeight;\n const inset = (ticks !== 'hidden' ? 10 : 3) + (scaleLabels === 'ticks' ? 14 + 0.35 * tickLabelWidth : 0);\n const room = Math.max(innerRadius - inset, 6);\n const maxWidth = belowPin\n ? Infinity\n : (!needle && (semicircle || scaleLabels !== 'ticks') ? 1.8 : 1.6) * room;\n const maxHeight = belowPin ? Infinity : semicircle ? room * 0.92 : needle ? room * 0.8 - pinRadius : room * 1.45;\n\n const measure = (line: CenterLine) => measureLabel(lineText(line), font);\n // A linha larga demais tenta a forma curta antes de sair.\n const shortened = (line: CenterLine): CenterLine => {\n if (measure(line) <= maxWidth) return line;\n if (line.kind === 'delta') return { ...line, label: undefined };\n return line.kind === 'warn' ? { ...line, text: line.short } : line;\n };\n const fitted = center.lines.map(shortened).filter((line) => measure(line) <= maxWidth);\n\n const cap = radius * (compact ? 0.36 : 0.3);\n const steps = font.centerSteps.filter((step) => step.size <= cap);\n const candidates = steps.length > 0 ? steps : font.centerSteps.slice(-1);\n const linesHeight = fitted.length * lineHeight + 4;\n\n // Na meia-lua sem ponteiro, o valor fica no alto do bloco, onde a corda do arco é mais curta.\n const roomFor = (size: number) => {\n const chordY = linesHeight + size * 0.8;\n if (belowPin) return 1.6 * room;\n if (semicircle && !needle) return 1.84 * Math.sqrt(Math.max(room * room - chordY * chordY, room * room * 0.2));\n return 0.95 * maxWidth;\n };\n\n let value: GaugeCenterLayout['value'];\n\n if (center.value !== undefined) {\n const fontOf = (size: number, display: boolean) => ({ ...font, family: display ? font.headingFamily : font.family, size });\n const step =\n candidates.find((option) => measureLabel(center.value!, fontOf(option.size, option.display)) <= roomFor(option.size)) ??\n candidates[candidates.length - 1];\n const stepFont = fontOf(step.size, step.display);\n value = { family: stepFont.family, size: step.size, text: truncateToWidth(center.value, stepFont, roomFor(step.size)) };\n }\n\n const lines = [...fitted];\n const heightOf = () => (value ? value.size : 0) + lines.length * lineHeight;\n\n while (lines.length > 0 && heightOf() > maxHeight) {\n lines.pop();\n }\n\n const height = heightOf();\n const top = needle ? pinRadius + (compact ? 3 : 8) : semicircle ? -height - (compact ? 1 : 4) : -height / 2;\n const width = Math.max(\n value ? measureLabel(value.text, { ...font, family: value.family, size: value.size }) : 0,\n ...lines.map(measure),\n 0,\n );\n\n return {\n center: { height, lineHeight, lines, top, value, width },\n innerRadius,\n pinRadius,\n thickness,\n };\n}\n\nfunction outsidePlacement(label: OutsideLabel, radius: number, font: LabelFont) {\n const [x, y] = pointAt(label.angle, radius + OUTSIDE_LABEL_GAP);\n const sin = Math.sin(label.angle);\n const anchor: TextAnchor = sin > 0.3 ? 'start' : sin < -0.3 ? 'end' : 'middle';\n const width = measureLabel(label.text, font);\n\n return { anchor, label, width, x, y: y - Math.cos(label.angle) * 8 };\n}\n\nfunction minMaxPlacement(label: AngledLabel, radius: number, thickness: number) {\n const [x, y] = pointAt(label.angle, radius - thickness / 2);\n\n return { anchor: 'middle' as const, label, x, y: y + thickness / 2 + 14 };\n}\n\nfunction extentsAt(radius: number, input: GaugeLayoutInput, tickLabelWidth: number) {\n const metrics = layoutCenter(radius, input, tickLabelWidth);\n const outer = radius + input.outerBand;\n const box: Box = { x0: Infinity, x1: -Infinity, y0: Infinity, y1: -Infinity };\n const add = (x0: number, x1: number, y0: number, y1: number) => {\n box.x0 = Math.min(box.x0, x0);\n box.x1 = Math.max(box.x1, x1);\n box.y0 = Math.min(box.y0, y0);\n box.y1 = Math.max(box.y1, y1);\n };\n const addPoint = ([x, y]: [number, number]) => add(x, x, y, y);\n const cardinal = [-Math.PI, -Math.PI / 2, 0, Math.PI / 2, Math.PI].filter(\n (angle) => angle > input.startAngle && angle < input.endAngle,\n );\n\n [input.startAngle, input.endAngle, ...cardinal].forEach((angle) => addPoint(pointAt(angle, outer)));\n [input.startAngle, input.endAngle].forEach((angle) => addPoint(pointAt(angle, metrics.innerRadius)));\n\n input.outsideLabels.forEach((label) => {\n const { anchor, width, x, y } = outsidePlacement(label, outer, input.font);\n const x0 = anchorX(anchor, x, width);\n add(x0, x0 + width, y - 8, y + 8);\n });\n\n if (input.scaleLabels === 'minMax') {\n input.minMaxLabels.forEach((label) => {\n const { x, y } = minMaxPlacement(label, radius, metrics.thickness);\n const width = measureLabel(label.text, input.font);\n add(x - width / 2, x + width / 2, y - 10, y + 4);\n });\n }\n\n const { center } = metrics;\n\n if (center.height > 0) {\n add(-center.width / 2, center.width / 2, center.top, center.top + center.height + 2);\n }\n\n if (input.needle) {\n add(-metrics.pinRadius, metrics.pinRadius, -metrics.pinRadius, metrics.pinRadius);\n }\n\n return { box, metrics };\n}\n\n/** Maior raio em que arco, rótulos e centro cabem na área, e a posição de cada rótulo nele. */\nexport function layoutGauge(input: GaugeLayoutInput): GaugeLayout {\n const { font, height, width } = input;\n const tickLabelWidth =\n input.scaleLabels === 'ticks' ? Math.max(0, ...input.tickLabels.map((label) => measureLabel(label.text, font))) : 0;\n const fits = (radius: number) => {\n const { box } = extentsAt(radius, input, tickLabelWidth);\n return box.x1 - box.x0 <= width - 2 && box.y1 - box.y0 <= height - 2;\n };\n\n let low = 4;\n let high = Math.max(width, height);\n\n for (let step = 0; step < SEARCH_STEPS; step += 1) {\n const middle = (low + high) / 2;\n if (fits(middle)) low = middle;\n else high = middle;\n }\n\n const radius = low;\n const { box, metrics } = extentsAt(radius, input, tickLabelWidth);\n const { center, innerRadius, thickness } = metrics;\n\n const outsidePlaced: Box[] = [];\n const outsideLabels = [...input.outsideLabels]\n .sort((a, b) => Number(b.kind === 'target') - Number(a.kind === 'target'))\n .map((label) => outsidePlacement(label, radius + input.outerBand, font))\n .filter(({ anchor, width: labelWidth, x, y }) => {\n const x0 = anchorX(anchor, x, labelWidth);\n return place(outsidePlaced, { x0: x0 - 3, x1: x0 + labelWidth + 3, y0: y - 7, y1: y + 7 });\n })\n .map(({ anchor, label, x, y }) => ({ anchor, label, x, y }));\n\n return {\n center,\n cx: -box.x0 + (width - (box.x1 - box.x0)) / 2,\n cy: -box.y0 + (height - (box.y1 - box.y0)) / 2,\n innerRadius,\n outsideLabels,\n pinRadius: metrics.pinRadius,\n radius,\n scaleLabels: placeScaleLabels(input, innerRadius, radius, thickness, center),\n thickness,\n };\n}\n\nfunction placeScaleLabels(\n input: GaugeLayoutInput,\n innerRadius: number,\n radius: number,\n thickness: number,\n center: GaugeCenterLayout,\n): PlacedLabel[] {\n if (input.scaleLabels === 'minMax') {\n return input.minMaxLabels.map((label) => minMaxPlacement(label, radius, thickness));\n }\n\n if (input.scaleLabels === 'hidden') {\n return [];\n }\n\n const labelRadius = innerRadius - (input.ticks !== 'hidden' ? 14 : 6);\n const placed: Box[] = [\n { x0: -center.width / 2 - 3, x1: center.width / 2 + 3, y0: center.top - 2, y1: center.top + center.height + 2 },\n ];\n\n return input.tickLabels.flatMap((label) => {\n const [x, baseY] = pointAt(label.angle, labelRadius);\n const sin = Math.sin(label.angle);\n const y = baseY + Math.cos(label.angle) * 6;\n const anchor: TextAnchor = sin > 0.3 ? 'end' : sin < -0.3 ? 'start' : 'middle';\n const labelWidth = measureLabel(label.text, input.font);\n const x0 = anchorX(anchor, x, labelWidth);\n\n return place(placed, { x0: x0 - 2, x1: x0 + labelWidth + 2, y0: y - 7, y1: y + 7 }) ? [{ anchor, label, x, y }] : [];\n });\n}\n"],"names":["SEMICIRCLE_LIMIT","SEARCH_STEPS","OUTSIDE_LABEL_GAP","pointAt","angle","radius","lineText","line","anchorX","anchor","x","width","place","placed","box","other","layoutCenter","input","tickLabelWidth","center","compact","font","needle","scaleLabels","ticks","thickness","innerRadius","semicircle","belowPin","pinRadius","lineHeight","inset","room","maxWidth","maxHeight","measure","measureLabel","shortened","fitted","cap","steps","step","candidates","linesHeight","roomFor","size","chordY","value","fontOf","display","option","stepFont","truncateToWidth","lines","heightOf","height","top","outsidePlacement","label","y","sin","minMaxPlacement","extentsAt","metrics","outer","add","x0","x1","y0","y1","addPoint","cardinal","layoutGauge","fits","low","high","middle","outsidePlaced","outsideLabels","b","labelWidth","placeScaleLabels","labelRadius","baseY"],"mappings":"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"}
|