@12-apps/ui 6.35.0 → 6.36.0
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/_internal/components/data-display/Alert/Alert.js +3 -3
- package/dist/_internal/components/data-display/Alert/Alert.styles.js +2 -2
- package/dist/_internal/components/data-display/AlertDialog/AlertDialog.js +2 -2
- package/dist/_internal/components/data-display/AsyncStateContainer/AsyncStateContainer.js +5 -5
- package/dist/_internal/components/data-display/Avatar/Avatar.animations.js +2 -1
- package/dist/_internal/components/data-display/Avatar/Avatar.js +4 -4
- package/dist/_internal/components/data-display/Avatar/Avatar.view.js +3 -3
- package/dist/_internal/components/data-display/Badge/Badge.animations.js +2 -1
- package/dist/_internal/components/data-display/Badge/Badge.js +6 -6
- package/dist/_internal/components/data-display/Badge/Badge.styles.js +4 -4
- package/dist/_internal/components/data-display/Badge/Badge.variants.js +2 -2
- package/dist/_internal/components/data-display/Badge/BadgeContent.js +5 -5
- package/dist/_internal/components/data-display/Banner/Banner.js +3 -3
- package/dist/_internal/components/data-display/Banner/Banner.styles.js +2 -2
- package/dist/_internal/components/data-display/CardKit/CardKebab.js +1 -1
- package/dist/_internal/components/data-display/CardKit/card-actions-context.js +4 -4
- package/dist/_internal/components/data-display/CardKit/list-card-parts.js +1 -1
- package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +10 -10
- package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +7 -7
- package/dist/_internal/components/data-display/Carousel/Carousel.chrome.js +3 -3
- package/dist/_internal/components/data-display/Carousel/Carousel.js +6 -6
- package/dist/_internal/components/data-display/Carousel/Carousel.parts.js +2 -2
- package/dist/_internal/components/data-display/Carousel/Carousel.slide.js +2 -1
- package/dist/_internal/components/data-display/Carousel/Carousel.styles.js +6 -4
- package/dist/_internal/components/data-display/Chart/Chart.js +7 -7
- package/dist/_internal/components/data-display/Chart/ChartComposables.js +2 -1
- package/dist/_internal/components/data-display/Chart/SpecChart.js +8 -8
- package/dist/_internal/components/data-display/Chart/chart-axis.js +2 -1
- package/dist/_internal/components/data-display/Chart/chart-context.js +4 -4
- package/dist/_internal/components/data-display/Chart/chart-internals.js +4 -2
- package/dist/_internal/components/data-display/Chart/chart-renderers.js +6 -6
- package/dist/_internal/components/data-display/Chip/Chip.js +3 -2
- package/dist/_internal/components/data-display/Chip/Chip.styles.js +2 -1
- package/dist/_internal/components/data-display/DataGrid/DataGrid.js +3 -2
- package/dist/_internal/components/data-display/DataGrid/DataGrid.states.js +2 -1
- package/dist/_internal/components/data-display/DataViews/DataViewsBoard.js +2 -2
- package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +28 -28
- package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +40 -40
- package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +1 -1
- package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +7 -7
- package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +3 -3
- package/dist/_internal/components/data-display/DataViews/base-card.js +5 -5
- package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +7 -7
- package/dist/_internal/components/data-display/DataViews/base-list-card-gutters.js +3 -3
- package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +3 -3
- package/dist/_internal/components/data-display/DataViews/base-list-card.js +9 -9
- package/dist/_internal/components/data-display/DataViews/card-surface.js +3 -2
- package/dist/_internal/components/data-display/DataViews/data-views-bar-controls.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-columns-tab.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-columns.js +3 -3
- package/dist/_internal/components/data-display/DataViews/data-views-day-input.js +2 -1
- package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +5 -5
- package/dist/_internal/components/data-display/DataViews/data-views-display-tabs.js +3 -3
- package/dist/_internal/components/data-display/DataViews/data-views-drag.js +2 -1
- package/dist/_internal/components/data-display/DataViews/data-views-empty.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-export.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +5 -5
- package/dist/_internal/components/data-display/DataViews/data-views-glyphs.js +2 -1
- package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +25 -25
- package/dist/_internal/components/data-display/DataViews/data-views-header-row.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +8 -8
- package/dist/_internal/components/data-display/DataViews/data-views-layout-context.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +5 -5
- package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-number-input.js +2 -1
- package/dist/_internal/components/data-display/DataViews/data-views-pagination.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +4 -4
- package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +3 -3
- package/dist/_internal/components/data-display/DataViews/data-views-scopes.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-search.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-select-all-strip.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +9 -9
- package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +12 -12
- package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +8 -8
- package/dist/_internal/components/data-display/DataViews/data-views-view-nav.js +2 -2
- package/dist/_internal/components/data-display/DataViews/list-card-rails.js +1 -1
- package/dist/_internal/components/data-display/DataViews/save-view-preview.js +2 -2
- package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +5 -5
- package/dist/_internal/components/data-display/DateTimeDisplay/DateTimeDisplay.js +2 -1
- package/dist/_internal/components/data-display/DateTimeDisplay/index.js +2 -1
- package/dist/_internal/components/data-display/DescriptionItem/DescriptionItem.js +2 -2
- package/dist/_internal/components/data-display/EmptyState/EmptyState.js +2 -1
- package/dist/_internal/components/data-display/ErrorState/ErrorState.js +1 -1
- package/dist/_internal/components/data-display/FleetMap/FleetBody.js +15 -15
- package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +13 -13
- package/dist/_internal/components/data-display/FleetMap/FleetMap.js +17 -17
- package/dist/_internal/components/data-display/FleetMap/FleetRoster.js +2 -1
- package/dist/_internal/components/data-display/HoverCard/HoverCard.animations.js +2 -1
- package/dist/_internal/components/data-display/HoverCard/HoverCard.content.js +2 -1
- package/dist/_internal/components/data-display/HoverCard/HoverCard.js +5 -4
- package/dist/_internal/components/data-display/HoverCard/HoverCard.styles.js +3 -2
- package/dist/_internal/components/data-display/InteractiveTooltip/InteractiveTooltip.hooks.js +1 -1
- package/dist/_internal/components/data-display/InteractiveTooltip/InteractiveTooltip.js +4 -4
- package/dist/_internal/components/data-display/InteractiveTooltip/InteractiveTooltip.styles.js +4 -2
- package/dist/_internal/components/data-display/LazyImage/LazyImage.hooks.js +2 -1
- package/dist/_internal/components/data-display/LazyImage/LazyImage.js +3 -2
- package/dist/_internal/components/data-display/Lightbox/Lightbox.constants.js +4 -4
- package/dist/_internal/components/data-display/Lightbox/Lightbox.hooks.js +3 -3
- package/dist/_internal/components/data-display/Lightbox/Lightbox.js +9 -9
- package/dist/_internal/components/data-display/Lightbox/LightboxControls.js +3 -3
- package/dist/_internal/components/data-display/Lightbox/LightboxOverlay.js +4 -4
- package/dist/_internal/components/data-display/Lightbox/LightboxStage.js +3 -3
- package/dist/_internal/components/data-display/Lightbox/LightboxThumbnails.js +3 -3
- package/dist/_internal/components/data-display/Lightbox/useLightbox.js +4 -4
- package/dist/_internal/components/data-display/LoadingState/LoadingState.js +2 -1
- package/dist/_internal/components/data-display/MapPreview/MapControlBar.js +2 -1
- package/dist/_internal/components/data-display/MapPreview/MapDecorations.js +3 -3
- package/dist/_internal/components/data-display/MapPreview/MapLayers.js +5 -4
- package/dist/_internal/components/data-display/MapPreview/MapMarkers.js +3 -3
- package/dist/_internal/components/data-display/MapPreview/MapOverlays.js +1 -1
- package/dist/_internal/components/data-display/MapPreview/MapPreview.helpers.js +2 -1
- package/dist/_internal/components/data-display/MapPreview/MapPreview.js +12 -12
- package/dist/_internal/components/data-display/MapPreview/MapSearchBar.js +2 -1
- package/dist/_internal/components/data-display/MapPreview/MapTiles.js +3 -2
- package/dist/_internal/components/data-display/MapPreview/StaticMapView.js +5 -5
- package/dist/_internal/components/data-display/MapPreview/mapSurface.js +4 -3
- package/dist/_internal/components/data-display/Popover/Popover.js +2 -1
- package/dist/_internal/components/data-display/Progress/Progress.js +3 -3
- package/dist/_internal/components/data-display/Progress/Progress.styles.js +2 -2
- package/dist/_internal/components/data-display/SectionOnboarding/SectionOnboarding.js +4 -4
- package/dist/_internal/components/data-display/Sheet/Sheet.animations.js +2 -1
- package/dist/_internal/components/data-display/Sheet/Sheet.body.js +4 -4
- package/dist/_internal/components/data-display/Sheet/Sheet.hooks.js +3 -2
- package/dist/_internal/components/data-display/Sheet/Sheet.js +7 -7
- package/dist/_internal/components/data-display/Sheet/Sheet.parts.js +3 -2
- package/dist/_internal/components/data-display/Sheet/Sheet.styles.js +3 -3
- package/dist/_internal/components/data-display/StatCard/StatCard.js +2 -2
- package/dist/_internal/components/data-display/Stepper/Stepper.js +2 -2
- package/dist/_internal/components/data-display/Table/Table.js +2 -2
- package/dist/_internal/components/data-display/Table/Table.styles.js +1 -1
- package/dist/_internal/components/data-display/Timeline/Timeline.js +3 -3
- package/dist/_internal/components/data-display/Timeline/TimelineRow.js +2 -2
- package/dist/_internal/components/data-display/TimingDiagram/TimingDiagram.js +3 -3
- package/dist/_internal/components/data-display/TimingDiagram/TimingDiagram.views.js +2 -2
- package/dist/_internal/components/data-display/Tooltip/Tooltip.js +2 -2
- package/dist/_internal/components/data-display/index.js +87 -87
- package/dist/_internal/components/feedback/ConfirmAction/ConfirmAction.js +4 -4
- package/dist/_internal/components/feedback/ConfirmAction/ConfirmAction.parts.js +3 -3
- package/dist/_internal/components/feedback/ConfirmAction/ConfirmButton.js +5 -5
- package/dist/_internal/components/feedback/ConfirmAction/with-confirmation.js +4 -4
- package/dist/_internal/components/feedback/NotificationStatusNotice/NotificationStatusNotice.js +4 -4
- package/dist/_internal/components/feedback/Sonner/Sonner.js +1 -1
- package/dist/_internal/components/feedback/Sonner/SonnerToast.js +1 -1
- package/dist/_internal/components/feedback/index.js +9 -9
- package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +1 -1
- package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +1 -1
- package/dist/_internal/components/form/Button/Button.js +1 -1
- package/dist/_internal/components/form/Button/Button.styles.js +1 -1
- package/dist/_internal/components/form/CategorySelect/CategoryPanel.js +1 -1
- package/dist/_internal/components/form/CategorySelect/CategoryPanelFoot.js +1 -1
- package/dist/_internal/components/form/CategorySelect/CategoryPanelHead.js +1 -1
- package/dist/_internal/components/form/CategorySelect/CategoryPanelList.js +1 -1
- package/dist/_internal/components/form/CategorySelect/CategoryRows.js +1 -1
- package/dist/_internal/components/form/CategorySelect/CategorySelect.js +1 -1
- package/dist/_internal/components/form/CategorySelect/CategorySelect.styles.js +1 -1
- package/dist/_internal/components/form/CategorySelect/CategoryTrigger.js +1 -1
- package/dist/_internal/components/form/CepField/CepField.js +1 -1
- package/dist/_internal/components/form/Checkbox/Checkbox.js +1 -1
- package/dist/_internal/components/form/CodeEditor/CodeEditor.js +1 -1
- package/dist/_internal/components/form/Command/Command.js +1 -1
- package/dist/_internal/components/form/Command/Command.styles.js +1 -1
- package/dist/_internal/components/form/CreatableSelect/CreatableSelect.js +1 -1
- package/dist/_internal/components/form/DateRangePicker/DateRangePicker.hooks.js +4 -3
- package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +6 -6
- package/dist/_internal/components/form/DateRangePicker/DateRangePicker.range.js +3 -2
- package/dist/_internal/components/form/DateRangePicker/DateRangePickerFields.js +4 -3
- package/dist/_internal/components/form/InputOTP/InputOTP.js +1 -1
- package/dist/_internal/components/form/InputOTP/InputOTP.styles.js +1 -1
- package/dist/_internal/components/form/Label/Label.js +1 -1
- package/dist/_internal/components/form/Label/Label.styles.js +1 -1
- package/dist/_internal/components/form/Menubar/Menubar.item.js +1 -1
- package/dist/_internal/components/form/Menubar/Menubar.js +1 -1
- package/dist/_internal/components/form/Menubar/Menubar.styles.js +1 -1
- package/dist/_internal/components/form/Menubar/Menubar.toolbar.js +1 -1
- package/dist/_internal/components/form/PhoneInput/PhoneInput.js +1 -1
- package/dist/_internal/components/form/RadioGroup/RadioGroup.js +1 -1
- package/dist/_internal/components/form/RadioGroup/RadioGroup.styles.js +1 -1
- package/dist/_internal/components/form/RadioGroup/RadioGroup.variants.js +1 -1
- package/dist/_internal/components/form/RichTextEditor/RichTextEditor.js +1 -1
- package/dist/_internal/components/form/Slider/Slider.js +1 -1
- package/dist/_internal/components/form/Slider/Slider.styles.js +1 -1
- package/dist/_internal/components/form/Switch/Switch.js +1 -1
- package/dist/_internal/components/form/Switch/Switch.parts.js +1 -1
- package/dist/_internal/components/form/Switch/Switch.styles.js +1 -1
- package/dist/_internal/components/form/Textarea/Textarea.js +2 -2
- package/dist/_internal/components/form/Textarea/TextareaRichEditor.js +2 -2
- package/dist/_internal/components/form/Toggle/Toggle.js +1 -1
- package/dist/_internal/components/form/Toggle/Toggle.styles.js +1 -1
- package/dist/_internal/components/form/ToggleGroup/ToggleGroup.js +1 -1
- package/dist/_internal/components/form/index.js +7 -7
- package/dist/_internal/components/form/total-form/Fields/CategoryField.js +1 -1
- package/dist/_internal/components/form/total-form/Fields/CepField.js +1 -1
- package/dist/_internal/components/form/total-form/Fields/SelectField.js +1 -1
- package/dist/_internal/components/form/total-form/Fields/TextField.js +1 -1
- package/dist/_internal/components/form/total-form/Fields/ToggleField.js +1 -1
- package/dist/_internal/components/form/total-form/Fields/index.js +1 -1
- package/dist/_internal/components/form/total-form/SubmitButton.js +1 -1
- package/dist/_internal/components/index.js +108 -108
- package/dist/_internal/components/layout/Box/Box.js +1 -1
- package/dist/_internal/components/layout/ContentToolbar/ColumnsMenu.js +1 -1
- package/dist/_internal/components/layout/ContentToolbar/FilterTrigger.js +1 -1
- package/dist/_internal/components/layout/ContentToolbar/MultiSelectDropdown.js +1 -1
- package/dist/_internal/components/layout/ContentToolbar/MultiSelectTriggers.js +1 -1
- package/dist/_internal/components/layout/ContentToolbar/SavedViewsMenu.js +1 -1
- package/dist/_internal/components/layout/ContentToolbar/SortByDropdown.js +1 -1
- package/dist/_internal/components/layout/ContentToolbar/ViewSelector.js +1 -1
- package/dist/_internal/components/layout/Stack/Stack.js +1 -1
- package/dist/_internal/components/layout/TableFilter/TableFilter.js +1 -1
- package/dist/_internal/components/layout/index.js +1 -1
- package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +8 -8
- package/dist/_internal/components/navigation/AppHeader/AppHeader.identity.js +1 -1
- package/dist/_internal/components/navigation/Breadcrumbs/BreadcrumbEntry.js +3 -3
- package/dist/_internal/components/navigation/Breadcrumbs/Breadcrumbs.js +4 -4
- package/dist/_internal/components/navigation/Breadcrumbs/Breadcrumbs.styles.js +2 -2
- package/dist/_internal/components/navigation/CommandPalette/CommandPalette.js +1 -1
- package/dist/_internal/components/navigation/ContextMenu/ContextMenu.js +1 -1
- package/dist/_internal/components/navigation/DropdownMenu/DropdownMenu.js +1 -1
- package/dist/_internal/components/navigation/NavigationMenu/NavigationMegaSection.js +5 -5
- package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.js +7 -7
- package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.shell.js +3 -3
- package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.styles.js +2 -2
- package/dist/_internal/components/navigation/NavigationMenu/NavigationMenuItem.js +3 -3
- package/dist/_internal/components/navigation/NavigationMenu/NavigationStandardBody.js +5 -5
- package/dist/_internal/components/navigation/Pagination/Pagination.js +1 -1
- package/dist/_internal/components/navigation/index.js +17 -17
- package/dist/_internal/components/typography/Blockquote/Blockquote.js +1 -1
- package/dist/_internal/components/typography/Code/Code.js +1 -1
- package/dist/_internal/components/typography/Text/Text.js +1 -1
- package/dist/_internal/components/typography/index.js +1 -1
- package/dist/_internal/components/utility/AnimatedIcon/AnimatedIcon.js +1 -1
- package/dist/_internal/components/utility/AnimatedIcon/AnimatedIcon.styles.js +1 -1
- package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.js +1 -1
- package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.parts.js +1 -1
- package/dist/_internal/components/utility/WorkflowStep/WorkflowStepRow.js +1 -1
- package/dist/_internal/components/utility/index.js +1 -1
- package/dist/_internal/icons/Icon.js +1 -1
- package/dist/_internal/provider/UiProvider.js +1 -1
- package/dist/_internal/provider/mui-bridge.js +1 -1
- package/dist/_internal/provider/use-ui-theme.js +1 -1
- package/dist/_internal/social-login-button/social-login-button.js +1 -1
- package/dist/_internal/user-avatar/user-avatar.js +5 -5
- package/dist/charts.js +8 -8
- package/dist/{chunk-BNU4RLEC.js → chunk-2FM5SUQV.js} +8 -4
- package/dist/chunk-2FM5SUQV.js.map +1 -0
- package/dist/{chunk-APT5L7V5.js → chunk-2LIRGFEK.js} +2 -2
- package/dist/{chunk-LDDN254Q.js → chunk-2UCLUDEB.js} +2 -2
- package/dist/{chunk-6SYFPRTT.js → chunk-343OLRFT.js} +2 -2
- package/dist/{chunk-VDGJV7MP.js → chunk-3AQD2EA6.js} +9 -9
- package/dist/chunk-3AQD2EA6.js.map +1 -0
- package/dist/{chunk-3GQ6PNEM.js → chunk-3GTMGPNQ.js} +20 -5
- package/dist/chunk-3GTMGPNQ.js.map +1 -0
- package/dist/{chunk-TFZI36UD.js → chunk-3KA6MYIR.js} +4 -3
- package/dist/chunk-3KA6MYIR.js.map +1 -0
- package/dist/{chunk-5VWYCVXF.js → chunk-3U3H3BZM.js} +6 -3
- package/dist/chunk-3U3H3BZM.js.map +1 -0
- package/dist/{chunk-H2YBVBPW.js → chunk-3UIDKLML.js} +15 -11
- package/dist/chunk-3UIDKLML.js.map +1 -0
- package/dist/{chunk-M5BTIIL7.js → chunk-4CHROSWR.js} +15 -14
- package/dist/chunk-4CHROSWR.js.map +1 -0
- package/dist/{chunk-VR3U4QA5.js → chunk-4CTLEUK3.js} +6 -5
- package/dist/chunk-4CTLEUK3.js.map +1 -0
- package/dist/{chunk-ACZH2NUW.js → chunk-4NQXHPQR.js} +6 -4
- package/dist/chunk-4NQXHPQR.js.map +1 -0
- package/dist/{chunk-QTWXVOPT.js → chunk-4OW4O4A2.js} +17 -11
- package/dist/chunk-4OW4O4A2.js.map +1 -0
- package/dist/{chunk-U2IRCTAR.js → chunk-4WCDMCIS.js} +2 -2
- package/dist/{chunk-2F4YEGYG.js → chunk-57FZM6GH.js} +5 -2
- package/dist/chunk-57FZM6GH.js.map +1 -0
- package/dist/{chunk-E6YBXAZN.js → chunk-5IAVC4BT.js} +6 -6
- package/dist/chunk-5IAVC4BT.js.map +1 -0
- package/dist/{chunk-OGTTJKHI.js → chunk-5QWQR7XT.js} +4 -4
- package/dist/{chunk-DRE6DSJ7.js → chunk-5TJRJSJY.js} +3 -3
- package/dist/{chunk-5ZQUJ7LT.js → chunk-5UTAEHSB.js} +5 -2
- package/dist/chunk-5UTAEHSB.js.map +1 -0
- package/dist/{chunk-XZBCPL4N.js → chunk-5W4BLTDI.js} +2 -2
- package/dist/{chunk-Z35J5B6D.js → chunk-62UAI62O.js} +9 -8
- package/dist/chunk-62UAI62O.js.map +1 -0
- package/dist/{chunk-YG2VQUZO.js → chunk-6BDYC4RA.js} +3 -3
- package/dist/{chunk-QHUTSAFG.js → chunk-6CTPDNNX.js} +4 -4
- package/dist/{chunk-CU4TF7C7.js → chunk-6GRZ77IS.js} +4 -4
- package/dist/{chunk-YLBRXDYH.js → chunk-7EIOXZWL.js} +2 -2
- package/dist/{chunk-BD2GGIGS.js → chunk-ADHMNIWS.js} +9 -5
- package/dist/chunk-ADHMNIWS.js.map +1 -0
- package/dist/{chunk-Y2E73IG2.js → chunk-AJ5SDHX5.js} +4 -4
- package/dist/chunk-AJ5SDHX5.js.map +1 -0
- package/dist/{chunk-ZHEZISMI.js → chunk-AK2HOD6B.js} +2 -2
- package/dist/{chunk-2PWVPTS3.js → chunk-AUHYR7ID.js} +11 -9
- package/dist/chunk-AUHYR7ID.js.map +1 -0
- package/dist/{chunk-QWHURFJ3.js → chunk-B2VXP2B2.js} +6 -3
- package/dist/chunk-B2VXP2B2.js.map +1 -0
- package/dist/{chunk-YSKGLU2V.js → chunk-B7BNNSM2.js} +8 -5
- package/dist/chunk-B7BNNSM2.js.map +1 -0
- package/dist/{chunk-7ZWC5CKA.js → chunk-BAFDSAWY.js} +10 -9
- package/dist/chunk-BAFDSAWY.js.map +1 -0
- package/dist/{chunk-VZAGBDZ2.js → chunk-BJZOBG24.js} +2 -2
- package/dist/{chunk-YDPUBGJ7.js → chunk-BNEWMFVB.js} +10 -6
- package/dist/chunk-BNEWMFVB.js.map +1 -0
- package/dist/{chunk-ZUQIOWLN.js → chunk-BSYPPO2I.js} +42 -38
- package/dist/chunk-BSYPPO2I.js.map +1 -0
- package/dist/{chunk-NXX3ZQKO.js → chunk-BYH5GPLT.js} +25 -20
- package/dist/chunk-BYH5GPLT.js.map +1 -0
- package/dist/{chunk-CS3RKXT5.js → chunk-CHFHILTM.js} +2 -2
- package/dist/{chunk-DMYBTD5Y.js → chunk-CPWWMGYR.js} +2 -2
- package/dist/{chunk-L4V2LRKH.js → chunk-CSN3F36H.js} +13 -8
- package/dist/chunk-CSN3F36H.js.map +1 -0
- package/dist/{chunk-XSMMFCMQ.js → chunk-CWDV64TD.js} +3 -3
- package/dist/{chunk-IUCTYNIR.js → chunk-CX66M55F.js} +18 -17
- package/dist/chunk-CX66M55F.js.map +1 -0
- package/dist/{chunk-PGNJCUDA.js → chunk-CZBND7AY.js} +38 -21
- package/dist/chunk-CZBND7AY.js.map +1 -0
- package/dist/{chunk-73HBIIRB.js → chunk-D2UDM2SU.js} +12 -8
- package/dist/chunk-D2UDM2SU.js.map +1 -0
- package/dist/{chunk-YU647YW4.js → chunk-DB2ZFZVW.js} +7 -4
- package/dist/chunk-DB2ZFZVW.js.map +1 -0
- package/dist/{chunk-GUVBR62X.js → chunk-DCJSHYE5.js} +4 -4
- package/dist/{chunk-VV7MGILP.js → chunk-DMWSXWCZ.js} +3 -3
- package/dist/{chunk-JYRQBZEV.js → chunk-DVAAUWTC.js} +2 -2
- package/dist/{chunk-C6NI3FAV.js → chunk-DVGBFT6O.js} +2 -2
- package/dist/{chunk-5RP3KXC7.js → chunk-DY4BP5WA.js} +7 -6
- package/dist/chunk-DY4BP5WA.js.map +1 -0
- package/dist/{chunk-W5ENK5CM.js → chunk-DZNMS2SH.js} +5 -5
- package/dist/{chunk-QO6QWBDI.js → chunk-E4TNDTWV.js} +7 -4
- package/dist/chunk-E4TNDTWV.js.map +1 -0
- package/dist/{chunk-IFSUKWE7.js → chunk-E7T3A4IR.js} +10 -6
- package/dist/chunk-E7T3A4IR.js.map +1 -0
- package/dist/{chunk-I6EVBLFX.js → chunk-EA2UNEL6.js} +20 -11
- package/dist/chunk-EA2UNEL6.js.map +1 -0
- package/dist/{chunk-5E3XZAED.js → chunk-EARWC6PD.js} +6 -2
- package/dist/chunk-EARWC6PD.js.map +1 -0
- package/dist/{chunk-NVNZFT5X.js → chunk-EIYTS5VZ.js} +23 -22
- package/dist/chunk-EIYTS5VZ.js.map +1 -0
- package/dist/{chunk-GN5EZPSL.js → chunk-EJYJLVPK.js} +37 -29
- package/dist/chunk-EJYJLVPK.js.map +1 -0
- package/dist/{chunk-F5KEWLZK.js → chunk-FC7NQ6XM.js} +4 -4
- package/dist/{chunk-MISZGWO7.js → chunk-FPVYD7BO.js} +13 -9
- package/dist/chunk-FPVYD7BO.js.map +1 -0
- package/dist/{chunk-NIS523UM.js → chunk-FWPFCK4D.js} +2 -2
- package/dist/{chunk-7VJH4FYU.js → chunk-FZ4YTEP2.js} +5 -5
- package/dist/chunk-FZ4YTEP2.js.map +1 -0
- package/dist/{chunk-UCTJJYVC.js → chunk-G4HBNILE.js} +2 -2
- package/dist/{chunk-2B76FIMN.js → chunk-GHTBUJ6E.js} +5 -3
- package/dist/chunk-GHTBUJ6E.js.map +1 -0
- package/dist/{chunk-5NFPO3YY.js → chunk-GJRKWDRR.js} +9 -4
- package/dist/chunk-GJRKWDRR.js.map +1 -0
- package/dist/{chunk-VDZQJBAV.js → chunk-GY4NBSCN.js} +5 -2
- package/dist/chunk-GY4NBSCN.js.map +1 -0
- package/dist/{chunk-57IB5NTM.js → chunk-HB7ISSLK.js} +2 -2
- package/dist/{chunk-WR7ELCIL.js → chunk-HCT5ELST.js} +9 -3
- package/dist/chunk-HCT5ELST.js.map +1 -0
- package/dist/{chunk-6Q5GZUQ5.js → chunk-HGMBY5LP.js} +2 -2
- package/dist/{chunk-2AKQPXSJ.js → chunk-HJPPNVCF.js} +2 -2
- package/dist/{chunk-MZMGQKT3.js → chunk-HN3PZTUK.js} +10 -6
- package/dist/chunk-HN3PZTUK.js.map +1 -0
- package/dist/{chunk-JOR6E23V.js → chunk-IGGXKT5B.js} +3 -3
- package/dist/{chunk-F52N6ACD.js → chunk-IM4DMKH4.js} +14 -9
- package/dist/chunk-IM4DMKH4.js.map +1 -0
- package/dist/{chunk-KLMP2BYC.js → chunk-IVJKILIX.js} +2 -2
- package/dist/{chunk-X7PVFAYJ.js → chunk-JGRE56GQ.js} +6 -3
- package/dist/chunk-JGRE56GQ.js.map +1 -0
- package/dist/{chunk-MRB6GROF.js → chunk-JJJM75XF.js} +12 -12
- package/dist/chunk-JJJM75XF.js.map +1 -0
- package/dist/{chunk-HJWOB62A.js → chunk-JJSZP3TW.js} +4 -4
- package/dist/{chunk-AI7NVWIG.js → chunk-JOKWTRWL.js} +2 -2
- package/dist/{chunk-AI7NVWIG.js.map → chunk-JOKWTRWL.js.map} +1 -1
- package/dist/{chunk-JCJGJX7V.js → chunk-K4EKTMTC.js} +10 -6
- package/dist/chunk-K4EKTMTC.js.map +1 -0
- package/dist/{chunk-UCA47HM7.js → chunk-KCAW6HRO.js} +2 -2
- package/dist/{chunk-7HFGVT3G.js → chunk-KJDBY2KN.js} +31 -27
- package/dist/chunk-KJDBY2KN.js.map +1 -0
- package/dist/{chunk-LOJK733T.js → chunk-KJK2Q35C.js} +9 -5
- package/dist/chunk-KJK2Q35C.js.map +1 -0
- package/dist/{chunk-VAGHW3K2.js → chunk-KREWQAEV.js} +9 -4
- package/dist/chunk-KREWQAEV.js.map +1 -0
- package/dist/{chunk-KE5MX4PI.js → chunk-L3B36HA5.js} +2 -2
- package/dist/{chunk-OLZTGVBT.js → chunk-LYVTJLCF.js} +2 -2
- package/dist/{chunk-4M34ALEP.js → chunk-M3MHYE2M.js} +7 -8
- package/dist/chunk-M3MHYE2M.js.map +1 -0
- package/dist/{chunk-2WGMMFGV.js → chunk-M5ZXL52T.js} +15 -14
- package/dist/chunk-M5ZXL52T.js.map +1 -0
- package/dist/{chunk-C6FRVGMC.js → chunk-M6PWPEAV.js} +10 -7
- package/dist/chunk-M6PWPEAV.js.map +1 -0
- package/dist/{chunk-WW4N2LRM.js → chunk-MBC55H6M.js} +4 -4
- package/dist/{chunk-AATIHNPI.js → chunk-MK4CH4VT.js} +2 -2
- package/dist/{chunk-RV4Y4O67.js → chunk-MLQYIJTO.js} +6 -5
- package/dist/chunk-MLQYIJTO.js.map +1 -0
- package/dist/{chunk-A2CTAEIS.js → chunk-MO47Y26B.js} +24 -23
- package/dist/chunk-MO47Y26B.js.map +1 -0
- package/dist/{chunk-XRMZMBE3.js → chunk-MTEQEPNY.js} +7 -3
- package/dist/chunk-MTEQEPNY.js.map +1 -0
- package/dist/{chunk-JWK4GI2I.js → chunk-N2GEKC4J.js} +32 -20
- package/dist/chunk-N2GEKC4J.js.map +1 -0
- package/dist/{chunk-AJSPLHG4.js → chunk-NNQCWXGY.js} +8 -5
- package/dist/chunk-NNQCWXGY.js.map +1 -0
- package/dist/{chunk-IDO4EV7T.js → chunk-NR5TW4AH.js} +3 -3
- package/dist/{chunk-O26MKGIC.js → chunk-NRIV2CQ2.js} +12 -6
- package/dist/chunk-NRIV2CQ2.js.map +1 -0
- package/dist/{chunk-6DC5SVHM.js → chunk-NSKQANRY.js} +2 -2
- package/dist/{chunk-24NXQG5F.js → chunk-ODFJTEIL.js} +11 -10
- package/dist/chunk-ODFJTEIL.js.map +1 -0
- package/dist/{chunk-MLBKACV6.js → chunk-OG6LYQ7C.js} +13 -11
- package/dist/chunk-OG6LYQ7C.js.map +1 -0
- package/dist/{chunk-H6YVO55T.js → chunk-OHZU4IT3.js} +17 -13
- package/dist/chunk-OHZU4IT3.js.map +1 -0
- package/dist/{chunk-EAE5Z5HL.js → chunk-OJ2XR3WH.js} +2 -2
- package/dist/{chunk-BR7RM3WR.js → chunk-OZPLAOI4.js} +2 -2
- package/dist/{chunk-DZHN5FFX.js → chunk-PBMCRDZI.js} +7 -6
- package/dist/chunk-PBMCRDZI.js.map +1 -0
- package/dist/{chunk-ZXSUWFQX.js → chunk-PGPPN63I.js} +8 -5
- package/dist/chunk-PGPPN63I.js.map +1 -0
- package/dist/{chunk-ZWSS3K4F.js → chunk-PL2AB5HJ.js} +11 -6
- package/dist/chunk-PL2AB5HJ.js.map +1 -0
- package/dist/{chunk-ZTKLKOOO.js → chunk-POV2KL2P.js} +21 -20
- package/dist/chunk-POV2KL2P.js.map +1 -0
- package/dist/{chunk-GIRRCEVH.js → chunk-PT2XADGH.js} +4 -4
- package/dist/{chunk-5ZTQTJAJ.js → chunk-PWF32ILG.js} +4 -4
- package/dist/{chunk-65YAR3OZ.js → chunk-Q2YNXJEL.js} +11 -7
- package/dist/chunk-Q2YNXJEL.js.map +1 -0
- package/dist/{chunk-DBCITC4P.js → chunk-QB3TVUPD.js} +6 -6
- package/dist/{chunk-I2CRLUS7.js → chunk-QIKPGMMO.js} +2 -2
- package/dist/{chunk-MXZ43UCQ.js → chunk-QOLIBVGS.js} +3 -3
- package/dist/{chunk-TPQVLBTY.js → chunk-R2WMSXQR.js} +3 -3
- package/dist/{chunk-ULIM42PE.js → chunk-RIF6L54B.js} +10 -8
- package/dist/chunk-RIF6L54B.js.map +1 -0
- package/dist/{chunk-M5T3COS2.js → chunk-RIRTW5EU.js} +17 -5
- package/dist/chunk-RIRTW5EU.js.map +1 -0
- package/dist/{chunk-JHEGDDZQ.js → chunk-RKI3MRKX.js} +6 -3
- package/dist/chunk-RKI3MRKX.js.map +1 -0
- package/dist/{chunk-SYNMQWT4.js → chunk-RL2UIC4E.js} +7 -4
- package/dist/chunk-RL2UIC4E.js.map +1 -0
- package/dist/{chunk-RORP6DWR.js → chunk-RZ2C5CAW.js} +13 -12
- package/dist/chunk-RZ2C5CAW.js.map +1 -0
- package/dist/{chunk-UO7ERXYX.js → chunk-S3D5VBHW.js} +16 -6
- package/dist/chunk-S3D5VBHW.js.map +1 -0
- package/dist/{chunk-SCRN2RE4.js → chunk-S5UY5U73.js} +1 -2
- package/dist/chunk-S5UY5U73.js.map +1 -0
- package/dist/{chunk-4V532JF6.js → chunk-SOHQPPYJ.js} +8 -6
- package/dist/chunk-SOHQPPYJ.js.map +1 -0
- package/dist/{chunk-XREYLKUX.js → chunk-SQYC57ZN.js} +12 -11
- package/dist/chunk-SQYC57ZN.js.map +1 -0
- package/dist/{chunk-F7HQVKIR.js → chunk-SYVNWXVW.js} +4 -4
- package/dist/{chunk-CMTR3WEA.js → chunk-TNQDSTIA.js} +30 -33
- package/dist/chunk-TNQDSTIA.js.map +1 -0
- package/dist/{chunk-MGC4QOMP.js → chunk-TQ2557I5.js} +1 -1
- package/dist/{chunk-C7TCBAVX.js → chunk-TQBRWZA4.js} +2 -2
- package/dist/{chunk-56QVP2MU.js → chunk-TQCQCW2P.js} +18 -11
- package/dist/chunk-TQCQCW2P.js.map +1 -0
- package/dist/{chunk-CZT3AV7I.js → chunk-TRHWA74K.js} +6 -3
- package/dist/chunk-TRHWA74K.js.map +1 -0
- package/dist/{chunk-EDO2WS5B.js → chunk-TXGB2WSW.js} +7 -4
- package/dist/chunk-TXGB2WSW.js.map +1 -0
- package/dist/{chunk-NNQLDFKG.js → chunk-TYBZ4XZZ.js} +15 -9
- package/dist/chunk-TYBZ4XZZ.js.map +1 -0
- package/dist/{chunk-TEUX42YW.js → chunk-TZASFX6G.js} +10 -7
- package/dist/chunk-TZASFX6G.js.map +1 -0
- package/dist/{chunk-BO2SDMNQ.js → chunk-U4QUDFPJ.js} +2 -2
- package/dist/{chunk-AQSX3YH2.js → chunk-UL7L6MFT.js} +18 -10
- package/dist/chunk-UL7L6MFT.js.map +1 -0
- package/dist/{chunk-SKX4NA6E.js → chunk-V74PXUQN.js} +8 -8
- package/dist/{chunk-A2DYU5WN.js → chunk-VIUDWOV6.js} +5 -6
- package/dist/chunk-VIUDWOV6.js.map +1 -0
- package/dist/{chunk-5ZT4ZIZB.js → chunk-VNOFFVRQ.js} +6 -3
- package/dist/chunk-VNOFFVRQ.js.map +1 -0
- package/dist/{chunk-UMP5MQ7X.js → chunk-WFAJTO2B.js} +27 -26
- package/dist/chunk-WFAJTO2B.js.map +1 -0
- package/dist/{chunk-OYP27CYE.js → chunk-WOAXKWAB.js} +2 -2
- package/dist/{chunk-W3CLJ7JE.js → chunk-WPA26LXA.js} +4 -4
- package/dist/{chunk-2X5OQDPH.js → chunk-WRCLYSTX.js} +7 -4
- package/dist/chunk-WRCLYSTX.js.map +1 -0
- package/dist/{chunk-X4PS3E3V.js → chunk-X6AIKCAV.js} +8 -5
- package/dist/chunk-X6AIKCAV.js.map +1 -0
- package/dist/{chunk-KTYZRAB7.js → chunk-XJPJ6ESI.js} +9 -6
- package/dist/chunk-XJPJ6ESI.js.map +1 -0
- package/dist/{chunk-GVLMG5WQ.js → chunk-XZW2U6KR.js} +9 -9
- package/dist/chunk-XZW2U6KR.js.map +1 -0
- package/dist/{chunk-LI6OLYUB.js → chunk-YBTC4XNO.js} +2 -2
- package/dist/chunk-YLGY3D52.js +62 -0
- package/dist/chunk-YLGY3D52.js.map +1 -0
- package/dist/{chunk-H3B5PIM3.js → chunk-YYVB7IWQ.js} +19 -11
- package/dist/chunk-YYVB7IWQ.js.map +1 -0
- package/dist/{chunk-OOSD7363.js → chunk-ZAFFKQQU.js} +6 -6
- package/dist/chunk-ZAFFKQQU.js.map +1 -0
- package/dist/{chunk-IT7ATXU7.js → chunk-ZHV7TCAC.js} +15 -11
- package/dist/chunk-ZHV7TCAC.js.map +1 -0
- package/dist/{chunk-KUVOMH5I.js → chunk-ZZ4MMUBY.js} +5 -4
- package/dist/chunk-ZZ4MMUBY.js.map +1 -0
- package/dist/data-display/Alert.js +3 -3
- package/dist/data-display/AlertDialog.js +2 -2
- package/dist/data-display/AsyncStateContainer.js +5 -5
- package/dist/data-display/Avatar.js +4 -4
- package/dist/data-display/Badge.js +6 -6
- package/dist/data-display/Banner.js +3 -3
- package/dist/data-display/CardKit.js +12 -12
- package/dist/data-display/Carousel.js +6 -6
- package/dist/data-display/Chart.js +8 -8
- package/dist/data-display/Chip.js +3 -2
- package/dist/data-display/DataGrid.js +3 -2
- package/dist/data-display/DataViews.js +49 -49
- package/dist/data-display/DescriptionItem.js +2 -2
- package/dist/data-display/EmptyState.js +2 -1
- package/dist/data-display/ErrorState.js +1 -1
- package/dist/data-display/FleetMap.js +17 -17
- package/dist/data-display/HoverCard.js +5 -4
- package/dist/data-display/InteractiveTooltip.js +4 -4
- package/dist/data-display/LazyImage.js +3 -2
- package/dist/data-display/Lightbox.js +9 -9
- package/dist/data-display/LoadingState.js +2 -1
- package/dist/data-display/MapPreview.js +12 -12
- package/dist/data-display/Popover.js +2 -1
- package/dist/data-display/Progress.js +3 -3
- package/dist/data-display/SectionOnboarding.js +4 -4
- package/dist/data-display/Sheet.js +7 -7
- package/dist/data-display/StatCard.js +2 -2
- package/dist/data-display/Stepper.js +2 -2
- package/dist/data-display/Table.js +2 -2
- package/dist/data-display/Timeline.js +3 -3
- package/dist/data-display/TimingDiagram.js +3 -3
- package/dist/data-display/Tooltip.js +2 -2
- package/dist/feedback/ConfirmAction.js +6 -6
- package/dist/feedback/NotificationStatusNotice.js +4 -4
- package/dist/feedback/Sonner.js +1 -1
- package/dist/form/AddressAutocomplete.js +1 -1
- package/dist/form/Button.js +1 -1
- package/dist/form/CategorySelect.js +1 -1
- package/dist/form/CepField.js +1 -1
- package/dist/form/Checkbox.js +1 -1
- package/dist/form/CodeEditor.js +1 -1
- package/dist/form/Command.js +1 -1
- package/dist/form/CreatableSelect.js +1 -1
- package/dist/form/DateRangePicker.js +6 -6
- package/dist/form/InputOTP.js +1 -1
- package/dist/form/Label.js +1 -1
- package/dist/form/Menubar.js +1 -1
- package/dist/form/PhoneInput.js +1 -1
- package/dist/form/RadioGroup.js +1 -1
- package/dist/form/RichTextEditor.js +1 -1
- package/dist/form/Slider.js +1 -1
- package/dist/form/Switch.js +1 -1
- package/dist/form/Textarea.js +2 -2
- package/dist/form/Toggle.js +1 -1
- package/dist/form/ToggleGroup.js +1 -1
- package/dist/form/total-form.js +1 -1
- package/dist/icons.js +1 -1
- package/dist/layout/Box.js +1 -1
- package/dist/layout/ContentToolbar.js +1 -1
- package/dist/layout/Stack.js +1 -1
- package/dist/layout/TableFilter.js +1 -1
- package/dist/navigation/AppHeader.js +8 -8
- package/dist/navigation/Breadcrumbs.js +4 -4
- package/dist/navigation/CommandPalette.js +1 -1
- package/dist/navigation/ContextMenu.js +1 -1
- package/dist/navigation/DropdownMenu.js +1 -1
- package/dist/navigation/NavigationMenu.js +7 -7
- package/dist/navigation/Pagination.js +1 -1
- package/dist/provider.js +1 -1
- package/dist/social-login-button.js +1 -1
- package/dist/tokens.js +7 -7
- package/dist/types/components/data-display/Alert/Alert.styles.d.ts +4 -4
- package/dist/types/components/data-display/Alert/Alert.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/AlertDialog/AlertDialog.d.ts.map +1 -1
- package/dist/types/components/data-display/Avatar/Avatar.animations.d.ts +2 -1
- package/dist/types/components/data-display/Avatar/Avatar.animations.d.ts.map +1 -1
- package/dist/types/components/data-display/Avatar/Avatar.d.ts.map +1 -1
- package/dist/types/components/data-display/Avatar/Avatar.view.d.ts.map +1 -1
- package/dist/types/components/data-display/Badge/Badge.animations.d.ts +4 -3
- package/dist/types/components/data-display/Badge/Badge.animations.d.ts.map +1 -1
- package/dist/types/components/data-display/Badge/Badge.styles.d.ts +6 -5
- package/dist/types/components/data-display/Badge/Badge.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/Badge/BadgeContent.d.ts.map +1 -1
- package/dist/types/components/data-display/Banner/Banner.styles.d.ts +1 -1
- package/dist/types/components/data-display/Banner/Banner.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/Carousel/Carousel.d.ts.map +1 -1
- package/dist/types/components/data-display/Carousel/Carousel.parts.d.ts.map +1 -1
- package/dist/types/components/data-display/Carousel/Carousel.slide.d.ts.map +1 -1
- package/dist/types/components/data-display/Carousel/Carousel.styles.d.ts +14 -2
- package/dist/types/components/data-display/Carousel/Carousel.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/Chart/ChartComposables.d.ts +3 -1
- package/dist/types/components/data-display/Chart/ChartComposables.d.ts.map +1 -1
- package/dist/types/components/data-display/Chart/chart-axis.d.ts +9 -3
- package/dist/types/components/data-display/Chart/chart-axis.d.ts.map +1 -1
- package/dist/types/components/data-display/Chart/chart-context.d.ts.map +1 -1
- package/dist/types/components/data-display/Chart/chart-internals.d.ts +5 -1
- package/dist/types/components/data-display/Chart/chart-internals.d.ts.map +1 -1
- package/dist/types/components/data-display/Chart/chart-renderers.d.ts.map +1 -1
- package/dist/types/components/data-display/Chip/Chip.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/DataGrid/DataGrid.states.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/DataViewsBoard.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/base-card.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/base-list-card-geometry.d.ts +21 -17
- package/dist/types/components/data-display/DataViews/base-list-card-geometry.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/base-list-card-gutters.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/base-list-card-slots.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/card-surface.d.ts +1 -1
- package/dist/types/components/data-display/DataViews/card-surface.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-day-input.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-display-panel.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-drag.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-empty.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-export.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-glyphs.d.ts +3 -2
- package/dist/types/components/data-display/DataViews/data-views-glyphs.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-grid-helpers.d.ts +2 -1
- package/dist/types/components/data-display/DataViews/data-views-grid-helpers.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-more-filters.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-number-input.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-scopes.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-search.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-toolbar.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/save-view-preview.d.ts.map +1 -1
- package/dist/types/components/data-display/DateTimeDisplay/DateTimeDisplay.d.ts.map +1 -1
- package/dist/types/components/data-display/DescriptionItem/DescriptionItem.d.ts.map +1 -1
- package/dist/types/components/data-display/EmptyState/EmptyState.d.ts.map +1 -1
- package/dist/types/components/data-display/FleetMap/FleetBody.d.ts.map +1 -1
- package/dist/types/components/data-display/FleetMap/FleetMap.d.ts.map +1 -1
- package/dist/types/components/data-display/FleetMap/FleetRoster.d.ts.map +1 -1
- package/dist/types/components/data-display/HoverCard/HoverCard.animations.d.ts +6 -5
- package/dist/types/components/data-display/HoverCard/HoverCard.animations.d.ts.map +1 -1
- package/dist/types/components/data-display/HoverCard/HoverCard.content.d.ts.map +1 -1
- package/dist/types/components/data-display/HoverCard/HoverCard.d.ts.map +1 -1
- package/dist/types/components/data-display/HoverCard/HoverCard.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/InteractiveTooltip/InteractiveTooltip.d.ts.map +1 -1
- package/dist/types/components/data-display/InteractiveTooltip/InteractiveTooltip.hooks.d.ts +1 -1
- package/dist/types/components/data-display/InteractiveTooltip/InteractiveTooltip.hooks.d.ts.map +1 -1
- package/dist/types/components/data-display/InteractiveTooltip/InteractiveTooltip.styles.d.ts +6 -1
- package/dist/types/components/data-display/InteractiveTooltip/InteractiveTooltip.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/LazyImage/LazyImage.d.ts.map +1 -1
- package/dist/types/components/data-display/LazyImage/LazyImage.hooks.d.ts +1 -1
- package/dist/types/components/data-display/LazyImage/LazyImage.hooks.d.ts.map +1 -1
- package/dist/types/components/data-display/Lightbox/Lightbox.constants.d.ts +5 -1
- package/dist/types/components/data-display/Lightbox/Lightbox.constants.d.ts.map +1 -1
- package/dist/types/components/data-display/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/types/components/data-display/Lightbox/Lightbox.hooks.d.ts.map +1 -1
- package/dist/types/components/data-display/Lightbox/LightboxControls.d.ts.map +1 -1
- package/dist/types/components/data-display/Lightbox/LightboxStage.d.ts.map +1 -1
- package/dist/types/components/data-display/Lightbox/LightboxThumbnails.d.ts.map +1 -1
- package/dist/types/components/data-display/LoadingState/LoadingState.d.ts.map +1 -1
- package/dist/types/components/data-display/MapPreview/MapControlBar.d.ts.map +1 -1
- package/dist/types/components/data-display/MapPreview/MapLayers.d.ts.map +1 -1
- package/dist/types/components/data-display/MapPreview/MapOverlays.d.ts +5 -2
- package/dist/types/components/data-display/MapPreview/MapOverlays.d.ts.map +1 -1
- package/dist/types/components/data-display/MapPreview/MapPreview.d.ts.map +1 -1
- package/dist/types/components/data-display/MapPreview/MapPreview.helpers.d.ts +1 -1
- package/dist/types/components/data-display/MapPreview/MapPreview.helpers.d.ts.map +1 -1
- package/dist/types/components/data-display/MapPreview/MapSearchBar.d.ts.map +1 -1
- package/dist/types/components/data-display/MapPreview/mapSurface.d.ts +2 -2
- package/dist/types/components/data-display/MapPreview/mapSurface.d.ts.map +1 -1
- package/dist/types/components/data-display/Popover/Popover.d.ts.map +1 -1
- package/dist/types/components/data-display/Progress/Progress.d.ts.map +1 -1
- package/dist/types/components/data-display/Progress/Progress.styles.d.ts +9 -7
- package/dist/types/components/data-display/Progress/Progress.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/Sheet/Sheet.animations.d.ts +4 -3
- package/dist/types/components/data-display/Sheet/Sheet.animations.d.ts.map +1 -1
- package/dist/types/components/data-display/Sheet/Sheet.body.d.ts.map +1 -1
- package/dist/types/components/data-display/Sheet/Sheet.parts.d.ts.map +1 -1
- package/dist/types/components/data-display/Sheet/Sheet.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/StatCard/StatCard.d.ts.map +1 -1
- package/dist/types/components/data-display/Table/Table.d.ts.map +1 -1
- package/dist/types/components/data-display/Table/Table.styles.d.ts.map +1 -1
- package/dist/types/components/data-display/Timeline/Timeline.d.ts.map +1 -1
- package/dist/types/components/data-display/Timeline/TimelineRow.d.ts.map +1 -1
- package/dist/types/components/data-display/TimingDiagram/TimingDiagram.d.ts.map +1 -1
- package/dist/types/components/data-display/TimingDiagram/TimingDiagram.views.d.ts +2 -1
- package/dist/types/components/data-display/TimingDiagram/TimingDiagram.views.d.ts.map +1 -1
- package/dist/types/components/data-display/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/typography/Blockquote.js +1 -1
- package/dist/typography/Code.js +1 -1
- package/dist/typography/Text.js +1 -1
- package/dist/user-avatar.js +5 -5
- package/dist/utility/AnimatedIcon.js +1 -1
- package/dist/utility/WorkflowStep.js +1 -1
- package/package.json +1 -1
- package/src/components/data-display/Alert/Alert.styles.tsx +22 -21
- package/src/components/data-display/Alert/Alert.tsx +8 -8
- package/src/components/data-display/AlertDialog/AlertDialog.tsx +12 -10
- package/src/components/data-display/Avatar/Avatar.animations.ts +5 -2
- package/src/components/data-display/Avatar/Avatar.tsx +4 -3
- package/src/components/data-display/Avatar/Avatar.view.tsx +31 -37
- package/src/components/data-display/Badge/Badge.animations.ts +13 -10
- package/src/components/data-display/Badge/Badge.styles.ts +30 -40
- package/src/components/data-display/Badge/Badge.variants.ts +13 -13
- package/src/components/data-display/Badge/BadgeContent.tsx +10 -4
- package/src/components/data-display/Banner/Banner.styles.ts +8 -8
- package/src/components/data-display/Banner/Banner.tsx +4 -4
- package/src/components/data-display/CardKit/list-card-parts.tsx +1 -1
- package/src/components/data-display/Carousel/Carousel.parts.tsx +13 -11
- package/src/components/data-display/Carousel/Carousel.slide.tsx +3 -2
- package/src/components/data-display/Carousel/Carousel.styles.ts +34 -16
- package/src/components/data-display/Carousel/Carousel.tsx +2 -3
- package/src/components/data-display/Chart/Chart.tsx +4 -4
- package/src/components/data-display/Chart/ChartComposables.tsx +16 -5
- package/src/components/data-display/Chart/chart-axis.ts +13 -9
- package/src/components/data-display/Chart/chart-context.ts +17 -2
- package/src/components/data-display/Chart/chart-internals.ts +30 -13
- package/src/components/data-display/Chart/chart-renderers.tsx +2 -1
- package/src/components/data-display/Chip/Chip.styles.tsx +4 -3
- package/src/components/data-display/DataGrid/DataGrid.states.tsx +3 -1
- package/src/components/data-display/DataViews/DataViewsBoard.tsx +16 -8
- package/src/components/data-display/DataViews/base-card.tsx +12 -11
- package/src/components/data-display/DataViews/base-list-card-geometry.tsx +28 -19
- package/src/components/data-display/DataViews/base-list-card-gutters.tsx +2 -1
- package/src/components/data-display/DataViews/base-list-card-slots.tsx +13 -11
- package/src/components/data-display/DataViews/card-surface.ts +19 -18
- package/src/components/data-display/DataViews/data-views-day-input.tsx +2 -1
- package/src/components/data-display/DataViews/data-views-display-panel.tsx +5 -4
- package/src/components/data-display/DataViews/data-views-display-tabs.tsx +6 -6
- package/src/components/data-display/DataViews/data-views-drag.tsx +7 -5
- package/src/components/data-display/DataViews/data-views-empty.tsx +2 -1
- package/src/components/data-display/DataViews/data-views-export.tsx +5 -3
- package/src/components/data-display/DataViews/data-views-glyphs.tsx +17 -14
- package/src/components/data-display/DataViews/data-views-grid-helpers.tsx +8 -5
- package/src/components/data-display/DataViews/data-views-more-filters.tsx +5 -4
- package/src/components/data-display/DataViews/data-views-number-input.tsx +2 -1
- package/src/components/data-display/DataViews/data-views-range-pill.tsx +1 -1
- package/src/components/data-display/DataViews/data-views-scopes.tsx +12 -6
- package/src/components/data-display/DataViews/data-views-search.tsx +9 -8
- package/src/components/data-display/DataViews/data-views-toolbar.tsx +2 -1
- package/src/components/data-display/DataViews/data-views-view-nav.tsx +4 -4
- package/src/components/data-display/DataViews/save-view-preview.tsx +3 -2
- package/src/components/data-display/DateTimeDisplay/DateTimeDisplay.tsx +4 -3
- package/src/components/data-display/DescriptionItem/DescriptionItem.tsx +6 -3
- package/src/components/data-display/EmptyState/EmptyState.tsx +6 -5
- package/src/components/data-display/ErrorState/ErrorState.tsx +6 -6
- package/src/components/data-display/FleetMap/FleetBody.tsx +4 -1
- package/src/components/data-display/FleetMap/FleetMap.tsx +6 -4
- package/src/components/data-display/FleetMap/FleetRoster.tsx +7 -5
- package/src/components/data-display/HoverCard/HoverCard.animations.ts +13 -11
- package/src/components/data-display/HoverCard/HoverCard.content.tsx +8 -5
- package/src/components/data-display/HoverCard/HoverCard.styles.ts +40 -38
- package/src/components/data-display/HoverCard/HoverCard.tsx +19 -8
- package/src/components/data-display/InteractiveTooltip/InteractiveTooltip.hooks.ts +2 -2
- package/src/components/data-display/InteractiveTooltip/InteractiveTooltip.styles.ts +25 -12
- package/src/components/data-display/InteractiveTooltip/InteractiveTooltip.tsx +3 -2
- package/src/components/data-display/LazyImage/LazyImage.hooks.ts +8 -3
- package/src/components/data-display/LazyImage/LazyImage.tsx +48 -23
- package/src/components/data-display/Lightbox/Lightbox.constants.ts +7 -2
- package/src/components/data-display/Lightbox/Lightbox.hooks.ts +7 -4
- package/src/components/data-display/Lightbox/Lightbox.tsx +3 -2
- package/src/components/data-display/Lightbox/LightboxControls.tsx +6 -5
- package/src/components/data-display/Lightbox/LightboxStage.tsx +30 -18
- package/src/components/data-display/Lightbox/LightboxThumbnails.tsx +10 -8
- package/src/components/data-display/LoadingState/LoadingState.tsx +4 -3
- package/src/components/data-display/MapPreview/MapControlBar.tsx +3 -2
- package/src/components/data-display/MapPreview/MapDecorations.tsx +12 -12
- package/src/components/data-display/MapPreview/MapLayers.tsx +1 -2
- package/src/components/data-display/MapPreview/MapMarkers.tsx +8 -8
- package/src/components/data-display/MapPreview/MapOverlays.tsx +8 -5
- package/src/components/data-display/MapPreview/MapPreview.helpers.ts +3 -4
- package/src/components/data-display/MapPreview/MapPreview.tsx +3 -1
- package/src/components/data-display/MapPreview/MapSearchBar.tsx +4 -3
- package/src/components/data-display/MapPreview/mapSurface.ts +6 -4
- package/src/components/data-display/Popover/Popover.tsx +23 -11
- package/src/components/data-display/Progress/Progress.styles.ts +20 -11
- package/src/components/data-display/Progress/Progress.tsx +12 -9
- package/src/components/data-display/Sheet/Sheet.animations.ts +11 -9
- package/src/components/data-display/Sheet/Sheet.body.tsx +2 -1
- package/src/components/data-display/Sheet/Sheet.parts.tsx +8 -7
- package/src/components/data-display/Sheet/Sheet.styles.ts +35 -30
- package/src/components/data-display/StatCard/StatCard.tsx +4 -3
- package/src/components/data-display/Stepper/Stepper.tsx +17 -17
- package/src/components/data-display/Table/Table.styles.ts +21 -20
- package/src/components/data-display/Table/Table.tsx +26 -16
- package/src/components/data-display/Timeline/Timeline.tsx +4 -3
- package/src/components/data-display/Timeline/TimelineRow.tsx +23 -22
- package/src/components/data-display/TimingDiagram/TimingDiagram.tsx +8 -7
- package/src/components/data-display/TimingDiagram/TimingDiagram.views.tsx +29 -28
- package/src/components/data-display/Tooltip/Tooltip.tsx +23 -10
- package/dist/chunk-24NXQG5F.js.map +0 -1
- package/dist/chunk-2B76FIMN.js.map +0 -1
- package/dist/chunk-2F4YEGYG.js.map +0 -1
- package/dist/chunk-2PWVPTS3.js.map +0 -1
- package/dist/chunk-2WGMMFGV.js.map +0 -1
- package/dist/chunk-2X5OQDPH.js.map +0 -1
- package/dist/chunk-3GQ6PNEM.js.map +0 -1
- package/dist/chunk-4M34ALEP.js.map +0 -1
- package/dist/chunk-4V532JF6.js.map +0 -1
- package/dist/chunk-56QVP2MU.js.map +0 -1
- package/dist/chunk-5E3XZAED.js.map +0 -1
- package/dist/chunk-5NFPO3YY.js.map +0 -1
- package/dist/chunk-5RP3KXC7.js.map +0 -1
- package/dist/chunk-5VWYCVXF.js.map +0 -1
- package/dist/chunk-5ZQUJ7LT.js.map +0 -1
- package/dist/chunk-5ZT4ZIZB.js.map +0 -1
- package/dist/chunk-65YAR3OZ.js.map +0 -1
- package/dist/chunk-73HBIIRB.js.map +0 -1
- package/dist/chunk-7HFGVT3G.js.map +0 -1
- package/dist/chunk-7VJH4FYU.js.map +0 -1
- package/dist/chunk-7ZWC5CKA.js.map +0 -1
- package/dist/chunk-A2CTAEIS.js.map +0 -1
- package/dist/chunk-A2DYU5WN.js.map +0 -1
- package/dist/chunk-ACZH2NUW.js.map +0 -1
- package/dist/chunk-AJSPLHG4.js.map +0 -1
- package/dist/chunk-AQSX3YH2.js.map +0 -1
- package/dist/chunk-BD2GGIGS.js.map +0 -1
- package/dist/chunk-BNU4RLEC.js.map +0 -1
- package/dist/chunk-C6FRVGMC.js.map +0 -1
- package/dist/chunk-CMTR3WEA.js.map +0 -1
- package/dist/chunk-CZT3AV7I.js.map +0 -1
- package/dist/chunk-DZHN5FFX.js.map +0 -1
- package/dist/chunk-E6YBXAZN.js.map +0 -1
- package/dist/chunk-EDO2WS5B.js.map +0 -1
- package/dist/chunk-F52N6ACD.js.map +0 -1
- package/dist/chunk-GN5EZPSL.js.map +0 -1
- package/dist/chunk-GVLMG5WQ.js.map +0 -1
- package/dist/chunk-H2YBVBPW.js.map +0 -1
- package/dist/chunk-H3B5PIM3.js.map +0 -1
- package/dist/chunk-H6YVO55T.js.map +0 -1
- package/dist/chunk-I6EVBLFX.js.map +0 -1
- package/dist/chunk-IFSUKWE7.js.map +0 -1
- package/dist/chunk-IT7ATXU7.js.map +0 -1
- package/dist/chunk-IUCTYNIR.js.map +0 -1
- package/dist/chunk-JCJGJX7V.js.map +0 -1
- package/dist/chunk-JHEGDDZQ.js.map +0 -1
- package/dist/chunk-JWK4GI2I.js.map +0 -1
- package/dist/chunk-KTYZRAB7.js.map +0 -1
- package/dist/chunk-KUVOMH5I.js.map +0 -1
- package/dist/chunk-L4V2LRKH.js.map +0 -1
- package/dist/chunk-LOJK733T.js.map +0 -1
- package/dist/chunk-M5BTIIL7.js.map +0 -1
- package/dist/chunk-M5T3COS2.js.map +0 -1
- package/dist/chunk-MISZGWO7.js.map +0 -1
- package/dist/chunk-MLBKACV6.js.map +0 -1
- package/dist/chunk-MRB6GROF.js.map +0 -1
- package/dist/chunk-MZMGQKT3.js.map +0 -1
- package/dist/chunk-NNQLDFKG.js.map +0 -1
- package/dist/chunk-NVNZFT5X.js.map +0 -1
- package/dist/chunk-NXX3ZQKO.js.map +0 -1
- package/dist/chunk-O26MKGIC.js.map +0 -1
- package/dist/chunk-OOSD7363.js.map +0 -1
- package/dist/chunk-PGNJCUDA.js.map +0 -1
- package/dist/chunk-QO6QWBDI.js.map +0 -1
- package/dist/chunk-QTWXVOPT.js.map +0 -1
- package/dist/chunk-QWHURFJ3.js.map +0 -1
- package/dist/chunk-RORP6DWR.js.map +0 -1
- package/dist/chunk-RV4Y4O67.js.map +0 -1
- package/dist/chunk-SCRN2RE4.js.map +0 -1
- package/dist/chunk-SNR537TI.js +0 -59
- package/dist/chunk-SNR537TI.js.map +0 -1
- package/dist/chunk-SYNMQWT4.js.map +0 -1
- package/dist/chunk-TEUX42YW.js.map +0 -1
- package/dist/chunk-TFZI36UD.js.map +0 -1
- package/dist/chunk-ULIM42PE.js.map +0 -1
- package/dist/chunk-UMP5MQ7X.js.map +0 -1
- package/dist/chunk-UO7ERXYX.js.map +0 -1
- package/dist/chunk-VAGHW3K2.js.map +0 -1
- package/dist/chunk-VDGJV7MP.js.map +0 -1
- package/dist/chunk-VDZQJBAV.js.map +0 -1
- package/dist/chunk-VR3U4QA5.js.map +0 -1
- package/dist/chunk-WR7ELCIL.js.map +0 -1
- package/dist/chunk-X4PS3E3V.js.map +0 -1
- package/dist/chunk-X7PVFAYJ.js.map +0 -1
- package/dist/chunk-XREYLKUX.js.map +0 -1
- package/dist/chunk-XRMZMBE3.js.map +0 -1
- package/dist/chunk-Y2E73IG2.js.map +0 -1
- package/dist/chunk-YDPUBGJ7.js.map +0 -1
- package/dist/chunk-YSKGLU2V.js.map +0 -1
- package/dist/chunk-YU647YW4.js.map +0 -1
- package/dist/chunk-Z35J5B6D.js.map +0 -1
- package/dist/chunk-ZTKLKOOO.js.map +0 -1
- package/dist/chunk-ZUQIOWLN.js.map +0 -1
- package/dist/chunk-ZWSS3K4F.js.map +0 -1
- package/dist/chunk-ZXSUWFQX.js.map +0 -1
- /package/dist/{chunk-APT5L7V5.js.map → chunk-2LIRGFEK.js.map} +0 -0
- /package/dist/{chunk-LDDN254Q.js.map → chunk-2UCLUDEB.js.map} +0 -0
- /package/dist/{chunk-6SYFPRTT.js.map → chunk-343OLRFT.js.map} +0 -0
- /package/dist/{chunk-U2IRCTAR.js.map → chunk-4WCDMCIS.js.map} +0 -0
- /package/dist/{chunk-OGTTJKHI.js.map → chunk-5QWQR7XT.js.map} +0 -0
- /package/dist/{chunk-DRE6DSJ7.js.map → chunk-5TJRJSJY.js.map} +0 -0
- /package/dist/{chunk-XZBCPL4N.js.map → chunk-5W4BLTDI.js.map} +0 -0
- /package/dist/{chunk-YG2VQUZO.js.map → chunk-6BDYC4RA.js.map} +0 -0
- /package/dist/{chunk-QHUTSAFG.js.map → chunk-6CTPDNNX.js.map} +0 -0
- /package/dist/{chunk-CU4TF7C7.js.map → chunk-6GRZ77IS.js.map} +0 -0
- /package/dist/{chunk-YLBRXDYH.js.map → chunk-7EIOXZWL.js.map} +0 -0
- /package/dist/{chunk-ZHEZISMI.js.map → chunk-AK2HOD6B.js.map} +0 -0
- /package/dist/{chunk-VZAGBDZ2.js.map → chunk-BJZOBG24.js.map} +0 -0
- /package/dist/{chunk-CS3RKXT5.js.map → chunk-CHFHILTM.js.map} +0 -0
- /package/dist/{chunk-DMYBTD5Y.js.map → chunk-CPWWMGYR.js.map} +0 -0
- /package/dist/{chunk-XSMMFCMQ.js.map → chunk-CWDV64TD.js.map} +0 -0
- /package/dist/{chunk-GUVBR62X.js.map → chunk-DCJSHYE5.js.map} +0 -0
- /package/dist/{chunk-VV7MGILP.js.map → chunk-DMWSXWCZ.js.map} +0 -0
- /package/dist/{chunk-JYRQBZEV.js.map → chunk-DVAAUWTC.js.map} +0 -0
- /package/dist/{chunk-C6NI3FAV.js.map → chunk-DVGBFT6O.js.map} +0 -0
- /package/dist/{chunk-W5ENK5CM.js.map → chunk-DZNMS2SH.js.map} +0 -0
- /package/dist/{chunk-F5KEWLZK.js.map → chunk-FC7NQ6XM.js.map} +0 -0
- /package/dist/{chunk-NIS523UM.js.map → chunk-FWPFCK4D.js.map} +0 -0
- /package/dist/{chunk-UCTJJYVC.js.map → chunk-G4HBNILE.js.map} +0 -0
- /package/dist/{chunk-57IB5NTM.js.map → chunk-HB7ISSLK.js.map} +0 -0
- /package/dist/{chunk-6Q5GZUQ5.js.map → chunk-HGMBY5LP.js.map} +0 -0
- /package/dist/{chunk-2AKQPXSJ.js.map → chunk-HJPPNVCF.js.map} +0 -0
- /package/dist/{chunk-JOR6E23V.js.map → chunk-IGGXKT5B.js.map} +0 -0
- /package/dist/{chunk-KLMP2BYC.js.map → chunk-IVJKILIX.js.map} +0 -0
- /package/dist/{chunk-HJWOB62A.js.map → chunk-JJSZP3TW.js.map} +0 -0
- /package/dist/{chunk-UCA47HM7.js.map → chunk-KCAW6HRO.js.map} +0 -0
- /package/dist/{chunk-KE5MX4PI.js.map → chunk-L3B36HA5.js.map} +0 -0
- /package/dist/{chunk-OLZTGVBT.js.map → chunk-LYVTJLCF.js.map} +0 -0
- /package/dist/{chunk-WW4N2LRM.js.map → chunk-MBC55H6M.js.map} +0 -0
- /package/dist/{chunk-AATIHNPI.js.map → chunk-MK4CH4VT.js.map} +0 -0
- /package/dist/{chunk-IDO4EV7T.js.map → chunk-NR5TW4AH.js.map} +0 -0
- /package/dist/{chunk-6DC5SVHM.js.map → chunk-NSKQANRY.js.map} +0 -0
- /package/dist/{chunk-EAE5Z5HL.js.map → chunk-OJ2XR3WH.js.map} +0 -0
- /package/dist/{chunk-BR7RM3WR.js.map → chunk-OZPLAOI4.js.map} +0 -0
- /package/dist/{chunk-GIRRCEVH.js.map → chunk-PT2XADGH.js.map} +0 -0
- /package/dist/{chunk-5ZTQTJAJ.js.map → chunk-PWF32ILG.js.map} +0 -0
- /package/dist/{chunk-DBCITC4P.js.map → chunk-QB3TVUPD.js.map} +0 -0
- /package/dist/{chunk-I2CRLUS7.js.map → chunk-QIKPGMMO.js.map} +0 -0
- /package/dist/{chunk-MXZ43UCQ.js.map → chunk-QOLIBVGS.js.map} +0 -0
- /package/dist/{chunk-TPQVLBTY.js.map → chunk-R2WMSXQR.js.map} +0 -0
- /package/dist/{chunk-F7HQVKIR.js.map → chunk-SYVNWXVW.js.map} +0 -0
- /package/dist/{chunk-MGC4QOMP.js.map → chunk-TQ2557I5.js.map} +0 -0
- /package/dist/{chunk-C7TCBAVX.js.map → chunk-TQBRWZA4.js.map} +0 -0
- /package/dist/{chunk-BO2SDMNQ.js.map → chunk-U4QUDFPJ.js.map} +0 -0
- /package/dist/{chunk-SKX4NA6E.js.map → chunk-V74PXUQN.js.map} +0 -0
- /package/dist/{chunk-OYP27CYE.js.map → chunk-WOAXKWAB.js.map} +0 -0
- /package/dist/{chunk-W3CLJ7JE.js.map → chunk-WPA26LXA.js.map} +0 -0
- /package/dist/{chunk-LI6OLYUB.js.map → chunk-YBTC4XNO.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
FleetBody
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-DB2ZFZVW.js";
|
|
4
4
|
import {
|
|
5
5
|
FLEET_DEFAULT_LAGGING_AFTER_SECONDS,
|
|
6
6
|
FLEET_DEFAULT_STALE_AFTER_SECONDS,
|
|
@@ -14,7 +14,10 @@ import {
|
|
|
14
14
|
} from "./chunk-7BZTZ2WG.js";
|
|
15
15
|
import {
|
|
16
16
|
EmptyState
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-HN3PZTUK.js";
|
|
18
|
+
import {
|
|
19
|
+
rem
|
|
20
|
+
} from "./chunk-YKCAJ2TN.js";
|
|
18
21
|
|
|
19
22
|
// src/components/data-display/FleetMap/FleetMap.tsx
|
|
20
23
|
import Box from "@mui/material/Box/index.js";
|
|
@@ -22,7 +25,7 @@ import Typography from "@mui/material/Typography/index.js";
|
|
|
22
25
|
import { useTheme } from "@mui/material/styles/index.js";
|
|
23
26
|
import React from "react";
|
|
24
27
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
25
|
-
var
|
|
28
|
+
var defaultHeight = (theme) => rem(theme, 420);
|
|
26
29
|
function FleetStatus({
|
|
27
30
|
announcement,
|
|
28
31
|
loading,
|
|
@@ -42,12 +45,13 @@ var FleetMap = React.memo(
|
|
|
42
45
|
onSelect,
|
|
43
46
|
laggingAfterSeconds = FLEET_DEFAULT_LAGGING_AFTER_SECONDS,
|
|
44
47
|
staleAfterSeconds = FLEET_DEFAULT_STALE_AFTER_SECONDS,
|
|
45
|
-
height
|
|
48
|
+
height: heightProp,
|
|
46
49
|
loading = false,
|
|
47
50
|
className,
|
|
48
51
|
dataTestId
|
|
49
52
|
}) => {
|
|
50
53
|
const theme = useTheme();
|
|
54
|
+
const height = heightProp ?? defaultHeight(theme);
|
|
51
55
|
const testId = dataTestId || "fleet-map";
|
|
52
56
|
const headingId = React.useId();
|
|
53
57
|
const { ordered, active, centre, select, markers, onKeyDown } = useFleetMap(
|
|
@@ -113,4 +117,4 @@ export {
|
|
|
113
117
|
FleetMap,
|
|
114
118
|
FleetMap_default
|
|
115
119
|
};
|
|
116
|
-
//# sourceMappingURL=chunk-
|
|
120
|
+
//# sourceMappingURL=chunk-ADHMNIWS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/FleetMap/FleetMap.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { useTheme, type Theme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport { SR_ONLY_SX } from '../../form/Label/Label.styles';\nimport { rem } from '../../../tokens/relative';\nimport { EmptyState } from '../EmptyState/EmptyState';\n\nimport { FleetBody } from './FleetBody';\nimport { useFleetMap } from './FleetMap.hooks';\nimport {\n FLEET_DEFAULT_LAGGING_AFTER_SECONDS,\n FLEET_DEFAULT_STALE_AFTER_SECONDS,\n FLEET_PANEL,\n} from './FleetMap.metrics';\nimport type { FleetMapProps } from './FleetMap.types';\n\n/** The map's own default height, in design px. Overridable, and never a hardcoded viewport. */\nconst defaultHeight = (theme: Theme): string => rem(theme, 420);\n\n/**\n * The reload announcement, and nothing else.\n *\n * `aria-busy` marks the region stale for assistive technology but UTTERS\n * nothing, and the skeletons beside it are `aria-hidden` — so a screen-reader\n * user got silence while the roster reloaded. This is the utterance.\n *\n * Optional by design: the sentence is in the reader's language, which only the\n * caller knows, and inventing an English one in a component whose whole premise\n * is that every word arrives through `copy` would be the bug it exists to\n * avoid. No `copy.loading`, no region.\n *\n * ## The node outlives the text, and that is the whole trick\n *\n * A live region has to be in the DOM BEFORE its content changes; a screen\n * reader watches an existing region for mutations rather than announcing one\n * that appears already populated. Mounting region-and-text together in a single\n * commit is the classic silent case — it satisfies a DOM assertion while\n * announcing nothing. So the region mounts as soon as the caller offers the\n * copy and merely EMPTIES when idle, which is what `CepField`, `UploadButton`\n * and `DateRangePickerFields` all do.\n */\nfunction FleetStatus({\n announcement,\n loading,\n testId,\n}: {\n announcement: string | undefined;\n loading: boolean;\n testId: string;\n}): React.JSX.Element | null {\n // No copy, no region at all — the caller has not asked for an announcement.\n if (announcement === undefined) return null;\n return (\n <Box role=\"status\" aria-live=\"polite\" data-testid={`${testId}-status`} sx={SR_ONLY_SX}>\n {loading ? announcement : ''}\n </Box>\n );\n}\n\n/**\n * FleetMap — where a set of tracked units is right now, as a map beside the\n * roster that reads it.\n *\n * Product-free by construction: it draws labelled dots with a freshness, and\n * every word — the heading, the three freshness states, how a duration and a\n * distance are written — arrives through {@link FleetMapProps.copy}. Couriers,\n * service vans and field engineers are all the same picture.\n *\n * ## Three decisions worth knowing before changing it\n *\n * **The roster is the accessible representation, not a sidebar.** A map is a\n * picture and a screen reader cannot read one, so the list carries the\n * information: everything a sighted user gets from a pin — who, how recently,\n * what they are carrying — is on the row. The map is a NAMED region rather than\n * an `aria-hidden` one, because its controls are focusable and hiding a\n * focusable subtree is the `aria-hidden-focus` violation.\n *\n * **Nothing here formats.** `lastSeen` and `accuracy` are functions on the copy\n * object, the same line `StatCard` holds for its `value`: a duration and a\n * distance are locale rules, and a component that wrote \"2 min ago\" would have\n * made English the only language it could ever render.\n *\n * **An empty fleet is an empty STATE, not an empty map.** A map with no pins is\n * indistinguishable from a map that failed to load, and the difference is the\n * whole question a dispatcher is asking.\n */\nexport const FleetMap: React.FC<FleetMapProps> = React.memo(\n ({\n units,\n copy,\n // NO default. `undefined` is what tells the hook the caller does not own\n // the selection; defaulting it to `null` here made every render look\n // controlled and the uncontrolled path unreachable.\n selectedId,\n onSelect,\n laggingAfterSeconds = FLEET_DEFAULT_LAGGING_AFTER_SECONDS,\n staleAfterSeconds = FLEET_DEFAULT_STALE_AFTER_SECONDS,\n height: heightProp,\n loading = false,\n className,\n dataTestId,\n }) => {\n const theme = useTheme();\n const height = heightProp ?? defaultHeight(theme);\n const testId = dataTestId || 'fleet-map';\n const headingId = React.useId();\n const { ordered, active, centre, select, markers, onKeyDown } = useFleetMap(\n units,\n selectedId,\n onSelect,\n );\n\n return (\n <Box\n role=\"region\"\n aria-labelledby={headingId}\n className={className}\n data-testid={testId}\n sx={{ display: 'flex', flexDirection: 'column', gap: theme.spacing(FLEET_PANEL.gapUnits), minWidth: 0 }}\n >\n <Typography\n id={headingId}\n variant=\"subtitle1\"\n component=\"h2\"\n data-testid={`${testId}-title`}\n sx={{ fontWeight: theme.typography.fontWeightMedium }}\n >\n {copy.title}\n </Typography>\n\n <FleetStatus announcement={copy.loading} loading={loading} testId={testId} />\n\n {!loading && ordered.length === 0 ? (\n <EmptyState\n variant=\"minimal\"\n title={copy.emptyTitle}\n description={copy.emptyDescription}\n dataTestId={`${testId}-empty`}\n />\n ) : (\n <FleetBody\n ordered={ordered}\n centre={centre}\n markers={markers}\n select={select}\n onKeyDown={onKeyDown}\n copy={copy}\n selectedId={active}\n laggingAfterSeconds={laggingAfterSeconds}\n staleAfterSeconds={staleAfterSeconds}\n height={height}\n loading={loading}\n testId={testId}\n />\n )}\n </Box>\n );\n },\n);\n\nFleetMap.displayName = 'FleetMap';\n\nexport default FleetMap;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,SAAS;AAChB,OAAO,gBAAgB;AACvB,SAAS,gBAA4B;AACrC,OAAO,WAAW;AAoDd,cA4DE,YA5DF;AApCJ,IAAM,gBAAgB,CAAC,UAAyB,IAAI,OAAO,GAAG;AAwB9D,SAAS,YAAY;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AACF,GAI6B;AAE3B,MAAI,iBAAiB,OAAW,QAAO;AACvC,SACE,oBAAC,OAAI,MAAK,UAAS,aAAU,UAAS,eAAa,GAAG,MAAM,WAAW,IAAI,YACxE,oBAAU,eAAe,IAC5B;AAEJ;AA6BO,IAAM,WAAoC,MAAM;AAAA,EACrD,CAAC;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA;AAAA,IACA;AAAA,IACA,sBAAsB;AAAA,IACtB,oBAAoB;AAAA,IACpB,QAAQ;AAAA,IACR,UAAU;AAAA,IACV;AAAA,IACA;AAAA,EACF,MAAM;AACJ,UAAM,QAAQ,SAAS;AACvB,UAAM,SAAS,cAAc,cAAc,KAAK;AAChD,UAAM,SAAS,cAAc;AAC7B,UAAM,YAAY,MAAM,MAAM;AAC9B,UAAM,EAAE,SAAS,QAAQ,QAAQ,QAAQ,SAAS,UAAU,IAAI;AAAA,MAC9D;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,WACE;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,mBAAiB;AAAA,QACjB;AAAA,QACA,eAAa;AAAA,QACb,IAAI,EAAE,SAAS,QAAQ,eAAe,UAAU,KAAK,MAAM,QAAQ,YAAY,QAAQ,GAAG,UAAU,EAAE;AAAA,QAEtG;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,IAAI;AAAA,cACJ,SAAQ;AAAA,cACR,WAAU;AAAA,cACV,eAAa,GAAG,MAAM;AAAA,cACtB,IAAI,EAAE,YAAY,MAAM,WAAW,iBAAiB;AAAA,cAEnD,eAAK;AAAA;AAAA,UACR;AAAA,UAEA,oBAAC,eAAY,cAAc,KAAK,SAAS,SAAkB,QAAgB;AAAA,UAE1E,CAAC,WAAW,QAAQ,WAAW,IAC9B;AAAA,YAAC;AAAA;AAAA,cACC,SAAQ;AAAA,cACR,OAAO,KAAK;AAAA,cACZ,aAAa,KAAK;AAAA,cAClB,YAAY,GAAG,MAAM;AAAA;AAAA,UACvB,IAEA;AAAA,YAAC;AAAA;AAAA,cACC;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA,YAAY;AAAA,cACZ;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA;AAAA,UACF;AAAA;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACF;AAEA,SAAS,cAAc;AAEvB,IAAO,mBAAQ;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
NumberBoundInput
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-57FZM6GH.js";
|
|
4
4
|
import {
|
|
5
5
|
RangePresets
|
|
6
6
|
} from "./chunk-7D7CJRL7.js";
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
} from "./chunk-HXEBKOSM.js";
|
|
22
22
|
import {
|
|
23
23
|
DayBoundInput
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-GY4NBSCN.js";
|
|
25
25
|
import {
|
|
26
26
|
fieldHeight
|
|
27
27
|
} from "./chunk-CGO452DC.js";
|
|
@@ -183,7 +183,7 @@ function RangeTrigger({
|
|
|
183
183
|
borderRadius: fieldRadiusPx,
|
|
184
184
|
height: fieldHeight,
|
|
185
185
|
px: 1.5,
|
|
186
|
-
maxWidth: 280,
|
|
186
|
+
maxWidth: sxRem(280),
|
|
187
187
|
color: inverted ? "error.main" : "text.primary",
|
|
188
188
|
fontWeight: 600,
|
|
189
189
|
fontSize: sxRem(13),
|
|
@@ -291,4 +291,4 @@ export {
|
|
|
291
291
|
RangePill,
|
|
292
292
|
PanelRangeField
|
|
293
293
|
};
|
|
294
|
-
//# sourceMappingURL=chunk-
|
|
294
|
+
//# sourceMappingURL=chunk-AJ5SDHX5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/DataViews/data-views-range-pill.tsx"],"sourcesContent":["'use client';\n\n/**\n * A range filter as a PILL in the inline filter bar — the same affordance the\n * multi-select facets use, so \"Data\" and \"Valor\" sit in the filter row beside\n * \"Pagamento\"/\"Situação\"/\"Método\" instead of floating above the grid.\n *\n * Before this the inline bar rendered pills only, and `rangeFields` had a\n * surface on the slide-in panel alone — which `inlineFilters` REPLACES on a wide\n * screen. So a range filter was invisible on exactly the screens that use it,\n * and a page wanting one had to hang its own inputs outside the grid, outside\n * `DataViewState`, and outside the grid's \"Limpar filtros\" (FUT-668).\n */\nimport CloseIcon from '@mui/icons-material/Close';\nimport ChevronDownIcon from '@mui/icons-material/KeyboardArrowDown';\nimport Box from '@mui/material/Box/index.js';\nimport Button from '@mui/material/Button/index.js';\nimport Popover from '@mui/material/Popover/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport React, { useState } from 'react';\n\nimport { useDataViewsCopy } from \"./data-views-copy-context\";\nimport { TableFilter } from '../../layout/TableFilter';\nimport { DayBoundInput } from './data-views-day-input';\nimport { NumberBoundInput } from './data-views-number-input';\nimport { RangePresets } from './data-views-preset-chips';\nimport { presetsFor } from './data-views-range-presets';\nimport {\n isRangeInverted,\n isRangeSet,\n numericRange,\n rangeChipLabel,\n} from './data-views-range-values';\nimport type { RangeFieldConfig, RangeValue } from './data-views-types';\nimport { fieldRadiusPx } from '../../../tokens/field-radius';\nimport { fieldHeight } from '../../../tokens/field-height';\nimport { fieldEdge } from '../../../tokens/field-edge';\nimport { sxRem } from '../../../tokens/relative';\n\n\n\n/**\n * One end of the range. A day keeps its `AAAA-MM-DD` string verbatim (the form\n * both the field and the backend speak) and is typed through the masked\n * `dd/mm/aaaa` field rather than a native date input — see\n * {@link DayBoundInput} for why. A number parses, and an unparseable/blank\n * entry CLEARS the bound rather than writing `NaN`.\n */\nfunction BoundField<T extends Record<string, unknown>>({\n field,\n label,\n value,\n onChange,\n testId,\n}: {\n field: RangeFieldConfig<T>;\n label: string;\n value: number | string | undefined;\n onChange: (bound: number | string | undefined) => void;\n testId: string;\n}): React.JSX.Element {\n const copy = useDataViewsCopy();\n if (field.kind === 'day') {\n return (\n <DayBoundInput\n mask={copy.filters.dayMask}\n label={label}\n value={value == null ? undefined : String(value)}\n onChange={onChange}\n testId={testId}\n />\n );\n }\n return (\n <NumberBoundInput\n label={label}\n value={value}\n unit={field.unit}\n onChange={onChange}\n testId={testId}\n />\n );\n}\n\n\n/**\n * The `De`/`Até` pair for a range — shared by the pill's popover and the\n * slide-in panel's day fields, so the two surfaces cannot drift on what a bound\n * accepts or how it clears.\n */\nexport function RangeBounds<T extends Record<string, unknown>>({\n field,\n value,\n onChange,\n testId,\n}: {\n field: RangeFieldConfig<T>;\n value: RangeValue;\n onChange: (range: RangeValue) => void;\n testId: string;\n}): React.JSX.Element {\n const copy = useDataViewsCopy();\n const inverted = isRangeInverted(value);\n return (\n <Box data-testid={`${testId}-panel`}>\n {/* Above the inputs, not below: the presets are the answer for most\n merchants, and the two date pickers are the escape hatch. */}\n <Box sx={{ '&:not(:empty)': { mb: 1.5 } }}>\n <RangePresets presets={presetsFor(field, copy)} value={value} onChange={onChange} testId={testId} />\n </Box>\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 1.5 }}>\n <BoundField\n field={field}\n label={copy.filters.rangeStart}\n value={value.min}\n onChange={(min) => onChange({ ...value, min })}\n testId={`${testId}-min`}\n />\n <BoundField\n field={field}\n label={copy.filters.rangeEnd}\n value={value.max}\n onChange={(max) => onChange({ ...value, max })}\n testId={`${testId}-max`}\n />\n </Box>\n {inverted && (\n <Typography\n component=\"p\"\n data-testid={`${testId}-inverted`}\n sx={{ mt: 0.75, fontSize: sxRem(12), color: 'error.main' }}\n >\n {copy.filters.rangeInvalid}\n </Typography>\n )}\n {/* BOTH days are in the result. Saying so is FUT-668's other half: the\n bounds compare as ISO strings precisely so `até` keeps its whole day,\n and nothing on screen would otherwise tell the merchant that. */}\n {field.kind === 'day' && !inverted && (\n <Typography\n component=\"p\"\n data-testid={`${testId}-inclusive`}\n sx={{ mt: 0.75, fontSize: sxRem(12), color: 'text.disabled' }}\n >\n {copy.filters.rangeInclusiveNote}\n </Typography>\n )}\n </Box>\n );\n}\n\n/**\n * The pill + its popover. Bounds commit on change (the list is server-driven, so\n * each edit is a query) and the popover stays open, which is what lets a\n * merchant set \"de\" and then \"até\" without re-opening it.\n */\n/** An applied range clears from the pill itself — re-opening to empty two fields is three gestures for one intent. */\nfunction ClearAffordance({\n label,\n onClear,\n testId,\n}: {\n label: string;\n onClear: () => void;\n testId: string;\n}): React.JSX.Element {\n const copy = useDataViewsCopy();\n const clear = (event: React.SyntheticEvent): void => {\n event.stopPropagation();\n onClear();\n };\n return (\n <Box\n component=\"span\"\n role=\"button\"\n tabIndex={0}\n aria-label={copy.filters.clearRange(label)}\n data-testid={testId}\n onClick={clear}\n onKeyDown={(event: React.KeyboardEvent) => {\n if (event.key !== 'Enter' && event.key !== ' ') return;\n event.preventDefault();\n clear(event);\n }}\n sx={{ display: 'inline-flex', borderRadius: 999, p: 0.125, '&:hover': { bgcolor: 'action.selected' } }}\n >\n <CloseIcon sx={{ fontSize: sxRem(14) }} />\n </Box>\n );\n}\n\n/** The pill button: its label carries the applied window, and its tone the state. */\nfunction RangeTrigger<T extends Record<string, unknown>>({\n field,\n value,\n onChange,\n onOpen,\n open,\n testId,\n}: {\n field: RangeFieldConfig<T>;\n value: RangeValue;\n onChange: (range: RangeValue) => void;\n onOpen: (anchor: HTMLElement) => void;\n open: boolean;\n testId: string;\n}): React.JSX.Element {\n const active = isRangeSet(value);\n const inverted = isRangeInverted(value);\n // An INVERTED window gets its own tone rather than the ordinary \"applied\"\n // one: it is applied, and it matches nothing, and those are different states.\n // At rest the pill draws the one field border (`fieldEdge`).\n const tone = inverted ? 'error.main' : active ? 'primary.main' : null;\n return (\n <Button\n variant=\"outlined\"\n color=\"inherit\"\n size=\"small\"\n data-testid={testId}\n aria-haspopup=\"dialog\"\n aria-expanded={open}\n onClick={(event) => onOpen(event.currentTarget)}\n // ✕ FIRST, chevron LAST — the same shape as every other pill. It used to\n // replace the chevron at the end, so a range pill and a multi-select pill\n // put the clear in different places, and an applied range lost the\n // affordance that says it opens.\n startIcon={\n active ? (\n <ClearAffordance label={field.label} onClear={() => onChange({})} testId={`${testId}-clear-inline`} />\n ) : undefined\n }\n endIcon={<ChevronDownIcon sx={{ fontSize: sxRem(16) }} />}\n sx={{\n borderRadius: fieldRadiusPx,\n height: fieldHeight,\n px: 1.5,\n maxWidth: sxRem(280),\n color: inverted ? 'error.main' : 'text.primary',\n fontWeight: 600,\n fontSize: sxRem(13),\n textTransform: 'none',\n whiteSpace: 'nowrap',\n borderColor: (theme) => tone ?? fieldEdge(theme),\n bgcolor: active ? 'action.selected' : 'background.paper',\n '&:hover': {\n borderColor: active ? tone : 'text.primary',\n bgcolor: active ? 'action.selected' : 'action.hover',\n },\n }}\n >\n {/* The applied bounds, in the label — a pill reading only \"Valor\" hides\n the very thing that is narrowing the list. */}\n <Box component=\"span\" sx={{ overflow: 'hidden', textOverflow: 'ellipsis' }}>\n {active ? rangeChipLabel(field, value) : field.label}\n </Box>\n </Button>\n );\n}\n\nexport function RangePill<T extends Record<string, unknown>>({\n field,\n value,\n onChange,\n onOpenChange,\n testIdPrefix,\n}: {\n field: RangeFieldConfig<T>;\n value: RangeValue;\n onChange: (range: RangeValue) => void;\n /** So a measured toolbar can hold still while this is open. */\n onOpenChange?: (open: boolean) => void;\n testIdPrefix: string;\n}): React.JSX.Element {\n const copy = useDataViewsCopy();\n const [anchor, setAnchor] = useState<HTMLElement | null>(null);\n const active = isRangeSet(value);\n const testId = `${testIdPrefix}-range-${field.id}`;\n return (\n <>\n <RangeTrigger\n field={field}\n value={value}\n onChange={onChange}\n onOpen={(element) => {\n setAnchor(element);\n onOpenChange?.(true);\n }}\n open={Boolean(anchor)}\n testId={testId}\n />\n <Popover\n open={Boolean(anchor)}\n anchorEl={anchor}\n onClose={() => {\n setAnchor(null);\n onOpenChange?.(false);\n }}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'left' }}\n slotProps={{ paper: { sx: { p: 2, mt: 0.5 } } }}\n >\n <RangeBounds field={field} value={value} onChange={onChange} testId={testId} />\n {/* An inverted window is not an error the merchant must fix before the\n list responds — it simply matches nothing, and saying so beats an\n empty grid with no explanation (FUT-668). */}\n {active && (\n <Box sx={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between', gap: 2, mt: 1.5 }}>\n <Typography component=\"span\" sx={{ fontSize: sxRem(12), color: 'text.secondary' }}>\n {rangeChipLabel(field, value)}\n </Typography>\n <Button\n variant=\"text\"\n size=\"small\"\n onClick={() => onChange({})}\n data-testid={`${testId}-clear`}\n sx={{ textTransform: 'none' }}\n >\n {copy.filters.clear}\n </Button>\n </Box>\n )}\n </Popover>\n </>\n );\n}\n\n\n/**\n * One range on the SLIDE-IN panel (and the narrow-screen modal): the numeric\n * control the panel already had, or — for a day range, which that control cannot\n * express — the same `De`/`Até` pair the pill's popover uses.\n */\nexport function PanelRangeField<T extends Record<string, unknown>>({\n field,\n value,\n onChange,\n testId,\n}: {\n field: RangeFieldConfig<T>;\n value: RangeValue;\n onChange: (range: RangeValue) => void;\n testId: string;\n}): React.JSX.Element {\n const copy = useDataViewsCopy();\n if (field.kind === \"day\") {\n return (\n <Box sx={{ display: \"flex\", flexDirection: \"column\", gap: 1 }}>\n <Typography component=\"span\" sx={{ fontSize: sxRem(12), fontWeight: 500, color: \"text.secondary\" }}>\n {field.label}\n </Typography>\n <RangeBounds field={field} value={value} onChange={onChange} testId={testId} />\n </Box>\n );\n }\n return (\n <Box sx={{ display: \"flex\", flexDirection: \"column\", gap: 1 }}>\n <TableFilter.RangeField\n label={field.label}\n unit={field.unit}\n value={numericRange(value)}\n onChange={(range) => onChange(range)}\n testId={testId}\n />\n {/* Below the numeric control here, unlike the pill's popover: this one\n renders its own label, and chips above it would separate the label\n from the field it names. */}\n <RangePresets presets={presetsFor(field, copy)} value={value} onChange={onChange} testId={testId} />\n </Box>\n );\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DataViewsScopeTabs
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-PL2AB5HJ.js";
|
|
4
4
|
import {
|
|
5
5
|
useDataViewsLayout
|
|
6
6
|
} from "./chunk-4LQZH4PU.js";
|
|
@@ -34,4 +34,4 @@ function ScopeTabsSlot({
|
|
|
34
34
|
export {
|
|
35
35
|
ScopeTabsSlot
|
|
36
36
|
};
|
|
37
|
-
//# sourceMappingURL=chunk-
|
|
37
|
+
//# sourceMappingURL=chunk-AK2HOD6B.js.map
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
fadeInScale,
|
|
6
6
|
getColorFromTheme,
|
|
7
7
|
getVariantIcon
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-MO47Y26B.js";
|
|
9
9
|
import {
|
|
10
10
|
resolveAlertProps,
|
|
11
11
|
resolveAnnouncement,
|
|
@@ -36,6 +36,8 @@ import {
|
|
|
36
36
|
modeInk
|
|
37
37
|
} from "./chunk-FQ6UW7IY.js";
|
|
38
38
|
import {
|
|
39
|
+
rem,
|
|
40
|
+
rems,
|
|
39
41
|
sxRem
|
|
40
42
|
} from "./chunk-YKCAJ2TN.js";
|
|
41
43
|
|
|
@@ -52,7 +54,7 @@ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
|
52
54
|
var transition = `all ${seconds(ALERT_TRANSITION_MS)} ${ALERT_EASING}`;
|
|
53
55
|
function pointerShadow(theme, colorPalette, glow, variant) {
|
|
54
56
|
const ink = variant === "gradient" ? absoluteInk(theme).black : modeInk(theme);
|
|
55
|
-
const glowShadow = glow ? `0 0 ${GLOW.blur
|
|
57
|
+
const glowShadow = glow ? `0 0 ${rems(theme, GLOW.blur, GLOW.spread)} ${alpha(colorPalette.main, GLOW.alpha)}` : null;
|
|
56
58
|
return (alpha_) => [`inset 0 0 0 100vmax ${alpha(ink, alpha_)}`, glowShadow].filter(Boolean).join(", ");
|
|
57
59
|
}
|
|
58
60
|
var StyledAlert = styled(MuiAlert, {
|
|
@@ -65,7 +67,7 @@ var StyledAlert = styled(MuiAlert, {
|
|
|
65
67
|
transition: `${transition}, box-shadow ${seconds(ACTIVE.ms)} ${ALERT_EASING}`,
|
|
66
68
|
position: "relative",
|
|
67
69
|
overflow: "hidden",
|
|
68
|
-
animation: animate ? `${fadeInScale} ${seconds(FADE_IN.ms)} ease-out` : "none",
|
|
70
|
+
animation: animate ? `${fadeInScale(theme)} ${seconds(FADE_IN.ms)} ease-out` : "none",
|
|
69
71
|
willChange: "transform, opacity",
|
|
70
72
|
...alertLayoutStyles(theme, colorPalette, animate),
|
|
71
73
|
// Hover: one tint step, and nothing that moves. An alert is a surface
|
|
@@ -118,11 +120,11 @@ var StyledAlert = styled(MuiAlert, {
|
|
|
118
120
|
// every keyboard focus, and it would also outrank the root's opacity
|
|
119
121
|
// transition the way the hover block did.
|
|
120
122
|
"&:focus-visible": {
|
|
121
|
-
outline: `${FOCUS.ringWidth}
|
|
122
|
-
outlineOffset:
|
|
123
|
+
outline: `${rem(theme, FOCUS.ringWidth)} solid ${alpha(colorPalette.main, FOCUS.ringAlpha)}`,
|
|
124
|
+
outlineOffset: rem(theme, FOCUS.offset)
|
|
123
125
|
},
|
|
124
126
|
...alertVariantStyles(theme, customVariant, colorPalette),
|
|
125
|
-
...alertEmphasisStyles(colorPalette, Boolean(glow), Boolean(pulse))
|
|
127
|
+
...alertEmphasisStyles(theme, colorPalette, Boolean(glow), Boolean(pulse))
|
|
126
128
|
};
|
|
127
129
|
});
|
|
128
130
|
var MUI_SEVERITY = {
|
|
@@ -210,8 +212,8 @@ var AlertCloseButton = ({
|
|
|
210
212
|
// translucent surface's contrast depends on what sits behind it, which
|
|
211
213
|
// is why that test stops where it does and why this comment does not
|
|
212
214
|
// borrow a guarantee it never made.
|
|
213
|
-
outline: `${FOCUS.ringWidth}
|
|
214
|
-
outlineOffset:
|
|
215
|
+
outline: `${rem(theme, FOCUS.ringWidth)} solid currentColor`,
|
|
216
|
+
outlineOffset: rem(theme, FOCUS.offset),
|
|
215
217
|
backgroundColor: alpha(theme.palette.action.focus, CLOSE_BUTTON.washAlpha)
|
|
216
218
|
}
|
|
217
219
|
}),
|
|
@@ -290,4 +292,4 @@ export {
|
|
|
290
292
|
Alert,
|
|
291
293
|
ALERT_ONLY_PROPS
|
|
292
294
|
};
|
|
293
|
-
//# sourceMappingURL=chunk-
|
|
295
|
+
//# sourceMappingURL=chunk-AUHYR7ID.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/Alert/Alert.tsx"],"sourcesContent":["import Close from '@mui/icons-material/Close';\nimport MuiAlert from '@mui/material/Alert/index.js';\nimport AlertTitle from '@mui/material/AlertTitle/index.js';\nimport Box from '@mui/material/Box/index.js';\nimport Collapse from '@mui/material/Collapse/index.js';\nimport IconButton from '@mui/material/IconButton/index.js';\nimport { alpha, styled } from '@mui/material/styles/index.js';\nimport type { Theme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport { absoluteInk, modeInk } from '../../../tokens/ink';\n\nimport { resolveAlertProps, resolveAnnouncement, testIdFor } from './Alert.helpers';\nimport type { AlertPalette } from './Alert.metrics';\nimport {\n ACTIVE,\n GLOW,\n ALERT_EASING,\n ALERT_RADIUS_UNITS,\n ALERT_TRANSITION_MS,\n CLOSE_BUTTON,\n CLOSE_DELAY_MS,\n COLLAPSE_MS,\n DESCRIPTION,\n FADE_IN,\n FOCUS,\n HOVER,\n seconds,\n TITLE,\n} from './Alert.metrics';\nimport {\n alertEmphasisStyles,\n alertLayoutStyles,\n alertVariantStyles,\n fadeInScale,\n getColorFromTheme,\n getVariantIcon,\n} from './Alert.styles';\nimport type { AlertColor } from '@mui/material/Alert/index.js';\nimport type { AlertProps } from './Alert.types';\nimport { resolveTestId, withoutTestIdProps } from '../../../platform/test-id';\nimport { rem, rems, sxRem } from '../../../tokens/relative';\n\nconst transition = `all ${seconds(ALERT_TRANSITION_MS)} ${ALERT_EASING}`;\n\n// Define animations\n/**\n * The pointer states' shadow: a flat tint, plus the glow when the alert has one.\n *\n * The tint is an inset spread at 100vmax, which always exceeds the element, so\n * it covers the surface edge to edge. It paints ABOVE the background and BELOW\n * the content, which is what keeps the ink's own contrast out of these states\n * entirely — see `ACTIVE` in `Alert.metrics.ts` for why a layer replaced the\n * opacity dip and the brightness multiplier that each preceded it.\n *\n * The glow is COMPOSED rather than replaced, so hovering a glowing alert keeps\n * its glow; `glowStyles` gave up its `!important` for this.\n */\nfunction pointerShadow(\n theme: Theme,\n colorPalette: AlertPalette,\n glow: boolean,\n variant: string | undefined,\n): (alpha_: number) => string {\n // The tint moves the surface AWAY from its own ink, which is why this reads\n // the variant and not only the mode.\n //\n // `gradient` is the one variant where the two disagree: it paints a\n // mid-lightness sweep (L* 42–61) under WHITE ink in BOTH modes, so the\n // mode-keyed answer tinted it white in dark mode — toward the text. Measured:\n // white-on-gradient fell to 2.90:1 on hover and 2.41:1 pressed, under the 3:1\n // floor and below its own idle. Every other variant's surface tracks the mode,\n // so for them the two rules agree.\n const ink = variant === 'gradient' ? absoluteInk(theme).black : modeInk(theme);\n const glowShadow = glow\n ? `0 0 ${rems(theme, GLOW.blur, GLOW.spread)} ${alpha(colorPalette.main, GLOW.alpha)}`\n : null;\n return (alpha_) =>\n [`inset 0 0 0 100vmax ${alpha(ink, alpha_)}`, glowShadow].filter(Boolean).join(', ');\n}\n\nconst StyledAlert = styled(MuiAlert, {\n shouldForwardProp: (prop) =>\n !['customVariant', 'customColor', 'glow', 'pulse', 'animate'].includes(prop as string),\n})<{\n customVariant?: string;\n customColor?: string;\n glow?: boolean;\n pulse?: boolean;\n animate?: boolean;\n}>(({ theme, customVariant, customColor, glow, pulse, animate }) => {\n const colorPalette = getColorFromTheme(theme, customColor || customVariant || 'info');\n\n const withTint = pointerShadow(theme, colorPalette, Boolean(glow), customVariant);\n\n return {\n borderRadius: theme.spacing(ALERT_RADIUS_UNITS),\n transition: `${transition}, box-shadow ${seconds(ACTIVE.ms)} ${ALERT_EASING}`,\n position: 'relative',\n overflow: 'hidden',\n animation: animate ? `${fadeInScale(theme)} ${seconds(FADE_IN.ms)} ease-out` : 'none',\n willChange: 'transform, opacity',\n\n ...alertLayoutStyles(theme, colorPalette, animate),\n\n // Hover: one tint step, and nothing that moves. An alert is a surface\n // rather than a control, so the pointer only needs telling it is here. The\n // icon keeps its own place for the same reason — it is the variant's\n // meaning, not an affordance to animate.\n '&:hover': {\n boxShadow: withTint(HOVER.tintAlpha),\n\n '&::before': {\n opacity: 1,\n },\n },\n\n // Press: a 20% tint, landing at once and easing back. Still no geometry.\n //\n // `transition: none` here is what makes the dip INSTANT: a click's\n // `:active` lasts about as long as the finger is down, so easing into it\n // would be cut off in its first tenth and read as a flicker. The ease is on\n // the way back, governed by the root.\n //\n // Neither `:hover` nor `:focus-visible` may declare `transition`, and that\n // is not a style preference. `:active` under a mouse ALWAYS implies\n // `:hover`, so a bare shorthand in the hover block outranks the root's\n // (0,2,0 beats 0,1,0) and silently resets the timing this state rests on.\n //\n // The `:not(:has(…))` names CONTROLS, not any descendant. `:active`\n // matches an ancestor of whatever is pressed, so dismissing an alert\n // dimmed the alert being dismissed and pressing a call to action dimmed\n // the message explaining it. Excluding `:has(:active)` wholesale does not\n // work and was the first attempt: pressing the TEXT makes that text\n // `:active` too, so the guard matched on every press and the state never\n // fired at all.\n '&:active:not(:has(button:active, a:active, [role=\"button\"]:active))': {\n boxShadow: withTint(ACTIVE.tintAlpha),\n transition: 'none',\n },\n\n // Focus: `:focus-visible`, not `:focus-within`.\n //\n // The alert carries `tabIndex={0}`, so a MOUSE CLICK focused it and painted\n // the ring — a keyboard affordance answering a pointer, which is what made\n // clicking one look like an error state. `:focus-visible` is the browser's\n // own answer to \"did this focus come from the keyboard\": the ring stays for\n // whoever tabs here and never fires on a click.\n //\n // One ring, not three. It was a 3px outline at 3px offset UNDER a 6px halo,\n // and stacking two rings on one edge is what read as unfinished rather than\n // as emphasis.\n // It declares no `transition`: `outline-style` is discrete, so the ring\n // arrives at full width with only its COLOUR easing — from `currentcolor`,\n // the near-black alert ink, to the blue. That is a visible dark flash on\n // every keyboard focus, and it would also outrank the root's opacity\n // transition the way the hover block did.\n '&:focus-visible': {\n outline: `${rem(theme, FOCUS.ringWidth)} solid ${alpha(colorPalette.main, FOCUS.ringAlpha)}`,\n outlineOffset: rem(theme, FOCUS.offset),\n },\n\n ...alertVariantStyles(theme, customVariant, colorPalette),\n ...alertEmphasisStyles(theme, colorPalette, Boolean(glow), Boolean(pulse)),\n };\n});\n\n// glass and gradient are our own looks with no MUI severity of their own; both\n// borrow info's. danger is MUI's error.\nconst MUI_SEVERITY: Record<string, AlertColor> = {\n danger: 'error',\n glass: 'info',\n gradient: 'info',\n};\n\nconst toMuiSeverity = (variant: string): AlertColor =>\n MUI_SEVERITY[variant] ?? (variant as AlertColor);\n\nconst AlertContent: React.FC<{\n title?: AlertProps['title'];\n description?: AlertProps['description'];\n dataTestId?: string;\n children?: React.ReactNode;\n}> = ({ title, description, dataTestId, children }) => (\n <>\n {title && (\n <AlertTitle\n data-testid={testIdFor(dataTestId, 'title')}\n sx={{\n fontWeight: TITLE.fontWeight,\n fontSize: sxRem(TITLE.fontSize),\n marginBottom: description ? TITLE.marginBottomUnits : 0,\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n wordBreak: 'break-word',\n }}\n >\n {title}\n </AlertTitle>\n )}\n {description && (\n <Box\n component=\"div\"\n data-testid={testIdFor(dataTestId, 'message')}\n sx={{\n opacity: DESCRIPTION.opacity,\n fontSize: sxRem(DESCRIPTION.fontSize),\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n wordBreak: 'break-word',\n }}\n >\n {description}\n </Box>\n )}\n {children}\n </>\n);\n\nconst AlertCloseButton: React.FC<{ dataTestId?: string; label: string; onClose: () => void }> = ({\n dataTestId,\n label,\n onClose,\n}) => (\n <IconButton\n data-testid={testIdFor(dataTestId, 'close')}\n aria-label={label}\n color=\"inherit\"\n size=\"small\"\n onClick={onClose}\n sx={(theme) => ({\n transition,\n opacity: CLOSE_BUTTON.opacity,\n // Opacity and a wash only: the button used to spin 90deg and grow 1.1,\n // which drew the eye to the dismiss rather than to the message.\n '&:hover': {\n opacity: 1,\n backgroundColor: alpha(theme.palette.action.hover, CLOSE_BUTTON.washAlpha),\n },\n // A REAL ring, on the keyboard-only selector.\n //\n // This used to be `&:focus` setting `outline: 'none'` over a\n // `rgba(0,0,0,0.1)` wash — 1.25:1 against the info surface, and MUI's\n // ButtonBase already sets `outline: 0`, so there was no UA fallback\n // either. It went unnoticed while the ROOT still matched `:focus-within`\n // and drew a ring around the whole alert; moving the root to\n // `:focus-visible` took that away and left this button with no visible\n // focus at all. `Banner`'s dismiss already draws its own outline, so\n // this is also what keeps the two surfaces telling a keyboard user the\n // same thing.\n '&:focus-visible': {\n opacity: 1,\n // `currentColor` is the alert's own ink, inherited through\n // `color=\"inherit\"`, so the ring is drawn in whatever colour was\n // already chosen to be READ on this surface. Measured 11.2:1 on the\n // semantic variants and 5.7:1 on `gradient`.\n //\n // That is a reasoned choice, not a test-backed one, and the difference\n // matters: `alert-contrast.test.tsx` covers the ink of the four\n // semantic variants only — its `glass` case asserts the pane's alpha\n // rather than its ink, and `gradient` it does not render at all. A\n // translucent surface's contrast depends on what sits behind it, which\n // is why that test stops where it does and why this comment does not\n // borrow a guarantee it never made.\n outline: `${rem(theme, FOCUS.ringWidth)} solid currentColor`,\n outlineOffset: rem(theme, FOCUS.offset),\n backgroundColor: alpha(theme.palette.action.focus, CLOSE_BUTTON.washAlpha),\n },\n })}\n >\n <Close fontSize=\"inherit\" />\n </IconButton>\n);\n\n/**\n * The dismiss button, or nothing.\n *\n * Reads `closeLabel` straight off the props rather than through the\n * `definedProps` merge, which would widen it to `string | undefined` and hand\n * the button an empty name. The UNION in `AlertProps` guarantees the label\n * wherever `closable` is true — that narrowing is gone inside the component,\n * which is why the fallback below exists and why it is unreachable.\n */\nfunction dismissButton(\n props: AlertProps,\n dataTestId: string | undefined,\n onClose: () => void,\n): React.JSX.Element | null {\n if (!props.closable) return null;\n return <AlertCloseButton dataTestId={dataTestId} label={props.closeLabel} onClose={onClose} />;\n}\n\nexport const Alert = React.forwardRef<HTMLDivElement, AlertProps>((alertProps, ref) => {\n const {\n variant,\n color,\n glow,\n pulse,\n icon,\n showIcon,\n onClose,\n title,\n description,\n children,\n animate,\n role: _role, announce: _announce, // resolved from `alertProps` — see `resolveAnnouncement`\n 'aria-atomic': ariaAtomic,\n ...others\n } = resolveAlertProps(alertProps);\n\n // Every spelling of the test id the shared contract allows, mapped to the\n // one the DOM reads and defaulted to `alert`; the native Alert does the same.\n const dataTestId = resolveTestId(others, 'alert');\n // Then the dismiss union, which `dismissButton` reads off `alertProps` rather\n // than through this destructure — so without this strip it rides `...props`\n // onto the DOM. `ALERT_DEFAULTS` supplies `closable: false`, so that happened\n // on EVERY alert, not only the closable ones.\n const props = withoutAlertOnlyProps(withoutTestIdProps(others));\n\n // Depends on `variant`, so it cannot live in the static defaults above.\n const announcement = resolveAnnouncement(alertProps, variant);\n const [open, setOpen] = React.useState(true);\n const [isClosing, setIsClosing] = React.useState(false);\n\n const handleClose = () => {\n setIsClosing(true);\n window.setTimeout(() => {\n setOpen(false);\n onClose?.();\n }, CLOSE_DELAY_MS);\n };\n\n const severity = toMuiSeverity(variant);\n\n const displayIcon = showIcon ? (\n <Box component=\"span\" data-testid={testIdFor(dataTestId, 'icon')}>\n {icon || getVariantIcon(variant)}\n </Box>\n ) : (\n false\n );\n\n const content = (\n <AlertContent title={title} description={description} dataTestId={dataTestId}>\n {children}\n </AlertContent>\n );\n\n return (\n <Collapse in={open && !isClosing} timeout={COLLAPSE_MS}>\n <StyledAlert\n ref={ref}\n data-testid={dataTestId}\n severity={severity}\n customVariant={variant}\n customColor={color}\n glow={glow}\n pulse={pulse}\n animate={animate}\n icon={displayIcon}\n role={announcement.role}\n aria-live={announcement['aria-live']}\n aria-atomic={ariaAtomic}\n tabIndex={0}\n action={dismissButton(alertProps, dataTestId, handleClose)}\n {...props}\n >\n {content}\n </StyledAlert>\n </Collapse>\n );\n});\n\n/**\n * The props `Alert` OWNS, which must never reach the DOM.\n *\n * `AlertProps` extends MUI's, whose rest-spread is how a host's real HTML\n * attributes get onto the root — so the same spread carries the alert's own\n * configuration unless it is named here. Everything else the component consumes\n * leaves through the destructure above; these two do not, because\n * `dismissButton` reads them off the original props to keep the dismiss union's\n * narrowing intact.\n *\n * Exported so a test can render an alert carrying every name on it and assert\n * none reaches the DOM — the check that would have caught `closable`.\n */\nexport const ALERT_ONLY_PROPS = ['closable', 'closeLabel'] as const;\n\nfunction withoutAlertOnlyProps<P extends object>(rest: P): P {\n const html = { ...rest } as Record<string, unknown>;\n for (const key of ALERT_ONLY_PROPS) delete html[key];\n return html as P;\n}\n\nAlert.displayName = 'Alert';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,cAAc;AACrB,OAAO,gBAAgB;AACvB,OAAO,SAAS;AAChB,OAAO,cAAc;AACrB,OAAO,gBAAgB;AACvB,SAAS,OAAO,cAAc;AAE9B,OAAO,WAAW;AAgLhB,mBAEI,KAFJ;AA7IF,IAAM,aAAa,OAAO,QAAQ,mBAAmB,CAAC,IAAI,YAAY;AAetE,SAAS,cACP,OACA,cACA,MACA,SAC4B;AAU5B,QAAM,MAAM,YAAY,aAAa,YAAY,KAAK,EAAE,QAAQ,QAAQ,KAAK;AAC7E,QAAM,aAAa,OACf,OAAO,KAAK,OAAO,KAAK,MAAM,KAAK,MAAM,CAAC,IAAI,MAAM,aAAa,MAAM,KAAK,KAAK,CAAC,KAClF;AACJ,SAAO,CAAC,WACN,CAAC,uBAAuB,MAAM,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,OAAO,OAAO,EAAE,KAAK,IAAI;AACvF;AAEA,IAAM,cAAc,OAAO,UAAU;AAAA,EACnC,mBAAmB,CAAC,SAClB,CAAC,CAAC,iBAAiB,eAAe,QAAQ,SAAS,SAAS,EAAE,SAAS,IAAc;AACzF,CAAC,EAME,CAAC,EAAE,OAAO,eAAe,aAAa,MAAM,OAAO,QAAQ,MAAM;AAClE,QAAM,eAAe,kBAAkB,OAAO,eAAe,iBAAiB,MAAM;AAEpF,QAAM,WAAW,cAAc,OAAO,cAAc,QAAQ,IAAI,GAAG,aAAa;AAEhF,SAAO;AAAA,IACL,cAAc,MAAM,QAAQ,kBAAkB;AAAA,IAC9C,YAAY,GAAG,UAAU,gBAAgB,QAAQ,OAAO,EAAE,CAAC,IAAI,YAAY;AAAA,IAC3E,UAAU;AAAA,IACV,UAAU;AAAA,IACV,WAAW,UAAU,GAAG,YAAY,KAAK,CAAC,IAAI,QAAQ,QAAQ,EAAE,CAAC,cAAc;AAAA,IAC/E,YAAY;AAAA,IAEZ,GAAG,kBAAkB,OAAO,cAAc,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAMjD,WAAW;AAAA,MACT,WAAW,SAAS,MAAM,SAAS;AAAA,MAEnC,aAAa;AAAA,QACX,SAAS;AAAA,MACX;AAAA,IACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAqBA,uEAAuE;AAAA,MACrE,WAAW,SAAS,OAAO,SAAS;AAAA,MACpC,YAAY;AAAA,IACd;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAkBA,mBAAmB;AAAA,MACjB,SAAS,GAAG,IAAI,OAAO,MAAM,SAAS,CAAC,UAAU,MAAM,aAAa,MAAM,MAAM,SAAS,CAAC;AAAA,MAC1F,eAAe,IAAI,OAAO,MAAM,MAAM;AAAA,IACxC;AAAA,IAEA,GAAG,mBAAmB,OAAO,eAAe,YAAY;AAAA,IACxD,GAAG,oBAAoB,OAAO,cAAc,QAAQ,IAAI,GAAG,QAAQ,KAAK,CAAC;AAAA,EAC3E;AACF,CAAC;AAID,IAAM,eAA2C;AAAA,EAC/C,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,UAAU;AACZ;AAEA,IAAM,gBAAgB,CAAC,YACrB,aAAa,OAAO,KAAM;AAE5B,IAAM,eAKD,CAAC,EAAE,OAAO,aAAa,YAAY,SAAS,MAC/C,iCACG;AAAA,WACC;AAAA,IAAC;AAAA;AAAA,MACC,eAAa,UAAU,YAAY,OAAO;AAAA,MAC1C,IAAI;AAAA,QACF,YAAY,MAAM;AAAA,QAClB,UAAU,MAAM,MAAM,QAAQ;AAAA,QAC9B,cAAc,cAAc,MAAM,oBAAoB;AAAA,QACtD,UAAU;AAAA,QACV,cAAc;AAAA,QACd,WAAW;AAAA,MACb;AAAA,MAEC;AAAA;AAAA,EACH;AAAA,EAED,eACC;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,eAAa,UAAU,YAAY,SAAS;AAAA,MAC5C,IAAI;AAAA,QACF,SAAS,YAAY;AAAA,QACrB,UAAU,MAAM,YAAY,QAAQ;AAAA,QACpC,UAAU;AAAA,QACV,cAAc;AAAA,QACd,WAAW;AAAA,MACb;AAAA,MAEC;AAAA;AAAA,EACH;AAAA,EAED;AAAA,GACH;AAGF,IAAM,mBAA0F,CAAC;AAAA,EAC/F;AAAA,EACA;AAAA,EACA;AACF,MACE;AAAA,EAAC;AAAA;AAAA,IACC,eAAa,UAAU,YAAY,OAAO;AAAA,IAC1C,cAAY;AAAA,IACZ,OAAM;AAAA,IACN,MAAK;AAAA,IACL,SAAS;AAAA,IACT,IAAI,CAAC,WAAW;AAAA,MACd;AAAA,MACA,SAAS,aAAa;AAAA;AAAA;AAAA,MAGtB,WAAW;AAAA,QACT,SAAS;AAAA,QACT,iBAAiB,MAAM,MAAM,QAAQ,OAAO,OAAO,aAAa,SAAS;AAAA,MAC3E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAYA,mBAAmB;AAAA,QACjB,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAaT,SAAS,GAAG,IAAI,OAAO,MAAM,SAAS,CAAC;AAAA,QACvC,eAAe,IAAI,OAAO,MAAM,MAAM;AAAA,QACtC,iBAAiB,MAAM,MAAM,QAAQ,OAAO,OAAO,aAAa,SAAS;AAAA,MAC3E;AAAA,IACF;AAAA,IAEA,8BAAC,SAAM,UAAS,WAAU;AAAA;AAC5B;AAYF,SAAS,cACP,OACA,YACA,SAC0B;AAC1B,MAAI,CAAC,MAAM,SAAU,QAAO;AAC5B,SAAO,oBAAC,oBAAiB,YAAwB,OAAO,MAAM,YAAY,SAAkB;AAC9F;AAEO,IAAM,QAAQ,MAAM,WAAuC,CAAC,YAAY,QAAQ;AACrF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,MAAM;AAAA,IAAO,UAAU;AAAA;AAAA,IACvB,eAAe;AAAA,IACf,GAAG;AAAA,EACL,IAAI,kBAAkB,UAAU;AAIhC,QAAM,aAAa,cAAc,QAAQ,OAAO;AAKhD,QAAM,QAAQ,sBAAsB,mBAAmB,MAAM,CAAC;AAG9D,QAAM,eAAe,oBAAoB,YAAY,OAAO;AAC5D,QAAM,CAAC,MAAM,OAAO,IAAI,MAAM,SAAS,IAAI;AAC3C,QAAM,CAAC,WAAW,YAAY,IAAI,MAAM,SAAS,KAAK;AAEtD,QAAM,cAAc,MAAM;AACxB,iBAAa,IAAI;AACjB,WAAO,WAAW,MAAM;AACtB,cAAQ,KAAK;AACb,gBAAU;AAAA,IACZ,GAAG,cAAc;AAAA,EACnB;AAEA,QAAM,WAAW,cAAc,OAAO;AAEtC,QAAM,cAAc,WAClB,oBAAC,OAAI,WAAU,QAAO,eAAa,UAAU,YAAY,MAAM,GAC5D,kBAAQ,eAAe,OAAO,GACjC,IAEA;AAGF,QAAM,UACJ,oBAAC,gBAAa,OAAc,aAA0B,YACnD,UACH;AAGF,SACE,oBAAC,YAAS,IAAI,QAAQ,CAAC,WAAW,SAAS,aACzC;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,eAAa;AAAA,MACb;AAAA,MACA,eAAe;AAAA,MACf,aAAa;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,MAAM,aAAa;AAAA,MACnB,aAAW,aAAa,WAAW;AAAA,MACnC,eAAa;AAAA,MACb,UAAU;AAAA,MACV,QAAQ,cAAc,YAAY,YAAY,WAAW;AAAA,MACxD,GAAG;AAAA,MAEH;AAAA;AAAA,EACH,GACF;AAEJ,CAAC;AAeM,IAAM,mBAAmB,CAAC,YAAY,YAAY;AAEzD,SAAS,sBAAwC,MAAY;AAC3D,QAAM,OAAO,EAAE,GAAG,KAAK;AACvB,aAAW,OAAO,iBAAkB,QAAO,KAAK,GAAG;AACnD,SAAO;AACT;AAEA,MAAM,cAAc;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DragHandle
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-K4EKTMTC.js";
|
|
4
4
|
import {
|
|
5
5
|
useDataViewsCopy
|
|
6
6
|
} from "./chunk-KHG57NAE.js";
|
|
@@ -10,12 +10,15 @@ import {
|
|
|
10
10
|
import {
|
|
11
11
|
default as default2
|
|
12
12
|
} from "./chunk-6DPAWXZ3.js";
|
|
13
|
+
import {
|
|
14
|
+
sxRem
|
|
15
|
+
} from "./chunk-YKCAJ2TN.js";
|
|
13
16
|
|
|
14
17
|
// src/components/data-display/DataViews/base-list-card-gutters.tsx
|
|
15
18
|
import KeyboardArrowRightIcon from "@mui/icons-material/KeyboardArrowRight";
|
|
16
19
|
import IconButton from "@mui/material/IconButton/index.js";
|
|
17
20
|
import { jsx } from "react/jsx-runtime";
|
|
18
|
-
var CHECKBOX_PAD =
|
|
21
|
+
var CHECKBOX_PAD = sxRem(-9);
|
|
19
22
|
function DragSlot({
|
|
20
23
|
drag,
|
|
21
24
|
reserve,
|
|
@@ -131,4 +134,4 @@ export {
|
|
|
131
134
|
SelectSlot,
|
|
132
135
|
DiscloseSlot
|
|
133
136
|
};
|
|
134
|
-
//# sourceMappingURL=chunk-
|
|
137
|
+
//# sourceMappingURL=chunk-B2VXP2B2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/DataViews/base-list-card-gutters.tsx"],"sourcesContent":["\"use client\";\n\nimport KeyboardArrowRightIcon from \"@mui/icons-material/KeyboardArrowRight\";\nimport IconButton from \"@mui/material/IconButton/index.js\";\n\nimport { Checkbox } from \"../../form/Checkbox\";\nimport { Box } from \"../../../mui/Box\";\nimport { sxRem } from \"../../../tokens/relative\";\n\nimport { DragHandle, useDragItem } from \"./data-views-drag\";\nimport { useDataViewsCopy } from \"./data-views-copy-context\";\n\n/**\n * THE THREE GUTTERS AT THE HEAD OF A ROW — the disclosure chevron, the drag grip\n * and the select checkbox.\n *\n * Split from `base-list-card` at the size gate. All three answer the same\n * question in the same way: whether to occupy a rail, hold one open, or leave\n * the template altogether. See `railsTemplateFor` for why the third option has\n * to exist.\n */\n\n/**\n * MUI's Checkbox carries 9px of hit-area padding on every side.\n *\n * Left uncancelled, a row asking for 8px of padding puts the checkbox SQUARE 17px\n * in — and with the empty drag gutter's gap ahead of it, 46px in, which is what\n * made the left edge look like a mistake. The hit area is worth keeping; the\n * optical inset is not, so the padding is cancelled with a negative margin and\n * the glyph lands where the row's own padding says it should.\n */\nconst CHECKBOX_PAD = sxRem(-9);\n\n/** The grip. Its gutter is reserved only when the list says to reserve it. */\nexport function DragSlot({\n drag,\n reserve,\n testId,\n}: {\n drag: ReturnType<typeof useDragItem>;\n reserve: boolean;\n testId?: string;\n}): React.JSX.Element | null {\n if (!drag.draggable) return reserve ? <Box data-slot=\"drag\" /> : null;\n return (\n // display:flex, as on the checkbox below: the grip is an inline-grid, and in\n // a block parent an inline box sits on the text baseline — the line box adds\n // descender leading under it (21px glyph in a 31px slot) and drops the grip\n // 5px below the row's centre. A flex parent has no baseline to sit on.\n <Box\n data-slot=\"drag\"\n sx={{ position: \"relative\", zIndex: 1, display: \"flex\", alignItems: \"center\" }}\n >\n <DragHandle\n handleProps={drag.handleProps}\n gated={drag.handleProps !== undefined}\n testId={testId}\n />\n </Box>\n );\n}\n\n/** The select checkbox. Its gutter is reserved only when the list says to. */\nexport function SelectSlot({\n selectable,\n selected,\n reserve,\n onToggleSelect,\n testId,\n}: {\n selectable: boolean;\n selected: boolean;\n reserve: boolean;\n onToggleSelect?: (event?: React.MouseEvent) => void;\n testId?: string;\n}): React.JSX.Element | null {\n const copy = useDataViewsCopy();\n if (!selectable) return reserve ? <Box data-slot=\"select\" /> : null;\n return (\n // z-index 1: above the stretched link, or the anchor swallows the click.\n <Box\n data-slot=\"select\"\n sx={{ position: \"relative\", zIndex: 1, mx: CHECKBOX_PAD, display: \"flex\" }}\n >\n <Checkbox\n checked={selected}\n onChange={() => onToggleSelect?.()}\n onClick={(event) => {\n event.stopPropagation();\n onToggleSelect?.(event);\n }}\n size=\"small\"\n data-testid={testId}\n aria-label={copy.selection.selectRow}\n />\n </Box>\n );\n}\n\n/**\n * THE DISCLOSURE CHEVRON — the affordance that says this row has more.\n *\n * Rendered only when the card was given a body to reveal. A chevron on a row\n * that opens onto nothing is worse than no chevron: it is a promise the row\n * cannot keep, and an operator who presses it twice learns to stop trusting the\n * column. So `BaseListCard` passes `null` here when it has no children, the\n * slot returns nothing, and — standalone — the rail leaves the template\n * entirely.\n *\n * ROTATED, NOT SWAPPED. One glyph turned 90° rather than a right-chevron\n * exchanged for a down-chevron: the rotation is animatable and reads as the\n * same object moving, where a swap is two icons flickering. It also keeps the\n * button's box identical in both states, so the caption beside it cannot shift\n * as the row opens.\n *\n * `stopPropagation`, because a row is frequently clickable in its own right —\n * opening the record is not the same act as peeking at its detail, and without\n * this the chevron would do both at once.\n */\nexport function DiscloseSlot({\n expandable,\n expanded,\n reserve,\n onToggle,\n controls,\n testId,\n}: {\n expandable: boolean;\n expanded: boolean;\n reserve: boolean;\n onToggle: () => void;\n /** The id of the region this button opens, for `aria-controls`. */\n controls: string;\n testId?: string;\n}): React.JSX.Element | null {\n const copy = useDataViewsCopy();\n if (!expandable) return reserve ? <Box data-slot=\"disclose\" /> : null;\n return (\n // z-index 1 and flex for the same reasons the other two gutters use them:\n // above a stretched link that would otherwise swallow the click, and out of\n // a baseline that would drop the glyph below the row's centre.\n <Box\n data-slot=\"disclose\"\n sx={{ position: \"relative\", zIndex: 1, display: \"flex\", alignItems: \"center\" }}\n >\n <IconButton\n size=\"small\"\n aria-expanded={expanded}\n aria-controls={expanded ? controls : undefined}\n aria-label={expanded ? copy.selection.collapseRow : copy.selection.expandRow}\n data-testid={testId}\n onClick={(event) => {\n event.stopPropagation();\n onToggle();\n }}\n // The row's own keyboard handler treats Enter/Space as \"open the\n // record\"; the button already handles both, so the event must not reach\n // it and fire the second action too.\n onKeyDown={(event) => event.stopPropagation()}\n sx={{\n p: 0.25,\n transform: expanded ? \"rotate(90deg)\" : \"rotate(0deg)\",\n transition: \"transform 150ms ease\",\n // Honour a reduced-motion preference: the state is carried by the\n // angle, not by the animation, so dropping the tween loses nothing.\n \"@media (prefers-reduced-motion: reduce)\": { transition: \"none\" },\n }}\n >\n <KeyboardArrowRightIcon fontSize=\"small\" />\n </IconButton>\n </Box>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAEA,OAAO,4BAA4B;AACnC,OAAO,gBAAgB;AAwCiB;AAZxC,IAAM,eAAe,MAAM,EAAE;AAGtB,SAAS,SAAS;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AACF,GAI6B;AAC3B,MAAI,CAAC,KAAK,UAAW,QAAO,UAAU,oBAACA,UAAA,EAAI,aAAU,QAAO,IAAK;AACjE;AAAA;AAAA;AAAA;AAAA;AAAA,IAKE;AAAA,MAACA;AAAA,MAAA;AAAA,QACC,aAAU;AAAA,QACV,IAAI,EAAE,UAAU,YAAY,QAAQ,GAAG,SAAS,QAAQ,YAAY,SAAS;AAAA,QAE7E;AAAA,UAAC;AAAA;AAAA,YACC,aAAa,KAAK;AAAA,YAClB,OAAO,KAAK,gBAAgB;AAAA,YAC5B;AAAA;AAAA,QACF;AAAA;AAAA,IACF;AAAA;AAEJ;AAGO,SAAS,WAAW;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAM6B;AAC3B,QAAM,OAAO,iBAAiB;AAC9B,MAAI,CAAC,WAAY,QAAO,UAAU,oBAACA,UAAA,EAAI,aAAU,UAAS,IAAK;AAC/D;AAAA;AAAA,IAEE;AAAA,MAACA;AAAA,MAAA;AAAA,QACC,aAAU;AAAA,QACV,IAAI,EAAE,UAAU,YAAY,QAAQ,GAAG,IAAI,cAAc,SAAS,OAAO;AAAA,QAEzE;AAAA,UAAC;AAAA;AAAA,YACC,SAAS;AAAA,YACT,UAAU,MAAM,iBAAiB;AAAA,YACjC,SAAS,CAAC,UAAU;AAClB,oBAAM,gBAAgB;AACtB,+BAAiB,KAAK;AAAA,YACxB;AAAA,YACA,MAAK;AAAA,YACL,eAAa;AAAA,YACb,cAAY,KAAK,UAAU;AAAA;AAAA,QAC7B;AAAA;AAAA,IACF;AAAA;AAEJ;AAsBO,SAAS,aAAa;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAQ6B;AAC3B,QAAM,OAAO,iBAAiB;AAC9B,MAAI,CAAC,WAAY,QAAO,UAAU,oBAACA,UAAA,EAAI,aAAU,YAAW,IAAK;AACjE;AAAA;AAAA;AAAA;AAAA,IAIE;AAAA,MAACA;AAAA,MAAA;AAAA,QACC,aAAU;AAAA,QACV,IAAI,EAAE,UAAU,YAAY,QAAQ,GAAG,SAAS,QAAQ,YAAY,SAAS;AAAA,QAE7E;AAAA,UAAC;AAAA;AAAA,YACC,MAAK;AAAA,YACL,iBAAe;AAAA,YACf,iBAAe,WAAW,WAAW;AAAA,YACrC,cAAY,WAAW,KAAK,UAAU,cAAc,KAAK,UAAU;AAAA,YACnE,eAAa;AAAA,YACb,SAAS,CAAC,UAAU;AAClB,oBAAM,gBAAgB;AACtB,uBAAS;AAAA,YACX;AAAA,YAIA,WAAW,CAAC,UAAU,MAAM,gBAAgB;AAAA,YAC5C,IAAI;AAAA,cACF,GAAG;AAAA,cACH,WAAW,WAAW,kBAAkB;AAAA,cACxC,YAAY;AAAA;AAAA;AAAA,cAGZ,2CAA2C,EAAE,YAAY,OAAO;AAAA,YAClE;AAAA,YAEA,8BAAC,0BAAuB,UAAS,SAAQ;AAAA;AAAA,QAC3C;AAAA;AAAA,IACF;AAAA;AAEJ;","names":["default"]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DataViewsDisplayPanel
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-DY4BP5WA.js";
|
|
4
4
|
import {
|
|
5
5
|
DataViewsExportMenu
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-RKI3MRKX.js";
|
|
7
7
|
import {
|
|
8
8
|
renderBulkActions
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-KJK2Q35C.js";
|
|
10
10
|
import {
|
|
11
11
|
useDataViewsCopy
|
|
12
12
|
} from "./chunk-KHG57NAE.js";
|
|
@@ -22,6 +22,9 @@ import {
|
|
|
22
22
|
import {
|
|
23
23
|
Text
|
|
24
24
|
} from "./chunk-WTOYEWW6.js";
|
|
25
|
+
import {
|
|
26
|
+
sxRem
|
|
27
|
+
} from "./chunk-YKCAJ2TN.js";
|
|
25
28
|
|
|
26
29
|
// src/components/data-display/DataViews/data-views-toolbar.tsx
|
|
27
30
|
import Divider from "@mui/material/Divider/index.js";
|
|
@@ -48,7 +51,7 @@ function ToolbarRightControls(props) {
|
|
|
48
51
|
{
|
|
49
52
|
orientation: "vertical",
|
|
50
53
|
flexItem: true,
|
|
51
|
-
sx: { height: 20, alignSelf: "center", mx: 0.5 }
|
|
54
|
+
sx: { height: sxRem(20), alignSelf: "center", mx: 0.5 }
|
|
52
55
|
}
|
|
53
56
|
)
|
|
54
57
|
] }),
|
|
@@ -133,4 +136,4 @@ function GridToolbar(props) {
|
|
|
133
136
|
export {
|
|
134
137
|
GridToolbar
|
|
135
138
|
};
|
|
136
|
-
//# sourceMappingURL=chunk-
|
|
139
|
+
//# sourceMappingURL=chunk-B7BNNSM2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/DataViews/data-views-toolbar.tsx"],"sourcesContent":["\"use client\";\n\nimport Divider from \"@mui/material/Divider/index.js\";\n\nimport {\n ContentToolbar,\n FilterTrigger,\n type ColumnVisibilityOption,\n type SortFieldDefinition,\n} from \"../../layout/ContentToolbar\";\nimport { Box } from \"../../../mui/Box\";\nimport { Text } from \"../../typography/Text\";\n\nimport { useDataViewsCopy } from \"./data-views-copy-context\";\nimport { DataViewsDisplayPanel, type DisplayPanelView } from \"./data-views-display-panel\";\nimport { DataViewsExportMenu, type DataViewExport } from \"./data-views-export\";\nimport { renderBulkActions } from \"./data-views-grid-helpers\";\nimport type { RowAction } from \"./data-views-types\";\nimport type { DataViewsController } from \"./use-data-views-state\";\nimport { sxRem } from \"../../../tokens/relative\";\n\nexport interface GridToolbarProps<T extends Record<string, unknown>> {\n testIdPrefix: string;\n selectedRows: T[];\n selectAll: () => void;\n clearSelection: () => void;\n rowActions?: RowAction<T>[];\n bulkActions?: (selectedRows: T[], clearSelection: () => void) => React.ReactNode;\n /** A control between the count and the actions menu — see `selectionExtra`. */\n selectionExtra?: React.ReactNode;\n sortFields: SortFieldDefinition[];\n activeSortField: string;\n activeSortOrder: \"asc\" | \"desc\";\n onChangeSort: (field: string, order: \"asc\" | \"desc\") => void;\n matchedCount: number;\n totalCount: number;\n toolbarRightSlot?: React.ReactNode;\n columnOptions: ColumnVisibilityOption[];\n onToggleColumn: (id: string, visible: boolean) => void;\n filterOpen: boolean;\n setFilterOpen: (open: boolean) => void;\n activeFilterCount: number;\n /** Hide the \"Filtros\" slide-in trigger (compact layout shows filters inline). */\n showFilterTrigger?: boolean;\n /**\n * Search + filter controls, rendered ON the toolbar line rather than on a row\n * beneath it. Absent ⇒ the toolbar keeps its plain two-cluster shape.\n */\n filterControls?: React.ReactNode;\n /** Measures the toolbar ROW for the filter overflow — see `useFilterOverflow`. */\n barRef?: React.Ref<HTMLDivElement>;\n /** The controller, so \"Exibir\" can drive sort, columns, order and format. */\n c: DataViewsController<T>;\n /** Per-sort-field value kind, so directions read in the column's own terms. */\n sortKinds?: Record<string, string>;\n /** The saved-view chrome bracketing the Exibir panel, when the host has views. */\n displayView?: DisplayPanelView;\n /** Injected export. Absent ⇒ no Exportar control. */\n exportConfig?: DataViewExport;\n /**\n * Step 2 of the degradation ladder: Exibir/Exportar as icons only.\n * MEASURED upstream (see `useFilterOverflow`) rather than switched at a\n * breakpoint, so a two-filter page keeps its labels where a five-filter one\n * has already given them up.\n */\n compactControls?: boolean;\n /**\n * Step 5 of the ladder, and its floor: on a screen too narrow for even the\n * fully-collapsed row, the counter is dropped so the controls still fit one\n * line instead of spilling outside the toolbar.\n */\n counterHidden?: boolean;\n}\n\n/** The right-aligned toolbar controls: Sort By, the counter, zoom/layout/columns, filters. */\nfunction ToolbarRightControls<T extends Record<string, unknown>>(props: GridToolbarProps<T>): React.JSX.Element {\n const { testIdPrefix, matchedCount, totalCount, filterOpen, setFilterOpen } = props;\n return (\n <>\n {/* MEASURED, never breakpointed: `RESERVED.counter` prices it into the\n ladder, so hiding it at `md` was the ladder and a breakpoint\n disagreeing about the same pixels — which broke the row at exactly\n 900px. It is dropped only as the ladder's last rung. */}\n {!props.counterHidden && (\n <>\n <Text variant=\"caption\" as=\"span\">\n <Box\n component=\"span\"\n data-testid={`${testIdPrefix}-counter`}\n sx={{ whiteSpace: \"nowrap\" }}\n >\n {matchedCount} de {totalCount}\n </Box>\n </Text>\n {/* Divides the READING of the list from the controls that change it —\n the counter states what is on screen, everything right of here\n acts on it. */}\n <Divider\n orientation=\"vertical\"\n flexItem\n sx={{ height: sxRem(20), alignSelf: \"center\", mx: 0.5 }}\n />\n </>\n )}\n {props.toolbarRightSlot}\n {/* Sort + columns + format, in ONE control — see DataViewsDisplayPanel. */}\n <DataViewsDisplayPanel\n c={props.c}\n testIdPrefix={testIdPrefix}\n sortKinds={props.sortKinds}\n view={props.displayView}\n compact={props.compactControls}\n />\n {props.exportConfig && (\n <DataViewsExportMenu\n config={props.exportConfig}\n query={props.c.currentQuery}\n totalCount={props.totalCount}\n selectedIds={[...props.c.selectedIds]}\n columns={props.columnOptions.filter((col) => col.visible).map((col) => ({ id: col.id, label: col.label }))}\n testIdPrefix={testIdPrefix}\n compact={props.compactControls}\n />\n )}\n {props.showFilterTrigger !== false && (\n <FilterTrigger\n open={filterOpen}\n onOpenChange={setFilterOpen}\n activeCount={props.activeFilterCount}\n data-testid={`${testIdPrefix}-filters-toggle`}\n />\n )}\n </>\n );\n}\n\n/**\n * The bordered toolbar band: selection chrome + Sort By, the result counter, the\n * saved-views slot, and the filter funnel. The negative margin lets the top/bottom\n * separators reach the sidebar's vertical line and the window edge.\n */\nexport function GridToolbar<T extends Record<string, unknown>>(props: GridToolbarProps<T>): React.JSX.Element {\n const copy = useDataViewsCopy();\n const { testIdPrefix, selectedRows } = props;\n return (\n <Box\n ref={props.barRef}\n sx={{\n borderTop: 1,\n borderBottom: 1,\n borderColor: \"divider\",\n py: 1.25,\n mx: { xs: -2, md: -3 },\n px: { xs: 2, md: 3 },\n }}\n >\n <ContentToolbar\n selectAllLabel={copy.selection.selectAll}\n selectAllText={copy.selection.selectAllOnPage}\n clearAllText={copy.filters.clearAll}\n hasSelection={selectedRows.length > 0}\n selectedCount={selectedRows.length}\n selectAll={props.selectAll}\n clearSelection={props.clearSelection}\n selectAllTestId={`${testIdPrefix}-select-all`}\n clearAllTestId={`${testIdPrefix}-clear-all`}\n selectionExtra={props.selectionExtra}\n actions={renderBulkActions({\n rowActions: props.rowActions,\n bulkActions: props.bulkActions,\n selectedRows,\n clearSelection: props.clearSelection,\n testIdPrefix,\n })}\n leadingControls={props.filterControls}\n // Selection takes the whole line: no Select All while browsing, and no\n // search/filters/Exibir/Exportar once a row is ticked.\n exclusiveSelection\n rightControls={<ToolbarRightControls {...props} />}\n />\n </Box>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAO,aAAa;AAkFZ,mBACE,KACE,YAFJ;AATR,SAAS,qBAAwD,OAA+C;AAC9G,QAAM,EAAE,cAAc,cAAc,YAAY,YAAY,cAAc,IAAI;AAC9E,SACE,iCAKG;AAAA,KAAC,MAAM,iBACN,iCACE;AAAA,0BAAC,QAAK,SAAQ,WAAU,IAAG,QACzB;AAAA,QAACA;AAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,eAAa,GAAG,YAAY;AAAA,UAC5B,IAAI,EAAE,YAAY,SAAS;AAAA,UAE1B;AAAA;AAAA,YAAa;AAAA,YAAK;AAAA;AAAA;AAAA,MACrB,GACF;AAAA,MAIA;AAAA,QAAC;AAAA;AAAA,UACC,aAAY;AAAA,UACZ,UAAQ;AAAA,UACR,IAAI,EAAE,QAAQ,MAAM,EAAE,GAAG,WAAW,UAAU,IAAI,IAAI;AAAA;AAAA,MACxD;AAAA,OACF;AAAA,IAED,MAAM;AAAA,IAEP;AAAA,MAAC;AAAA;AAAA,QACC,GAAG,MAAM;AAAA,QACT;AAAA,QACA,WAAW,MAAM;AAAA,QACjB,MAAM,MAAM;AAAA,QACZ,SAAS,MAAM;AAAA;AAAA,IACjB;AAAA,IACC,MAAM,gBACL;AAAA,MAAC;AAAA;AAAA,QACC,QAAQ,MAAM;AAAA,QACd,OAAO,MAAM,EAAE;AAAA,QACf,YAAY,MAAM;AAAA,QAClB,aAAa,CAAC,GAAG,MAAM,EAAE,WAAW;AAAA,QACpC,SAAS,MAAM,cAAc,OAAO,CAAC,QAAQ,IAAI,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,IAAI,OAAO,IAAI,MAAM,EAAE;AAAA,QACzG;AAAA,QACA,SAAS,MAAM;AAAA;AAAA,IACjB;AAAA,IAED,MAAM,sBAAsB,SAC3B;AAAA,MAAC;AAAA;AAAA,QACC,MAAM;AAAA,QACN,cAAc;AAAA,QACd,aAAa,MAAM;AAAA,QACnB,eAAa,GAAG,YAAY;AAAA;AAAA,IAC9B;AAAA,KAEJ;AAEJ;AAOO,SAAS,YAA+C,OAA+C;AAC5G,QAAM,OAAO,iBAAiB;AAC9B,QAAM,EAAE,cAAc,aAAa,IAAI;AACvC,SACE;AAAA,IAACA;AAAA,IAAA;AAAA,MACC,KAAK,MAAM;AAAA,MACX,IAAI;AAAA,QACF,WAAW;AAAA,QACX,cAAc;AAAA,QACd,aAAa;AAAA,QACb,IAAI;AAAA,QACJ,IAAI,EAAE,IAAI,IAAI,IAAI,GAAG;AAAA,QACrB,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE;AAAA,MACrB;AAAA,MAEA;AAAA,QAAC;AAAA;AAAA,UACC,gBAAgB,KAAK,UAAU;AAAA,UAC/B,eAAe,KAAK,UAAU;AAAA,UAC9B,cAAc,KAAK,QAAQ;AAAA,UAC3B,cAAc,aAAa,SAAS;AAAA,UACpC,eAAe,aAAa;AAAA,UAC5B,WAAW,MAAM;AAAA,UACjB,gBAAgB,MAAM;AAAA,UACtB,iBAAiB,GAAG,YAAY;AAAA,UAChC,gBAAgB,GAAG,YAAY;AAAA,UAC/B,gBAAgB,MAAM;AAAA,UACtB,SAAS,kBAAkB;AAAA,YACzB,YAAY,MAAM;AAAA,YAClB,aAAa,MAAM;AAAA,YACnB;AAAA,YACA,gBAAgB,MAAM;AAAA,YACtB;AAAA,UACF,CAAC;AAAA,UACD,iBAAiB,MAAM;AAAA,UAGvB,oBAAkB;AAAA,UAClB,eAAe,oBAAC,wBAAsB,GAAG,OAAO;AAAA;AAAA,MAClD;AAAA;AAAA,EACF;AAEJ;","names":["default"]}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
thumbnailStripSx
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3KA6MYIR.js";
|
|
4
4
|
import {
|
|
5
5
|
onMedia,
|
|
6
6
|
sheen
|
|
7
7
|
} from "./chunk-FQ6UW7IY.js";
|
|
8
8
|
import {
|
|
9
|
+
rem,
|
|
9
10
|
sxRem
|
|
10
11
|
} from "./chunk-YKCAJ2TN.js";
|
|
11
12
|
|
|
@@ -13,8 +14,8 @@ import {
|
|
|
13
14
|
import PlayIcon from "@mui/icons-material/PlayArrow";
|
|
14
15
|
import Box from "@mui/material/Box/index.js";
|
|
15
16
|
import { jsx } from "react/jsx-runtime";
|
|
16
|
-
var
|
|
17
|
-
var
|
|
17
|
+
var THUMB = { widthPx: 60, heightPx: 40 };
|
|
18
|
+
var frame = (theme, color) => `${rem(theme, 2)} solid ${color}`;
|
|
18
19
|
var VideoThumbnail = () => /* @__PURE__ */ jsx(
|
|
19
20
|
Box,
|
|
20
21
|
{
|
|
@@ -40,7 +41,7 @@ var LightboxThumbnails = ({
|
|
|
40
41
|
sx: {
|
|
41
42
|
...thumbnailStripSx,
|
|
42
43
|
position: "absolute",
|
|
43
|
-
bottom: 16,
|
|
44
|
+
bottom: sxRem(16),
|
|
44
45
|
left: "50%",
|
|
45
46
|
transform: "translateX(-50%)",
|
|
46
47
|
display: "flex",
|
|
@@ -55,14 +56,14 @@ var LightboxThumbnails = ({
|
|
|
55
56
|
{
|
|
56
57
|
onClick: () => onSelect(index),
|
|
57
58
|
sx: {
|
|
58
|
-
width:
|
|
59
|
-
height:
|
|
59
|
+
width: sxRem(THUMB.widthPx),
|
|
60
|
+
height: sxRem(THUMB.heightPx),
|
|
60
61
|
cursor: "pointer",
|
|
61
|
-
border: currentIndex === index ?
|
|
62
|
+
border: (theme) => frame(theme, currentIndex === index ? onMedia(theme) : "transparent"),
|
|
62
63
|
borderRadius: 0.5,
|
|
63
64
|
overflow: "hidden",
|
|
64
65
|
flexShrink: 0,
|
|
65
|
-
"&:hover": { border: (theme) =>
|
|
66
|
+
"&:hover": { border: (theme) => frame(theme, sheen(theme, 0.7)) }
|
|
66
67
|
},
|
|
67
68
|
"data-testid": testId(`thumbnail-${index}`),
|
|
68
69
|
children: item.type === "video" ? /* @__PURE__ */ jsx(VideoThumbnail, {}) : /* @__PURE__ */ jsx(
|
|
@@ -82,4 +83,4 @@ var LightboxThumbnails = ({
|
|
|
82
83
|
export {
|
|
83
84
|
LightboxThumbnails
|
|
84
85
|
};
|
|
85
|
-
//# sourceMappingURL=chunk-
|
|
86
|
+
//# sourceMappingURL=chunk-BAFDSAWY.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/Lightbox/LightboxThumbnails.tsx"],"sourcesContent":["import PlayIcon from '@mui/icons-material/PlayArrow';\nimport Box from '@mui/material/Box/index.js';\nimport type { Theme } from '@mui/material/styles/index.js';\nimport type { FC } from 'react';\nimport React from 'react';\n\nimport { thumbnailStripSx } from './Lightbox.constants';\nimport type { LightboxItem } from './Lightbox.types';\nimport { onMedia, sheen } from '../../../tokens/ink';\nimport { rem, sxRem } from '../../../tokens/relative';\n\n/** One filmstrip frame, in design px. */\nconst THUMB = { widthPx: 60, heightPx: 40 } as const;\n\nconst frame = (theme: Theme, color: string): string => `${rem(theme, 2)} solid ${color}`;\n\nconst VideoThumbnail: FC = () => (\n <Box\n sx={{\n width: '100%',\n height: '100%',\n background: (theme: Theme) => sheen(theme, 0.1),\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n }}\n >\n <PlayIcon sx={{ color: onMedia, fontSize: sxRem(16) }} />\n </Box>\n);\n\nexport interface LightboxThumbnailsProps {\n items: LightboxItem[];\n currentIndex: number;\n testId: (suffix: string) => string;\n onSelect: (index: number) => void;\n}\n\nexport const LightboxThumbnails: FC<LightboxThumbnailsProps> = ({\n items,\n currentIndex,\n testId,\n onSelect,\n}) => (\n <Box\n sx={{\n ...thumbnailStripSx,\n position: 'absolute',\n bottom: sxRem(16),\n left: '50%',\n transform: 'translateX(-50%)',\n display: 'flex',\n gap: 1,\n maxWidth: '90vw',\n overflowX: 'auto',\n padding: 1,\n }}\n data-testid={testId('thumbnails')}\n >\n {items.map((item, index) => (\n <Box\n key={`${item.src}-${index}`}\n onClick={() => onSelect(index)}\n sx={{\n width: sxRem(THUMB.widthPx),\n height: sxRem(THUMB.heightPx),\n cursor: 'pointer',\n border: (theme: Theme) => frame(theme, currentIndex === index ? onMedia(theme) : 'transparent'),\n borderRadius: 0.5,\n overflow: 'hidden',\n flexShrink: 0,\n '&:hover': { border: (theme: Theme) => frame(theme, sheen(theme, 0.7)) },\n }}\n data-testid={testId(`thumbnail-${index}`)}\n >\n {item.type === 'video' ? (\n <VideoThumbnail />\n ) : (\n <img\n src={item.src}\n alt={item.alt || `Thumbnail ${index + 1}`}\n style={{ width: '100%', height: '100%', objectFit: 'cover' }}\n />\n )}\n </Box>\n ))}\n </Box>\n);\n"],"mappings":";;;;;;;;;;;;;AAAA,OAAO,cAAc;AACrB,OAAO,SAAS;AA0BZ;AAfJ,IAAM,QAAQ,EAAE,SAAS,IAAI,UAAU,GAAG;AAE1C,IAAM,QAAQ,CAAC,OAAc,UAA0B,GAAG,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK;AAEtF,IAAM,iBAAqB,MACzB;AAAA,EAAC;AAAA;AAAA,IACC,IAAI;AAAA,MACF,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,YAAY,CAAC,UAAiB,MAAM,OAAO,GAAG;AAAA,MAC9C,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,gBAAgB;AAAA,IAClB;AAAA,IAEA,8BAAC,YAAS,IAAI,EAAE,OAAO,SAAS,UAAU,MAAM,EAAE,EAAE,GAAG;AAAA;AACzD;AAUK,IAAM,qBAAkD,CAAC;AAAA,EAC9D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MACE;AAAA,EAAC;AAAA;AAAA,IACC,IAAI;AAAA,MACF,GAAG;AAAA,MACH,UAAU;AAAA,MACV,QAAQ,MAAM,EAAE;AAAA,MAChB,MAAM;AAAA,MACN,WAAW;AAAA,MACX,SAAS;AAAA,MACT,KAAK;AAAA,MACL,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS;AAAA,IACX;AAAA,IACA,eAAa,OAAO,YAAY;AAAA,IAE/B,gBAAM,IAAI,CAAC,MAAM,UAChB;AAAA,MAAC;AAAA;AAAA,QAEC,SAAS,MAAM,SAAS,KAAK;AAAA,QAC7B,IAAI;AAAA,UACF,OAAO,MAAM,MAAM,OAAO;AAAA,UAC1B,QAAQ,MAAM,MAAM,QAAQ;AAAA,UAC5B,QAAQ;AAAA,UACR,QAAQ,CAAC,UAAiB,MAAM,OAAO,iBAAiB,QAAQ,QAAQ,KAAK,IAAI,aAAa;AAAA,UAC9F,cAAc;AAAA,UACd,UAAU;AAAA,UACV,YAAY;AAAA,UACZ,WAAW,EAAE,QAAQ,CAAC,UAAiB,MAAM,OAAO,MAAM,OAAO,GAAG,CAAC,EAAE;AAAA,QACzE;AAAA,QACA,eAAa,OAAO,aAAa,KAAK,EAAE;AAAA,QAEvC,eAAK,SAAS,UACb,oBAAC,kBAAe,IAEhB;AAAA,UAAC;AAAA;AAAA,YACC,KAAK,KAAK;AAAA,YACV,KAAK,KAAK,OAAO,aAAa,QAAQ,CAAC;AAAA,YACvC,OAAO,EAAE,OAAO,QAAQ,QAAQ,QAAQ,WAAW,QAAQ;AAAA;AAAA,QAC7D;AAAA;AAAA,MArBG,GAAG,KAAK,GAAG,IAAI,KAAK;AAAA,IAuB3B,CACD;AAAA;AACH;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AlertDialog
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-OG6LYQ7C.js";
|
|
4
4
|
|
|
5
5
|
// src/components/feedback/ConfirmAction/ConfirmAction.parts.tsx
|
|
6
6
|
import Alert from "@mui/material/Alert/index.js";
|
|
@@ -104,4 +104,4 @@ function ConfirmActionDialog({
|
|
|
104
104
|
export {
|
|
105
105
|
ConfirmActionDialog
|
|
106
106
|
};
|
|
107
|
-
//# sourceMappingURL=chunk-
|
|
107
|
+
//# sourceMappingURL=chunk-BJZOBG24.js.map
|
|
@@ -7,8 +7,12 @@ import {
|
|
|
7
7
|
import {
|
|
8
8
|
Text
|
|
9
9
|
} from "./chunk-WTOYEWW6.js";
|
|
10
|
+
import {
|
|
11
|
+
rem
|
|
12
|
+
} from "./chunk-YKCAJ2TN.js";
|
|
10
13
|
|
|
11
14
|
// src/components/data-display/DataViews/DataViewsBoard.tsx
|
|
15
|
+
import { useTheme } from "@mui/material/styles/index.js";
|
|
12
16
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
17
|
var DEFAULT_EXTRA_LABEL = "Sem etapa";
|
|
14
18
|
function groupValueOf(row, groupBy) {
|
|
@@ -96,12 +100,12 @@ function BoardColumn({
|
|
|
96
100
|
{
|
|
97
101
|
"data-testid": testId,
|
|
98
102
|
sx: {
|
|
99
|
-
flex: `0 0 ${width}
|
|
103
|
+
flex: `0 0 ${width}`,
|
|
100
104
|
minWidth: width,
|
|
101
105
|
display: "flex",
|
|
102
106
|
flexDirection: "column",
|
|
103
107
|
gap: 1,
|
|
104
|
-
borderTop: 3
|
|
108
|
+
borderTop: (theme) => `${rem(theme, 3)} solid`,
|
|
105
109
|
borderStyle: "solid",
|
|
106
110
|
borderColor: toneColor(column.tone),
|
|
107
111
|
borderRadius: 1,
|
|
@@ -130,8 +134,7 @@ function BoardColumn({
|
|
|
130
134
|
}
|
|
131
135
|
);
|
|
132
136
|
}
|
|
133
|
-
var
|
|
134
|
-
var MIN_COLUMN_WIDTH = 220;
|
|
137
|
+
var columnWidth = (theme, cardScale) => rem(theme, Math.max(220, Math.round(240 * cardScale)));
|
|
135
138
|
function DataViewsBoard({
|
|
136
139
|
rows,
|
|
137
140
|
board,
|
|
@@ -143,8 +146,9 @@ function DataViewsBoard({
|
|
|
143
146
|
dataTestId
|
|
144
147
|
}) {
|
|
145
148
|
const copy = useDataViewsCopy();
|
|
149
|
+
const theme = useTheme();
|
|
146
150
|
const columns = groupRows(rows, board);
|
|
147
|
-
const width =
|
|
151
|
+
const width = columnWidth(theme, cardScale);
|
|
148
152
|
const testId = dataTestId ? `${dataTestId}-board` : "data-views-board";
|
|
149
153
|
return /* @__PURE__ */ jsxs(default2, { sx: { mt: 1.5 }, children: [
|
|
150
154
|
/* @__PURE__ */ jsx(Text, { variant: "caption", as: "p", children: /* @__PURE__ */ jsx(default2, { component: "span", "data-testid": `${testId}-scale-note`, sx: { color: "text.secondary" }, children: copy.board.pageScopeNote }) }),
|
|
@@ -187,4 +191,4 @@ export {
|
|
|
187
191
|
groupRows,
|
|
188
192
|
DataViewsBoard
|
|
189
193
|
};
|
|
190
|
-
//# sourceMappingURL=chunk-
|
|
194
|
+
//# sourceMappingURL=chunk-BNEWMFVB.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/DataViews/DataViewsBoard.tsx"],"sourcesContent":["\"use client\";\n\nimport { useTheme, type Theme } from \"@mui/material/styles/index.js\";\n\nimport { useDataViewsCopy } from \"./data-views-copy-context\";\nimport { Box } from \"../../../mui/Box\";\nimport { Text } from \"../../typography/Text\";\n\nimport type { DataViewCardSelection } from \"./data-views-types\";\nimport { rem } from \"../../../tokens/relative\";\n\n/**\n * One column of the board — a single value of the grouping field, with the label\n * to print above it.\n *\n * `tone` is an opaque palette hint (e.g. `\"success\"`, `\"error\"`) the host picks\n * from its own state machine; the board only uses it to colour the column's\n * header accent, so an unknown tone degrades to the default rather than throwing.\n */\nexport interface BoardGroup {\n value: string;\n label: string;\n tone?: string;\n}\n\n/**\n * The BOARD layout's configuration: the same page the table rendered, laid out\n * as columns of the entity's own card.\n *\n * The board earns its place when a page's buckets are STATES IN A STATE MACHINE\n * rather than arbitrary groupings — payments are exactly that shape. Derive\n * `groups` and the table's `scopes` from ONE state-machine definition: two\n * hand-maintained lists of the same states will drift, and the drift shows up as\n * a column the tabs do not have.\n */\nexport interface BoardConfig<T extends Record<string, unknown>> {\n /** The row field whose value places a card in a column. */\n groupBy: keyof T & string;\n /** The columns, in DELIBERATE reading order — the board renders this order. */\n groups: BoardGroup[];\n /** Optional numeric row field summed per column (e.g. the amount in cents). */\n sumBy?: keyof T & string;\n /**\n * Formats a column's total. The PAGE's own formatter, so the board prints\n * money in the store's currency instead of inventing a second convention.\n * Omitted ⇒ the raw sum.\n */\n formatSum?: (total: number) => string;\n /** Header for the column collecting rows in states the front end does not declare. */\n extraLabel?: string;\n}\n\n/** The default header for the catch-all column (see {@link groupRows}). */\nconst DEFAULT_EXTRA_LABEL = \"Sem etapa\";\n\n/** One resolved column: a declared group (or the catch-all) plus its loaded rows. */\ninterface ResolvedColumn<T> {\n key: string;\n label: string;\n tone?: string;\n rows: T[];\n}\n\n/** Read the grouping value off a row as a string (`null`/`undefined` ⇒ \"\"). */\nfunction groupValueOf<T extends Record<string, unknown>>(row: T, groupBy: string): string {\n const value = row[groupBy];\n return value === null || value === undefined ? \"\" : String(value);\n}\n\n/**\n * Place every loaded row into a column, in the DECLARED order, and collect the\n * leftovers into one extra column at the end.\n *\n * Nothing is ever dropped, and that is the point: a state added to the back end\n * before the front end knows about it must not make rows disappear. On a\n * payments board, a silently dropped row is money nobody can see. The extra\n * column only exists when something landed in it — once every row is placed it\n * is gone, so the common case shows exactly the declared columns.\n *\n * A declared group with no rows KEEPS its position: the order is a reading\n * order chosen by the host, not a ranking derived from the data.\n */\nexport function groupRows<T extends Record<string, unknown>>(\n rows: T[],\n board: BoardConfig<T>,\n): ResolvedColumn<T>[] {\n const declared = new Map<string, T[]>(board.groups.map((group) => [group.value, []]));\n const extra: T[] = [];\n for (const row of rows) {\n const bucket = declared.get(groupValueOf(row, board.groupBy));\n if (bucket) bucket.push(row);\n else extra.push(row);\n }\n const columns: ResolvedColumn<T>[] = board.groups.map((group) => ({\n key: group.value,\n label: group.label,\n tone: group.tone,\n rows: declared.get(group.value) ?? [],\n }));\n if (extra.length > 0) {\n columns.push({ key: \"__extra__\", label: board.extraLabel ?? DEFAULT_EXTRA_LABEL, rows: extra });\n }\n return columns;\n}\n\n/** A column's total over the rows ON THIS PAGE, or null when nothing is summed. */\nfunction sumOf<T extends Record<string, unknown>>(rows: T[], sumBy: string | undefined): number | null {\n if (!sumBy) return null;\n return rows.reduce((total, row) => {\n const value = row[sumBy];\n return typeof value === \"number\" && Number.isFinite(value) ? total + value : total;\n }, 0);\n}\n\n/** Map a `tone` hint onto a theme colour, defaulting for anything unrecognised. */\nfunction toneColor(tone: string | undefined): string {\n const known = [\"primary\", \"secondary\", \"success\", \"warning\", \"error\", \"info\"];\n return tone && known.includes(tone) ? `${tone}.main` : \"divider\";\n}\n\n/**\n * A column's heading: the label, the page count and the optional sum.\n *\n * The count is labelled \"nesta página\" EVERYWHERE it appears, including in its\n * accessible name. The scope tabs above the board show whole-query totals from\n * the server; an unlabelled column count would contradict them the moment there\n * is a second page, and the reader has no way to tell which number to believe.\n */\nfunction BoardColumnHeader({\n label,\n count,\n sum,\n testId,\n}: {\n label: string;\n count: number;\n /** The formatted total, or null when the board sums nothing. */\n sum: string | null;\n testId: string;\n}): React.JSX.Element {\n const copy = useDataViewsCopy();\n return (\n <Box sx={{ display: \"flex\", flexDirection: \"column\", gap: 0.25 }}>\n <Box sx={{ display: \"flex\", alignItems: \"baseline\", justifyContent: \"space-between\", gap: 1 }}>\n <Text variant=\"caption\" as=\"span\">\n <Box component=\"span\" sx={{ fontWeight: 600 }}>\n {label}\n </Box>\n </Text>\n <Text variant=\"caption\" as=\"span\">\n <Box\n component=\"span\"\n data-testid={`${testId}-count`}\n aria-label={copy.board.countOnPage(label, count)}\n sx={{ color: \"text.secondary\", whiteSpace: \"nowrap\" }}\n >\n {copy.board.onThisPage(count)}\n </Box>\n </Text>\n </Box>\n {sum !== null && (\n <Text variant=\"caption\" as=\"span\">\n <Box\n component=\"span\"\n data-testid={`${testId}-sum`}\n aria-label={copy.board.pageSum(sum)}\n sx={{ color: \"text.secondary\" }}\n >\n {sum}\n </Box>\n </Text>\n )}\n </Box>\n );\n}\n\ninterface BoardColumnProps<T extends Record<string, unknown>> {\n column: ResolvedColumn<T>;\n board: BoardConfig<T>;\n getRowId: (row: T) => string | number;\n renderCard: (row: T, selection: DataViewCardSelection) => React.ReactNode;\n selectedIds: Set<string | number>;\n onToggleId: (id: string | number) => void;\n cardScale: number;\n /** The column's width as CSS, already through the type scale. */\n width: string;\n testId: string;\n}\n\n/** One column: its header over a vertical stack of the entity's own cards. */\nfunction BoardColumn<T extends Record<string, unknown>>({\n column,\n board,\n getRowId,\n renderCard,\n selectedIds,\n onToggleId,\n cardScale,\n width,\n testId,\n}: BoardColumnProps<T>): React.JSX.Element {\n const copy = useDataViewsCopy();\n const total = sumOf(column.rows, board.sumBy);\n return (\n <Box\n data-testid={testId}\n sx={{\n flex: `0 0 ${width}`,\n minWidth: width,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 1,\n borderTop: (theme: Theme) => `${rem(theme, 3)} solid`,\n borderStyle: \"solid\",\n borderColor: toneColor(column.tone),\n borderRadius: 1,\n bgcolor: \"action.hover\",\n p: 1,\n }}\n >\n <BoardColumnHeader\n label={column.label}\n count={column.rows.length}\n sum={total === null ? null : String(board.formatSum ? board.formatSum(total) : total)}\n testId={testId}\n />\n {column.rows.length === 0 ? (\n <Text variant=\"caption\" as=\"p\">\n <Box component=\"span\" data-testid={`${testId}-empty`} sx={{ color: \"text.disabled\" }}>\n {copy.board.emptyColumn}\n </Box>\n </Text>\n ) : (\n column.rows.map((row) => {\n const id = getRowId(row);\n return (\n <Box key={id}>\n {renderCard(row, {\n selected: selectedIds.has(id),\n onToggleSelect: () => onToggleId(id),\n scale: cardScale,\n })}\n </Box>\n );\n })\n )}\n </Box>\n );\n}\n\ninterface DataViewsBoardProps<T extends Record<string, unknown>> {\n /** The LOADED page, verbatim. The board never filters, sorts or paginates. */\n rows: T[];\n board: BoardConfig<T>;\n getRowId: (row: T) => string | number;\n renderCard: (row: T, selection: DataViewCardSelection) => React.ReactNode;\n selectedIds: Set<string | number>;\n onToggleId: (id: string | number) => void;\n /** Card size multiplier from the toolbar zoom slider — the same knob as cards. */\n cardScale: number;\n dataTestId?: string;\n}\n\n/**\n * The board's column width: 240 design px at scale 1, which the zoom slider\n * multiplies, and never narrower than 220 however far the zoom is wound down\n * (touch targets) — through the type scale.\n */\nconst columnWidth = (theme: Theme, cardScale: number): string =>\n rem(theme, Math.max(220, Math.round(240 * cardScale)));\n\n/**\n * The BOARD layout: the loaded page distributed into columns of the entity's own\n * card. A rendering, not a second source of truth — switching to it emits no\n * query, and it shows exactly the rows the table showed.\n *\n * The board scrolls HORIZONTALLY inside its own box rather than letting the page\n * scroll sideways, and its columns keep a usable width at every zoom, so a phone\n * gets a real board instead of six unreadable slivers.\n *\n * Cards are not draggable between columns. Dragging a payment from Recusado to\n * Pago is a domain transition with side effects, not a re-render: it needs the\n * allowed-transition set from the state machine plus a confirmation, and\n * `RowAction.isVisible` is the existing per-row guard to reuse when that lands.\n */\nexport function DataViewsBoard<T extends Record<string, unknown>>({\n rows,\n board,\n getRowId,\n renderCard,\n selectedIds,\n onToggleId,\n cardScale,\n dataTestId,\n}: DataViewsBoardProps<T>): React.JSX.Element {\n const copy = useDataViewsCopy();\n const theme = useTheme();\n const columns = groupRows(rows, board);\n const width = columnWidth(theme, cardScale);\n const testId = dataTestId ? `${dataTestId}-board` : \"data-views-board\";\n return (\n <Box sx={{ mt: 1.5 }}>\n <Text variant=\"caption\" as=\"p\">\n <Box component=\"span\" data-testid={`${testId}-scale-note`} sx={{ color: \"text.secondary\" }}>\n {copy.board.pageScopeNote}\n </Box>\n </Text>\n <Box\n data-testid={testId}\n sx={{\n mt: 1,\n display: \"flex\",\n alignItems: \"flex-start\",\n gap: 1.5,\n // The BOARD scrolls, not the page: without `maxWidth` the flex row\n // widens its parent and the whole document scrolls sideways.\n maxWidth: \"100%\",\n overflowX: \"auto\",\n pb: 1,\n }}\n >\n {columns.map((column) => (\n <BoardColumn\n key={column.key}\n column={column}\n board={board}\n getRowId={getRowId}\n renderCard={renderCard}\n selectedIds={selectedIds}\n onToggleId={onToggleId}\n cardScale={cardScale}\n width={width}\n testId={`${testId}-column-${column.key}`}\n />\n ))}\n </Box>\n </Box>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;AAEA,SAAS,gBAA4B;AA6I/B,SAEI,KAFJ;AA1FN,IAAM,sBAAsB;AAW5B,SAAS,aAAgD,KAAQ,SAAyB;AACxF,QAAM,QAAQ,IAAI,OAAO;AACzB,SAAO,UAAU,QAAQ,UAAU,SAAY,KAAK,OAAO,KAAK;AAClE;AAeO,SAAS,UACd,MACA,OACqB;AACrB,QAAM,WAAW,IAAI,IAAiB,MAAM,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;AACpF,QAAM,QAAa,CAAC;AACpB,aAAW,OAAO,MAAM;AACtB,UAAM,SAAS,SAAS,IAAI,aAAa,KAAK,MAAM,OAAO,CAAC;AAC5D,QAAI,OAAQ,QAAO,KAAK,GAAG;AAAA,QACtB,OAAM,KAAK,GAAG;AAAA,EACrB;AACA,QAAM,UAA+B,MAAM,OAAO,IAAI,CAAC,WAAW;AAAA,IAChE,KAAK,MAAM;AAAA,IACX,OAAO,MAAM;AAAA,IACb,MAAM,MAAM;AAAA,IACZ,MAAM,SAAS,IAAI,MAAM,KAAK,KAAK,CAAC;AAAA,EACtC,EAAE;AACF,MAAI,MAAM,SAAS,GAAG;AACpB,YAAQ,KAAK,EAAE,KAAK,aAAa,OAAO,MAAM,cAAc,qBAAqB,MAAM,MAAM,CAAC;AAAA,EAChG;AACA,SAAO;AACT;AAGA,SAAS,MAAyC,MAAW,OAA0C;AACrG,MAAI,CAAC,MAAO,QAAO;AACnB,SAAO,KAAK,OAAO,CAAC,OAAO,QAAQ;AACjC,UAAM,QAAQ,IAAI,KAAK;AACvB,WAAO,OAAO,UAAU,YAAY,OAAO,SAAS,KAAK,IAAI,QAAQ,QAAQ;AAAA,EAC/E,GAAG,CAAC;AACN;AAGA,SAAS,UAAU,MAAkC;AACnD,QAAM,QAAQ,CAAC,WAAW,aAAa,WAAW,WAAW,SAAS,MAAM;AAC5E,SAAO,QAAQ,MAAM,SAAS,IAAI,IAAI,GAAG,IAAI,UAAU;AACzD;AAUA,SAAS,kBAAkB;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAMsB;AACpB,QAAM,OAAO,iBAAiB;AAC9B,SACE,qBAACA,UAAA,EAAI,IAAI,EAAE,SAAS,QAAQ,eAAe,UAAU,KAAK,KAAK,GAC7D;AAAA,yBAACA,UAAA,EAAI,IAAI,EAAE,SAAS,QAAQ,YAAY,YAAY,gBAAgB,iBAAiB,KAAK,EAAE,GAC1F;AAAA,0BAAC,QAAK,SAAQ,WAAU,IAAG,QACzB,8BAACA,UAAA,EAAI,WAAU,QAAO,IAAI,EAAE,YAAY,IAAI,GACzC,iBACH,GACF;AAAA,MACA,oBAAC,QAAK,SAAQ,WAAU,IAAG,QACzB;AAAA,QAACA;AAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,eAAa,GAAG,MAAM;AAAA,UACtB,cAAY,KAAK,MAAM,YAAY,OAAO,KAAK;AAAA,UAC/C,IAAI,EAAE,OAAO,kBAAkB,YAAY,SAAS;AAAA,UAEnD,eAAK,MAAM,WAAW,KAAK;AAAA;AAAA,MAC9B,GACF;AAAA,OACF;AAAA,IACC,QAAQ,QACP,oBAAC,QAAK,SAAQ,WAAU,IAAG,QACzB;AAAA,MAACA;AAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,eAAa,GAAG,MAAM;AAAA,QACtB,cAAY,KAAK,MAAM,QAAQ,GAAG;AAAA,QAClC,IAAI,EAAE,OAAO,iBAAiB;AAAA,QAE7B;AAAA;AAAA,IACH,GACF;AAAA,KAEJ;AAEJ;AAgBA,SAAS,YAA+C;AAAA,EACtD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA2C;AACzC,QAAM,OAAO,iBAAiB;AAC9B,QAAM,QAAQ,MAAM,OAAO,MAAM,MAAM,KAAK;AAC5C,SACE;AAAA,IAACA;AAAA,IAAA;AAAA,MACC,eAAa;AAAA,MACb,IAAI;AAAA,QACF,MAAM,OAAO,KAAK;AAAA,QAClB,UAAU;AAAA,QACV,SAAS;AAAA,QACT,eAAe;AAAA,QACf,KAAK;AAAA,QACL,WAAW,CAAC,UAAiB,GAAG,IAAI,OAAO,CAAC,CAAC;AAAA,QAC7C,aAAa;AAAA,QACb,aAAa,UAAU,OAAO,IAAI;AAAA,QAClC,cAAc;AAAA,QACd,SAAS;AAAA,QACT,GAAG;AAAA,MACL;AAAA,MAEA;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,OAAO,OAAO;AAAA,YACd,OAAO,OAAO,KAAK;AAAA,YACnB,KAAK,UAAU,OAAO,OAAO,OAAO,MAAM,YAAY,MAAM,UAAU,KAAK,IAAI,KAAK;AAAA,YACpF;AAAA;AAAA,QACF;AAAA,QACC,OAAO,KAAK,WAAW,IACtB,oBAAC,QAAK,SAAQ,WAAU,IAAG,KACzB,8BAACA,UAAA,EAAI,WAAU,QAAO,eAAa,GAAG,MAAM,UAAU,IAAI,EAAE,OAAO,gBAAgB,GAChF,eAAK,MAAM,aACd,GACF,IAEA,OAAO,KAAK,IAAI,CAAC,QAAQ;AACvB,gBAAM,KAAK,SAAS,GAAG;AACvB,iBACE,oBAACA,UAAA,EACE,qBAAW,KAAK;AAAA,YACf,UAAU,YAAY,IAAI,EAAE;AAAA,YAC5B,gBAAgB,MAAM,WAAW,EAAE;AAAA,YACnC,OAAO;AAAA,UACT,CAAC,KALO,EAMV;AAAA,QAEJ,CAAC;AAAA;AAAA;AAAA,EAEL;AAEJ;AAoBA,IAAM,cAAc,CAAC,OAAc,cACjC,IAAI,OAAO,KAAK,IAAI,KAAK,KAAK,MAAM,MAAM,SAAS,CAAC,CAAC;AAgBhD,SAAS,eAAkD;AAAA,EAChE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA8C;AAC5C,QAAM,OAAO,iBAAiB;AAC9B,QAAM,QAAQ,SAAS;AACvB,QAAM,UAAU,UAAU,MAAM,KAAK;AACrC,QAAM,QAAQ,YAAY,OAAO,SAAS;AAC1C,QAAM,SAAS,aAAa,GAAG,UAAU,WAAW;AACpD,SACE,qBAACA,UAAA,EAAI,IAAI,EAAE,IAAI,IAAI,GACjB;AAAA,wBAAC,QAAK,SAAQ,WAAU,IAAG,KACzB,8BAACA,UAAA,EAAI,WAAU,QAAO,eAAa,GAAG,MAAM,eAAe,IAAI,EAAE,OAAO,iBAAiB,GACtF,eAAK,MAAM,eACd,GACF;AAAA,IACA;AAAA,MAACA;AAAA,MAAA;AAAA,QACC,eAAa;AAAA,QACb,IAAI;AAAA,UACF,IAAI;AAAA,UACJ,SAAS;AAAA,UACT,YAAY;AAAA,UACZ,KAAK;AAAA;AAAA;AAAA,UAGL,UAAU;AAAA,UACV,WAAW;AAAA,UACX,IAAI;AAAA,QACN;AAAA,QAEC,kBAAQ,IAAI,CAAC,WACZ;AAAA,UAAC;AAAA;AAAA,YAEC;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,QAAQ,GAAG,MAAM,WAAW,OAAO,GAAG;AAAA;AAAA,UATjC,OAAO;AAAA,QAUd,CACD;AAAA;AAAA,IACH;AAAA,KACF;AAEJ;","names":["default"]}
|