@plenustech/design-system 0.2.2 → 0.2.3
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/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/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/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/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/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/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.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/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 +184 -122
- 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/ChartLine/ChartLine.d.ts +15 -4
- 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/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/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/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/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/overlays/Dialog/Dialog.d.ts +2 -2
- package/dist/types/components/overlays/Dialog/DialogFrame.d.ts +7 -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 +35 -7
- 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 +3 -1
- 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 +1 -1
|
@@ -1,205 +1,253 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useId as
|
|
1
|
+
import { jsxs as T, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { useId as Ao, useMemo as C, useState as Do } from "react";
|
|
3
3
|
import v from "./ChartArea.module.css.js";
|
|
4
|
-
import { useChartMetrics as
|
|
5
|
-
import { useSeriesToggle as
|
|
6
|
-
import { resolveSeriesColors as
|
|
7
|
-
import { useTweenedNumbers as
|
|
8
|
-
import { domainOf as
|
|
9
|
-
import { valueLabelsFor as
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
|
|
15
|
-
|
|
4
|
+
import { useChartMetrics as Ro } from "../core/useChartMetrics.js";
|
|
5
|
+
import { useSeriesToggle as So, seriesInScale as To } from "../core/useSeriesToggle.js";
|
|
6
|
+
import { resolveSeriesColors as Eo } from "../palette/seriesColor.js";
|
|
7
|
+
import { useTweenedNumbers as to } from "../core/useTweenedNumbers.js";
|
|
8
|
+
import { domainOf as lo, stackDiverging as no, mergeDomains as Io, pointScale as jo, linearScale as ao, ticksFor as wo } from "../scales/scales.js";
|
|
9
|
+
import { valueLabelsFor as zo, markShown as ro, chartHeight as Bo } from "../core/cartesianLayout.js";
|
|
10
|
+
import { useCartesianLayout as _o } from "../core/useCartesianLayout.js";
|
|
11
|
+
import { valueLabelRoom as ko } from "../core/spacing.js";
|
|
12
|
+
import { useHoveredBand as Go } from "../core/useHoveredBand.js";
|
|
13
|
+
import { nearestSeriesAt as Vo, PointCursor as Yo, PointBands as qo } from "../core/PointBands.js";
|
|
14
|
+
import { formatarNumero as Jo } from "../../../utils/formatters/formatarNumero.js";
|
|
15
|
+
import { CartesianFrame as Ko } from "../core/CartesianFrame.js";
|
|
16
|
+
import { areaPath as Qo, linePath as Uo } from "../core/shapes.js";
|
|
17
|
+
import { pointLabelPlacement as Wo } from "../core/pointLabels.js";
|
|
18
|
+
import { categoryTooltip as Xo } from "../core/tooltips.js";
|
|
19
|
+
function Zo(u, n) {
|
|
20
|
+
return u[n] !== null && !u[n - 1] && !u[n + 1];
|
|
16
21
|
}
|
|
17
|
-
function
|
|
18
|
-
const
|
|
19
|
-
return
|
|
22
|
+
function ot(u, n) {
|
|
23
|
+
const g = u.flatMap((H) => H === null ? [] : [H.y1]), y = Math.min(n, ...g), $ = Math.max(n, ...g);
|
|
24
|
+
return $ > y ? (n - y) / ($ - y) : 1;
|
|
20
25
|
}
|
|
21
|
-
function
|
|
22
|
-
accent:
|
|
23
|
-
categories:
|
|
24
|
-
curve:
|
|
25
|
-
defaultHiddenSeries:
|
|
26
|
-
emptyMessage:
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
26
|
+
function yt({
|
|
27
|
+
accent: u,
|
|
28
|
+
categories: n,
|
|
29
|
+
curve: g = "smooth",
|
|
30
|
+
defaultHiddenSeries: y,
|
|
31
|
+
emptyMessage: $ = "Sem dados no período",
|
|
32
|
+
formatTooltipValue: H,
|
|
33
|
+
formatValue: x = Jo,
|
|
34
|
+
height: eo = 260,
|
|
35
|
+
includeZero: E = !0,
|
|
36
|
+
hiddenSeries: io,
|
|
37
|
+
labelAngle: so = "auto",
|
|
38
|
+
legend: mo = "bottom",
|
|
39
|
+
legendAlign: po,
|
|
40
|
+
onHiddenSeriesChange: uo,
|
|
41
|
+
onHoverCategory: I,
|
|
42
|
+
series: a,
|
|
43
|
+
showDataLabels: P = "hidden",
|
|
44
|
+
showDots: j = "onHover",
|
|
45
|
+
showTooltip: w = !0,
|
|
46
|
+
stacked: c = !1,
|
|
47
|
+
title: co,
|
|
48
|
+
xAxis: z = "visible",
|
|
49
|
+
yAxis: B = "visible",
|
|
50
|
+
yAxisRight: _ = "hidden"
|
|
43
51
|
}) {
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
52
|
+
const k = Ao(), { font: M, height: ho, ref: fo, width: G } = Ro(), { fillHeight: vo, value: F } = Bo(eo, ho), { isHidden: b, isOutOfScale: V, toggle: bo } = So({
|
|
53
|
+
defaultHiddenSeries: y,
|
|
54
|
+
hiddenSeries: io,
|
|
55
|
+
labels: a.map((o) => o.label),
|
|
56
|
+
onHiddenSeriesChange: uo
|
|
57
|
+
}), h = C(() => Eo(a, { accent: u }), [u, a]), go = to(a.map((o) => b(o.label) ? 0 : 1)), yo = (o) => go[o] ?? 0, N = C(() => {
|
|
58
|
+
const o = To(a, V), t = (l) => o.includes(a[l]) ? 1 : 0;
|
|
59
|
+
return c ? lo(
|
|
60
|
+
n.flatMap(
|
|
61
|
+
(l, s) => no(a.map((p, m) => (p.values[s] ?? 0) * t(m))).flat()
|
|
49
62
|
)
|
|
50
|
-
) :
|
|
51
|
-
|
|
63
|
+
) : Io(
|
|
64
|
+
o.map((l) => lo(l.values.filter((s) => s !== null), { includeZero: E }))
|
|
52
65
|
);
|
|
53
|
-
}, [
|
|
54
|
-
bottomLabels:
|
|
55
|
-
font:
|
|
56
|
-
height:
|
|
57
|
-
labelAngle:
|
|
58
|
-
leftLabels:
|
|
59
|
-
rightLabels:
|
|
60
|
-
topRoom: P ?
|
|
61
|
-
width:
|
|
62
|
-
xAxis:
|
|
63
|
-
yAxis:
|
|
64
|
-
yAxisRight:
|
|
65
|
-
}),
|
|
66
|
-
() =>
|
|
67
|
-
[
|
|
68
|
-
),
|
|
69
|
-
() =>
|
|
70
|
-
[
|
|
71
|
-
), [
|
|
72
|
-
() =>
|
|
73
|
-
[
|
|
74
|
-
),
|
|
75
|
-
(
|
|
76
|
-
),
|
|
77
|
-
(
|
|
78
|
-
const
|
|
79
|
-
if (
|
|
66
|
+
}, [n, E, V, a, c]), Y = zo(N, F, x), { axisReveal: xo, margins: Co, plot: i, rotation: $o } = _o({
|
|
67
|
+
bottomLabels: n,
|
|
68
|
+
font: M,
|
|
69
|
+
height: F,
|
|
70
|
+
labelAngle: so,
|
|
71
|
+
leftLabels: Y,
|
|
72
|
+
rightLabels: Y,
|
|
73
|
+
topRoom: P === "hidden" ? 0 : ko(M),
|
|
74
|
+
width: G,
|
|
75
|
+
xAxis: z,
|
|
76
|
+
yAxis: B,
|
|
77
|
+
yAxisRight: _
|
|
78
|
+
}), q = C(
|
|
79
|
+
() => jo({ domain: n, padding: 0, range: [0, i.width] }),
|
|
80
|
+
[n, i.width]
|
|
81
|
+
), { hover: Ho, hovered: L } = Go(I), [Po, Mo] = Do(null), A = w || I !== void 0 || j === "onHover" || P === "onHover", J = C(
|
|
82
|
+
() => ao({ domain: N, range: [i.height, 0] }),
|
|
83
|
+
[N, i.height]
|
|
84
|
+
), [D, R] = to(J.domain()), d = C(
|
|
85
|
+
() => ao({ domain: { min: D, max: R }, nice: !1, range: [i.height, 0] }),
|
|
86
|
+
[R, D, i.height]
|
|
87
|
+
), K = wo(J, i.height), Q = d(Math.min(Math.max(0, D), R)), Lo = n.map(
|
|
88
|
+
(o, t) => no(a.map((l, s) => (l.values[t] ?? 0) * yo(s)))
|
|
89
|
+
), S = a.map(
|
|
90
|
+
(o, t) => n.map((l, s) => {
|
|
91
|
+
const p = o.values[s];
|
|
92
|
+
if (p == null || !Number.isFinite(p))
|
|
80
93
|
return null;
|
|
81
|
-
const [
|
|
94
|
+
const [m, r] = Lo[s][t];
|
|
82
95
|
return {
|
|
83
|
-
x:
|
|
84
|
-
y0:
|
|
85
|
-
y1: c
|
|
96
|
+
x: q(l) ?? 0,
|
|
97
|
+
y0: c ? d(m) : Q,
|
|
98
|
+
y1: d(c ? r : p)
|
|
86
99
|
};
|
|
87
100
|
})
|
|
88
|
-
),
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
101
|
+
), U = S.map((o) => o.map((t) => t && { x: t.x, y: t.y1 })), W = Vo(
|
|
102
|
+
U,
|
|
103
|
+
L,
|
|
104
|
+
Po,
|
|
105
|
+
(o) => b(a[o].label)
|
|
106
|
+
), X = n.map((o) => ({
|
|
107
|
+
label: o,
|
|
108
|
+
position: q(o) ?? 0
|
|
109
|
+
})), Z = X.map((o) => o.position), oo = K.map((o) => ({
|
|
110
|
+
label: x(o),
|
|
111
|
+
position: d(o)
|
|
94
112
|
}));
|
|
95
|
-
return /* @__PURE__ */
|
|
96
|
-
|
|
113
|
+
return /* @__PURE__ */ T(
|
|
114
|
+
Ko,
|
|
97
115
|
{
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
116
|
+
axisReveal: xo,
|
|
117
|
+
containerRef: fo,
|
|
118
|
+
empty: a.length === 0 || n.length === 0,
|
|
119
|
+
emptyMessage: $,
|
|
101
120
|
grid: [
|
|
102
121
|
{
|
|
103
|
-
baseline:
|
|
104
|
-
lines:
|
|
122
|
+
baseline: d(0),
|
|
123
|
+
lines: K.map((o) => d(o)),
|
|
105
124
|
orientation: "horizontal"
|
|
106
125
|
}
|
|
107
126
|
],
|
|
108
|
-
fillHeight:
|
|
109
|
-
height:
|
|
110
|
-
legend:
|
|
111
|
-
color:
|
|
112
|
-
hidden:
|
|
113
|
-
label:
|
|
127
|
+
fillHeight: vo,
|
|
128
|
+
height: F,
|
|
129
|
+
legend: a.map((o, t) => ({
|
|
130
|
+
color: h[t],
|
|
131
|
+
hidden: b(o.label),
|
|
132
|
+
label: o.label
|
|
114
133
|
})),
|
|
115
|
-
legendAlign:
|
|
116
|
-
legendPosition:
|
|
117
|
-
margins:
|
|
118
|
-
onToggleSeries:
|
|
119
|
-
plot:
|
|
120
|
-
title:
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
134
|
+
legendAlign: po,
|
|
135
|
+
legendPosition: mo,
|
|
136
|
+
margins: Co,
|
|
137
|
+
onToggleSeries: bo,
|
|
138
|
+
plot: i,
|
|
139
|
+
title: co,
|
|
140
|
+
tooltip: w ? Xo({
|
|
141
|
+
categories: n,
|
|
142
|
+
colors: h,
|
|
143
|
+
format: H ?? x,
|
|
144
|
+
index: L,
|
|
145
|
+
isHidden: b,
|
|
146
|
+
series: a,
|
|
147
|
+
showTotal: c
|
|
148
|
+
}) : void 0,
|
|
149
|
+
width: G,
|
|
150
|
+
xAxis: { labelRotation: $o, ticks: X, visibility: z },
|
|
151
|
+
yAxis: { hideLine: !0, ticks: oo, visibility: B },
|
|
152
|
+
yAxisRight: { hideLine: !0, ticks: oo, visibility: _ },
|
|
125
153
|
children: [
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
/* @__PURE__ */
|
|
131
|
-
|
|
132
|
-
|
|
154
|
+
A && L !== null && /* @__PURE__ */ e(Yo, { plot: i, position: Z[L] }),
|
|
155
|
+
!c && /* @__PURE__ */ e("defs", { children: a.map((o, t) => {
|
|
156
|
+
const l = ot(S[t], Q);
|
|
157
|
+
return /* @__PURE__ */ T("linearGradient", { id: `${k}-${t}`, x1: "0", x2: "0", y1: "0", y2: "1", children: [
|
|
158
|
+
l > 0 && /* @__PURE__ */ e("stop", { offset: l * 0.05, stopColor: h[t], stopOpacity: 0.6 }),
|
|
159
|
+
/* @__PURE__ */ e("stop", { offset: l, stopColor: h[t], stopOpacity: 0.05 }),
|
|
160
|
+
l < 1 && /* @__PURE__ */ e("stop", { offset: l + (1 - l) * 0.95, stopColor: h[t], stopOpacity: 0.6 })
|
|
161
|
+
] }, t);
|
|
133
162
|
}) }),
|
|
134
|
-
|
|
135
|
-
const l =
|
|
136
|
-
(
|
|
137
|
-
),
|
|
138
|
-
return /* @__PURE__ */
|
|
163
|
+
a.map((o, t) => {
|
|
164
|
+
const l = S[t], s = l.map(
|
|
165
|
+
(m) => m === null ? null : { x: m.x, y: m.y1 }
|
|
166
|
+
), p = b(o.label);
|
|
167
|
+
return /* @__PURE__ */ T(
|
|
139
168
|
"g",
|
|
140
169
|
{
|
|
141
|
-
"aria-hidden":
|
|
142
|
-
className: `${v.series} ${
|
|
170
|
+
"aria-hidden": p || void 0,
|
|
171
|
+
className: `${v.series} ${p ? v.seriesOff : ""}`,
|
|
143
172
|
children: [
|
|
144
|
-
/* @__PURE__ */
|
|
173
|
+
/* @__PURE__ */ e(
|
|
145
174
|
"path",
|
|
146
175
|
{
|
|
147
|
-
d:
|
|
148
|
-
fill:
|
|
176
|
+
d: Qo(l, g),
|
|
177
|
+
fill: c ? h[t] : `url(#${k}-${t})`,
|
|
178
|
+
fillOpacity: c ? 0.4 : void 0
|
|
149
179
|
}
|
|
150
180
|
),
|
|
151
|
-
/* @__PURE__ */
|
|
181
|
+
/* @__PURE__ */ e(
|
|
152
182
|
"path",
|
|
153
183
|
{
|
|
154
184
|
className: v.outline,
|
|
155
|
-
d:
|
|
185
|
+
d: Uo(s, g),
|
|
156
186
|
fill: "none",
|
|
157
|
-
stroke:
|
|
187
|
+
stroke: h[t]
|
|
158
188
|
}
|
|
159
189
|
),
|
|
160
|
-
|
|
161
|
-
const
|
|
162
|
-
if (
|
|
190
|
+
n.map((m, r) => {
|
|
191
|
+
const f = l[r];
|
|
192
|
+
if (f === null)
|
|
163
193
|
return null;
|
|
164
|
-
const
|
|
165
|
-
return /* @__PURE__ */
|
|
194
|
+
const O = `${o.label}, ${m}: ${x(o.values[r] ?? 0)}`;
|
|
195
|
+
return /* @__PURE__ */ e(
|
|
166
196
|
"circle",
|
|
167
197
|
{
|
|
168
|
-
"aria-label":
|
|
169
|
-
className:
|
|
170
|
-
cx:
|
|
171
|
-
cy:
|
|
172
|
-
|
|
198
|
+
"aria-label": O,
|
|
199
|
+
className: ro(j, t === W) || Zo(l, r) ? v.dotVisible : v.dot,
|
|
200
|
+
cx: f.x,
|
|
201
|
+
cy: f.y1,
|
|
202
|
+
stroke: h[t],
|
|
173
203
|
r: 4,
|
|
174
|
-
children: /* @__PURE__ */
|
|
204
|
+
children: !A && /* @__PURE__ */ e("title", { children: O })
|
|
175
205
|
},
|
|
176
206
|
r
|
|
177
207
|
);
|
|
178
208
|
}),
|
|
179
|
-
P &&
|
|
180
|
-
const
|
|
181
|
-
|
|
209
|
+
P !== "hidden" && n.map((m, r) => {
|
|
210
|
+
const f = l[r];
|
|
211
|
+
if (f === null)
|
|
212
|
+
return null;
|
|
213
|
+
const { below: O, dx: Oo, textAnchor: Fo } = Wo(
|
|
214
|
+
U,
|
|
215
|
+
t,
|
|
216
|
+
r,
|
|
217
|
+
M.lineHeight,
|
|
218
|
+
(No) => b(a[No].label)
|
|
219
|
+
);
|
|
220
|
+
return /* @__PURE__ */ e(
|
|
182
221
|
"text",
|
|
183
222
|
{
|
|
184
|
-
className: v.valueLabel,
|
|
185
|
-
textAnchor:
|
|
186
|
-
x:
|
|
187
|
-
y:
|
|
188
|
-
children:
|
|
223
|
+
className: `${v.valueLabel} ${ro(P, t === W) ? "" : v.valueLabelHidden}`,
|
|
224
|
+
textAnchor: Fo,
|
|
225
|
+
x: f.x + Oo,
|
|
226
|
+
y: O ? f.y1 + M.lineHeight + 2 : f.y1 - 10,
|
|
227
|
+
children: x(o.values[r] ?? 0)
|
|
189
228
|
},
|
|
190
229
|
r
|
|
191
230
|
);
|
|
192
231
|
})
|
|
193
232
|
]
|
|
194
233
|
},
|
|
195
|
-
|
|
234
|
+
t
|
|
196
235
|
);
|
|
197
|
-
})
|
|
236
|
+
}),
|
|
237
|
+
A && /* @__PURE__ */ e(
|
|
238
|
+
qo,
|
|
239
|
+
{
|
|
240
|
+
onHover: Ho,
|
|
241
|
+
onPointerY: Mo,
|
|
242
|
+
plot: i,
|
|
243
|
+
positions: Z
|
|
244
|
+
}
|
|
245
|
+
)
|
|
198
246
|
]
|
|
199
247
|
}
|
|
200
248
|
);
|
|
201
249
|
}
|
|
202
250
|
export {
|
|
203
|
-
|
|
251
|
+
yt as ChartArea
|
|
204
252
|
};
|
|
205
253
|
//# sourceMappingURL=ChartArea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartArea.js","sources":["../../../../src/components/charts/ChartArea/ChartArea.tsx"],"sourcesContent":["import { useId, useMemo } from 'react';\nimport {\n CartesianFrame,\n areaPath,\n cartesianLayout,\n chartHeight,\n linePath,\n useChartMetrics,\n useSeriesToggle,\n useTweenedNumbers,\n valueLabelRoom,\n valueLabelsFor,\n type AxisLabelAngle,\n type AxisTick,\n type AxisVisibility,\n type ChartBand,\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 { domainOf, linearScale, mergeDomains, pointScale, stackDiverging, ticksFor } from '../scales';\nimport { formatarNumero } from '../../../utils/formatters';\nimport styles from './ChartArea.module.css';\n/**\n * Faixa sem vizinha desenhada. O contorno entre ela e o nada nao tem tracado, e\n * o marcador so no hover deixaria o dado invisivel.\n */\nfunction isolada(faixas: readonly (ChartBand | null)[], indice: number) {\n return faixas[indice] !== null && !faixas[indice - 1] && !faixas[indice + 1];\n}\n\n/** Altura do zero dentro da area da serie, de 0 no topo a 1 na base. O degrade clareia rumo a ele pelos dois lados. */\nfunction alturaDoZero(faixas: readonly (ChartBand | null)[], base: number) {\n const pontas = faixas.flatMap((faixa) => (faixa === null ? [] : [faixa.y1]));\n const topo = Math.min(base, ...pontas);\n const fundo = Math.max(base, ...pontas);\n\n return fundo > topo ? (base - topo) / (fundo - topo) : 1;\n}\n\nexport interface ChartAreaSeries extends SeriesAppearance {\n label: string;\n values: readonly (number | null)[];\n}\n\nexport interface ChartAreaProps {\n accent?: string;\n categories: readonly string[];\n curve?: ChartCurve;\n defaultHiddenSeries?: readonly string[];\n emptyMessage?: string;\n formatValue?: (value: number) => string;\n /**\n * Inclui o zero no dominio do eixo de valor. Ligado por padrao, porque marca\n * que nao parte do zero exagera a diferenca; para medidas que nao se comparam\n * a ele — um ano, uma temperatura — desligue; um ano pede tambem um formato sem separador de milhar em `formatValue`.\n */\n includeZero?: boolean;\n height?: ChartHeight;\n hiddenSeries?: readonly string[];\n labelAngle?: AxisLabelAngle;\n legend?: ChartLegendPosition;\n legendAlign?: ChartLegendAlign;\n onHiddenSeriesChange?: (hidden: readonly string[]) => void;\n series: readonly ChartAreaSeries[];\n showDataLabels?: boolean;\n showDots?: boolean;\n stacked?: boolean;\n title: string;\n xAxis?: AxisVisibility;\n yAxis?: AxisVisibility;\n yAxisRight?: AxisVisibility;\n}\n\n\nexport function ChartArea({\n accent,\n categories,\n curve = 'smooth',\n defaultHiddenSeries,\n emptyMessage = 'Sem dados no período',\n formatValue = formatarNumero,\n height = 260,\n includeZero = true,\n hiddenSeries,\n labelAngle = 'auto',\n legend = 'bottom',\n legendAlign,\n onHiddenSeriesChange,\n series,\n showDataLabels = false,\n showDots = false,\n stacked = false,\n title,\n xAxis = 'visible',\n yAxis = 'visible',\n yAxisRight = 'hidden',\n}: ChartAreaProps) {\n const gradienteId = useId();\n const { font, height: alturaMedida, ref, width } = useChartMetrics();\n const { fillHeight, value: alturaDoDesenho } = chartHeight(height, alturaMedida);\n const { isHidden, toggle } = useSeriesToggle({ defaultHiddenSeries, hiddenSeries, onHiddenSeriesChange });\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. Empilhadas, ela pesa a\n // contribuicao, entao a faixa desligada encolhe e a pilha acompanha.\n const presencas = useTweenedNumbers(series.map((serie) => (isHidden(serie.label) ? 0 : 1)));\n const presenca = (indice: number) => presencas[indice] ?? 0;\n\n const dominio = useMemo(() => {\n const visivel = (ordem: number) => (isHidden(series[ordem].label) ? 0 : 1);\n\n if (stacked) {\n return domainOf(\n categories.flatMap((_, indice) =>\n stackDiverging(series.map((serie, ordem) => (serie.values[indice] ?? 0) * visivel(ordem))).flat(),\n ),\n );\n }\n\n return mergeDomains(\n series\n .filter((serie) => !isHidden(serie.label))\n .map((serie) => domainOf(serie.values.filter((valor) => valor !== null), { includeZero })),\n );\n }, [categories, includeZero, isHidden, series, stacked]);\n\n const rotulosDeValor = valueLabelsFor(dominio, alturaDoDesenho, formatValue);\n\n const { margins, plot, rotation } = cartesianLayout({\n bottomLabels: categories,\n font,\n height: alturaDoDesenho,\n labelAngle,\n leftLabels: rotulosDeValor,\n rightLabels: rotulosDeValor,\n topRoom: showDataLabels ? valueLabelRoom(font) : 0,\n width,\n xAxis,\n yAxis,\n yAxisRight,\n });\n\n const escalaCategorias = useMemo(\n () => pointScale({ domain: categories, padding: 0, 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 escalaAlvo = useMemo(\n () => linearScale({ domain: dominio, range: [plot.height, 0] }),\n [dominio, plot.height],\n );\n\n const [minimo, maximo] = useTweenedNumbers(escalaAlvo.domain());\n\n const escalaValores = useMemo(\n () => linearScale({ domain: { min: minimo, max: maximo }, nice: false, range: [plot.height, 0] }),\n [maximo, minimo, plot.height],\n );\n\n const marcasDeValor = ticksFor(escalaAlvo, plot.height);\n // Sem o zero no dominio, a area desce ate o limite do eixo, e nao ate um zero fora do desenho.\n const base = escalaValores(Math.min(Math.max(0, minimo), maximo));\n const pilhas = categories.map((_, indice) =>\n stackDiverging(series.map((serie, ordem) => (serie.values[indice] ?? 0) * presenca(ordem))),\n );\n\n const faixasPorSerie = series.map((serie, indiceSerie) =>\n categories.map<ChartBand | 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 const [de, ate] = pilhas[indice][indiceSerie];\n\n return {\n x: escalaCategorias(categoria) ?? 0,\n y0: stacked ? escalaValores(de) : base,\n y1: stacked ? escalaValores(ate) : escalaValores(valor),\n };\n }),\n );\n\n const marcasCategoria: AxisTick[] = categories.map((categoria) => ({\n label: categoria,\n position: escalaCategorias(categoria) ?? 0,\n }));\n\n const marcasValor: AxisTick[] = marcasDeValor.map((valor) => ({\n label: formatValue(valor),\n position: escalaValores(valor),\n }));\n\n return (\n <CartesianFrame\n containerRef={ref}\n empty={series.length === 0 || categories.length === 0}\n emptyMessage={emptyMessage}\n grid={[\n {\n baseline: escalaValores(0),\n lines: marcasDeValor.map((valor) => escalaValores(valor)),\n orientation: 'horizontal',\n },\n ]}\n fillHeight={fillHeight}\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={{ hideLine: true, ticks: marcasValor, visibility: yAxis }}\n yAxisRight={{ hideLine: true, ticks: marcasValor, visibility: yAxisRight }}\n >\n {/* Sem empilhamento as areas se sobrepoem, e um topo opaco esconderia a de\n baixo. O contorno em cor cheia e que marca o limite de cada faixa. */}\n {!stacked && (\n <defs>\n {series.map((serie, indice) => {\n const zero = alturaDoZero(faixasPorSerie[indice], base);\n\n return (\n <linearGradient id={`${gradienteId}-${indice}`} key={indice} x1=\"0\" x2=\"0\" y1=\"0\" y2=\"1\">\n {zero > 0 && <stop offset={zero * 0.05} stopColor={cores[indice]} stopOpacity={0.6} />}\n <stop offset={zero} stopColor={cores[indice]} stopOpacity={0.05} />\n {zero < 1 && <stop offset={zero + (1 - zero) * 0.95} stopColor={cores[indice]} stopOpacity={0.6} />}\n </linearGradient>\n );\n })}\n </defs>\n )}\n\n {series.map((serie, indiceSerie) => {\n const faixas = faixasPorSerie[indiceSerie];\n const contorno = faixas.map<ChartPoint | null>((faixa) =>\n faixa === null ? null : { x: faixa.x, y: faixa.y1 },\n );\n\n const oculta = isHidden(serie.label);\n\n return (\n <g\n aria-hidden={oculta || undefined}\n className={`${styles.series} ${oculta ? styles.seriesOff : ''}`}\n key={indiceSerie}\n >\n <path\n d={areaPath(faixas, curve)}\n fill={stacked ? cores[indiceSerie] : `url(#${gradienteId}-${indiceSerie})`}\n />\n <path\n className={styles.outline}\n d={linePath(contorno, curve)}\n fill=\"none\"\n stroke={cores[indiceSerie]}\n />\n\n {categories.map((categoria, indice) => {\n const faixa = faixas[indice];\n\n if (faixa === null) {\n return null;\n }\n\n const descricao = `${serie.label}, ${categoria}: ${formatValue(serie.values[indice] ?? 0)}`;\n\n return (\n <circle\n aria-label={descricao}\n className={showDots || isolada(faixas, indice) ? styles.dotVisible : styles.dot}\n cx={faixa.x}\n cy={faixa.y1}\n fill={cores[indiceSerie]}\n key={indice}\n r={4}\n >\n <title>{descricao}</title>\n </circle>\n );\n })}\n\n {showDataLabels &&\n categories.map((categoria, indice) => {\n const faixa = faixas[indice];\n\n if (faixa === null) {\n return null;\n }\n\n return (\n <text\n className={styles.valueLabel}\n key={indice}\n textAnchor=\"middle\"\n x={faixa.x}\n y={faixa.y1 - 10}\n >\n {formatValue(serie.values[indice] ?? 0)}\n </text>\n );\n })}\n </g>\n );\n })}\n </CartesianFrame>\n );\n}\n"],"names":["isolada","faixas","indice","alturaDoZero","base","pontas","faixa","topo","fundo","ChartArea","accent","categories","curve","defaultHiddenSeries","emptyMessage","formatValue","formatarNumero","height","includeZero","hiddenSeries","labelAngle","legend","legendAlign","onHiddenSeriesChange","series","showDataLabels","showDots","stacked","title","xAxis","yAxis","yAxisRight","gradienteId","useId","font","alturaMedida","ref","width","useChartMetrics","fillHeight","alturaDoDesenho","chartHeight","isHidden","toggle","useSeriesToggle","cores","useMemo","resolveSeriesColors","presencas","useTweenedNumbers","serie","presenca","dominio","visivel","ordem","domainOf","_","stackDiverging","mergeDomains","valor","rotulosDeValor","valueLabelsFor","margins","plot","rotation","cartesianLayout","valueLabelRoom","escalaCategorias","pointScale","escalaAlvo","linearScale","minimo","maximo","escalaValores","marcasDeValor","ticksFor","pilhas","faixasPorSerie","indiceSerie","categoria","de","ate","marcasCategoria","marcasValor","jsxs","CartesianFrame","jsx","zero","contorno","oculta","styles","areaPath","linePath","descricao"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChartArea.js","sources":["../../../../src/components/charts/ChartArea/ChartArea.tsx"],"sourcesContent":["import { useId, useMemo, useState } from 'react';\nimport {\n CartesianFrame,\n categoryTooltip,\n PointBands,\n PointCursor,\n areaPath,\n seriesInScale,\n useCartesianLayout,\n chartHeight,\n linePath,\n markShown,\n nearestSeriesAt,\n pointLabelPlacement,\n useChartMetrics,\n useHoveredBand,\n useSeriesToggle,\n useTweenedNumbers,\n valueLabelRoom,\n valueLabelsFor,\n type AxisLabelAngle,\n type AxisTick,\n type AxisVisibility,\n type ChartBand,\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 { domainOf, linearScale, mergeDomains, pointScale, stackDiverging, ticksFor } from '../scales';\nimport { formatarNumero } from '../../../utils/formatters';\nimport styles from './ChartArea.module.css';\n/**\n * Faixa sem vizinha desenhada. O contorno entre ela e o nada nao tem tracado, e\n * o marcador so no hover deixaria o dado invisivel.\n */\nfunction isolada(faixas: readonly (ChartBand | null)[], indice: number) {\n return faixas[indice] !== null && !faixas[indice - 1] && !faixas[indice + 1];\n}\n\n/** Altura do zero dentro da area da serie, de 0 no topo a 1 na base. O degrade clareia rumo a ele pelos dois lados. */\nfunction alturaDoZero(faixas: readonly (ChartBand | null)[], base: number) {\n const pontas = faixas.flatMap((faixa) => (faixa === null ? [] : [faixa.y1]));\n const topo = Math.min(base, ...pontas);\n const fundo = Math.max(base, ...pontas);\n\n return fundo > topo ? (base - topo) / (fundo - topo) : 1;\n}\n\nexport interface ChartAreaSeries extends SeriesAppearance {\n label: string;\n values: readonly (number | null)[];\n}\n\nexport interface ChartAreaProps {\n accent?: string;\n categories: readonly string[];\n curve?: ChartCurve;\n defaultHiddenSeries?: readonly string[];\n emptyMessage?: string;\n /** Formato dos valores no balao. Sem ele, vale o `formatValue`: o eixo pode sair compacto e o balao, exato. */\n formatTooltipValue?: (value: number) => string;\n formatValue?: (value: number) => string;\n /**\n * Inclui o zero no dominio do eixo de valor. Ligado por padrao, porque marca\n * que nao parte do zero exagera a diferenca; para medidas que nao se comparam\n * a ele — um ano, uma temperatura — desligue; um ano pede tambem um formato sem separador de milhar em `formatValue`.\n */\n includeZero?: boolean;\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 mais proxima do ponteiro, ou `null` ao sair. */\n onHoverCategory?: (index: number | null) => void;\n series: readonly ChartAreaSeries[];\n /** Valor acima de cada ponto: sempre, nunca, ou so os da serie mais proxima do ponteiro. */\n showDataLabels?: MarkVisibility;\n /** Pontos de cada valor: sempre, nunca, ou so os da serie mais proxima do ponteiro. */\n showDots?: MarkVisibility;\n /**\n * Balao com as series da categoria mais proxima do ponteiro. Desligue para montar o proprio\n * `ChartTooltip` pela costura; sem balao nem costura, o ponto volta a ter o `<title>`.\n */\n showTooltip?: boolean;\n stacked?: boolean;\n title: string;\n xAxis?: AxisVisibility;\n yAxis?: AxisVisibility;\n yAxisRight?: AxisVisibility;\n}\n\n\nexport function ChartArea({\n accent,\n categories,\n curve = 'smooth',\n defaultHiddenSeries,\n emptyMessage = 'Sem dados no período',\n formatTooltipValue,\n formatValue = formatarNumero,\n height = 260,\n includeZero = true,\n hiddenSeries,\n labelAngle = 'auto',\n legend = 'bottom',\n legendAlign,\n onHiddenSeriesChange,\n onHoverCategory,\n series,\n showDataLabels = 'hidden',\n showDots = 'onHover',\n showTooltip = true,\n stacked = false,\n title,\n xAxis = 'visible',\n yAxis = 'visible',\n yAxisRight = 'hidden',\n}: ChartAreaProps) {\n const gradienteId = useId();\n const { font, height: alturaMedida, 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\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. Empilhadas, ela pesa a\n // contribuicao, entao a faixa desligada encolhe e a pilha acompanha.\n const presencas = useTweenedNumbers(series.map((serie) => (isHidden(serie.label) ? 0 : 1)));\n const presenca = (indice: number) => presencas[indice] ?? 0;\n\n const dominio = useMemo(() => {\n const naEscala = seriesInScale(series, isOutOfScale);\n const visivel = (ordem: number) => (naEscala.includes(series[ordem]) ? 1 : 0);\n\n if (stacked) {\n return domainOf(\n categories.flatMap((_, indice) =>\n stackDiverging(series.map((serie, ordem) => (serie.values[indice] ?? 0) * visivel(ordem))).flat(),\n ),\n );\n }\n\n return mergeDomains(\n naEscala.map((serie) => domainOf(serie.values.filter((valor) => valor !== null), { includeZero })),\n );\n }, [categories, includeZero, isOutOfScale, series, stacked]);\n\n const rotulosDeValor = valueLabelsFor(dominio, alturaDoDesenho, formatValue);\n\n const { axisReveal, margins, plot, rotation } = useCartesianLayout({\n bottomLabels: categories,\n font,\n height: alturaDoDesenho,\n labelAngle,\n leftLabels: rotulosDeValor,\n rightLabels: rotulosDeValor,\n topRoom: showDataLabels === 'hidden' ? 0 : valueLabelRoom(font),\n width,\n xAxis,\n yAxis,\n yAxisRight,\n });\n\n const escalaCategorias = useMemo(\n () => pointScale({ domain: categories, padding: 0, range: [0, plot.width] }),\n [categories, plot.width],\n );\n\n const { hover: focarCategoria, hovered: categoriaEmFoco } = useHoveredBand(onHoverCategory);\n const [alturaDoPonteiro, setAlturaDoPonteiro] = useState<number | null>(null);\n const comFaixas =\n showTooltip || onHoverCategory !== undefined || showDots === 'onHover' || showDataLabels === 'onHover';\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 escalaAlvo = useMemo(\n () => linearScale({ domain: dominio, range: [plot.height, 0] }),\n [dominio, plot.height],\n );\n\n const [minimo, maximo] = useTweenedNumbers(escalaAlvo.domain());\n\n const escalaValores = useMemo(\n () => linearScale({ domain: { min: minimo, max: maximo }, nice: false, range: [plot.height, 0] }),\n [maximo, minimo, plot.height],\n );\n\n const marcasDeValor = ticksFor(escalaAlvo, plot.height);\n // Sem o zero no dominio, a area desce ate o limite do eixo, e nao ate um zero fora do desenho.\n const base = escalaValores(Math.min(Math.max(0, minimo), maximo));\n const pilhas = categories.map((_, indice) =>\n stackDiverging(series.map((serie, ordem) => (serie.values[indice] ?? 0) * presenca(ordem))),\n );\n\n const faixasPorSerie = series.map((serie, indiceSerie) =>\n categories.map<ChartBand | 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 const [de, ate] = pilhas[indice][indiceSerie];\n\n return {\n x: escalaCategorias(categoria) ?? 0,\n y0: stacked ? escalaValores(de) : base,\n y1: stacked ? escalaValores(ate) : escalaValores(valor),\n };\n }),\n );\n\n const contornos = faixasPorSerie.map((faixas) => faixas.map((faixa) => faixa && { x: faixa.x, y: faixa.y1 }));\n const serieEmFoco = nearestSeriesAt(\n contornos,\n categoriaEmFoco,\n alturaDoPonteiro,\n (indice) => isHidden(series[indice].label),\n );\n\n const marcasCategoria: AxisTick[] = categories.map((categoria) => ({\n label: categoria,\n position: escalaCategorias(categoria) ?? 0,\n }));\n const posicoesCategoria = marcasCategoria.map((marca) => marca.position);\n\n const marcasValor: AxisTick[] = marcasDeValor.map((valor) => ({\n label: formatValue(valor),\n position: escalaValores(valor),\n }));\n\n return (\n <CartesianFrame\n axisReveal={axisReveal}\n containerRef={ref}\n empty={series.length === 0 || categories.length === 0}\n emptyMessage={emptyMessage}\n grid={[\n {\n baseline: escalaValores(0),\n lines: marcasDeValor.map((valor) => escalaValores(valor)),\n orientation: 'horizontal',\n },\n ]}\n fillHeight={fillHeight}\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: categoriaEmFoco,\n isHidden,\n series,\n showTotal: stacked,\n })\n : undefined\n }\n width={width}\n xAxis={{ labelRotation: rotation, ticks: marcasCategoria, visibility: xAxis }}\n yAxis={{ hideLine: true, ticks: marcasValor, visibility: yAxis }}\n yAxisRight={{ hideLine: true, ticks: marcasValor, visibility: yAxisRight }}\n >\n {comFaixas && categoriaEmFoco !== null && (\n <PointCursor plot={plot} position={posicoesCategoria[categoriaEmFoco]} />\n )}\n\n {/* Sem empilhamento as areas se sobrepoem, e um topo opaco esconderia a de\n baixo. O contorno em cor cheia e que marca o limite de cada faixa. */}\n {!stacked && (\n <defs>\n {series.map((serie, indice) => {\n const zero = alturaDoZero(faixasPorSerie[indice], base);\n\n return (\n <linearGradient id={`${gradienteId}-${indice}`} key={indice} x1=\"0\" x2=\"0\" y1=\"0\" y2=\"1\">\n {zero > 0 && <stop offset={zero * 0.05} stopColor={cores[indice]} stopOpacity={0.6} />}\n <stop offset={zero} stopColor={cores[indice]} stopOpacity={0.05} />\n {zero < 1 && <stop offset={zero + (1 - zero) * 0.95} stopColor={cores[indice]} stopOpacity={0.6} />}\n </linearGradient>\n );\n })}\n </defs>\n )}\n\n {series.map((serie, indiceSerie) => {\n const faixas = faixasPorSerie[indiceSerie];\n const contorno = faixas.map<ChartPoint | null>((faixa) =>\n faixa === null ? null : { x: faixa.x, y: faixa.y1 },\n );\n\n const oculta = isHidden(serie.label);\n\n return (\n <g\n aria-hidden={oculta || undefined}\n className={`${styles.series} ${oculta ? styles.seriesOff : ''}`}\n key={indiceSerie}\n >\n <path\n d={areaPath(faixas, curve)}\n fill={stacked ? cores[indiceSerie] : `url(#${gradienteId}-${indiceSerie})`}\n fillOpacity={stacked ? 0.4 : undefined}\n />\n <path\n className={styles.outline}\n d={linePath(contorno, curve)}\n fill=\"none\"\n stroke={cores[indiceSerie]}\n />\n\n {categories.map((categoria, indice) => {\n const faixa = faixas[indice];\n\n if (faixa === null) {\n return null;\n }\n\n const descricao = `${serie.label}, ${categoria}: ${formatValue(serie.values[indice] ?? 0)}`;\n\n return (\n <circle\n aria-label={descricao}\n className={\n markShown(showDots, indiceSerie === serieEmFoco) || isolada(faixas, indice)\n ? styles.dotVisible\n : styles.dot\n }\n cx={faixa.x}\n cy={faixa.y1}\n stroke={cores[indiceSerie]}\n key={indice}\n r={4}\n >\n {!comFaixas && <title>{descricao}</title>}\n </circle>\n );\n })}\n\n {showDataLabels !== 'hidden' &&\n categories.map((categoria, indice) => {\n const faixa = faixas[indice];\n\n if (faixa === null) {\n return null;\n }\n\n const { below, dx, textAnchor } = pointLabelPlacement(contornos, indiceSerie, indice, font.lineHeight, (outra) =>\n isHidden(series[outra].label),\n );\n\n return (\n <text\n className={`${styles.valueLabel} ${markShown(showDataLabels, indiceSerie === serieEmFoco) ? '' : styles.valueLabelHidden}`}\n key={indice}\n textAnchor={textAnchor}\n x={faixa.x + dx}\n y={below ? faixa.y1 + font.lineHeight + 2 : faixa.y1 - 10}\n >\n {formatValue(serie.values[indice] ?? 0)}\n </text>\n );\n })}\n </g>\n );\n })}\n\n {comFaixas && (\n <PointBands\n onHover={focarCategoria}\n onPointerY={setAlturaDoPonteiro}\n plot={plot}\n positions={posicoesCategoria}\n />\n )}\n </CartesianFrame>\n );\n}\n"],"names":["isolada","faixas","indice","alturaDoZero","base","pontas","faixa","topo","fundo","ChartArea","accent","categories","curve","defaultHiddenSeries","emptyMessage","formatTooltipValue","formatValue","formatarNumero","height","includeZero","hiddenSeries","labelAngle","legend","legendAlign","onHiddenSeriesChange","onHoverCategory","series","showDataLabels","showDots","showTooltip","stacked","title","xAxis","yAxis","yAxisRight","gradienteId","useId","font","alturaMedida","ref","width","useChartMetrics","fillHeight","alturaDoDesenho","chartHeight","isHidden","isOutOfScale","toggle","useSeriesToggle","serie","cores","useMemo","resolveSeriesColors","presencas","useTweenedNumbers","presenca","dominio","naEscala","seriesInScale","visivel","ordem","domainOf","_","stackDiverging","mergeDomains","valor","rotulosDeValor","valueLabelsFor","axisReveal","margins","plot","rotation","useCartesianLayout","valueLabelRoom","escalaCategorias","pointScale","focarCategoria","categoriaEmFoco","useHoveredBand","alturaDoPonteiro","setAlturaDoPonteiro","useState","comFaixas","escalaAlvo","linearScale","minimo","maximo","escalaValores","marcasDeValor","ticksFor","pilhas","faixasPorSerie","indiceSerie","categoria","de","ate","contornos","serieEmFoco","nearestSeriesAt","marcasCategoria","posicoesCategoria","marca","marcasValor","jsxs","CartesianFrame","categoryTooltip","jsx","PointCursor","zero","contorno","oculta","styles","areaPath","linePath","descricao","markShown","below","dx","textAnchor","pointLabelPlacement","outra","PointBands"],"mappings":"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"}
|
|
@@ -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="_outline_138hz_1 _line_yf6oe_121",_="_dot_138hz_5 _dot_yf6oe_130",s="_dotVisible_138hz_9 _dotVisible_yf6oe_137",l="_valueLabel_138hz_13 _valueLabel_yf6oe_103",i="_series_138hz_17 _series_yf6oe_211",o="_seriesOff_138hz_21 _seriesOff_yf6oe_215",t="_valueLabelHidden_138hz_25 _valueLabelHidden_yf6oe_116",a={outline:e,dot:_,dotVisible:s,valueLabel:l,series:i,seriesOff:o,valueLabelHidden:t};exports.default=a;exports.dot=_;exports.dotVisible=s;exports.outline=e;exports.series=i;exports.seriesOff=o;exports.valueLabel=l;exports.valueLabelHidden=t;
|
|
2
2
|
//# sourceMappingURL=ChartArea.module.css.cjs.map
|
|
@@ -1,18 +1,20 @@
|
|
|
1
|
-
const
|
|
2
|
-
outline:
|
|
3
|
-
dot:
|
|
1
|
+
const e = "_outline_138hz_1 _line_yf6oe_121", _ = "_dot_138hz_5 _dot_yf6oe_130", s = "_dotVisible_138hz_9 _dotVisible_yf6oe_137", o = "_valueLabel_138hz_13 _valueLabel_yf6oe_103", l = "_series_138hz_17 _series_yf6oe_211", i = "_seriesOff_138hz_21 _seriesOff_yf6oe_215", t = "_valueLabelHidden_138hz_25 _valueLabelHidden_yf6oe_116", a = {
|
|
2
|
+
outline: e,
|
|
3
|
+
dot: _,
|
|
4
4
|
dotVisible: s,
|
|
5
|
-
valueLabel:
|
|
5
|
+
valueLabel: o,
|
|
6
6
|
series: l,
|
|
7
|
-
seriesOff:
|
|
7
|
+
seriesOff: i,
|
|
8
|
+
valueLabelHidden: t
|
|
8
9
|
};
|
|
9
10
|
export {
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
a as default,
|
|
12
|
+
_ as dot,
|
|
12
13
|
s as dotVisible,
|
|
13
|
-
|
|
14
|
+
e as outline,
|
|
14
15
|
l as series,
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
i as seriesOff,
|
|
17
|
+
o as valueLabel,
|
|
18
|
+
t as valueLabelHidden
|
|
17
19
|
};
|
|
18
20
|
//# sourceMappingURL=ChartArea.module.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartArea.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ChartArea.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 N=require("react/jsx-runtime"),g=require("react"),L=require("./ChartBar.module.css.cjs"),Ao=require("../core/useChartMetrics.cjs"),mo=require("../core/useSeriesToggle.cjs"),Po=require("../core/useHoveredBand.cjs"),zo=require("../palette/seriesColor.cjs"),ho=require("../core/useTweenedNumbers.cjs"),h=require("../scales/scales.cjs"),P=require("../core/cartesianLayout.cjs"),Vo=require("../core/useCartesianLayout.cjs"),z=require("../core/spacing.cjs"),Io=require("../../../utils/formatters/formatarNumero.cjs"),Go=require("../core/CartesianFrame.cjs"),Jo=require("../core/BandCursor.cjs"),Ko=require("../core/shapes.cjs"),Qo=require("../core/tooltips.cjs");function Uo({accent:V,categories:r,defaultHiddenSeries:fo,emptyMessage:bo="Sem dados no período",formatTooltipValue:po,formatValue:q=Io.formatarNumero,height:vo=260,hiddenSeries:xo,labelAngle:Mo="auto",legend:j="bottom",legendAlign:go,onHiddenSeriesChange:qo,onHoverCategory:Do,orientation:I="vertical",series:u,showDataLabels:y="hidden",showTooltip:Fo=!0,stacked:c=!1,title:No,xAxis:G="visible",yAxis:J="visible",yAxisRight:K="hidden"}){const{font:Q,height:Lo,radius:p,ref:yo,width:C}=Ao.useChartMetrics(),{fillHeight:Bo,value:R}=P.chartHeight(vo,Lo),{isHidden:D,isOutOfScale:U,toggle:To}=mo.useSeriesToggle({defaultHiddenSeries:fo,hiddenSeries:xo,labels:u.map(o=>o.label),onHiddenSeriesChange:qo}),{hover:W,hovered:B}=Po.useHoveredBand(Do),[Oo,X]=g.useState(null),n=I==="vertical",$=g.useMemo(()=>zo.resolveSeriesColors(u,{accent:V}),[V,u]),Y=ho.useTweenedNumbers(u.map(o=>D(o.label)?0:1)),jo=o=>Y[o]??0,w=g.useMemo(()=>{const o=mo.seriesInScale(u,U);return c?h.domainOf(r.flatMap((t,e)=>h.stackDiverging(o.map(a=>a.values[e]??0)).flat())):h.mergeDomains(o.map(t=>h.domainOf([...t.values])))},[r,U,u,c]),Co=!n&&(j==="left"||j==="right")?"bottom":j,H=P.valueLabelsFor(w,n?R:C,q),{axisReveal:Ro,margins:$o,plot:v,rotation:wo}=Vo.useCartesianLayout({bottomLabels:n?r:H,font:Q,height:R,labelAngle:Mo,leftLabels:n?H:r,rightLabels:n?H:r,topRoom:y!=="hidden"&&n?z.valueLabelRoom(Q):0,width:C,xAxis:G,yAxis:J,yAxisRight:K}),Z=n?v.width:v.height,S=n?v.height:v.width,T=n?S:0,O=n?0:S,x=g.useMemo(()=>h.bandScale({domain:r,range:[0,Z]}),[r,Z]),k=g.useMemo(()=>h.linearScale({domain:w,range:[T,O]}),[w,O,T]),[oo,to]=ho.useTweenedNumbers(k.domain()),b=g.useMemo(()=>h.linearScale({domain:{min:oo,max:to},nice:!1,range:[T,O]}),[O,T,to,oo]),no=h.ticksFor(k,S),F=x.bandwidth(),Ho=z.barSlots(F,Y);function eo(o){return Ho[o]??z.NO_BAR_SLOT}function ao(o){return c?F:eo(o).thickness}function so(o){return c?0:eo(o).offset}function ro(o,t){const e=u[o].values[t];return(Number.isFinite(e)?e:0)*(c?jo(o):1)}const _=r.map((o,t)=>c?h.stackDiverging(u.map((e,a)=>ro(a,t))):[]);function lo(o,t){return _[t][o]??[0,ro(o,t)]}function So(o,t){const[e,a]=lo(o,t);if(!c)return[p,p,p,p];const s=_[t],l=a<e?Math.min(...s.map(([,M])=>M)):Math.max(...s.map(([,M])=>M)),f=a!==e&&e===0?p:0,i=a!==e&&a===l?p:0,[m,d]=a<e?[i,f]:[f,i];return n?[d,d,m,m]:[m,d,d,m]}function uo(o,t,e,a,s){const l=o<0;return N.jsx("text",{className:`${L.default.valueLabel} ${P.markShown(y,s)?"":L.default.valueLabelHidden}`,dominantBaseline:n?l?"hanging":"auto":"middle",textAnchor:n?"middle":l?"end":"start",x:n?e:t+(l?-6:6),y:n?t+(l?6:-6):e,children:q(o)},a)}const _o=r.map(o=>({label:o,position:(x(o)??0)+F/2})),Eo=no.map(o=>({label:q(o),position:b(o)})),E={labelRotation:wo,ticks:_o},A={hideLine:!0,ticks:Eo};return N.jsxs(Go.CartesianFrame,{axisReveal:Ro,containerRef:yo,empty:u.length===0||r.length===0,emptyMessage:bo,fillHeight:Bo,grid:[{baseline:b(0),lines:no.map(o=>b(o)),orientation:n?"horizontal":"vertical"}],height:R,legend:u.map((o,t)=>({color:$[t],hidden:D(o.label),label:o.label})),legendAlign:go,legendPosition:Co,margins:$o,onToggleSeries:To,plot:v,title:No,tooltip:Fo?Qo.categoryTooltip({categories:r,colors:$,format:po??q,index:B,isHidden:D,series:u,showTotal:c}):void 0,width:C,xAxis:{...n?E:A,visibility:G},yAxis:{...n?A:E,visibility:J},yAxisRight:{...n?A:E,hideLine:!0,visibility:K},children:[B!==null&&N.jsx(Jo.BandCursor,{offset:x(r[B])??0,orientation:I,plot:v,size:F}),u.map((o,t)=>{const e=D(o.label);return N.jsxs("g",{"aria-hidden":e||void 0,className:`${L.default.series} ${e?L.default.seriesOff:""}`,children:[r.map((a,s)=>{if(!Number.isFinite(o.values[s]))return null;const l=x(a)??0,[f,i]=lo(t,s),m=b(f),d=b(i),M=Math.abs(d-m),io=ao(t),co=so(t);return N.jsx("path",{"aria-label":`${o.label}, ${a}: ${q(o.values[s])}`,className:L.default.bar,d:Ko.roundedBarPath(n?l+co:Math.min(m,d),n?Math.min(m,d):l+co,n?io:M,n?M:io,So(t,s)),fill:$[t],onMouseEnter:()=>{W(s),X(t)},onMouseLeave:()=>{W(null),X(null)}},s)}),y!=="hidden"&&!c&&r.map((a,s)=>{const l=o.values[s];if(!Number.isFinite(l))return null;const f=(x(a)??0)+so(t)+ao(t)/2;return uo(l,b(l),f,s,t===Oo)})]},t)}),y!=="hidden"&&c&&r.map((o,t)=>{const e=u.filter(i=>!D(i.label)&&Number.isFinite(i.values[t]));if(e.length===0)return null;const a=e.reduce((i,m)=>i+m.values[t],0),s=_[t].map(([,i])=>i),l=a<0?Math.min(0,...s):Math.max(0,...s),f=(x(o)??0)+F/2;return uo(a,b(l),f,t,t===B)})]})}exports.ChartBar=Uo;
|
|
2
2
|
//# sourceMappingURL=ChartBar.cjs.map
|