@plenustech/design-system 0.2.2 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/actions/ButtonTile/ButtonTile.cjs +2 -0
- package/dist/components/actions/ButtonTile/ButtonTile.cjs.map +1 -0
- package/dist/components/actions/ButtonTile/ButtonTile.js +23 -0
- package/dist/components/actions/ButtonTile/ButtonTile.js.map +1 -0
- package/dist/components/actions/ButtonTile/ButtonTile.module.css.cjs +2 -0
- package/dist/components/actions/ButtonTile/ButtonTile.module.css.cjs.map +1 -0
- package/dist/components/actions/ButtonTile/ButtonTile.module.css.js +16 -0
- package/dist/components/actions/ButtonTile/ButtonTile.module.css.js.map +1 -0
- package/dist/components/actions/Toolbar/Toolbar.cjs +2 -0
- package/dist/components/actions/Toolbar/Toolbar.cjs.map +1 -0
- package/dist/components/actions/Toolbar/Toolbar.js +118 -0
- package/dist/components/actions/Toolbar/Toolbar.js.map +1 -0
- package/dist/components/actions/Toolbar/Toolbar.module.css.cjs +2 -0
- package/dist/components/actions/Toolbar/Toolbar.module.css.cjs.map +1 -0
- package/dist/components/actions/Toolbar/Toolbar.module.css.js +20 -0
- package/dist/components/actions/Toolbar/Toolbar.module.css.js.map +1 -0
- package/dist/components/charts/ChartArea/ChartArea.cjs +1 -1
- package/dist/components/charts/ChartArea/ChartArea.cjs.map +1 -1
- package/dist/components/charts/ChartArea/ChartArea.js +196 -148
- package/dist/components/charts/ChartArea/ChartArea.js.map +1 -1
- package/dist/components/charts/ChartArea/ChartArea.module.css.cjs +1 -1
- package/dist/components/charts/ChartArea/ChartArea.module.css.js +12 -10
- package/dist/components/charts/ChartArea/ChartArea.module.css.js.map +1 -1
- package/dist/components/charts/ChartBar/ChartBar.cjs +1 -1
- package/dist/components/charts/ChartBar/ChartBar.cjs.map +1 -1
- package/dist/components/charts/ChartBar/ChartBar.js +168 -145
- package/dist/components/charts/ChartBar/ChartBar.js.map +1 -1
- package/dist/components/charts/ChartBar/ChartBar.module.css.cjs +1 -1
- package/dist/components/charts/ChartBar/ChartBar.module.css.js +12 -10
- package/dist/components/charts/ChartBar/ChartBar.module.css.js.map +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.cjs +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.cjs.map +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.js +179 -154
- package/dist/components/charts/ChartCombo/ChartCombo.js.map +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.module.css.cjs +1 -1
- package/dist/components/charts/ChartCombo/ChartCombo.module.css.js +16 -14
- package/dist/components/charts/ChartCombo/ChartCombo.module.css.js.map +1 -1
- package/dist/components/charts/ChartDonut/ChartDonut.cjs +1 -1
- package/dist/components/charts/ChartDonut/ChartDonut.cjs.map +1 -1
- package/dist/components/charts/ChartDonut/ChartDonut.js +72 -61
- package/dist/components/charts/ChartDonut/ChartDonut.js.map +1 -1
- package/dist/components/charts/ChartGauge/ChartGauge.cjs +2 -0
- package/dist/components/charts/ChartGauge/ChartGauge.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/ChartGauge.js +307 -0
- package/dist/components/charts/ChartGauge/ChartGauge.js.map +1 -0
- package/dist/components/charts/ChartGauge/ChartGauge.module.css.cjs +2 -0
- package/dist/components/charts/ChartGauge/ChartGauge.module.css.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/ChartGauge.module.css.js +76 -0
- package/dist/components/charts/ChartGauge/ChartGauge.module.css.js.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeLayout.cjs +2 -0
- package/dist/components/charts/ChartGauge/gaugeLayout.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeLayout.js +107 -0
- package/dist/components/charts/ChartGauge/gaugeLayout.js.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeReading.cjs +2 -0
- package/dist/components/charts/ChartGauge/gaugeReading.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeReading.js +112 -0
- package/dist/components/charts/ChartGauge/gaugeReading.js.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeScale.cjs +2 -0
- package/dist/components/charts/ChartGauge/gaugeScale.cjs.map +1 -0
- package/dist/components/charts/ChartGauge/gaugeScale.js +57 -0
- package/dist/components/charts/ChartGauge/gaugeScale.js.map +1 -0
- package/dist/components/charts/ChartLine/ChartLine.cjs +1 -1
- package/dist/components/charts/ChartLine/ChartLine.cjs.map +1 -1
- package/dist/components/charts/ChartLine/ChartLine.js +196 -143
- package/dist/components/charts/ChartLine/ChartLine.js.map +1 -1
- package/dist/components/charts/ChartLine/ChartLine.module.css.cjs +1 -1
- package/dist/components/charts/ChartLine/ChartLine.module.css.js +16 -14
- package/dist/components/charts/ChartLine/ChartLine.module.css.js.map +1 -1
- package/dist/components/charts/ChartMap/ChartMap.cjs +2 -0
- package/dist/components/charts/ChartMap/ChartMap.cjs.map +1 -0
- package/dist/components/charts/ChartMap/ChartMap.js +523 -0
- package/dist/components/charts/ChartMap/ChartMap.js.map +1 -0
- package/dist/components/charts/ChartMap/ChartMap.module.css.cjs +2 -0
- package/dist/components/charts/ChartMap/ChartMap.module.css.cjs.map +1 -0
- package/dist/components/charts/ChartMap/ChartMap.module.css.js +124 -0
- package/dist/components/charts/ChartMap/ChartMap.module.css.js.map +1 -0
- package/dist/components/charts/ChartMap/ChartMapLegend.cjs +2 -0
- package/dist/components/charts/ChartMap/ChartMapLegend.cjs.map +1 -0
- package/dist/components/charts/ChartMap/ChartMapLegend.js +102 -0
- package/dist/components/charts/ChartMap/ChartMapLegend.js.map +1 -0
- package/dist/components/charts/ChartMap/ChartMapTable.cjs +2 -0
- package/dist/components/charts/ChartMap/ChartMapTable.cjs.map +1 -0
- package/dist/components/charts/ChartMap/ChartMapTable.js +118 -0
- package/dist/components/charts/ChartMap/ChartMapTable.js.map +1 -0
- package/dist/components/charts/ChartMap/mapGeometry.cjs +2 -0
- package/dist/components/charts/ChartMap/mapGeometry.cjs.map +1 -0
- package/dist/components/charts/ChartMap/mapGeometry.js +113 -0
- package/dist/components/charts/ChartMap/mapGeometry.js.map +1 -0
- package/dist/components/charts/ChartMap/mapLabels.cjs +2 -0
- package/dist/components/charts/ChartMap/mapLabels.cjs.map +1 -0
- package/dist/components/charts/ChartMap/mapLabels.js +80 -0
- package/dist/components/charts/ChartMap/mapLabels.js.map +1 -0
- package/dist/components/charts/ChartMap/mapScales.cjs +2 -0
- package/dist/components/charts/ChartMap/mapScales.cjs.map +1 -0
- package/dist/components/charts/ChartMap/mapScales.js +131 -0
- package/dist/components/charts/ChartMap/mapScales.js.map +1 -0
- package/dist/components/charts/ChartMap/polylabel.cjs +2 -0
- package/dist/components/charts/ChartMap/polylabel.cjs.map +1 -0
- package/dist/components/charts/ChartMap/polylabel.js +50 -0
- package/dist/components/charts/ChartMap/polylabel.js.map +1 -0
- package/dist/components/charts/ChartPie/ChartPie.cjs +1 -1
- package/dist/components/charts/ChartPie/ChartPie.cjs.map +1 -1
- package/dist/components/charts/ChartPie/ChartPie.js +71 -60
- package/dist/components/charts/ChartPie/ChartPie.js.map +1 -1
- package/dist/components/charts/ChartRadial/ChartRadial.cjs +1 -1
- package/dist/components/charts/ChartRadial/ChartRadial.cjs.map +1 -1
- package/dist/components/charts/ChartRadial/ChartRadial.js +101 -84
- package/dist/components/charts/ChartRadial/ChartRadial.js.map +1 -1
- package/dist/components/charts/ChartSankey/ChartSankey.cjs +1 -1
- package/dist/components/charts/ChartSankey/ChartSankey.cjs.map +1 -1
- package/dist/components/charts/ChartSankey/ChartSankey.js +148 -125
- package/dist/components/charts/ChartSankey/ChartSankey.js.map +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.cjs +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.cjs.map +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.js +138 -106
- package/dist/components/charts/ChartScatter/ChartScatter.js.map +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.module.css.cjs +1 -1
- package/dist/components/charts/ChartScatter/ChartScatter.module.css.js +3 -3
- package/dist/components/charts/ChartSunburst/ChartSunburst.cjs +1 -1
- package/dist/components/charts/ChartSunburst/ChartSunburst.cjs.map +1 -1
- package/dist/components/charts/ChartSunburst/ChartSunburst.js +115 -100
- package/dist/components/charts/ChartSunburst/ChartSunburst.js.map +1 -1
- package/dist/components/charts/ChartTimeline/ChartTimeline.cjs +2 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.js +703 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.js.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.cjs +2 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.js +124 -0
- package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.js.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimelineTable.cjs +2 -0
- package/dist/components/charts/ChartTimeline/ChartTimelineTable.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/ChartTimelineTable.js +42 -0
- package/dist/components/charts/ChartTimeline/ChartTimelineTable.js.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineLayout.cjs +2 -0
- package/dist/components/charts/ChartTimeline/timelineLayout.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineLayout.js +109 -0
- package/dist/components/charts/ChartTimeline/timelineLayout.js.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineTime.cjs +2 -0
- package/dist/components/charts/ChartTimeline/timelineTime.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineTime.js +91 -0
- package/dist/components/charts/ChartTimeline/timelineTime.js.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineTooltip.cjs +2 -0
- package/dist/components/charts/ChartTimeline/timelineTooltip.cjs.map +1 -0
- package/dist/components/charts/ChartTimeline/timelineTooltip.js +77 -0
- package/dist/components/charts/ChartTimeline/timelineTooltip.js.map +1 -0
- package/dist/components/charts/ChartTooltip/ChartTooltip.cjs +1 -1
- package/dist/components/charts/ChartTooltip/ChartTooltip.cjs.map +1 -1
- package/dist/components/charts/ChartTooltip/ChartTooltip.js +1 -1
- package/dist/components/charts/ChartTooltip/ChartTooltip.js.map +1 -1
- package/dist/components/charts/ChartTreemap/ChartTreemap.cjs +1 -1
- package/dist/components/charts/ChartTreemap/ChartTreemap.cjs.map +1 -1
- package/dist/components/charts/ChartTreemap/ChartTreemap.js +100 -89
- package/dist/components/charts/ChartTreemap/ChartTreemap.js.map +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.cjs +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.cjs.map +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.js +125 -105
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.js.map +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.cjs +1 -1
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.js +8 -6
- package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.js.map +1 -1
- package/dist/components/charts/core/CartesianFrame.cjs +1 -1
- package/dist/components/charts/core/CartesianFrame.cjs.map +1 -1
- package/dist/components/charts/core/CartesianFrame.js +61 -96
- package/dist/components/charts/core/CartesianFrame.js.map +1 -1
- package/dist/components/charts/core/Chart.module.css.cjs +1 -1
- package/dist/components/charts/core/Chart.module.css.js +52 -54
- package/dist/components/charts/core/Chart.module.css.js.map +1 -1
- package/dist/components/charts/core/ChartFrame.cjs +1 -1
- package/dist/components/charts/core/ChartFrame.cjs.map +1 -1
- package/dist/components/charts/core/ChartFrame.js +53 -47
- package/dist/components/charts/core/ChartFrame.js.map +1 -1
- package/dist/components/charts/core/ChartLegend.cjs +1 -1
- package/dist/components/charts/core/ChartLegend.cjs.map +1 -1
- package/dist/components/charts/core/ChartLegend.js +37 -25
- package/dist/components/charts/core/ChartLegend.js.map +1 -1
- package/dist/components/charts/core/PointBands.cjs +2 -0
- package/dist/components/charts/core/PointBands.cjs.map +1 -0
- package/dist/components/charts/core/PointBands.js +41 -0
- package/dist/components/charts/core/PointBands.js.map +1 -0
- package/dist/components/charts/core/cartesianLayout.cjs +1 -1
- package/dist/components/charts/core/cartesianLayout.cjs.map +1 -1
- package/dist/components/charts/core/cartesianLayout.js +49 -41
- package/dist/components/charts/core/cartesianLayout.js.map +1 -1
- package/dist/components/charts/core/hoverPath.cjs +2 -0
- package/dist/components/charts/core/hoverPath.cjs.map +1 -0
- package/dist/components/charts/core/hoverPath.js +7 -0
- package/dist/components/charts/core/hoverPath.js.map +1 -0
- package/dist/components/charts/core/pointLabels.cjs +2 -0
- package/dist/components/charts/core/pointLabels.cjs.map +1 -0
- package/dist/components/charts/core/pointLabels.js +12 -0
- package/dist/components/charts/core/pointLabels.js.map +1 -0
- package/dist/components/charts/core/tooltips.cjs +2 -0
- package/dist/components/charts/core/tooltips.cjs.map +1 -0
- package/dist/components/charts/core/tooltips.js +48 -0
- package/dist/components/charts/core/tooltips.js.map +1 -0
- package/dist/components/charts/core/useCartesianLayout.cjs +2 -0
- package/dist/components/charts/core/useCartesianLayout.cjs.map +1 -0
- package/dist/components/charts/core/useCartesianLayout.js +38 -0
- package/dist/components/charts/core/useCartesianLayout.js.map +1 -0
- package/dist/components/charts/core/useChartMetrics.cjs +1 -1
- package/dist/components/charts/core/useChartMetrics.cjs.map +1 -1
- package/dist/components/charts/core/useChartMetrics.js +20 -25
- package/dist/components/charts/core/useChartMetrics.js.map +1 -1
- package/dist/components/charts/core/useSeriesToggle.cjs +1 -1
- package/dist/components/charts/core/useSeriesToggle.cjs.map +1 -1
- package/dist/components/charts/core/useSeriesToggle.js +19 -12
- package/dist/components/charts/core/useSeriesToggle.js.map +1 -1
- package/dist/components/data-display/Accordion/Accordion.cjs +1 -1
- package/dist/components/data-display/Accordion/Accordion.cjs.map +1 -1
- package/dist/components/data-display/Accordion/Accordion.js +56 -46
- package/dist/components/data-display/Accordion/Accordion.js.map +1 -1
- package/dist/components/data-display/Accordion/Accordion.module.css.cjs +1 -1
- package/dist/components/data-display/Accordion/Accordion.module.css.js +16 -16
- package/dist/components/data-display/List/List.cjs.map +1 -1
- package/dist/components/data-display/List/List.js.map +1 -1
- package/dist/components/data-display/List/List.module.css.cjs +1 -1
- package/dist/components/data-display/List/List.module.css.js +34 -24
- package/dist/components/data-display/List/List.module.css.js.map +1 -1
- package/dist/components/data-display/List/ListingOptions.cjs +1 -1
- package/dist/components/data-display/List/ListingOptions.cjs.map +1 -1
- package/dist/components/data-display/List/ListingOptions.js +98 -74
- package/dist/components/data-display/List/ListingOptions.js.map +1 -1
- package/dist/components/data-display/List/useListing.cjs.map +1 -1
- package/dist/components/data-display/List/useListing.js.map +1 -1
- package/dist/components/data-display/SortableList/SortableList.cjs +2 -0
- package/dist/components/data-display/SortableList/SortableList.cjs.map +1 -0
- package/dist/components/data-display/SortableList/SortableList.js +168 -0
- package/dist/components/data-display/SortableList/SortableList.js.map +1 -0
- package/dist/components/data-display/SortableList/SortableList.module.css.cjs +2 -0
- package/dist/components/data-display/SortableList/SortableList.module.css.cjs.map +1 -0
- package/dist/components/data-display/SortableList/SortableList.module.css.js +34 -0
- package/dist/components/data-display/SortableList/SortableList.module.css.js.map +1 -0
- package/dist/components/data-display/Table/Table.cjs +1 -1
- package/dist/components/data-display/Table/Table.cjs.map +1 -1
- package/dist/components/data-display/Table/Table.js +86 -85
- package/dist/components/data-display/Table/Table.js.map +1 -1
- package/dist/components/data-display/Table/Table.module.css.cjs +1 -1
- package/dist/components/data-display/Table/Table.module.css.js +50 -51
- package/dist/components/data-display/Table/Table.module.css.js.map +1 -1
- package/dist/components/data-display/Tag/Tag.cjs +2 -0
- package/dist/components/data-display/Tag/Tag.cjs.map +1 -0
- package/dist/components/data-display/Tag/Tag.js +50 -0
- package/dist/components/data-display/Tag/Tag.js.map +1 -0
- package/dist/components/data-display/Tag/Tag.module.css.cjs +2 -0
- package/dist/components/data-display/Tag/Tag.module.css.cjs.map +1 -0
- package/dist/components/data-display/Tag/Tag.module.css.js +22 -0
- package/dist/components/data-display/Tag/Tag.module.css.js.map +1 -0
- package/dist/components/data-display/Timeline/Timeline.cjs +2 -0
- package/dist/components/data-display/Timeline/Timeline.cjs.map +1 -0
- package/dist/components/data-display/Timeline/Timeline.js +31 -0
- package/dist/components/data-display/Timeline/Timeline.js.map +1 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.cjs +2 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.cjs.map +1 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.js +30 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.js.map +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.cjs +2 -0
- package/dist/components/feedback/Skeleton/Skeleton.cjs.map +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.js +17 -0
- package/dist/components/feedback/Skeleton/Skeleton.js.map +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.cjs +2 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.cjs.map +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.js +15 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.js.map +1 -0
- package/dist/components/feedback/Toast/Toast.module.css.cjs +2 -0
- package/dist/components/feedback/Toast/Toast.module.css.cjs.map +1 -0
- package/dist/components/feedback/Toast/Toast.module.css.js +31 -0
- package/dist/components/feedback/Toast/Toast.module.css.js.map +1 -0
- package/dist/components/feedback/Toast/ToastRegion.cjs +2 -0
- package/dist/components/feedback/Toast/ToastRegion.cjs.map +1 -0
- package/dist/components/feedback/Toast/ToastRegion.js +62 -0
- package/dist/components/feedback/Toast/ToastRegion.js.map +1 -0
- package/dist/components/feedback/Toast/toastStore.cjs +2 -0
- package/dist/components/feedback/Toast/toastStore.cjs.map +1 -0
- package/dist/components/feedback/Toast/toastStore.js +33 -0
- package/dist/components/feedback/Toast/toastStore.js.map +1 -0
- package/dist/components/forms/Checkbox/Checkbox.cjs +1 -1
- package/dist/components/forms/Checkbox/Checkbox.cjs.map +1 -1
- package/dist/components/forms/Checkbox/Checkbox.js +43 -31
- package/dist/components/forms/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/forms/Checkbox/Checkbox.module.css.cjs +1 -1
- package/dist/components/forms/Checkbox/Checkbox.module.css.js +1 -1
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.cjs +2 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.cjs.map +1 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.js +54 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.js.map +1 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.cjs +2 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.cjs.map +1 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.js +22 -0
- package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.js.map +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.cjs +2 -0
- package/dist/components/forms/ColorPicker/ColorPicker.cjs.map +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.js +57 -0
- package/dist/components/forms/ColorPicker/ColorPicker.js.map +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.cjs +2 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.cjs.map +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.js +22 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.js.map +1 -0
- package/dist/components/forms/ComboBox/ComboBox.cjs.map +1 -1
- package/dist/components/forms/ComboBox/ComboBox.js.map +1 -1
- package/dist/components/forms/ComboBox/ComboBox.module.css.cjs +1 -1
- package/dist/components/forms/ComboBox/ComboBox.module.css.js +20 -20
- package/dist/components/forms/Field/Field.cjs +1 -1
- package/dist/components/forms/Field/Field.cjs.map +1 -1
- package/dist/components/forms/Field/Field.js +21 -20
- package/dist/components/forms/Field/Field.js.map +1 -1
- package/dist/components/forms/Field/Field.module.css.cjs +1 -1
- package/dist/components/forms/Field/Field.module.css.js +18 -12
- package/dist/components/forms/Field/Field.module.css.js.map +1 -1
- package/dist/components/forms/FileUpload/FileUpload.cjs +2 -0
- package/dist/components/forms/FileUpload/FileUpload.cjs.map +1 -0
- package/dist/components/forms/FileUpload/FileUpload.js +142 -0
- package/dist/components/forms/FileUpload/FileUpload.js.map +1 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.cjs +2 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.cjs.map +1 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.js +46 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.js.map +1 -0
- package/dist/components/forms/InputPassword/InputPassword.module.css.cjs +1 -1
- package/dist/components/forms/InputPassword/InputPassword.module.css.js +12 -12
- package/dist/components/forms/InputText/InputText.cjs +1 -1
- package/dist/components/forms/InputText/InputText.cjs.map +1 -1
- package/dist/components/forms/InputText/InputText.js +55 -47
- package/dist/components/forms/InputText/InputText.js.map +1 -1
- package/dist/components/forms/InputText/InputText.module.css.cjs +1 -1
- package/dist/components/forms/InputText/InputText.module.css.js +10 -10
- package/dist/components/forms/RadioGroup/RadioGroup.module.css.cjs +1 -1
- package/dist/components/forms/RadioGroup/RadioGroup.module.css.js +4 -4
- package/dist/components/forms/SegmentedControl/SegmentedControl.cjs +2 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.cjs.map +1 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.js +52 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.js.map +1 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.cjs +2 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.cjs.map +1 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.js +22 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.js.map +1 -0
- package/dist/components/forms/Select/Select.module.css.cjs +1 -1
- package/dist/components/forms/Select/Select.module.css.js +13 -13
- package/dist/components/forms/Switch/Switch.module.css.cjs +1 -1
- package/dist/components/forms/Switch/Switch.module.css.js +2 -2
- package/dist/components/icons/icons.cjs +1 -1
- package/dist/components/icons/icons.cjs.map +1 -1
- package/dist/components/icons/icons.js +198 -40
- package/dist/components/icons/icons.js.map +1 -1
- package/dist/components/navigation/SkipLink/SkipLink.cjs +2 -0
- package/dist/components/navigation/SkipLink/SkipLink.cjs.map +1 -0
- package/dist/components/navigation/SkipLink/SkipLink.js +9 -0
- package/dist/components/navigation/SkipLink/SkipLink.js.map +1 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.cjs +2 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.cjs.map +1 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.js +8 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.js.map +1 -0
- package/dist/components/navigation/Steps/Steps.cjs +2 -0
- package/dist/components/navigation/Steps/Steps.cjs.map +1 -0
- package/dist/components/navigation/Steps/Steps.js +30 -0
- package/dist/components/navigation/Steps/Steps.js.map +1 -0
- package/dist/components/navigation/Steps/Steps.module.css.cjs +2 -0
- package/dist/components/navigation/Steps/Steps.module.css.cjs.map +1 -0
- package/dist/components/navigation/Steps/Steps.module.css.js +26 -0
- package/dist/components/navigation/Steps/Steps.module.css.js.map +1 -0
- package/dist/components/navigation/Tabs/Tabs.cjs +1 -1
- package/dist/components/navigation/Tabs/Tabs.cjs.map +1 -1
- package/dist/components/navigation/Tabs/Tabs.js +88 -79
- package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
- package/dist/components/navigation/Tabs/Tabs.module.css.cjs +1 -1
- package/dist/components/navigation/Tabs/Tabs.module.css.js +18 -14
- package/dist/components/navigation/Tabs/Tabs.module.css.js.map +1 -1
- package/dist/components/navigation/TabsNav/TabsNav.cjs +2 -0
- package/dist/components/navigation/TabsNav/TabsNav.cjs.map +1 -0
- package/dist/components/navigation/TabsNav/TabsNav.js +21 -0
- package/dist/components/navigation/TabsNav/TabsNav.js.map +1 -0
- package/dist/components/navigation/TabsNav/TabsNav.module.css.cjs +2 -0
- package/dist/components/navigation/TabsNav/TabsNav.module.css.cjs.map +1 -0
- package/dist/components/navigation/TabsNav/TabsNav.module.css.js +18 -0
- package/dist/components/navigation/TabsNav/TabsNav.module.css.js.map +1 -0
- package/dist/components/overlays/Dialog/Dialog.cjs +1 -1
- package/dist/components/overlays/Dialog/Dialog.cjs.map +1 -1
- package/dist/components/overlays/Dialog/Dialog.js +11 -58
- package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
- package/dist/components/overlays/Dialog/DialogFrame.cjs +2 -0
- package/dist/components/overlays/Dialog/DialogFrame.cjs.map +1 -0
- package/dist/components/overlays/Dialog/DialogFrame.js +65 -0
- package/dist/components/overlays/Dialog/DialogFrame.js.map +1 -0
- package/dist/components/overlays/Drawer/Drawer.cjs +2 -0
- package/dist/components/overlays/Drawer/Drawer.cjs.map +1 -0
- package/dist/components/overlays/Drawer/Drawer.js +17 -0
- package/dist/components/overlays/Drawer/Drawer.js.map +1 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.cjs +2 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.cjs.map +1 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.js +23 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.js.map +1 -0
- package/dist/components/overlays/Menu/Menu.cjs +1 -1
- package/dist/components/overlays/Menu/Menu.cjs.map +1 -1
- package/dist/components/overlays/Menu/Menu.js +105 -86
- package/dist/components/overlays/Menu/Menu.js.map +1 -1
- package/dist/components/overlays/Menu/Menu.module.css.cjs +1 -1
- package/dist/components/overlays/Menu/Menu.module.css.js +24 -6
- package/dist/components/overlays/Menu/Menu.module.css.js.map +1 -1
- package/dist/design-system.css +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +190 -118
- package/dist/index.js.map +1 -1
- package/dist/types/components/actions/ButtonTile/ButtonTile.d.ts +14 -0
- package/dist/types/components/actions/ButtonTile/index.d.ts +2 -0
- package/dist/types/components/actions/Toolbar/Toolbar.d.ts +27 -0
- package/dist/types/components/actions/Toolbar/index.d.ts +2 -0
- package/dist/types/components/charts/ChartArea/ChartArea.d.ts +15 -4
- package/dist/types/components/charts/ChartBar/ChartBar.d.ts +11 -4
- package/dist/types/components/charts/ChartCombo/ChartCombo.d.ts +16 -4
- package/dist/types/components/charts/ChartDonut/ChartDonut.d.ts +5 -1
- package/dist/types/components/charts/ChartGauge/ChartGauge.d.ts +83 -0
- package/dist/types/components/charts/ChartGauge/gaugeLayout.d.ts +64 -0
- package/dist/types/components/charts/ChartGauge/gaugeReading.d.ts +97 -0
- package/dist/types/components/charts/ChartGauge/gaugeScale.d.ts +38 -0
- package/dist/types/components/charts/ChartGauge/index.d.ts +2 -0
- package/dist/types/components/charts/ChartLine/ChartLine.d.ts +15 -4
- package/dist/types/components/charts/ChartMap/ChartMap.d.ts +104 -0
- package/dist/types/components/charts/ChartMap/ChartMapLegend.d.ts +44 -0
- package/dist/types/components/charts/ChartMap/ChartMapTable.d.ts +38 -0
- package/dist/types/components/charts/ChartMap/index.d.ts +4 -0
- package/dist/types/components/charts/ChartMap/mapGeometry.d.ts +56 -0
- package/dist/types/components/charts/ChartMap/mapLabels.d.ts +51 -0
- package/dist/types/components/charts/ChartMap/mapScales.d.ts +76 -0
- package/dist/types/components/charts/ChartMap/polylabel.d.ts +9 -0
- package/dist/types/components/charts/ChartPie/ChartPie.d.ts +5 -1
- package/dist/types/components/charts/ChartRadial/ChartRadial.d.ts +5 -1
- package/dist/types/components/charts/ChartSankey/ChartSankey.d.ts +5 -1
- package/dist/types/components/charts/ChartScatter/ChartScatter.d.ts +7 -1
- package/dist/types/components/charts/ChartSunburst/ChartSunburst.d.ts +11 -2
- package/dist/types/components/charts/ChartTimeline/ChartTimeline.d.ts +137 -0
- package/dist/types/components/charts/ChartTimeline/ChartTimelineTable.d.ts +25 -0
- package/dist/types/components/charts/ChartTimeline/index.d.ts +2 -0
- package/dist/types/components/charts/ChartTimeline/timelineLayout.d.ts +70 -0
- package/dist/types/components/charts/ChartTimeline/timelineTime.d.ts +16 -0
- package/dist/types/components/charts/ChartTimeline/timelineTooltip.d.ts +45 -0
- package/dist/types/components/charts/ChartTooltip/ChartTooltip.d.ts +2 -0
- package/dist/types/components/charts/ChartTreemap/ChartTreemap.d.ts +11 -2
- package/dist/types/components/charts/ChartWaterfall/ChartWaterfall.d.ts +8 -3
- package/dist/types/components/charts/core/CartesianFrame.d.ts +6 -1
- package/dist/types/components/charts/core/ChartFrame.d.ts +7 -1
- package/dist/types/components/charts/core/ChartLegend.d.ts +3 -1
- package/dist/types/components/charts/core/PointBands.d.ts +22 -0
- package/dist/types/components/charts/core/cartesianLayout.d.ts +10 -4
- package/dist/types/components/charts/core/hoverPath.d.ts +10 -0
- package/dist/types/components/charts/core/index.d.ts +13 -3
- package/dist/types/components/charts/core/pointLabels.d.ts +13 -0
- package/dist/types/components/charts/core/tooltips.d.ts +49 -0
- package/dist/types/components/charts/core/useCartesianLayout.d.ts +20 -0
- package/dist/types/components/charts/core/useSeriesToggle.d.ts +15 -1
- package/dist/types/components/data-display/Accordion/Accordion.d.ts +6 -1
- package/dist/types/components/data-display/Accordion/index.d.ts +1 -1
- package/dist/types/components/data-display/List/List.d.ts +1 -1
- package/dist/types/components/data-display/List/useListing.d.ts +7 -1
- package/dist/types/components/data-display/SortableList/SortableList.d.ts +22 -0
- package/dist/types/components/data-display/SortableList/index.d.ts +2 -0
- package/dist/types/components/data-display/Tag/Tag.d.ts +13 -0
- package/dist/types/components/data-display/Tag/index.d.ts +2 -0
- package/dist/types/components/data-display/Timeline/Timeline.d.ts +15 -0
- package/dist/types/components/data-display/Timeline/index.d.ts +2 -0
- package/dist/types/components/feedback/Skeleton/Skeleton.d.ts +13 -0
- package/dist/types/components/feedback/Skeleton/index.d.ts +2 -0
- package/dist/types/components/feedback/Toast/ToastRegion.d.ts +2 -0
- package/dist/types/components/feedback/Toast/index.d.ts +3 -0
- package/dist/types/components/feedback/Toast/toastStore.d.ts +24 -0
- package/dist/types/components/forms/CheckboxGroup/CheckboxGroup.d.ts +28 -0
- package/dist/types/components/forms/CheckboxGroup/index.d.ts +2 -0
- package/dist/types/components/forms/ColorPicker/ColorPicker.d.ts +26 -0
- package/dist/types/components/forms/ColorPicker/index.d.ts +2 -0
- package/dist/types/components/forms/ComboBox/ComboBox.d.ts +7 -1
- package/dist/types/components/forms/Field/Field.d.ts +6 -2
- package/dist/types/components/forms/Field/index.d.ts +1 -1
- package/dist/types/components/forms/FileUpload/FileUpload.d.ts +37 -0
- package/dist/types/components/forms/FileUpload/index.d.ts +2 -0
- package/dist/types/components/forms/InputText/InputText.d.ts +4 -2
- package/dist/types/components/forms/SegmentedControl/SegmentedControl.d.ts +23 -0
- package/dist/types/components/forms/SegmentedControl/index.d.ts +2 -0
- package/dist/types/components/icons/icons.d.ts +29 -0
- package/dist/types/components/icons/index.d.ts +1 -1
- package/dist/types/components/navigation/SkipLink/SkipLink.d.ts +7 -0
- package/dist/types/components/navigation/SkipLink/index.d.ts +2 -0
- package/dist/types/components/navigation/Steps/Steps.d.ts +16 -0
- package/dist/types/components/navigation/Steps/index.d.ts +2 -0
- package/dist/types/components/navigation/Tabs/Tabs.d.ts +5 -1
- package/dist/types/components/navigation/TabsNav/TabsNav.d.ts +20 -0
- package/dist/types/components/navigation/TabsNav/index.d.ts +2 -0
- package/dist/types/components/overlays/Dialog/Dialog.d.ts +21 -9
- package/dist/types/components/overlays/Dialog/DialogFrame.d.ts +13 -0
- package/dist/types/components/overlays/Drawer/Drawer.d.ts +9 -0
- package/dist/types/components/overlays/Drawer/index.d.ts +2 -0
- package/dist/types/components/overlays/Menu/Menu.d.ts +16 -2
- package/dist/types/components/overlays/Menu/index.d.ts +1 -1
- package/dist/types/index.d.ts +43 -7
- package/dist/types/utils/formatters/formatarDuracao.d.ts +5 -0
- package/dist/types/utils/formatters/formatarNumero.d.ts +6 -1
- package/dist/types/utils/formatters/formatarTamanhoDeArquivo.d.ts +7 -0
- package/dist/types/utils/formatters/index.d.ts +4 -1
- package/dist/utils/formatters/formatarDuracao.cjs +2 -0
- package/dist/utils/formatters/formatarDuracao.cjs.map +1 -0
- package/dist/utils/formatters/formatarDuracao.js +10 -0
- package/dist/utils/formatters/formatarDuracao.js.map +1 -0
- package/dist/utils/formatters/formatarNumero.cjs +1 -1
- package/dist/utils/formatters/formatarNumero.cjs.map +1 -1
- package/dist/utils/formatters/formatarNumero.js +42 -17
- package/dist/utils/formatters/formatarNumero.js.map +1 -1
- package/dist/utils/formatters/formatarTamanhoDeArquivo.cjs +2 -0
- package/dist/utils/formatters/formatarTamanhoDeArquivo.cjs.map +1 -0
- package/dist/utils/formatters/formatarTamanhoDeArquivo.js +17 -0
- package/dist/utils/formatters/formatarTamanhoDeArquivo.js.map +1 -0
- package/package.json +3 -1
|
@@ -1,21 +1,22 @@
|
|
|
1
|
-
import { jsxs as N, jsx as o, Fragment as
|
|
2
|
-
import { useId as
|
|
3
|
-
import { useMergedRefs as
|
|
1
|
+
import { jsxs as N, jsx as o, Fragment as le } from "react/jsx-runtime";
|
|
2
|
+
import { useId as re, useState as k, useCallback as I, useMemo as ae, createContext as H, useEffect as O, useContext as R, useLayoutEffect as ie, Fragment as ce, Children as de, isValidElement as ue } from "react";
|
|
3
|
+
import { useMergedRefs as me } from "../../../hooks/useMergedRefs.js";
|
|
4
4
|
import e from "./Table.module.css.js";
|
|
5
|
-
import { useSelection as
|
|
6
|
-
import { IconArrowUp as
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
5
|
+
import { useSelection as he } from "../../../hooks/useSelection/useSelection.js";
|
|
6
|
+
import { IconArrowUp as fe, IconChevronExpand as be, IconQuestionCircle as pe } from "../../icons/icons.js";
|
|
7
|
+
import { Skeleton as z } from "../../feedback/Skeleton/Skeleton.js";
|
|
8
|
+
import { EmptyState as ge } from "../../feedback/EmptyState/EmptyState.js";
|
|
9
|
+
import { Tooltip as ye } from "../../overlays/Tooltip/Tooltip.js";
|
|
10
|
+
const F = H(void 0), A = H(void 0);
|
|
11
|
+
function P(i) {
|
|
12
|
+
return de.toArray(i).map((s, n) => /* @__PURE__ */ o(A.Provider, { value: n, children: s }, ue(s) && s.key !== null ? s.key : n));
|
|
12
13
|
}
|
|
13
|
-
function
|
|
14
|
-
const
|
|
15
|
-
return
|
|
14
|
+
function K(i, s, n) {
|
|
15
|
+
const a = [...i];
|
|
16
|
+
return a[s] = n, a;
|
|
16
17
|
}
|
|
17
18
|
function T(i) {
|
|
18
|
-
const s =
|
|
19
|
+
const s = R(F);
|
|
19
20
|
if (!s)
|
|
20
21
|
throw new Error(i + " deve ser usado dentro de Table.");
|
|
21
22
|
return s;
|
|
@@ -24,10 +25,10 @@ function j({
|
|
|
24
25
|
children: i,
|
|
25
26
|
className: s,
|
|
26
27
|
defaultSelectedIds: n,
|
|
27
|
-
defaultSort:
|
|
28
|
+
defaultSort: a,
|
|
28
29
|
divider: u = !0,
|
|
29
30
|
highlightSelectedRow: l = !0,
|
|
30
|
-
label:
|
|
31
|
+
label: r,
|
|
31
32
|
loading: m = !1,
|
|
32
33
|
loadingMessage: f = "Carregando",
|
|
33
34
|
onSelectionChange: b,
|
|
@@ -38,50 +39,50 @@ function j({
|
|
|
38
39
|
selectionMode: p = "none",
|
|
39
40
|
size: C = "md",
|
|
40
41
|
sort: E,
|
|
41
|
-
stickyHeader:
|
|
42
|
-
striped:
|
|
43
|
-
ref:
|
|
44
|
-
|
|
42
|
+
stickyHeader: S = !1,
|
|
43
|
+
striped: W = !1,
|
|
44
|
+
ref: q,
|
|
45
|
+
...$
|
|
45
46
|
}) {
|
|
46
|
-
const
|
|
47
|
+
const D = re(), [Q, U] = k(a), [V, B] = k(() => /* @__PURE__ */ new Set()), x = E ?? Q, _ = y ?? (p === "single" ? "radio" : "checkbox"), [G, J] = k(!0), M = I((t) => {
|
|
47
48
|
if (!t || typeof ResizeObserver > "u")
|
|
48
49
|
return;
|
|
49
50
|
const d = new ResizeObserver(
|
|
50
|
-
() =>
|
|
51
|
+
() => J(
|
|
51
52
|
t.scrollWidth > t.clientWidth || t.scrollHeight > t.clientHeight
|
|
52
53
|
)
|
|
53
54
|
);
|
|
54
55
|
return d.observe(t), t.firstElementChild && d.observe(t.firstElementChild), () => d.disconnect();
|
|
55
|
-
}, []),
|
|
56
|
+
}, []), X = me(S ? M : void 0, q), Y = I((t) => (B((d) => new Set(d).add(t)), () => B((d) => {
|
|
56
57
|
const v = new Set(d);
|
|
57
58
|
return v.delete(t), v;
|
|
58
|
-
})), []), [
|
|
59
|
-
function
|
|
59
|
+
})), []), [Z, L] = k([]), ee = I((t, d) => (L((v) => K(v, t, d)), () => L((v) => K(v, t, void 0))), []);
|
|
60
|
+
function te(t) {
|
|
60
61
|
const d = {
|
|
61
62
|
column: t,
|
|
62
63
|
direction: (x == null ? void 0 : x.column) === t && x.direction === "ascending" ? "descending" : "ascending"
|
|
63
64
|
};
|
|
64
|
-
E === void 0 &&
|
|
65
|
+
E === void 0 && U(d), g == null || g(d);
|
|
65
66
|
}
|
|
66
|
-
const
|
|
67
|
+
const oe = ae(
|
|
67
68
|
() => h.map((t) => ({ key: t.id, disabled: t.disabled })),
|
|
68
69
|
[h]
|
|
69
|
-
), w =
|
|
70
|
+
), w = he({
|
|
70
71
|
// Caixa e chave desmarcam ao clicar de novo; o radio, nao.
|
|
71
72
|
allowEmpty: _ !== "radio",
|
|
72
73
|
defaultSelectedKeys: n,
|
|
73
|
-
items:
|
|
74
|
+
items: oe,
|
|
74
75
|
mode: p,
|
|
75
76
|
selectedKeys: c,
|
|
76
77
|
onSelectionChange: (t) => b == null ? void 0 : b([...t])
|
|
77
|
-
}),
|
|
78
|
-
baseId:
|
|
79
|
-
columnAt: (t) =>
|
|
80
|
-
countColumns: () => Math.max(
|
|
78
|
+
}), ne = {
|
|
79
|
+
baseId: D,
|
|
80
|
+
columnAt: (t) => Z[t],
|
|
81
|
+
countColumns: () => Math.max(V.size, 1),
|
|
81
82
|
loading: m,
|
|
82
|
-
registerColumn:
|
|
83
|
-
registerLayout:
|
|
84
|
-
requestSort:
|
|
83
|
+
registerColumn: Y,
|
|
84
|
+
registerLayout: ee,
|
|
85
|
+
requestSort: te,
|
|
85
86
|
selection: {
|
|
86
87
|
control: _,
|
|
87
88
|
empty: h.length === 0,
|
|
@@ -100,29 +101,29 @@ function j({
|
|
|
100
101
|
},
|
|
101
102
|
size: C,
|
|
102
103
|
sort: x
|
|
103
|
-
},
|
|
104
|
+
}, se = [
|
|
104
105
|
e.table,
|
|
105
106
|
e[C],
|
|
106
107
|
u && e.divider,
|
|
107
|
-
|
|
108
|
-
|
|
108
|
+
W && e.striped,
|
|
109
|
+
S && e.sticky
|
|
109
110
|
].filter(Boolean).join(" ");
|
|
110
111
|
return /* @__PURE__ */ N(
|
|
111
112
|
"div",
|
|
112
113
|
{
|
|
113
|
-
|
|
114
|
-
className: [e.scroll,
|
|
115
|
-
ref:
|
|
114
|
+
...$,
|
|
115
|
+
className: [e.scroll, S && !G && e.noScroll, s].filter(Boolean).join(" "),
|
|
116
|
+
ref: X,
|
|
116
117
|
children: [
|
|
117
|
-
/* @__PURE__ */ o("table", { "aria-busy": m || void 0, "aria-label":
|
|
118
|
+
/* @__PURE__ */ o("table", { "aria-busy": m || void 0, "aria-label": r, className: se, children: /* @__PURE__ */ o(F.Provider, { value: ne, children: i }) }),
|
|
118
119
|
m && /* @__PURE__ */ o("p", { className: e.status, role: "status", children: f })
|
|
119
120
|
]
|
|
120
121
|
}
|
|
121
122
|
);
|
|
122
123
|
}
|
|
123
|
-
function
|
|
124
|
+
function Ne({ children: i }) {
|
|
124
125
|
const { registerColumn: s, selection: n } = T("Table.Header");
|
|
125
|
-
return
|
|
126
|
+
return O(() => n.mode === "none" ? void 0 : s("__selecao__"), [s, n.mode]), /* @__PURE__ */ o("thead", { className: e.head, children: /* @__PURE__ */ N("tr", { children: [
|
|
126
127
|
n.mode === "multiple" && /* @__PURE__ */ o("th", { className: [e.column, e.lead].join(" "), scope: "col", children: /* @__PURE__ */ o(
|
|
127
128
|
"input",
|
|
128
129
|
{
|
|
@@ -131,77 +132,77 @@ function ye({ children: i }) {
|
|
|
131
132
|
className: e.checkbox,
|
|
132
133
|
disabled: n.empty,
|
|
133
134
|
onChange: n.toggleAll,
|
|
134
|
-
ref: (
|
|
135
|
-
|
|
135
|
+
ref: (a) => {
|
|
136
|
+
a && (a.indeterminate = n.status === "partial");
|
|
136
137
|
},
|
|
137
138
|
type: "checkbox"
|
|
138
139
|
}
|
|
139
140
|
) }),
|
|
140
141
|
n.mode === "single" && /* @__PURE__ */ o("th", { className: [e.column, e.lead].join(" "), scope: "col" }),
|
|
141
|
-
|
|
142
|
+
P(i)
|
|
142
143
|
] }) });
|
|
143
144
|
}
|
|
144
|
-
function
|
|
145
|
-
const { registerColumn: f, registerLayout: b, requestSort: g, sort: h } = T("Table.Column"), c =
|
|
146
|
-
|
|
147
|
-
() => c === void 0 ? void 0 : b(c, { align: y, hideBelow:
|
|
148
|
-
[y,
|
|
145
|
+
function ve({ align: i, children: s, help: n, hideBelow: a, id: u, numeric: l = !1, sortable: r = !1, width: m }) {
|
|
146
|
+
const { registerColumn: f, registerLayout: b, requestSort: g, sort: h } = T("Table.Column"), c = R(A), y = i ?? (l ? "end" : "start");
|
|
147
|
+
O(() => f(u), [u, f]), ie(
|
|
148
|
+
() => c === void 0 ? void 0 : b(c, { align: y, hideBelow: a, numeric: l }),
|
|
149
|
+
[y, a, c, l, b]
|
|
149
150
|
);
|
|
150
|
-
const p = (h == null ? void 0 : h.column) === u ? h.direction : void 0, C = n && /* @__PURE__ */ o(
|
|
151
|
+
const p = (h == null ? void 0 : h.column) === u ? h.direction : void 0, C = n && /* @__PURE__ */ o(ye, { content: n, children: /* @__PURE__ */ o("span", { "aria-label": n, className: e.help, role: "img", tabIndex: 0, children: /* @__PURE__ */ o(pe, { size: 14 }) }) });
|
|
151
152
|
return /* @__PURE__ */ o(
|
|
152
153
|
"th",
|
|
153
154
|
{
|
|
154
|
-
"aria-sort":
|
|
155
|
-
className: [e.column, e[y],
|
|
156
|
-
"data-hide-below":
|
|
155
|
+
"aria-sort": r ? p ?? "none" : void 0,
|
|
156
|
+
className: [e.column, e[y], r && e.sortable].filter(Boolean).join(" "),
|
|
157
|
+
"data-hide-below": a,
|
|
157
158
|
scope: "col",
|
|
158
159
|
style: { width: m },
|
|
159
|
-
children:
|
|
160
|
+
children: r ? /* @__PURE__ */ N("div", { className: e.sortHeader, children: [
|
|
160
161
|
/* @__PURE__ */ N("button", { className: e.sortButton, onClick: () => g(u), type: "button", children: [
|
|
161
162
|
s,
|
|
162
163
|
p ? /* @__PURE__ */ o(
|
|
163
|
-
|
|
164
|
+
fe,
|
|
164
165
|
{
|
|
165
166
|
className: [e.sortIcon, p === "descending" && e.sortDescending].filter(Boolean).join(" "),
|
|
166
167
|
size: 12
|
|
167
168
|
}
|
|
168
|
-
) : /* @__PURE__ */ o(
|
|
169
|
+
) : /* @__PURE__ */ o(be, { className: e.sortIcon, size: 12 })
|
|
169
170
|
] }),
|
|
170
171
|
C
|
|
171
|
-
] }) : /* @__PURE__ */ N(
|
|
172
|
+
] }) : /* @__PURE__ */ N(le, { children: [
|
|
172
173
|
s,
|
|
173
174
|
C
|
|
174
175
|
] })
|
|
175
176
|
}
|
|
176
177
|
);
|
|
177
178
|
}
|
|
178
|
-
const
|
|
179
|
-
function
|
|
179
|
+
const Ce = 3;
|
|
180
|
+
function xe({
|
|
180
181
|
children: i,
|
|
181
182
|
emptyDescription: s = "Não há registros para exibir. Se houver busca ou filtros aplicados, experimente ajustá-los.",
|
|
182
183
|
emptyTitle: n = "Nenhum registro encontrado",
|
|
183
|
-
items:
|
|
184
|
+
items: a
|
|
184
185
|
}) {
|
|
185
|
-
const { columnAt: u, countColumns: l, loading:
|
|
186
|
-
if (
|
|
187
|
-
const f = Array.from({ length:
|
|
186
|
+
const { columnAt: u, countColumns: l, loading: r, selection: m } = T("Table.Body");
|
|
187
|
+
if (r) {
|
|
188
|
+
const f = Array.from({ length: a.length || Ce }, (h, c) => c), b = m.mode === "none" ? 0 : 1, g = Array.from({ length: l() - b }, (h, c) => u(c));
|
|
188
189
|
return /* @__PURE__ */ o("tbody", { "aria-hidden": "true", children: f.map((h) => /* @__PURE__ */ N("tr", { className: [e.row, e.skeletonRow].join(" "), children: [
|
|
189
|
-
b > 0 && /* @__PURE__ */ o("td", { className: [e.cell, e.lead].join(" "), children: /* @__PURE__ */ o(
|
|
190
|
-
g.map((c, y) => /* @__PURE__ */ o("td", { className: [e.cell, e[(c == null ? void 0 : c.align) ?? "start"]].join(" "), "data-hide-below": c == null ? void 0 : c.hideBelow, children: /* @__PURE__ */ o(
|
|
190
|
+
b > 0 && /* @__PURE__ */ o("td", { className: [e.cell, e.lead].join(" "), children: /* @__PURE__ */ o(z, { className: e.skeleton }) }),
|
|
191
|
+
g.map((c, y) => /* @__PURE__ */ o("td", { className: [e.cell, e[(c == null ? void 0 : c.align) ?? "start"]].join(" "), "data-hide-below": c == null ? void 0 : c.hideBelow, children: /* @__PURE__ */ o(z, { className: e.skeleton }) }, y))
|
|
191
192
|
] }, h)) });
|
|
192
193
|
}
|
|
193
|
-
return
|
|
194
|
+
return a.length === 0 ? /* @__PURE__ */ o("tbody", { children: /* @__PURE__ */ o("tr", { children: /* @__PURE__ */ o("td", { className: e.empty, colSpan: l(), children: /* @__PURE__ */ o(ge, { description: s, title: n }) }) }) }) : /* @__PURE__ */ o("tbody", { children: a.map((f) => /* @__PURE__ */ o(ce, { children: i(f) }, f.id)) });
|
|
194
195
|
}
|
|
195
|
-
function
|
|
196
|
-
const { baseId: u, selection: l } = T("Table.Row"),
|
|
196
|
+
function we({ children: i, disabled: s = !1, id: n, label: a }) {
|
|
197
|
+
const { baseId: u, selection: l } = T("Table.Row"), r = l.mode !== "none" && l.isSelected(n);
|
|
197
198
|
return (
|
|
198
199
|
// Sem `aria-selected` na linha: ele so vale em grade, e numa tabela quem anuncia a marcacao e o controle.
|
|
199
|
-
/* @__PURE__ */ N("tr", { className: [e.row,
|
|
200
|
+
/* @__PURE__ */ N("tr", { className: [e.row, r && l.highlight && e.selected].filter(Boolean).join(" "), children: [
|
|
200
201
|
l.mode !== "none" && /* @__PURE__ */ o("td", { className: [e.cell, e.lead].join(" "), children: /* @__PURE__ */ o(
|
|
201
202
|
"input",
|
|
202
203
|
{
|
|
203
|
-
"aria-label":
|
|
204
|
-
checked:
|
|
204
|
+
"aria-label": a ?? "Selecionar linha",
|
|
205
|
+
checked: r,
|
|
205
206
|
className: e[l.control],
|
|
206
207
|
disabled: s,
|
|
207
208
|
name: l.control === "radio" ? `${u}-selecao` : void 0,
|
|
@@ -212,26 +213,26 @@ function xe({ children: i, disabled: s = !1, id: n, label: r }) {
|
|
|
212
213
|
type: l.control === "radio" ? "radio" : "checkbox"
|
|
213
214
|
}
|
|
214
215
|
) }),
|
|
215
|
-
|
|
216
|
+
P(i)
|
|
216
217
|
] })
|
|
217
218
|
);
|
|
218
219
|
}
|
|
219
|
-
function
|
|
220
|
-
const { columnAt: u } = T("Table.Cell"), l =
|
|
220
|
+
function Te({ align: i, children: s, hideBelow: n, numeric: a }) {
|
|
221
|
+
const { columnAt: u } = T("Table.Cell"), l = R(A), r = l === void 0 ? void 0 : u(l), m = a ?? (r == null ? void 0 : r.numeric) ?? !1;
|
|
221
222
|
return /* @__PURE__ */ o(
|
|
222
223
|
"td",
|
|
223
224
|
{
|
|
224
|
-
className: [e.cell, e[i ?? (
|
|
225
|
-
"data-hide-below": n ?? (
|
|
225
|
+
className: [e.cell, e[i ?? (r == null ? void 0 : r.align) ?? (m ? "end" : "start")], m && e.numeric].filter(Boolean).join(" "),
|
|
226
|
+
"data-hide-below": n ?? (r == null ? void 0 : r.hideBelow),
|
|
226
227
|
children: s
|
|
227
228
|
}
|
|
228
229
|
);
|
|
229
230
|
}
|
|
230
|
-
j.Header =
|
|
231
|
-
j.Column =
|
|
232
|
-
j.Body =
|
|
233
|
-
j.Row =
|
|
234
|
-
j.Cell =
|
|
231
|
+
j.Header = Ne;
|
|
232
|
+
j.Column = ve;
|
|
233
|
+
j.Body = xe;
|
|
234
|
+
j.Row = we;
|
|
235
|
+
j.Cell = Te;
|
|
235
236
|
export {
|
|
236
237
|
j as Table
|
|
237
238
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sources":["../../../../src/components/data-display/Table/Table.tsx"],"sourcesContent":["import {\n Children,\n createContext,\n Fragment,\n isValidElement,\n type ComponentPropsWithRef,\n useCallback,\n useContext,\n useEffect,\n useId,\n useLayoutEffect,\n useMemo,\n useState,\n type ReactNode,\n} from 'react';\nimport { useMergedRefs } from '../../../hooks/useMergedRefs';\nimport { useSelection, type SelectionItem } from '../../../hooks/useSelection';\nimport { Tooltip } from '../../overlays/Tooltip';\nimport styles from './Table.module.css';\nimport { EmptyState } from '../../feedback/EmptyState';\nimport { IconArrowUp, IconChevronExpand, IconQuestionCircle } from '../../icons';\n\nexport type TableSize = 'sm' | 'md';\nexport type TableAlign = 'start' | 'center' | 'end';\nexport type TableBreakpoint = 'sm' | 'md' | 'lg';\nexport type SortDirection = 'ascending' | 'descending';\nexport type TableSelectionMode = 'none' | 'single' | 'multiple';\nexport type TableSelectionControl = 'checkbox' | 'radio' | 'toggle';\n\nexport interface TableRowItem {\n disabled?: boolean;\n id: string;\n}\n\nexport interface TableSort {\n column: string;\n direction: SortDirection;\n}\n\nexport interface TableProps extends ComponentPropsWithRef<'div'> {\n children: ReactNode;\n /** Escolha inicial no modo nao controlado. */\n defaultSelectedIds?: readonly string[];\n defaultSort?: TableSort;\n divider?: boolean;\n label?: string;\n loading?: boolean;\n loadingMessage?: string;\n highlightSelectedRow?: boolean;\n onSelectionChange?: (ids: readonly string[]) => void;\n onSortChange?: (sort: TableSort) => void;\n rows?: readonly TableRowItem[];\n selectedIds?: readonly string[];\n selectionControl?: TableSelectionControl;\n selectionMode?: TableSelectionMode;\n size?: TableSize;\n sort?: TableSort;\n /** Cabecalho colado no topo da rolagem da pagina; com a tabela mais larga ou mais alta que o espaco, no dela. */\n stickyHeader?: boolean;\n striped?: boolean;\n}\n\n/** O que a celula herda da coluna na mesma posicao, quando nao declara o proprio. */\ninterface ColumnLayout {\n align: TableAlign;\n hideBelow?: TableBreakpoint;\n numeric: boolean;\n}\n\ninterface TableContextValue {\n baseId: string;\n columnAt: (index: number) => ColumnLayout | undefined;\n countColumns: () => number;\n loading: boolean;\n registerColumn: (id: string) => () => void;\n registerLayout: (index: number, layout: ColumnLayout) => () => void;\n requestSort: (column: string) => void;\n selection: TableSelection;\n size: TableSize;\n sort?: TableSort;\n}\n\ninterface TableSelection {\n control: TableSelectionControl;\n empty: boolean;\n highlight: boolean;\n isSelected: (id: string) => boolean;\n mode: TableSelectionMode;\n status: 'none' | 'partial' | 'all';\n toggle: (id: string, extend: boolean) => void;\n toggleAll: () => void;\n}\n\nconst TableContext = createContext<TableContextValue | undefined>(undefined);\n\n/** Posicao do filho no cabecalho ou na linha: e por ela que a celula acha a sua coluna. */\nconst ColumnIndexContext = createContext<number | undefined>(undefined);\n\nfunction withColumnIndex(children: ReactNode) {\n return Children.toArray(children).map((child, index) => (\n <ColumnIndexContext.Provider key={isValidElement(child) && child.key !== null ? child.key : index} value={index}>\n {child}\n </ColumnIndexContext.Provider>\n ));\n}\n\nfunction withLayout(\n layouts: readonly (ColumnLayout | undefined)[],\n index: number,\n layout: ColumnLayout | undefined,\n): (ColumnLayout | undefined)[] {\n const next = [...layouts];\n next[index] = layout;\n return next;\n}\n\nfunction useTableContext(part: string) {\n const context = useContext(TableContext);\n\n if (!context) {\n throw new Error(part + ' deve ser usado dentro de Table.');\n }\n\n return context;\n}\n\nexport function Table({\n children,\n className,\n defaultSelectedIds,\n defaultSort,\n divider = true,\n highlightSelectedRow = true,\n label,\n loading = false,\n loadingMessage = 'Carregando',\n onSelectionChange,\n onSortChange,\n rows = [],\n selectedIds,\n selectionControl,\n selectionMode = 'none',\n size = 'md',\n sort,\n stickyHeader = false,\n striped = false,\n ref,\n ...props\n}: TableProps) {\n const baseId = useId();\n const [internalSort, setInternalSort] = useState(defaultSort);\n const [columns, setColumns] = useState<ReadonlySet<string>>(() => new Set());\n const currentSort = sort ?? internalSort;\n const control = selectionControl ?? (selectionMode === 'single' ? 'radio' : 'checkbox');\n\n // Rolar dentro da tabela e colar o cabecalho na rolagem da pagina se excluem em CSS: o envoltorio so\n // continua conteiner de rolagem quando a tabela transborda dele.\n const [precisaRolar, setPrecisaRolar] = useState(true);\n const observarTransbordo = useCallback((envoltorio: HTMLDivElement | null) => {\n if (!envoltorio || typeof ResizeObserver === 'undefined') {\n return;\n }\n\n const observador = new ResizeObserver(() =>\n setPrecisaRolar(\n envoltorio.scrollWidth > envoltorio.clientWidth || envoltorio.scrollHeight > envoltorio.clientHeight,\n ),\n );\n\n observador.observe(envoltorio);\n\n if (envoltorio.firstElementChild) {\n observador.observe(envoltorio.firstElementChild);\n }\n\n return () => observador.disconnect();\n }, []);\n const envoltorioRef = useMergedRefs(stickyHeader ? observarTransbordo : undefined, ref);\n\n // A coluna se registra enquanto esta na tela e sai quando sai: registrada para sempre, o vazio ocupava colunas\n // que nao existiam mais.\n const registerColumn = useCallback((id: string) => {\n setColumns((atuais) => new Set(atuais).add(id));\n\n return () =>\n setColumns((atuais) => {\n const restantes = new Set(atuais);\n restantes.delete(id);\n return restantes;\n });\n }, []);\n\n const [layouts, setLayouts] = useState<readonly (ColumnLayout | undefined)[]>([]);\n const registerLayout = useCallback((index: number, layout: ColumnLayout) => {\n setLayouts((atuais) => withLayout(atuais, index, layout));\n\n return () => setLayouts((atuais) => withLayout(atuais, index, undefined));\n }, []);\n\n function requestSort(column: string) {\n const next: TableSort = {\n column,\n direction:\n currentSort?.column === column && currentSort.direction === 'ascending' ? 'descending' : 'ascending',\n };\n\n if (sort === undefined) {\n setInternalSort(next);\n }\n\n onSortChange?.(next);\n }\n\n const collection = useMemo<SelectionItem[]>(\n () => rows.map((row) => ({ key: row.id, disabled: row.disabled })),\n [rows],\n );\n\n const selection = useSelection({\n // Caixa e chave desmarcam ao clicar de novo; o radio, nao.\n allowEmpty: control !== 'radio',\n defaultSelectedKeys: defaultSelectedIds,\n items: collection,\n mode: selectionMode,\n selectedKeys: selectedIds,\n onSelectionChange: (keys) => onSelectionChange?.([...keys]),\n });\n\n const context: TableContextValue = {\n baseId,\n columnAt: (index) => layouts[index],\n countColumns: () => Math.max(columns.size, 1),\n loading,\n registerColumn,\n registerLayout,\n requestSort,\n selection: {\n control,\n empty: rows.length === 0,\n highlight: highlightSelectedRow,\n isSelected: (id) => selection.selectedKeys.has(id),\n mode: selectionMode,\n status: selection.status,\n toggle: (id, extend) => {\n if (extend && selectionMode === 'multiple') {\n selection.selectRange(id);\n return;\n }\n\n selection.select(id);\n },\n toggleAll: selection.toggleAll,\n },\n size,\n sort: currentSort,\n };\n\n const classes = [\n styles.table,\n styles[size],\n divider && styles.divider,\n striped && styles.striped,\n stickyHeader && styles.sticky,\n ]\n .filter(Boolean)\n .join(' ');\n\n return (\n <div\n {...props}\n className={[styles.scroll, stickyHeader && !precisaRolar && styles.noScroll, className].filter(Boolean).join(' ')}\n ref={envoltorioRef}\n >\n <table aria-busy={loading || undefined} aria-label={label} className={classes}>\n <TableContext.Provider value={context}>{children}</TableContext.Provider>\n </table>\n {loading && (\n <p className={styles.status} role=\"status\">\n {loadingMessage}\n </p>\n )}\n </div>\n );\n}\n\nexport interface TableHeaderProps {\n children: ReactNode;\n}\n\nfunction TableHeader({ children }: TableHeaderProps) {\n const { registerColumn, selection } = useTableContext('Table.Header');\n\n useEffect(() => (selection.mode === 'none' ? undefined : registerColumn('__selecao__')), [registerColumn, selection.mode]);\n\n return (\n <thead className={styles.head}>\n <tr>\n {selection.mode === 'multiple' && (\n <th className={[styles.column, styles.lead].join(' ')} scope=\"col\">\n {/* Sem `rows` nao ha o que marcar, e o clique so apagava a escolha que ja havia. */}\n <input\n aria-label=\"Selecionar todas as linhas\"\n checked={selection.status === 'all'}\n className={styles.checkbox}\n disabled={selection.empty}\n onChange={selection.toggleAll}\n ref={(node) => {\n if (node) {\n node.indeterminate = selection.status === 'partial';\n }\n }}\n type=\"checkbox\"\n />\n </th>\n )}\n {selection.mode === 'single' && <th className={[styles.column, styles.lead].join(' ')} scope=\"col\" />}\n {withColumnIndex(children)}\n </tr>\n </thead>\n );\n}\n\nexport interface TableColumnProps {\n align?: TableAlign;\n children: ReactNode;\n help?: string;\n hideBelow?: TableBreakpoint;\n id: string;\n numeric?: boolean;\n sortable?: boolean;\n width?: string;\n}\n\nfunction TableColumn({ align, children, help, hideBelow, id, numeric = false, sortable = false, width }: TableColumnProps) {\n const { registerColumn, registerLayout, requestSort, sort } = useTableContext('Table.Column');\n const index = useContext(ColumnIndexContext);\n const columnAlign = align ?? (numeric ? 'end' : 'start');\n\n useEffect(() => registerColumn(id), [id, registerColumn]);\n\n // Antes da pintura: com efeito comum, a celula aparecia um quadro alinhada a esquerda e so depois ia para o lado\n // da coluna.\n useLayoutEffect(\n () => (index === undefined ? undefined : registerLayout(index, { align: columnAlign, hideBelow, numeric })),\n [columnAlign, hideBelow, index, numeric, registerLayout],\n );\n\n const sorted = sort?.column === id ? sort.direction : undefined;\n\n // A ajuda e focavel e fica fora do botao de ordenacao: controle dentro de controle nao e HTML valido.\n const ajuda = help && (\n <Tooltip content={help}>\n <span aria-label={help} className={styles.help} role=\"img\" tabIndex={0}>\n <IconQuestionCircle size={14} />\n </span>\n </Tooltip>\n );\n\n return (\n <th\n aria-sort={sortable ? sorted ?? 'none' : undefined}\n className={[styles.column, styles[columnAlign], sortable && styles.sortable]\n .filter(Boolean)\n .join(' ')}\n data-hide-below={hideBelow}\n scope=\"col\"\n style={{ width }}\n >\n {sortable ? (\n <div className={styles.sortHeader}>\n <button className={styles.sortButton} onClick={() => requestSort(id)} type=\"button\">\n {children}\n {sorted ? (\n <IconArrowUp\n className={[styles.sortIcon, sorted === 'descending' && styles.sortDescending].filter(Boolean).join(' ')}\n size={12}\n />\n ) : (\n <IconChevronExpand className={styles.sortIcon} size={12} />\n )}\n </button>\n {ajuda}\n </div>\n ) : (\n <>\n {children}\n {ajuda}\n </>\n )}\n </th>\n );\n}\n\nexport interface TableBodyProps<T extends TableRowItem> {\n children: (item: T) => ReactNode;\n emptyDescription?: string;\n emptyTitle?: string;\n items: readonly T[];\n}\n\nconst SKELETON_ROWS = 3;\n\nfunction TableBody<T extends TableRowItem>({\n children,\n emptyDescription = 'Não há registros para exibir. Se houver busca ou filtros aplicados, experimente ajustá-los.',\n emptyTitle = 'Nenhum registro encontrado',\n items,\n}: TableBodyProps<T>) {\n const { columnAt, countColumns, loading, selection } = useTableContext('Table.Body');\n\n if (loading) {\n // Mantem a altura das linhas que ja estavam na tela, para a pagina nao pular quando a nova chegar.\n const rows = Array.from({ length: items.length || SKELETON_ROWS }, (_, index) => index);\n const leadCells = selection.mode === 'none' ? 0 : 1;\n const columns = Array.from({ length: countColumns() - leadCells }, (_, index) => columnAt(index));\n\n return (\n <tbody aria-hidden=\"true\">\n {rows.map((row) => (\n <tr className={[styles.row, styles.skeletonRow].join(' ')} key={row}>\n {leadCells > 0 && (\n <td className={[styles.cell, styles.lead].join(' ')}>\n <span className={styles.skeleton} />\n </td>\n )}\n {columns.map((column, index) => (\n <td className={[styles.cell, styles[column?.align ?? 'start']].join(' ')} data-hide-below={column?.hideBelow} key={index}>\n <span className={styles.skeleton} />\n </td>\n ))}\n </tr>\n ))}\n </tbody>\n );\n }\n\n if (items.length === 0) {\n return (\n <tbody>\n <tr>\n <td className={styles.empty} colSpan={countColumns()}>\n <EmptyState description={emptyDescription} title={emptyTitle} />\n </td>\n </tr>\n </tbody>\n );\n }\n\n return (\n <tbody>\n {items.map((item) => (\n <Fragment key={item.id}>{children(item)}</Fragment>\n ))}\n </tbody>\n );\n}\n\nexport interface TableRowProps {\n children: ReactNode;\n disabled?: boolean;\n id: string;\n label?: string;\n}\n\nfunction TableRow({ children, disabled = false, id, label }: TableRowProps) {\n const { baseId, selection } = useTableContext('Table.Row');\n const selected = selection.mode !== 'none' && selection.isSelected(id);\n\n return (\n // Sem `aria-selected` na linha: ele so vale em grade, e numa tabela quem anuncia a marcacao e o controle.\n <tr className={[styles.row, selected && selection.highlight && styles.selected].filter(Boolean).join(' ')}>\n {selection.mode !== 'none' && (\n <td className={[styles.cell, styles.lead].join(' ')}>\n <input\n aria-label={label ?? 'Selecionar linha'}\n checked={selected}\n className={styles[selection.control]}\n disabled={disabled}\n name={selection.control === 'radio' ? `${baseId}-selecao` : undefined}\n onChange={() => undefined}\n onClick={(event) => selection.toggle(id, event.shiftKey)}\n role={selection.control === 'toggle' ? 'switch' : undefined}\n type={selection.control === 'radio' ? 'radio' : 'checkbox'}\n />\n </td>\n )}\n {withColumnIndex(children)}\n </tr>\n );\n}\n\n/** Sem valor proprio, `align`, `hideBelow` e `numeric` seguem a coluna da mesma posicao no cabecalho. */\nexport interface TableCellProps {\n align?: TableAlign;\n children?: ReactNode;\n hideBelow?: TableBreakpoint;\n numeric?: boolean;\n}\n\nfunction TableCell({ align, children, hideBelow, numeric }: TableCellProps) {\n const { columnAt } = useTableContext('Table.Cell');\n const index = useContext(ColumnIndexContext);\n const column = index === undefined ? undefined : columnAt(index);\n const isNumeric = numeric ?? column?.numeric ?? false;\n\n return (\n <td\n className={[styles.cell, styles[align ?? column?.align ?? (isNumeric ? 'end' : 'start')], isNumeric && styles.numeric]\n .filter(Boolean)\n .join(' ')}\n data-hide-below={hideBelow ?? column?.hideBelow}\n >\n {children}\n </td>\n );\n}\n\nTable.Header = TableHeader;\nTable.Column = TableColumn;\nTable.Body = TableBody;\nTable.Row = TableRow;\nTable.Cell = TableCell;\n"],"names":["TableContext","createContext","ColumnIndexContext","withColumnIndex","children","Children","child","index","jsx","isValidElement","withLayout","layouts","layout","next","useTableContext","part","context","useContext","Table","className","defaultSelectedIds","defaultSort","divider","highlightSelectedRow","label","loading","loadingMessage","onSelectionChange","onSortChange","rows","selectedIds","selectionControl","selectionMode","size","sort","stickyHeader","striped","ref","props","baseId","useId","internalSort","setInternalSort","useState","columns","setColumns","currentSort","control","precisaRolar","setPrecisaRolar","observarTransbordo","useCallback","envoltorio","observador","envoltorioRef","useMergedRefs","registerColumn","id","atuais","restantes","setLayouts","registerLayout","requestSort","column","collection","useMemo","row","selection","useSelection","keys","extend","classes","styles","jsxs","TableHeader","useEffect","node","TableColumn","align","help","hideBelow","numeric","sortable","width","columnAlign","useLayoutEffect","sorted","ajuda","Tooltip","IconQuestionCircle","IconArrowUp","IconChevronExpand","Fragment","SKELETON_ROWS","TableBody","emptyDescription","emptyTitle","items","columnAt","countColumns","_","leadCells","EmptyState","item","TableRow","disabled","selected","event","TableCell","isNumeric"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Table.js","sources":["../../../../src/components/data-display/Table/Table.tsx"],"sourcesContent":["import {\n Children,\n createContext,\n Fragment,\n isValidElement,\n type ComponentPropsWithRef,\n useCallback,\n useContext,\n useEffect,\n useId,\n useLayoutEffect,\n useMemo,\n useState,\n type ReactNode,\n} from 'react';\nimport { useMergedRefs } from '../../../hooks/useMergedRefs';\nimport { useSelection, type SelectionItem } from '../../../hooks/useSelection';\nimport { Tooltip } from '../../overlays/Tooltip';\nimport styles from './Table.module.css';\nimport { EmptyState } from '../../feedback/EmptyState';\nimport { Skeleton } from '../../feedback/Skeleton';\nimport { IconArrowUp, IconChevronExpand, IconQuestionCircle } from '../../icons';\n\nexport type TableSize = 'sm' | 'md';\nexport type TableAlign = 'start' | 'center' | 'end';\nexport type TableBreakpoint = 'sm' | 'md' | 'lg';\nexport type SortDirection = 'ascending' | 'descending';\nexport type TableSelectionMode = 'none' | 'single' | 'multiple';\nexport type TableSelectionControl = 'checkbox' | 'radio' | 'toggle';\n\nexport interface TableRowItem {\n disabled?: boolean;\n id: string;\n}\n\nexport interface TableSort {\n column: string;\n direction: SortDirection;\n}\n\nexport interface TableProps extends ComponentPropsWithRef<'div'> {\n children: ReactNode;\n /** Escolha inicial no modo nao controlado. */\n defaultSelectedIds?: readonly string[];\n defaultSort?: TableSort;\n divider?: boolean;\n label?: string;\n loading?: boolean;\n loadingMessage?: string;\n highlightSelectedRow?: boolean;\n onSelectionChange?: (ids: readonly string[]) => void;\n onSortChange?: (sort: TableSort) => void;\n rows?: readonly TableRowItem[];\n selectedIds?: readonly string[];\n selectionControl?: TableSelectionControl;\n selectionMode?: TableSelectionMode;\n size?: TableSize;\n sort?: TableSort;\n /** Cabecalho colado no topo da rolagem da pagina; com a tabela mais larga ou mais alta que o espaco, no dela. */\n stickyHeader?: boolean;\n striped?: boolean;\n}\n\n/** O que a celula herda da coluna na mesma posicao, quando nao declara o proprio. */\ninterface ColumnLayout {\n align: TableAlign;\n hideBelow?: TableBreakpoint;\n numeric: boolean;\n}\n\ninterface TableContextValue {\n baseId: string;\n columnAt: (index: number) => ColumnLayout | undefined;\n countColumns: () => number;\n loading: boolean;\n registerColumn: (id: string) => () => void;\n registerLayout: (index: number, layout: ColumnLayout) => () => void;\n requestSort: (column: string) => void;\n selection: TableSelection;\n size: TableSize;\n sort?: TableSort;\n}\n\ninterface TableSelection {\n control: TableSelectionControl;\n empty: boolean;\n highlight: boolean;\n isSelected: (id: string) => boolean;\n mode: TableSelectionMode;\n status: 'none' | 'partial' | 'all';\n toggle: (id: string, extend: boolean) => void;\n toggleAll: () => void;\n}\n\nconst TableContext = createContext<TableContextValue | undefined>(undefined);\n\n/** Posicao do filho no cabecalho ou na linha: e por ela que a celula acha a sua coluna. */\nconst ColumnIndexContext = createContext<number | undefined>(undefined);\n\nfunction withColumnIndex(children: ReactNode) {\n return Children.toArray(children).map((child, index) => (\n <ColumnIndexContext.Provider key={isValidElement(child) && child.key !== null ? child.key : index} value={index}>\n {child}\n </ColumnIndexContext.Provider>\n ));\n}\n\nfunction withLayout(\n layouts: readonly (ColumnLayout | undefined)[],\n index: number,\n layout: ColumnLayout | undefined,\n): (ColumnLayout | undefined)[] {\n const next = [...layouts];\n next[index] = layout;\n return next;\n}\n\nfunction useTableContext(part: string) {\n const context = useContext(TableContext);\n\n if (!context) {\n throw new Error(part + ' deve ser usado dentro de Table.');\n }\n\n return context;\n}\n\nexport function Table({\n children,\n className,\n defaultSelectedIds,\n defaultSort,\n divider = true,\n highlightSelectedRow = true,\n label,\n loading = false,\n loadingMessage = 'Carregando',\n onSelectionChange,\n onSortChange,\n rows = [],\n selectedIds,\n selectionControl,\n selectionMode = 'none',\n size = 'md',\n sort,\n stickyHeader = false,\n striped = false,\n ref,\n ...props\n}: TableProps) {\n const baseId = useId();\n const [internalSort, setInternalSort] = useState(defaultSort);\n const [columns, setColumns] = useState<ReadonlySet<string>>(() => new Set());\n const currentSort = sort ?? internalSort;\n const control = selectionControl ?? (selectionMode === 'single' ? 'radio' : 'checkbox');\n\n // Rolar dentro da tabela e colar o cabecalho na rolagem da pagina se excluem em CSS: o envoltorio so\n // continua conteiner de rolagem quando a tabela transborda dele.\n const [precisaRolar, setPrecisaRolar] = useState(true);\n const observarTransbordo = useCallback((envoltorio: HTMLDivElement | null) => {\n if (!envoltorio || typeof ResizeObserver === 'undefined') {\n return;\n }\n\n const observador = new ResizeObserver(() =>\n setPrecisaRolar(\n envoltorio.scrollWidth > envoltorio.clientWidth || envoltorio.scrollHeight > envoltorio.clientHeight,\n ),\n );\n\n observador.observe(envoltorio);\n\n if (envoltorio.firstElementChild) {\n observador.observe(envoltorio.firstElementChild);\n }\n\n return () => observador.disconnect();\n }, []);\n const envoltorioRef = useMergedRefs(stickyHeader ? observarTransbordo : undefined, ref);\n\n // A coluna se registra enquanto esta na tela e sai quando sai: registrada para sempre, o vazio ocupava colunas\n // que nao existiam mais.\n const registerColumn = useCallback((id: string) => {\n setColumns((atuais) => new Set(atuais).add(id));\n\n return () =>\n setColumns((atuais) => {\n const restantes = new Set(atuais);\n restantes.delete(id);\n return restantes;\n });\n }, []);\n\n const [layouts, setLayouts] = useState<readonly (ColumnLayout | undefined)[]>([]);\n const registerLayout = useCallback((index: number, layout: ColumnLayout) => {\n setLayouts((atuais) => withLayout(atuais, index, layout));\n\n return () => setLayouts((atuais) => withLayout(atuais, index, undefined));\n }, []);\n\n function requestSort(column: string) {\n const next: TableSort = {\n column,\n direction:\n currentSort?.column === column && currentSort.direction === 'ascending' ? 'descending' : 'ascending',\n };\n\n if (sort === undefined) {\n setInternalSort(next);\n }\n\n onSortChange?.(next);\n }\n\n const collection = useMemo<SelectionItem[]>(\n () => rows.map((row) => ({ key: row.id, disabled: row.disabled })),\n [rows],\n );\n\n const selection = useSelection({\n // Caixa e chave desmarcam ao clicar de novo; o radio, nao.\n allowEmpty: control !== 'radio',\n defaultSelectedKeys: defaultSelectedIds,\n items: collection,\n mode: selectionMode,\n selectedKeys: selectedIds,\n onSelectionChange: (keys) => onSelectionChange?.([...keys]),\n });\n\n const context: TableContextValue = {\n baseId,\n columnAt: (index) => layouts[index],\n countColumns: () => Math.max(columns.size, 1),\n loading,\n registerColumn,\n registerLayout,\n requestSort,\n selection: {\n control,\n empty: rows.length === 0,\n highlight: highlightSelectedRow,\n isSelected: (id) => selection.selectedKeys.has(id),\n mode: selectionMode,\n status: selection.status,\n toggle: (id, extend) => {\n if (extend && selectionMode === 'multiple') {\n selection.selectRange(id);\n return;\n }\n\n selection.select(id);\n },\n toggleAll: selection.toggleAll,\n },\n size,\n sort: currentSort,\n };\n\n const classes = [\n styles.table,\n styles[size],\n divider && styles.divider,\n striped && styles.striped,\n stickyHeader && styles.sticky,\n ]\n .filter(Boolean)\n .join(' ');\n\n return (\n <div\n {...props}\n className={[styles.scroll, stickyHeader && !precisaRolar && styles.noScroll, className].filter(Boolean).join(' ')}\n ref={envoltorioRef}\n >\n <table aria-busy={loading || undefined} aria-label={label} className={classes}>\n <TableContext.Provider value={context}>{children}</TableContext.Provider>\n </table>\n {loading && (\n <p className={styles.status} role=\"status\">\n {loadingMessage}\n </p>\n )}\n </div>\n );\n}\n\nexport interface TableHeaderProps {\n children: ReactNode;\n}\n\nfunction TableHeader({ children }: TableHeaderProps) {\n const { registerColumn, selection } = useTableContext('Table.Header');\n\n useEffect(() => (selection.mode === 'none' ? undefined : registerColumn('__selecao__')), [registerColumn, selection.mode]);\n\n return (\n <thead className={styles.head}>\n <tr>\n {selection.mode === 'multiple' && (\n <th className={[styles.column, styles.lead].join(' ')} scope=\"col\">\n {/* Sem `rows` nao ha o que marcar, e o clique so apagava a escolha que ja havia. */}\n <input\n aria-label=\"Selecionar todas as linhas\"\n checked={selection.status === 'all'}\n className={styles.checkbox}\n disabled={selection.empty}\n onChange={selection.toggleAll}\n ref={(node) => {\n if (node) {\n node.indeterminate = selection.status === 'partial';\n }\n }}\n type=\"checkbox\"\n />\n </th>\n )}\n {selection.mode === 'single' && <th className={[styles.column, styles.lead].join(' ')} scope=\"col\" />}\n {withColumnIndex(children)}\n </tr>\n </thead>\n );\n}\n\nexport interface TableColumnProps {\n align?: TableAlign;\n children: ReactNode;\n help?: string;\n hideBelow?: TableBreakpoint;\n id: string;\n numeric?: boolean;\n sortable?: boolean;\n width?: string;\n}\n\nfunction TableColumn({ align, children, help, hideBelow, id, numeric = false, sortable = false, width }: TableColumnProps) {\n const { registerColumn, registerLayout, requestSort, sort } = useTableContext('Table.Column');\n const index = useContext(ColumnIndexContext);\n const columnAlign = align ?? (numeric ? 'end' : 'start');\n\n useEffect(() => registerColumn(id), [id, registerColumn]);\n\n // Antes da pintura: com efeito comum, a celula aparecia um quadro alinhada a esquerda e so depois ia para o lado\n // da coluna.\n useLayoutEffect(\n () => (index === undefined ? undefined : registerLayout(index, { align: columnAlign, hideBelow, numeric })),\n [columnAlign, hideBelow, index, numeric, registerLayout],\n );\n\n const sorted = sort?.column === id ? sort.direction : undefined;\n\n // A ajuda e focavel e fica fora do botao de ordenacao: controle dentro de controle nao e HTML valido.\n const ajuda = help && (\n <Tooltip content={help}>\n <span aria-label={help} className={styles.help} role=\"img\" tabIndex={0}>\n <IconQuestionCircle size={14} />\n </span>\n </Tooltip>\n );\n\n return (\n <th\n aria-sort={sortable ? sorted ?? 'none' : undefined}\n className={[styles.column, styles[columnAlign], sortable && styles.sortable]\n .filter(Boolean)\n .join(' ')}\n data-hide-below={hideBelow}\n scope=\"col\"\n style={{ width }}\n >\n {sortable ? (\n <div className={styles.sortHeader}>\n <button className={styles.sortButton} onClick={() => requestSort(id)} type=\"button\">\n {children}\n {sorted ? (\n <IconArrowUp\n className={[styles.sortIcon, sorted === 'descending' && styles.sortDescending].filter(Boolean).join(' ')}\n size={12}\n />\n ) : (\n <IconChevronExpand className={styles.sortIcon} size={12} />\n )}\n </button>\n {ajuda}\n </div>\n ) : (\n <>\n {children}\n {ajuda}\n </>\n )}\n </th>\n );\n}\n\nexport interface TableBodyProps<T extends TableRowItem> {\n children: (item: T) => ReactNode;\n emptyDescription?: string;\n emptyTitle?: string;\n items: readonly T[];\n}\n\nconst SKELETON_ROWS = 3;\n\nfunction TableBody<T extends TableRowItem>({\n children,\n emptyDescription = 'Não há registros para exibir. Se houver busca ou filtros aplicados, experimente ajustá-los.',\n emptyTitle = 'Nenhum registro encontrado',\n items,\n}: TableBodyProps<T>) {\n const { columnAt, countColumns, loading, selection } = useTableContext('Table.Body');\n\n if (loading) {\n // Mantem a altura das linhas que ja estavam na tela, para a pagina nao pular quando a nova chegar.\n const rows = Array.from({ length: items.length || SKELETON_ROWS }, (_, index) => index);\n const leadCells = selection.mode === 'none' ? 0 : 1;\n const columns = Array.from({ length: countColumns() - leadCells }, (_, index) => columnAt(index));\n\n return (\n <tbody aria-hidden=\"true\">\n {rows.map((row) => (\n <tr className={[styles.row, styles.skeletonRow].join(' ')} key={row}>\n {leadCells > 0 && (\n <td className={[styles.cell, styles.lead].join(' ')}>\n <Skeleton className={styles.skeleton} />\n </td>\n )}\n {columns.map((column, index) => (\n <td className={[styles.cell, styles[column?.align ?? 'start']].join(' ')} data-hide-below={column?.hideBelow} key={index}>\n <Skeleton className={styles.skeleton} />\n </td>\n ))}\n </tr>\n ))}\n </tbody>\n );\n }\n\n if (items.length === 0) {\n return (\n <tbody>\n <tr>\n <td className={styles.empty} colSpan={countColumns()}>\n <EmptyState description={emptyDescription} title={emptyTitle} />\n </td>\n </tr>\n </tbody>\n );\n }\n\n return (\n <tbody>\n {items.map((item) => (\n <Fragment key={item.id}>{children(item)}</Fragment>\n ))}\n </tbody>\n );\n}\n\nexport interface TableRowProps {\n children: ReactNode;\n disabled?: boolean;\n id: string;\n label?: string;\n}\n\nfunction TableRow({ children, disabled = false, id, label }: TableRowProps) {\n const { baseId, selection } = useTableContext('Table.Row');\n const selected = selection.mode !== 'none' && selection.isSelected(id);\n\n return (\n // Sem `aria-selected` na linha: ele so vale em grade, e numa tabela quem anuncia a marcacao e o controle.\n <tr className={[styles.row, selected && selection.highlight && styles.selected].filter(Boolean).join(' ')}>\n {selection.mode !== 'none' && (\n <td className={[styles.cell, styles.lead].join(' ')}>\n <input\n aria-label={label ?? 'Selecionar linha'}\n checked={selected}\n className={styles[selection.control]}\n disabled={disabled}\n name={selection.control === 'radio' ? `${baseId}-selecao` : undefined}\n onChange={() => undefined}\n onClick={(event) => selection.toggle(id, event.shiftKey)}\n role={selection.control === 'toggle' ? 'switch' : undefined}\n type={selection.control === 'radio' ? 'radio' : 'checkbox'}\n />\n </td>\n )}\n {withColumnIndex(children)}\n </tr>\n );\n}\n\n/** Sem valor proprio, `align`, `hideBelow` e `numeric` seguem a coluna da mesma posicao no cabecalho. */\nexport interface TableCellProps {\n align?: TableAlign;\n children?: ReactNode;\n hideBelow?: TableBreakpoint;\n numeric?: boolean;\n}\n\nfunction TableCell({ align, children, hideBelow, numeric }: TableCellProps) {\n const { columnAt } = useTableContext('Table.Cell');\n const index = useContext(ColumnIndexContext);\n const column = index === undefined ? undefined : columnAt(index);\n const isNumeric = numeric ?? column?.numeric ?? false;\n\n return (\n <td\n className={[styles.cell, styles[align ?? column?.align ?? (isNumeric ? 'end' : 'start')], isNumeric && styles.numeric]\n .filter(Boolean)\n .join(' ')}\n data-hide-below={hideBelow ?? column?.hideBelow}\n >\n {children}\n </td>\n );\n}\n\nTable.Header = TableHeader;\nTable.Column = TableColumn;\nTable.Body = TableBody;\nTable.Row = TableRow;\nTable.Cell = TableCell;\n"],"names":["TableContext","createContext","ColumnIndexContext","withColumnIndex","children","Children","child","index","jsx","isValidElement","withLayout","layouts","layout","next","useTableContext","part","context","useContext","Table","className","defaultSelectedIds","defaultSort","divider","highlightSelectedRow","label","loading","loadingMessage","onSelectionChange","onSortChange","rows","selectedIds","selectionControl","selectionMode","size","sort","stickyHeader","striped","ref","props","baseId","useId","internalSort","setInternalSort","useState","columns","setColumns","currentSort","control","precisaRolar","setPrecisaRolar","observarTransbordo","useCallback","envoltorio","observador","envoltorioRef","useMergedRefs","registerColumn","id","atuais","restantes","setLayouts","registerLayout","requestSort","column","collection","useMemo","row","selection","useSelection","keys","extend","classes","styles","jsxs","TableHeader","useEffect","node","TableColumn","align","help","hideBelow","numeric","sortable","width","columnAlign","useLayoutEffect","sorted","ajuda","Tooltip","IconQuestionCircle","IconArrowUp","IconChevronExpand","Fragment","SKELETON_ROWS","TableBody","emptyDescription","emptyTitle","items","columnAt","countColumns","_","leadCells","Skeleton","EmptyState","item","TableRow","disabled","selected","event","TableCell","isNumeric"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t="
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t="_scroll_17dat_2",e="_noScroll_17dat_9",o="_table_17dat_13",_="_sm_17dat_23",s="_md_17dat_29",c="_head_17dat_35",n="_column_17dat_39",d="_sortable_17dat_50",a="_sortHeader_17dat_54",l="_help_17dat_59",r="_sortButton_17dat_63",i="_sortIcon_17dat_92",u="_sortDescending_17dat_97",m="_row_17dat_118",k="_divider_17dat_122",p="_cell_17dat_122",b="_striped_17dat_126",g="_numeric_17dat_140",h="_start_17dat_148",y="_center_17dat_152",w="_end_17dat_156",v="_empty_17dat_160",S="_status_17dat_165",x="_skeletonRow_17dat_176",B="_skeleton_17dat_176",D="_lead_17dat_190",H="_sticky_17dat_197",I="_checkbox_17dat_251 _input_thq98_15",R="_radio_17dat_255 _input_1nbsm_38",f="_toggle_17dat_259 _input_1g7qr_15",q="_selected_17dat_271",M={scroll:t,noScroll:e,table:o,sm:_,md:s,head:c,column:n,sortable:d,sortHeader:a,help:l,sortButton:r,sortIcon:i,sortDescending:u,row:m,divider:k,cell:p,striped:b,numeric:g,start:h,center:y,end:w,empty:v,status:S,skeletonRow:x,skeleton:B,lead:D,sticky:H,checkbox:I,radio:R,toggle:f,selected:q};exports.cell=p;exports.center=y;exports.checkbox=I;exports.column=n;exports.default=M;exports.divider=k;exports.empty=v;exports.end=w;exports.head=c;exports.help=l;exports.lead=D;exports.md=s;exports.noScroll=e;exports.numeric=g;exports.radio=R;exports.row=m;exports.scroll=t;exports.selected=q;exports.skeleton=B;exports.skeletonRow=x;exports.sm=_;exports.sortButton=r;exports.sortDescending=u;exports.sortHeader=a;exports.sortIcon=i;exports.sortable=d;exports.start=h;exports.status=S;exports.sticky=H;exports.striped=b;exports.table=o;exports.toggle=f;
|
|
2
2
|
//# sourceMappingURL=Table.module.css.cjs.map
|
|
@@ -1,69 +1,68 @@
|
|
|
1
|
-
const
|
|
2
|
-
scroll:
|
|
3
|
-
noScroll:
|
|
1
|
+
const t = "_scroll_17dat_2", _ = "_noScroll_17dat_9", o = "_table_17dat_13", s = "_sm_17dat_23", e = "_md_17dat_29", n = "_head_17dat_35", c = "_column_17dat_39", d = "_sortable_17dat_50", a = "_sortHeader_17dat_54", l = "_help_17dat_59", r = "_sortButton_17dat_63", i = "_sortIcon_17dat_92", m = "_sortDescending_17dat_97", u = "_row_17dat_118", p = "_divider_17dat_122", k = "_cell_17dat_122", b = "_striped_17dat_126", g = "_numeric_17dat_140", h = "_start_17dat_148", y = "_center_17dat_152", w = "_end_17dat_156", x = "_empty_17dat_160", v = "_status_17dat_165", B = "_skeletonRow_17dat_176", D = "_skeleton_17dat_176", H = "_lead_17dat_190", I = "_sticky_17dat_197", R = "_checkbox_17dat_251 _input_thq98_15", S = "_radio_17dat_255 _input_1nbsm_38", q = "_toggle_17dat_259 _input_1g7qr_15", f = "_selected_17dat_271", j = {
|
|
2
|
+
scroll: t,
|
|
3
|
+
noScroll: _,
|
|
4
4
|
table: o,
|
|
5
|
-
sm:
|
|
6
|
-
md:
|
|
5
|
+
sm: s,
|
|
6
|
+
md: e,
|
|
7
7
|
head: n,
|
|
8
8
|
column: c,
|
|
9
|
-
sortable:
|
|
9
|
+
sortable: d,
|
|
10
10
|
sortHeader: a,
|
|
11
11
|
help: l,
|
|
12
12
|
sortButton: r,
|
|
13
|
-
sortIcon:
|
|
14
|
-
sortDescending:
|
|
15
|
-
row:
|
|
16
|
-
divider:
|
|
17
|
-
cell:
|
|
18
|
-
striped:
|
|
19
|
-
numeric:
|
|
20
|
-
start:
|
|
21
|
-
center:
|
|
22
|
-
end:
|
|
23
|
-
empty:
|
|
24
|
-
status:
|
|
25
|
-
skeleton: v,
|
|
26
|
-
"table-skeleton": "_table-skeleton_zazh5_1",
|
|
13
|
+
sortIcon: i,
|
|
14
|
+
sortDescending: m,
|
|
15
|
+
row: u,
|
|
16
|
+
divider: p,
|
|
17
|
+
cell: k,
|
|
18
|
+
striped: b,
|
|
19
|
+
numeric: g,
|
|
20
|
+
start: h,
|
|
21
|
+
center: y,
|
|
22
|
+
end: w,
|
|
23
|
+
empty: x,
|
|
24
|
+
status: v,
|
|
27
25
|
skeletonRow: B,
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
26
|
+
skeleton: D,
|
|
27
|
+
lead: H,
|
|
28
|
+
sticky: I,
|
|
29
|
+
checkbox: R,
|
|
30
|
+
radio: S,
|
|
31
|
+
toggle: q,
|
|
32
|
+
selected: f
|
|
34
33
|
};
|
|
35
34
|
export {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
k as cell,
|
|
36
|
+
y as center,
|
|
37
|
+
R as checkbox,
|
|
39
38
|
c as column,
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
39
|
+
j as default,
|
|
40
|
+
p as divider,
|
|
41
|
+
x as empty,
|
|
42
|
+
w as end,
|
|
44
43
|
n as head,
|
|
45
44
|
l as help,
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
45
|
+
H as lead,
|
|
46
|
+
e as md,
|
|
47
|
+
_ as noScroll,
|
|
48
|
+
g as numeric,
|
|
49
|
+
S as radio,
|
|
50
|
+
u as row,
|
|
51
|
+
t as scroll,
|
|
52
|
+
f as selected,
|
|
53
|
+
D as skeleton,
|
|
55
54
|
B as skeletonRow,
|
|
56
|
-
|
|
55
|
+
s as sm,
|
|
57
56
|
r as sortButton,
|
|
58
|
-
|
|
57
|
+
m as sortDescending,
|
|
59
58
|
a as sortHeader,
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
59
|
+
i as sortIcon,
|
|
60
|
+
d as sortable,
|
|
61
|
+
h as start,
|
|
62
|
+
v as status,
|
|
63
|
+
I as sticky,
|
|
64
|
+
b as striped,
|
|
66
65
|
o as table,
|
|
67
|
-
|
|
66
|
+
q as toggle
|
|
68
67
|
};
|
|
69
68
|
//# sourceMappingURL=Table.module.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Table.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),c=require("react"),s=require("./Tag.module.css.cjs"),n=require("../../icons/icons.cjs");function x({children:l,className:d,disabled:e=!1,onRemove:u,onSelectedChange:o,selected:a,size:f="md",...m}){const r=c.useId(),i=c.useId(),b=a!==void 0,j=[s.default.tag,s.default[f],a&&s.default.selected,e&&s.default.disabled,d].filter(Boolean).join(" ");return t.jsxs("span",{...m,className:j,children:[b?t.jsxs("button",{"aria-pressed":a,className:s.default.toggle,disabled:e,id:r,onClick:()=>o==null?void 0:o(!a),type:"button",children:[a&&t.jsx(n.IconCheck,{className:s.default.check}),l]}):t.jsx("span",{id:r,children:l}),u&&t.jsx("button",{"aria-label":"Remover","aria-labelledby":`${i} ${r}`,className:s.default.remove,disabled:e,id:i,onClick:u,type:"button",children:t.jsx(n.IconClose,{})})]})}exports.Tag=x;
|
|
2
|
+
//# sourceMappingURL=Tag.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tag.cjs","sources":["../../../../src/components/data-display/Tag/Tag.tsx"],"sourcesContent":["import { useId, type HTMLAttributes, type ReactNode } from 'react';\nimport { IconCheck, IconClose } from '../../icons';\nimport styles from './Tag.module.css';\n\nexport type TagSize = 'sm' | 'md';\n\nexport interface TagProps extends Omit<HTMLAttributes<HTMLSpanElement>, 'children'> {\n children: ReactNode;\n disabled?: boolean;\n /** Mostra o botao de remover, nomeado como \"Remover\" seguido do texto da etiqueta. */\n onRemove?: () => void;\n /** Com `selected`, a etiqueta vira um botao de alternar, como o filtro que se liga e desliga. */\n onSelectedChange?: (selected: boolean) => void;\n selected?: boolean;\n size?: TagSize;\n}\n\nexport function Tag({\n children,\n className,\n disabled = false,\n onRemove,\n onSelectedChange,\n selected,\n size = 'md',\n ...props\n}: TagProps) {\n const textId = useId();\n const removeId = useId();\n const toggleable = selected !== undefined;\n const classes = [styles.tag, styles[size], selected && styles.selected, disabled && styles.disabled, className]\n .filter(Boolean)\n .join(' ');\n\n return (\n <span {...props} className={classes}>\n {toggleable ? (\n <button\n aria-pressed={selected}\n className={styles.toggle}\n disabled={disabled}\n id={textId}\n onClick={() => onSelectedChange?.(!selected)}\n type=\"button\"\n >\n {selected && <IconCheck className={styles.check} />}\n {children}\n </button>\n ) : (\n <span id={textId}>{children}</span>\n )}\n {onRemove && (\n <button\n aria-label=\"Remover\"\n aria-labelledby={`${removeId} ${textId}`}\n className={styles.remove}\n disabled={disabled}\n id={removeId}\n onClick={onRemove}\n type=\"button\"\n >\n <IconClose />\n </button>\n )}\n </span>\n );\n}\n"],"names":["Tag","children","className","disabled","onRemove","onSelectedChange","selected","size","props","textId","useId","removeId","toggleable","classes","styles","jsxs","jsx","IconCheck","IconClose"],"mappings":"6MAiBO,SAASA,EAAI,CAClB,SAAAC,EACA,UAAAC,EACA,SAAAC,EAAW,GACX,SAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,KAAAC,EAAO,KACP,GAAGC,CACL,EAAa,CACX,MAAMC,EAASC,EAAAA,MAAA,EACTC,EAAWD,EAAAA,MAAA,EACXE,EAAaN,IAAa,OAC1BO,EAAU,CAACC,EAAAA,QAAO,IAAKA,EAAAA,QAAOP,CAAI,EAAGD,GAAYQ,UAAO,SAAUX,GAAYW,EAAAA,QAAO,SAAUZ,CAAS,EAC3G,OAAO,OAAO,EACd,KAAK,GAAG,EAEX,OACEa,EAAAA,KAAC,OAAA,CAAM,GAAGP,EAAO,UAAWK,EACzB,SAAA,CAAAD,EACCG,EAAAA,KAAC,SAAA,CACC,eAAcT,EACd,UAAWQ,EAAAA,QAAO,OAClB,SAAAX,EACA,GAAIM,EACJ,QAAS,IAAMJ,GAAA,YAAAA,EAAmB,CAACC,GACnC,KAAK,SAEJ,SAAA,CAAAA,GAAYU,EAAAA,IAACC,EAAAA,UAAA,CAAU,UAAWH,EAAAA,QAAO,MAAO,EAChDb,CAAA,CAAA,CAAA,EAGHe,EAAAA,IAAC,OAAA,CAAK,GAAIP,EAAS,SAAAR,CAAA,CAAS,EAE7BG,GACCY,EAAAA,IAAC,SAAA,CACC,aAAW,UACX,kBAAiB,GAAGL,CAAQ,IAAIF,CAAM,GACtC,UAAWK,EAAAA,QAAO,OAClB,SAAAX,EACA,GAAIQ,EACJ,QAASP,EACT,KAAK,SAEL,eAACc,EAAAA,UAAA,CAAA,CAAU,CAAA,CAAA,CACb,EAEJ,CAEJ"}
|