@payfit/unity-components 2.47.5 → 2.47.6
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/esm/adapters/standardSchemaAdapter.js +18 -19
- package/dist/esm/adapters/zodAdapter.js +59 -73
- package/dist/esm/components/action-bar/ActionBar.js +46 -69
- package/dist/esm/components/action-bar/ActionBar.variants.js +18 -25
- package/dist/esm/components/action-bar/hooks/use-action-bar-state.js +31 -21
- package/dist/esm/components/action-bar/parts/ActionBarButton.js +29 -35
- package/dist/esm/components/action-bar/parts/ActionBarIconButton.js +29 -41
- package/dist/esm/components/action-bar/parts/ActionBarOverflowMenu.js +39 -45
- package/dist/esm/components/action-bar/parts/ActionBarPrefixArea.js +22 -33
- package/dist/esm/components/action-bar/parts/ActionBarRoot.js +44 -56
- package/dist/esm/components/action-bar/utils/action-bar-helpers.js +23 -28
- package/dist/esm/components/actionable/Actionable.js +66 -82
- package/dist/esm/components/alert/Alert.js +84 -99
- package/dist/esm/components/alert/parts/AlertActions.js +19 -21
- package/dist/esm/components/alert/parts/AlertContent.js +13 -10
- package/dist/esm/components/alert/parts/AlertTitle.js +15 -20
- package/dist/esm/components/anchor/Anchor.js +40 -48
- package/dist/esm/components/app-layout/AppLayout.js +62 -76
- package/dist/esm/components/app-menu/AppMenu.js +11 -14
- package/dist/esm/components/app-menu/parts/AppMenu.context.js +21 -22
- package/dist/esm/components/app-menu/parts/AppMenuFooter.js +189 -246
- package/dist/esm/components/app-menu/parts/AppMenuHeader.js +52 -49
- package/dist/esm/components/app-menu/parts/AppMenuNavContent.js +14 -22
- package/dist/esm/components/autocomplete/Autocomplete.js +136 -168
- package/dist/esm/components/autocomplete/parts/AutocompleteClearButton.js +23 -33
- package/dist/esm/components/autocomplete/parts/AutocompleteItem.js +28 -36
- package/dist/esm/components/autocomplete/parts/AutocompleteItemGroup.js +38 -32
- package/dist/esm/components/autocomplete/parts/AutocompletePanel.js +44 -46
- package/dist/esm/components/avatar/Avatar.context.js +24 -25
- package/dist/esm/components/avatar/Avatar.js +38 -46
- package/dist/esm/components/avatar/Avatar.variants.js +62 -62
- package/dist/esm/components/avatar/parts/AvatarFallback.js +77 -81
- package/dist/esm/components/avatar/parts/AvatarIcon.js +32 -40
- package/dist/esm/components/avatar/parts/AvatarImage.js +22 -18
- package/dist/esm/components/avatar/parts/AvatarPair.js +49 -47
- package/dist/esm/components/avatar/utils.js +4 -4
- package/dist/esm/components/badge/Badge.js +57 -92
- package/dist/esm/components/badge/parts/BadgeDot.js +42 -83
- package/dist/esm/components/bottom-sheet/BottomSheet.js +48 -69
- package/dist/esm/components/bottom-sheet/parts/BottomSheetContent.js +26 -26
- package/dist/esm/components/bottom-sheet/parts/BottomSheetDragIndicator.js +44 -65
- package/dist/esm/components/bottom-sheet/parts/BottomSheetFooter.js +20 -28
- package/dist/esm/components/bottom-sheet/parts/BottomSheetHeader.js +49 -45
- package/dist/esm/components/breadcrumbs/Breadcrumbs.context.js +22 -25
- package/dist/esm/components/breadcrumbs/Breadcrumbs.js +124 -159
- package/dist/esm/components/breadcrumbs/Breadcrumbs.variant.js +13 -19
- package/dist/esm/components/breadcrumbs/parts/Breadcrumb.js +35 -41
- package/dist/esm/components/breadcrumbs/parts/RawBreadcrumbLink.js +53 -62
- package/dist/esm/components/button/Button.js +90 -107
- package/dist/esm/components/button/Button.variants.js +172 -179
- package/dist/esm/components/card/Card.context.js +9 -13
- package/dist/esm/components/card/Card.js +63 -99
- package/dist/esm/components/card/parts/CardContent.js +11 -7
- package/dist/esm/components/card/parts/CardTitle.js +24 -31
- package/dist/esm/components/carousel/Carousel.context.js +8 -12
- package/dist/esm/components/carousel/Carousel.js +67 -106
- package/dist/esm/components/carousel/Carousel.options.js +69 -61
- package/dist/esm/components/carousel/hooks/useCarouselAccessibility.js +81 -85
- package/dist/esm/components/carousel/hooks/useCarouselState.js +54 -61
- package/dist/esm/components/carousel/parts/CarouselContent.js +52 -68
- package/dist/esm/components/carousel/parts/CarouselHeader.js +43 -58
- package/dist/esm/components/carousel/parts/CarouselNav.js +64 -79
- package/dist/esm/components/carousel/parts/CarouselSlide.js +26 -35
- package/dist/esm/components/checkbox/Checkbox.js +83 -105
- package/dist/esm/components/checkbox/Checkbox.variants.js +60 -80
- package/dist/esm/components/checkbox/CheckboxStandalone.js +33 -28
- package/dist/esm/components/checkbox/TanstackCheckbox.js +35 -51
- package/dist/esm/components/checkbox/parts/CheckboxIndicator.js +131 -161
- package/dist/esm/components/checkbox-field/CheckboxField.js +38 -65
- package/dist/esm/components/checkbox-field/TanstackCheckboxField.js +23 -39
- package/dist/esm/components/checkbox-group/CheckboxGroup.js +44 -73
- package/dist/esm/components/checkbox-group/TanstackCheckboxGroup.js +32 -37
- package/dist/esm/components/checkbox-group-field/CheckboxGroupField.js +35 -55
- package/dist/esm/components/checkbox-group-field/TanstackCheckGroupField.js +26 -39
- package/dist/esm/components/client-side-pagination/ClientSidePagination.js +130 -177
- package/dist/esm/components/client-side-pagination/hooks/use-pagination.js +20 -27
- package/dist/esm/components/client-side-pagination/parts/PaginationEllipsis.js +29 -29
- package/dist/esm/components/client-side-pagination/parts/PaginationJumpDialog.js +110 -143
- package/dist/esm/components/client-side-pagination/parts/PaginationNavButton.js +23 -31
- package/dist/esm/components/client-side-pagination/parts/RawPaginationLink.js +35 -48
- package/dist/esm/components/client-side-pagination/utils/pagination-window.js +37 -31
- package/dist/esm/components/code/Code.js +34 -38
- package/dist/esm/components/code/copyToClipboard.js +9 -9
- package/dist/esm/components/collapsible/Collapsible.js +21 -28
- package/dist/esm/components/collapsible/parts/CollapsibleContent.js +16 -18
- package/dist/esm/components/collapsible/parts/CollapsibleTitle.js +53 -53
- package/dist/esm/components/data-table/DataTable.js +101 -155
- package/dist/esm/components/data-table/parts/ColumnSortHeader.js +24 -36
- package/dist/esm/components/data-table/parts/DataTableBulkActions.js +95 -148
- package/dist/esm/components/data-table/parts/DataTableRoot.js +13 -13
- package/dist/esm/components/date-calendar/DateCalendar.js +121 -174
- package/dist/esm/components/date-calendar/DateCalendar.variants.js +32 -49
- package/dist/esm/components/date-calendar/hooks/useMonthsList.js +18 -25
- package/dist/esm/components/date-calendar/hooks/useYearsList.js +23 -32
- package/dist/esm/components/date-calendar/parts/DateSegmentSelect.js +62 -65
- package/dist/esm/components/date-picker/DatePicker.js +131 -174
- package/dist/esm/components/date-picker/TanstackDatePicker.js +39 -53
- package/dist/esm/components/date-picker/parts/DateInput.js +101 -135
- package/dist/esm/components/date-picker-field/DatePickerField.js +52 -71
- package/dist/esm/components/date-picker-field/TanstackDatePickerField.js +28 -41
- package/dist/esm/components/date-picker-field/test-utils.js +26 -51
- package/dist/esm/components/date-range-calendar/DateRangeCalendar.js +148 -211
- package/dist/esm/components/date-range-picker/DateRangePicker.js +132 -175
- package/dist/esm/components/date-range-picker/TanstackDateRangePicker.js +39 -53
- package/dist/esm/components/date-range-picker/parts/DateRangeInput.js +90 -101
- package/dist/esm/components/date-range-picker-field/TanstackDateRangePickerField.js +28 -41
- package/dist/esm/components/date-range-picker-field/test-utils.js +37 -65
- package/dist/esm/components/definition-list/DefinitionList.context.js +12 -16
- package/dist/esm/components/definition-list/DefinitionList.js +23 -22
- package/dist/esm/components/definition-list/parts/DefinitionItem.js +49 -50
- package/dist/esm/components/definition-tooltip/DefinitionTooltip.js +25 -28
- package/dist/esm/components/dialog/Dialog.js +79 -110
- package/dist/esm/components/dialog/parts/DialogActions/DialogButton.js +41 -61
- package/dist/esm/components/dialog/parts/DialogActions.js +10 -13
- package/dist/esm/components/dialog/parts/DialogContent.js +17 -22
- package/dist/esm/components/dialog/parts/DialogTitle.js +12 -9
- package/dist/esm/components/dialog/test-utils.js +46 -88
- package/dist/esm/components/empty-state/EmptyState.js +20 -25
- package/dist/esm/components/empty-state/EmptyState.variants.js +15 -22
- package/dist/esm/components/empty-state/parts/EmptyStateActions.js +12 -17
- package/dist/esm/components/empty-state/parts/EmptyStateContent.js +21 -21
- package/dist/esm/components/empty-state/parts/EmptyStateIcon.js +19 -14
- package/dist/esm/components/empty-state/presets/EmptyStateGetStarted.js +30 -26
- package/dist/esm/components/empty-state/presets/EmptyStateGoodJob.js +35 -55
- package/dist/esm/components/empty-state/presets/EmptyStateNoSearchResults.js +31 -27
- package/dist/esm/components/empty-state/presets/EmptyStateUpgradeRequired.js +30 -26
- package/dist/esm/components/empty-state/presets/EmptyStateUseDesktop.js +26 -25
- package/dist/esm/components/empty-state/presets/EmptyStateWaitingForData.js +30 -26
- package/dist/esm/components/error-state/ErrorState.js +155 -239
- package/dist/esm/components/error-state/initConfig.js +90 -148
- package/dist/esm/components/error-state/parts/Collapsible.js +68 -67
- package/dist/esm/components/fieldset/Fieldset.js +63 -72
- package/dist/esm/components/fieldset/parts/FieldGroup.js +13 -18
- package/dist/esm/components/filter/Filter.controls.js +49 -42
- package/dist/esm/components/filter/Filter.js +101 -146
- package/dist/esm/components/filter/hooks/useFilterIds.js +12 -12
- package/dist/esm/components/filter/hooks/useFilterState.js +16 -22
- package/dist/esm/components/filter/hooks/useFilterValue.js +31 -30
- package/dist/esm/components/filter/parts/FilterButton.js +40 -54
- package/dist/esm/components/filter/parts/FilterLabel.js +38 -56
- package/dist/esm/components/filter/parts/FilterPopover.js +68 -80
- package/dist/esm/components/filter/utils/value-formatters.js +9 -11
- package/dist/esm/components/filter-toolbar/FilterToolbar.js +124 -173
- package/dist/esm/components/filter-toolbar/hooks/use-filter-toolbar-state.js +128 -130
- package/dist/esm/components/filter-toolbar/parts/AddFilter.js +81 -109
- package/dist/esm/components/filter-toolbar/parts/AddFilterItem.js +20 -18
- package/dist/esm/components/filter-toolbar/utils/filter-adapters.js +17 -88
- package/dist/esm/components/filter-toolbar/utils/normalize-filter-value.js +12 -18
- package/dist/esm/components/flex/Flex.js +38 -57
- package/dist/esm/components/flex/Flex.variants.js +198 -199
- package/dist/esm/components/flex/FlexItem.js +21 -32
- package/dist/esm/components/floating-action-bar/FloatingActionBar.js +55 -68
- package/dist/esm/components/form/Form.context.js +15 -26
- package/dist/esm/components/form/Form.js +40 -57
- package/dist/esm/components/form/TanstackForm.js +22 -29
- package/dist/esm/components/form-field/FormField.context.js +44 -70
- package/dist/esm/components/form-field/FormField.js +50 -56
- package/dist/esm/components/form-field/TanstackFormField.context.js +11 -12
- package/dist/esm/components/form-field/TanstackFormField.js +44 -45
- package/dist/esm/components/form-field/parts/FormControl.js +41 -52
- package/dist/esm/components/form-field/parts/FormFeedbackText.js +24 -26
- package/dist/esm/components/form-field/parts/FormHelperText.js +21 -26
- package/dist/esm/components/form-field/parts/FormLabel.js +21 -30
- package/dist/esm/components/form-field/parts/RawFormContextualLink.js +32 -38
- package/dist/esm/components/form-field/parts/TanstackFormFeedbackText.js +28 -31
- package/dist/esm/components/form-field/parts/TanstackFormHelperText.js +22 -25
- package/dist/esm/components/form-field/parts/TanstackFormLabel.js +21 -26
- package/dist/esm/components/form-field/parts/TanstackRawFormContextualLink.js +33 -45
- package/dist/esm/components/form-field/utils/isFieldRequired.js +7 -7
- package/dist/esm/components/full-page-loader/FullPageLoader.js +26 -35
- package/dist/esm/components/funnel-layout/FunnelLayout.context.js +12 -26
- package/dist/esm/components/funnel-layout/FunnelLayout.js +75 -91
- package/dist/esm/components/funnel-layout/parts/FunnelBackButton.js +24 -34
- package/dist/esm/components/funnel-layout/parts/FunnelBody.js +15 -23
- package/dist/esm/components/funnel-layout/parts/FunnelPage.js +27 -35
- package/dist/esm/components/funnel-layout/parts/FunnelPageAction.js +32 -39
- package/dist/esm/components/funnel-layout/parts/FunnelPageActions.js +30 -41
- package/dist/esm/components/funnel-layout/parts/FunnelPageContent.js +15 -23
- package/dist/esm/components/funnel-layout/parts/FunnelPageFooter.js +20 -28
- package/dist/esm/components/funnel-layout/parts/FunnelPageHeader.js +53 -55
- package/dist/esm/components/funnel-layout/parts/FunnelProgressBar.js +39 -50
- package/dist/esm/components/funnel-layout/parts/FunnelSidebar.js +47 -54
- package/dist/esm/components/funnel-layout/parts/FunnelTopBar.js +88 -119
- package/dist/esm/components/grid/Grid.js +27 -38
- package/dist/esm/components/grid/Grid.variants.js +147 -164
- package/dist/esm/components/grid/GridItem.js +24 -43
- package/dist/esm/components/icon/Icon.js +112 -115
- package/dist/esm/components/icon-button/CircularIconButton.js +117 -119
- package/dist/esm/components/icon-button/IconButton.js +82 -93
- package/dist/esm/components/icon-button/IconButton.variants.js +167 -174
- package/dist/esm/components/inline-field/InlineField.context.js +8 -9
- package/dist/esm/components/inline-field/InlineField.js +48 -57
- package/dist/esm/components/inline-field/hooks/useInlineFieldMode.js +23 -26
- package/dist/esm/components/inline-field/parts/InlineFieldEditView.js +113 -149
- package/dist/esm/components/inline-field/parts/InlineFieldReadView.js +52 -57
- package/dist/esm/components/inline-field-group/InlineFieldGroup.context.js +5 -5
- package/dist/esm/components/inline-field-group/InlineFieldGroup.js +188 -216
- package/dist/esm/components/inline-field-group/hooks/useInlineFieldGroupMode.js +23 -26
- package/dist/esm/components/inline-field-group/parts/InlineFieldGroupActions.js +109 -156
- package/dist/esm/components/inline-field-group/parts/InlineFieldGroupEditView.js +51 -55
- package/dist/esm/components/inline-field-group/parts/InlineFieldGroupHeader.js +39 -38
- package/dist/esm/components/inline-field-group/parts/InlineFieldGroupReadView.js +18 -27
- package/dist/esm/components/input/Input.js +123 -150
- package/dist/esm/components/input/TanstackInput.js +33 -38
- package/dist/esm/components/label/Label.js +52 -66
- package/dist/esm/components/link/RawLink.js +109 -165
- package/dist/esm/components/link/utils.js +12 -15
- package/dist/esm/components/link-button/RawLinkButton.js +100 -127
- package/dist/esm/components/list-view/ListView.js +40 -45
- package/dist/esm/components/list-view/parts/ListViewItemLabel.js +17 -22
- package/dist/esm/components/list-view/parts/ListViewItemText.js +17 -22
- package/dist/esm/components/list-view/parts/ListViewSection.js +25 -23
- package/dist/esm/components/list-view/parts/RawListViewItem.js +68 -81
- package/dist/esm/components/menu/Menu.js +21 -30
- package/dist/esm/components/menu/parts/MenuContent.js +17 -29
- package/dist/esm/components/menu/parts/MenuHeader.js +13 -16
- package/dist/esm/components/menu/parts/MenuSection.js +32 -42
- package/dist/esm/components/menu/parts/MenuSeparator.js +8 -8
- package/dist/esm/components/menu/parts/MenuTrigger.js +12 -13
- package/dist/esm/components/menu/parts/RawMenuItem.js +29 -42
- package/dist/esm/components/multi-select/MultiSelect.js +249 -299
- package/dist/esm/components/multi-select/Multiselect.context.js +6 -6
- package/dist/esm/components/multi-select/TanstackMultiSelect.js +31 -41
- package/dist/esm/components/multi-select/parts/MultiSelectOptGroup.js +35 -43
- package/dist/esm/components/multi-select/parts/MultiSelectOption.js +60 -76
- package/dist/esm/components/multi-select/utils/selection-adapter.js +9 -15
- package/dist/esm/components/multi-select-field/MultiSelectField.js +56 -71
- package/dist/esm/components/multi-select-field/TanstackMultiSelectField.js +27 -48
- package/dist/esm/components/multi-select-field/test-utils.js +22 -45
- package/dist/esm/components/nav/Nav.js +21 -27
- package/dist/esm/components/nav/parts/NavGroup.js +103 -123
- package/dist/esm/components/nav/parts/RawNavItem.js +99 -118
- package/dist/esm/components/navigation-card/NavigationCard.context.js +10 -11
- package/dist/esm/components/navigation-card/NavigationCard.js +53 -63
- package/dist/esm/components/navigation-card/NavigationCard.variants.js +162 -162
- package/dist/esm/components/navigation-card/parts/NavigationCardDescription.js +17 -20
- package/dist/esm/components/navigation-card/parts/NavigationCardGroup.js +76 -93
- package/dist/esm/components/navigation-card/parts/NavigationCardLabel.js +18 -23
- package/dist/esm/components/number-field/NumberField.js +48 -69
- package/dist/esm/components/number-field/TanstackNumberField.js +30 -43
- package/dist/esm/components/number-input/NumberInput.js +161 -216
- package/dist/esm/components/number-input/TanstackNumberInput.js +33 -38
- package/dist/esm/components/page/Page.js +33 -48
- package/dist/esm/components/page/parts/PageHeader.js +41 -36
- package/dist/esm/components/page/parts/PageHeading.js +17 -19
- package/dist/esm/components/pagination/Pagination.js +78 -102
- package/dist/esm/components/pagination/PaginationContext.js +8 -14
- package/dist/esm/components/pagination/hooks/use-pagination-state.js +20 -26
- package/dist/esm/components/pagination/hooks/use-pagination-window.js +10 -13
- package/dist/esm/components/pagination/parts/PaginationContent.js +26 -37
- package/dist/esm/components/pagination/parts/PaginationEllipsis.js +33 -33
- package/dist/esm/components/pagination/parts/PaginationItem.js +17 -22
- package/dist/esm/components/pagination/parts/RawPaginationLink.js +50 -60
- package/dist/esm/components/pagination/parts/RawPaginationNext.js +53 -70
- package/dist/esm/components/pagination/parts/RawPaginationPrevious.js +52 -66
- package/dist/esm/components/pagination/utils/pagination-window.js +55 -40
- package/dist/esm/components/password-field/TanstackPasswordField.js +55 -82
- package/dist/esm/components/password-field/hooks/use-caps-lock.js +11 -11
- package/dist/esm/components/password-field/parts/PasswordFieldDetails.js +42 -41
- package/dist/esm/components/password-field/parts/PasswordInput.js +153 -188
- package/dist/esm/components/password-field/parts/ValidationRuleItem.js +38 -43
- package/dist/esm/components/payfit-brand/PayFitBrand.js +74 -84
- package/dist/esm/components/payfit-brand/PayFitPreprod.js +53 -57
- package/dist/esm/components/phone-number/PhoneNumberInput.js +214 -331
- package/dist/esm/components/phone-number/TanstackPhoneNumberInput.js +29 -32
- package/dist/esm/components/phone-number/parts/PhoneNumberItem.js +49 -65
- package/dist/esm/components/phone-number/unknownFlag.js +4 -0
- package/dist/esm/components/phone-number-field/TanstackPhoneNumberField.js +21 -32
- package/dist/esm/components/pill/Pill.js +48 -58
- package/dist/esm/components/popover/Popover.js +37 -41
- package/dist/esm/components/popover/parts/PopoverHeader.js +48 -60
- package/dist/esm/components/progress-bar/ProgressBar.js +66 -76
- package/dist/esm/components/promo-dialog/PromoDialog.js +135 -218
- package/dist/esm/components/promo-dialog/parts/PromoDialogActions.js +19 -29
- package/dist/esm/components/promo-dialog/parts/PromoDialogContent.js +14 -19
- package/dist/esm/components/promo-dialog/parts/PromoDialogHero.js +17 -24
- package/dist/esm/components/promo-dialog/parts/PromoDialogSubtitle.js +15 -21
- package/dist/esm/components/promo-dialog/parts/PromoDialogTitle.js +11 -16
- package/dist/esm/components/radio-button-group/RadioButtonGroup.js +18 -23
- package/dist/esm/components/radio-button-group/TanstackRadioButtonGroup.js +32 -42
- package/dist/esm/components/radio-button-group/parts/RadioButton.js +61 -66
- package/dist/esm/components/radio-button-group/parts/RadioButtonHelper.js +14 -19
- package/dist/esm/components/radio-button-group/parts/RadioIndicator.js +107 -129
- package/dist/esm/components/radio-button-group-field/RadioButtonGroupField.js +37 -52
- package/dist/esm/components/radio-button-group-field/TanstackRadioButtonGroupField.js +31 -37
- package/dist/esm/components/search/Search.js +120 -166
- package/dist/esm/components/segmented-button-group/SegmentedButtonGroup.js +20 -20
- package/dist/esm/components/segmented-button-group/SegmentedButtonGroups.context.js +11 -14
- package/dist/esm/components/segmented-button-group/parts/ToggleButton.js +105 -125
- package/dist/esm/components/select/Select.js +85 -130
- package/dist/esm/components/select/TanstackSelect.js +31 -40
- package/dist/esm/components/select/parts/SelectButton.js +79 -103
- package/dist/esm/components/select/parts/SelectOption.context.js +14 -21
- package/dist/esm/components/select/parts/SelectOption.js +53 -64
- package/dist/esm/components/select/parts/SelectOptionGroup.js +34 -27
- package/dist/esm/components/select/parts/SelectOptionHelper.js +22 -21
- package/dist/esm/components/select-field/SelectField.js +44 -66
- package/dist/esm/components/select-field/TanstackSelectField.js +29 -45
- package/dist/esm/components/select-field/test-utils.js +10 -25
- package/dist/esm/components/select-list/SelectList.js +70 -81
- package/dist/esm/components/select-list/constants.js +13 -28
- package/dist/esm/components/select-list/helpers.js +37 -43
- package/dist/esm/components/select-list/hooks/useControlledSelection.js +13 -15
- package/dist/esm/components/select-list/hooks/useSelectedFirstSorting.js +30 -30
- package/dist/esm/components/select-list/parts/SelectListEmptyState.js +24 -24
- package/dist/esm/components/select-list/parts/SelectListOptGroup.js +33 -30
- package/dist/esm/components/select-list/parts/SelectListOption.js +54 -70
- package/dist/esm/components/select-list/parts/SelectListSearchInput.js +43 -49
- package/dist/esm/components/select-list/parts/SelectedItemsSection.js +29 -35
- package/dist/esm/components/select-list/utils/partition.js +7 -8
- package/dist/esm/components/selectable-button-group/SelectableButtonGroup.context.js +5 -5
- package/dist/esm/components/selectable-button-group/SelectableButtonGroup.js +32 -38
- package/dist/esm/components/selectable-button-group/TanstackSelectableButtonGroup.js +27 -33
- package/dist/esm/components/selectable-button-group/parts/SelectableButton.js +81 -123
- package/dist/esm/components/selectable-button-group-field/SelectableButtonGroupField.js +41 -44
- package/dist/esm/components/selectable-button-group-field/TanstackSelectableButtonGroupField.js +29 -46
- package/dist/esm/components/selectable-card/internals/Content.js +8 -8
- package/dist/esm/components/selectable-card/internals/Description.js +11 -10
- package/dist/esm/components/selectable-card/internals/Illustration.js +8 -8
- package/dist/esm/components/selectable-card/internals/SelectedIndicator.js +9 -9
- package/dist/esm/components/selectable-card/selectable-card-checkbox-group/SelectableCardCheckboxGroup.js +13 -16
- package/dist/esm/components/selectable-card/selectable-card-checkbox-group/TanstackSelectableCardCheckboxGroup.js +28 -31
- package/dist/esm/components/selectable-card/selectable-card-checkbox-group/parts/SelectableCardCheckbox.js +37 -37
- package/dist/esm/components/selectable-card/selectable-card-radio-group/SelectableCardRadioGroup.js +18 -21
- package/dist/esm/components/selectable-card/selectable-card-radio-group/TanstackSelectableCardRadioGroup.js +28 -31
- package/dist/esm/components/selectable-card/selectable-card-radio-group/parts/SelectableCardRadio.js +40 -47
- package/dist/esm/components/selectable-card/selectableCard.variant.js +16 -22
- package/dist/esm/components/selectable-card-checkbox-group-field/SelectableCardCheckboxGroupField.js +38 -46
- package/dist/esm/components/selectable-card-checkbox-group-field/TanstackSelectableCardCheckboxGroupField.js +29 -37
- package/dist/esm/components/selectable-card-radio-group-field/SelectableCardRadioGroupField.js +37 -45
- package/dist/esm/components/selectable-card-radio-group-field/TanstackSelectableCardRadioGroupField.js +29 -37
- package/dist/esm/components/side-panel/SidePanel.js +53 -71
- package/dist/esm/components/side-panel/parts/SidePanelContent.js +25 -25
- package/dist/esm/components/side-panel/parts/SidePanelDragIndicator.js +44 -65
- package/dist/esm/components/side-panel/parts/SidePanelFooter.js +26 -29
- package/dist/esm/components/side-panel/parts/SidePanelHeader.js +41 -43
- package/dist/esm/components/skip-links/SkipLinks.js +69 -87
- package/dist/esm/components/spinner/Spinner.js +76 -106
- package/dist/esm/components/stepper/Stepper.context.js +15 -20
- package/dist/esm/components/stepper/Stepper.js +16 -18
- package/dist/esm/components/stepper/hooks/useStepper.js +20 -25
- package/dist/esm/components/stepper/parts/Step.js +47 -56
- package/dist/esm/components/table/Table.context.js +35 -41
- package/dist/esm/components/table/Table.js +155 -225
- package/dist/esm/components/table/hooks/useTableKeyboardNavigation.js +180 -208
- package/dist/esm/components/table/parts/TableBody.js +81 -104
- package/dist/esm/components/table/parts/TableCell.js +38 -62
- package/dist/esm/components/table/parts/TableColumnHeader.js +62 -78
- package/dist/esm/components/table/parts/TableEmptyState.js +131 -161
- package/dist/esm/components/table/parts/TableHeader.js +24 -37
- package/dist/esm/components/table/parts/TablePagination.js +119 -141
- package/dist/esm/components/table/parts/TableRow.js +36 -52
- package/dist/esm/components/tabs/Tabs.context.js +19 -20
- package/dist/esm/components/tabs/Tabs.js +26 -24
- package/dist/esm/components/tabs/Tabs.variant.js +35 -41
- package/dist/esm/components/tabs/parts/NavigationButton.js +37 -46
- package/dist/esm/components/tabs/parts/RawTab.js +22 -18
- package/dist/esm/components/tabs/parts/TabList.js +84 -83
- package/dist/esm/components/tabs/parts/TabPanel.js +13 -9
- package/dist/esm/components/task-menu/TaskMenu.context.js +44 -58
- package/dist/esm/components/task-menu/TaskMenu.js +21 -28
- package/dist/esm/components/task-menu/parts/Content.js +43 -48
- package/dist/esm/components/task-menu/parts/Header.js +39 -54
- package/dist/esm/components/task-menu/parts/RawSubTask.js +141 -166
- package/dist/esm/components/task-menu/parts/RawTask.js +115 -145
- package/dist/esm/components/task-menu/parts/TaskGroup.js +103 -140
- package/dist/esm/components/task-menu/parts/dot.js +19 -0
- package/dist/esm/components/task-menu/parts/task.variants.js +59 -64
- package/dist/esm/components/text/Text.js +56 -71
- package/dist/esm/components/text/Text.variants.js +106 -112
- package/dist/esm/components/text-area/TanstackTextArea.js +30 -35
- package/dist/esm/components/text-area/TextArea.js +121 -164
- package/dist/esm/components/text-field/TanstackTextField.js +39 -59
- package/dist/esm/components/text-field/TextField.js +53 -76
- package/dist/esm/components/timeline/Timeline.context.js +18 -21
- package/dist/esm/components/timeline/Timeline.js +33 -37
- package/dist/esm/components/timeline/Timeline.utils.js +8 -8
- package/dist/esm/components/timeline/Timeline.variants.js +93 -118
- package/dist/esm/components/timeline/parts/TimelineMarker.js +36 -26
- package/dist/esm/components/timeline/parts/TimelineStep.context.js +15 -19
- package/dist/esm/components/timeline/parts/TimelineStep.js +57 -52
- package/dist/esm/components/timeline/parts/TimelineStepContent.context.js +15 -20
- package/dist/esm/components/timeline/parts/TimelineStepContent.js +30 -17
- package/dist/esm/components/timeline/parts/TimelineStepDescription.js +12 -7
- package/dist/esm/components/timeline/parts/TimelineStepHeader.js +34 -36
- package/dist/esm/components/timeline/parts/check.js +23 -0
- package/dist/esm/components/toast/Toast.context.js +15 -20
- package/dist/esm/components/toast/ToastManager.js +13 -21
- package/dist/esm/components/toast/UnityToast.js +82 -95
- package/dist/esm/components/toast/parts/ToastAction.js +18 -13
- package/dist/esm/components/toast/parts/ToastContent.js +13 -9
- package/dist/esm/components/toast/parts/ToastTitle.js +13 -8
- package/dist/esm/components/toast/test-utils.js +63 -117
- package/dist/esm/components/toast/toast.js +27 -38
- package/dist/esm/components/toggle-switch/TanstackToggleSwitch.js +21 -24
- package/dist/esm/components/toggle-switch/ToggleSwitch.js +111 -112
- package/dist/esm/components/toggle-switch-field/TanstackToggleSwitchField.js +19 -33
- package/dist/esm/components/toggle-switch-field/ToggleSwitchField.js +33 -58
- package/dist/esm/components/toggle-switch-group/TanstackToggleSwitchGroup.js +18 -21
- package/dist/esm/components/toggle-switch-group/ToggleSwitchGroup.js +83 -108
- package/dist/esm/components/toggle-switch-group-field/TanstackToggleSwitchGroupField.js +30 -49
- package/dist/esm/components/toggle-switch-group-field/ToggleSwitchGroupField.js +41 -61
- package/dist/esm/components/tooltip/Tooltip.js +30 -31
- package/dist/esm/hooks/tanstack-form-context.js +5 -8
- package/dist/esm/hooks/tanstack-form-default-values.js +5 -5
- package/dist/esm/hooks/use-async-list.js +2 -0
- package/dist/esm/hooks/use-breakpoint-listener.js +16 -25
- package/dist/esm/hooks/use-container-query-level.js +30 -31
- package/dist/esm/hooks/use-form.js +35 -29
- package/dist/esm/hooks/use-has-scroll.js +76 -74
- package/dist/esm/hooks/use-id.js +18 -24
- package/dist/esm/hooks/use-media-query.js +15 -18
- package/dist/esm/hooks/use-resizable.js +49 -49
- package/dist/esm/hooks/use-responsive-value.js +22 -26
- package/dist/esm/hooks/use-scroll-direction.js +50 -52
- package/dist/esm/hooks/use-tanstack-form.js +60 -287
- package/dist/esm/index.js +240 -577
- package/dist/esm/integrations/tanstack-router/components/breadcrumbs/BreadcrumbLink.js +7 -7
- package/dist/esm/integrations/tanstack-router/components/form-contextual-link/FormContextualLink.js +7 -7
- package/dist/esm/integrations/tanstack-router/components/link/Link.js +7 -7
- package/dist/esm/integrations/tanstack-router/components/link-button/LinkButton.js +5 -5
- package/dist/esm/integrations/tanstack-router/components/list-view/ListView.js +20 -23
- package/dist/esm/integrations/tanstack-router/components/list-view/parts/ListViewItem.js +17 -30
- package/dist/esm/integrations/tanstack-router/components/menu-item/MenuItem.js +17 -15
- package/dist/esm/integrations/tanstack-router/components/nav-item/NavItem.js +21 -27
- package/dist/esm/integrations/tanstack-router/components/navigation-card/NavigationCard.js +19 -35
- package/dist/esm/integrations/tanstack-router/components/pagination/PaginationLink.js +18 -20
- package/dist/esm/integrations/tanstack-router/components/pagination/PaginationNext.js +17 -20
- package/dist/esm/integrations/tanstack-router/components/pagination/PaginationPrevious.js +18 -21
- package/dist/esm/integrations/tanstack-router/components/tabs/Tabs.js +52 -67
- package/dist/esm/integrations/tanstack-router/components/tabs/parts/Tab.js +16 -22
- package/dist/esm/integrations/tanstack-router/components/tabs/parts/TabPanel.js +14 -14
- package/dist/esm/integrations/tanstack-router/components/task-menu/SubTask.js +15 -12
- package/dist/esm/integrations/tanstack-router/components/task-menu/Task.js +15 -12
- package/dist/esm/integrations/tanstack-router.js +19 -40
- package/dist/esm/providers/router/RouterProvider.js +24 -20
- package/dist/esm/storybook-testing.js +7 -14
- package/dist/esm/utils/createSchemaAdapter.js +7 -12
- package/dist/esm/utils/field-revalidate-logic.js +41 -38
- package/dist/esm/utils/platform.js +4 -4
- package/dist/esm/utils/scroll-detection.js +31 -32
- package/dist/esm/utils/spacing.js +14 -14
- package/package.json +12 -12
- package/dist/esm/components/phone-number/unknownFlag.svg.js +0 -4
- package/dist/esm/components/task-menu/parts/dot.svg.js +0 -5
- package/dist/esm/components/timeline/parts/check.svg.js +0 -5
|
@@ -1,209 +1,181 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
l(f, E);
|
|
180
|
-
break;
|
|
181
|
-
case "PageDown":
|
|
182
|
-
e.preventDefault();
|
|
183
|
-
const p = Math.min(n.length - 1, r + 5), C = n[p];
|
|
184
|
-
if (!C) break;
|
|
185
|
-
const T = Array.from(
|
|
186
|
-
C.querySelectorAll("td, th")
|
|
187
|
-
), F = Math.min(u, T.length - 1);
|
|
188
|
-
l(p, F);
|
|
189
|
-
break;
|
|
190
|
-
}
|
|
191
|
-
},
|
|
192
|
-
[l]
|
|
193
|
-
);
|
|
194
|
-
return {
|
|
195
|
-
focusedCell: m,
|
|
196
|
-
setFocusedCell: A,
|
|
197
|
-
isCellFocused: q,
|
|
198
|
-
handleCellKeyDown: x,
|
|
199
|
-
handleTableKeyDown: D,
|
|
200
|
-
handleTableFocus: S,
|
|
201
|
-
handleCellFocus: k,
|
|
202
|
-
tableRef: a,
|
|
203
|
-
focusCell: l,
|
|
204
|
-
focusRow: v
|
|
205
|
-
};
|
|
1
|
+
import { useCallback as e, useRef as t, useState as n } from "react";
|
|
2
|
+
//#region src/components/table/hooks/useTableKeyboardNavigation.ts
|
|
3
|
+
var r = "input, button, select, textarea, a[href], [tabindex]:not([tabindex=\"-1\"])";
|
|
4
|
+
function i() {
|
|
5
|
+
let [i, a] = n({
|
|
6
|
+
rowIndex: 0,
|
|
7
|
+
colIndex: 0
|
|
8
|
+
}), o = t(null), s = e((e, t, n) => {
|
|
9
|
+
let i = e.querySelectorAll(r);
|
|
10
|
+
if (i.length > 0) {
|
|
11
|
+
let e = i[0];
|
|
12
|
+
return a({
|
|
13
|
+
rowIndex: t,
|
|
14
|
+
colIndex: n
|
|
15
|
+
}), requestAnimationFrame(() => {
|
|
16
|
+
e.focus({ preventScroll: !1 });
|
|
17
|
+
}), !0;
|
|
18
|
+
}
|
|
19
|
+
return !1;
|
|
20
|
+
}, [a]), c = e((e, t, n) => {
|
|
21
|
+
if (!o.current) return null;
|
|
22
|
+
let r = Array.from(o.current.querySelectorAll("tr"));
|
|
23
|
+
if (e < 0 || e >= r.length) return null;
|
|
24
|
+
let i = r[e];
|
|
25
|
+
if (!i) return null;
|
|
26
|
+
let a = Array.from(i.querySelectorAll("td, th"));
|
|
27
|
+
if (n === "right") {
|
|
28
|
+
for (let n = t + 1; n < a.length; n++) if (a[n].dataset.focusable !== "false") return {
|
|
29
|
+
rowIndex: e,
|
|
30
|
+
colIndex: n
|
|
31
|
+
};
|
|
32
|
+
} else for (let n = t - 1; n >= 0; n--) if (a[n].dataset.focusable !== "false") return {
|
|
33
|
+
rowIndex: e,
|
|
34
|
+
colIndex: n
|
|
35
|
+
};
|
|
36
|
+
return null;
|
|
37
|
+
}, []), l = e((e, t, n) => {
|
|
38
|
+
if (!o.current) return;
|
|
39
|
+
let r = Array.from(o.current.querySelectorAll("tr"));
|
|
40
|
+
if (e < 0 || e >= r.length) return;
|
|
41
|
+
let i = r[e];
|
|
42
|
+
if (!i) return;
|
|
43
|
+
let u = Array.from(i.querySelectorAll("td, th"));
|
|
44
|
+
if (t < 0 || t >= u.length) return;
|
|
45
|
+
let d = u[t];
|
|
46
|
+
if (d.dataset.focusable === "false") {
|
|
47
|
+
if (s(d, e, t)) return;
|
|
48
|
+
if (n) {
|
|
49
|
+
let r = c(e, t, n);
|
|
50
|
+
if (r) {
|
|
51
|
+
l(r.rowIndex, r.colIndex);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
a({
|
|
58
|
+
rowIndex: e,
|
|
59
|
+
colIndex: t
|
|
60
|
+
}), requestAnimationFrame(() => {
|
|
61
|
+
document.activeElement !== d && d.focus({ preventScroll: !1 });
|
|
62
|
+
});
|
|
63
|
+
}, [
|
|
64
|
+
a,
|
|
65
|
+
s,
|
|
66
|
+
c
|
|
67
|
+
]), u = e((e) => {
|
|
68
|
+
if (!o.current) return;
|
|
69
|
+
let t = Array.from(o.current.querySelectorAll("tr"));
|
|
70
|
+
e < 0 || e >= t.length || t[e] && l(e, 0);
|
|
71
|
+
}, [l]), d = e((e) => {
|
|
72
|
+
e.target === e.currentTarget && (e.preventDefault(), requestAnimationFrame(() => {
|
|
73
|
+
l(0, 0);
|
|
74
|
+
}));
|
|
75
|
+
}, [l]), f = e((e) => {
|
|
76
|
+
let t = e.target;
|
|
77
|
+
if (t !== e.currentTarget) return;
|
|
78
|
+
let n = t.closest("tr");
|
|
79
|
+
if (!n || !o.current) return;
|
|
80
|
+
let r = Array.from(o.current.querySelectorAll("tr")).indexOf(n), i = Array.from(n.querySelectorAll("td, th")).indexOf(t);
|
|
81
|
+
r >= 0 && i >= 0 && (a({
|
|
82
|
+
rowIndex: r,
|
|
83
|
+
colIndex: i
|
|
84
|
+
}), requestAnimationFrame(() => {
|
|
85
|
+
o.current && (o.current.querySelectorAll("td, th").forEach((e) => {
|
|
86
|
+
e.setAttribute("tabindex", "-1");
|
|
87
|
+
}), t.setAttribute("tabindex", "0"));
|
|
88
|
+
}));
|
|
89
|
+
}, [a]), p = e((e, t) => i.rowIndex === e && i.colIndex === t, [i]), m = e((e) => {
|
|
90
|
+
if (e.key !== "Tab" && e.target === e.currentTarget && o.current) switch (e.key) {
|
|
91
|
+
case "ArrowDown":
|
|
92
|
+
case "ArrowRight":
|
|
93
|
+
e.preventDefault(), l(0, 0);
|
|
94
|
+
break;
|
|
95
|
+
case "Home":
|
|
96
|
+
e.preventDefault(), l(0, 0);
|
|
97
|
+
break;
|
|
98
|
+
case "End":
|
|
99
|
+
e.preventDefault();
|
|
100
|
+
let t = Array.from(o.current.querySelectorAll("tr")), n = t.length - 1;
|
|
101
|
+
if (n >= 0) {
|
|
102
|
+
let e = t[n];
|
|
103
|
+
if (!e) break;
|
|
104
|
+
l(n, Array.from(e.querySelectorAll("td, th")).length - 1);
|
|
105
|
+
}
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
}, [l]);
|
|
109
|
+
return {
|
|
110
|
+
focusedCell: i,
|
|
111
|
+
setFocusedCell: a,
|
|
112
|
+
isCellFocused: p,
|
|
113
|
+
handleCellKeyDown: e((e) => {
|
|
114
|
+
if (e.key === "RawTab" || !o.current) return;
|
|
115
|
+
let t = e.currentTarget, n = e.target;
|
|
116
|
+
if (n !== t) {
|
|
117
|
+
let e = n.closest("td, th");
|
|
118
|
+
e && (t = e);
|
|
119
|
+
}
|
|
120
|
+
let r = t.closest("tr");
|
|
121
|
+
if (!r) return;
|
|
122
|
+
let i = Array.from(o.current.querySelectorAll("tr")), a = i.indexOf(r), s = Array.from(r.querySelectorAll("td, th")), c = s.indexOf(t);
|
|
123
|
+
switch (e.key) {
|
|
124
|
+
case "ArrowRight":
|
|
125
|
+
e.preventDefault(), c < s.length - 1 ? l(a, c + 1, "right") : l(a, 0, "right");
|
|
126
|
+
break;
|
|
127
|
+
case "ArrowLeft":
|
|
128
|
+
e.preventDefault(), c > 0 ? l(a, c - 1, "left") : l(a, s.length - 1, "left");
|
|
129
|
+
break;
|
|
130
|
+
case "ArrowDown":
|
|
131
|
+
if (e.preventDefault(), a < i.length - 1) {
|
|
132
|
+
let e = i[a + 1];
|
|
133
|
+
if (!e) break;
|
|
134
|
+
let t = Array.from(e.querySelectorAll("td, th")), n = Math.min(c, t.length - 1);
|
|
135
|
+
l(a + 1, n);
|
|
136
|
+
}
|
|
137
|
+
break;
|
|
138
|
+
case "ArrowUp":
|
|
139
|
+
if (e.preventDefault(), a > 0) {
|
|
140
|
+
let e = i[a - 1];
|
|
141
|
+
if (!e) break;
|
|
142
|
+
let t = Array.from(e.querySelectorAll("td, th")), n = Math.min(c, t.length - 1);
|
|
143
|
+
l(a - 1, n);
|
|
144
|
+
}
|
|
145
|
+
break;
|
|
146
|
+
case "Home":
|
|
147
|
+
e.preventDefault(), e.ctrlKey ? l(0, 0) : l(a, 0);
|
|
148
|
+
break;
|
|
149
|
+
case "End":
|
|
150
|
+
if (e.preventDefault(), e.ctrlKey) {
|
|
151
|
+
let e = i.length - 1, t = i[e];
|
|
152
|
+
if (!t) break;
|
|
153
|
+
l(e, Array.from(t.querySelectorAll("td, th")).length - 1);
|
|
154
|
+
} else l(a, s.length - 1);
|
|
155
|
+
break;
|
|
156
|
+
case "PageUp":
|
|
157
|
+
e.preventDefault();
|
|
158
|
+
let t = Math.max(0, a - 5), n = i[t];
|
|
159
|
+
if (!n) break;
|
|
160
|
+
let r = Array.from(n.querySelectorAll("td, th"));
|
|
161
|
+
l(t, Math.min(c, r.length - 1));
|
|
162
|
+
break;
|
|
163
|
+
case "PageDown":
|
|
164
|
+
e.preventDefault();
|
|
165
|
+
let o = Math.min(i.length - 1, a + 5), u = i[o];
|
|
166
|
+
if (!u) break;
|
|
167
|
+
let d = Array.from(u.querySelectorAll("td, th"));
|
|
168
|
+
l(o, Math.min(c, d.length - 1));
|
|
169
|
+
break;
|
|
170
|
+
}
|
|
171
|
+
}, [l]),
|
|
172
|
+
handleTableKeyDown: m,
|
|
173
|
+
handleTableFocus: d,
|
|
174
|
+
handleCellFocus: f,
|
|
175
|
+
tableRef: o,
|
|
176
|
+
focusCell: l,
|
|
177
|
+
focusRow: u
|
|
178
|
+
};
|
|
206
179
|
}
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
};
|
|
180
|
+
//#endregion
|
|
181
|
+
export { i as useTableKeyboardNavigation };
|
|
@@ -1,104 +1,81 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import { uyTv as
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
hasDataStateContent: o,
|
|
83
|
-
enableVirtualization: m,
|
|
84
|
-
virtualizer: d
|
|
85
|
-
}), e = !s || s.length === 0 || o, i = e && p ? p() : null;
|
|
86
|
-
let n = null;
|
|
87
|
-
return o ? n = l : e && i && (n = i), /* @__PURE__ */ r(
|
|
88
|
-
"tbody",
|
|
89
|
-
{
|
|
90
|
-
ref: t,
|
|
91
|
-
className: C({ isEmpty: e }),
|
|
92
|
-
"data-dd-privacy": "mask",
|
|
93
|
-
"data-empty": e || o || void 0,
|
|
94
|
-
...a,
|
|
95
|
-
children: n ? /* @__PURE__ */ r("tr", { children: /* @__PURE__ */ r("td", { colSpan: 1e3, className: "uy:p-0", children: n }) }) : s
|
|
96
|
-
}
|
|
97
|
-
);
|
|
98
|
-
}
|
|
99
|
-
);
|
|
100
|
-
T.displayName = "TableBody";
|
|
101
|
-
export {
|
|
102
|
-
T as TableBody,
|
|
103
|
-
C as tableBody
|
|
104
|
-
};
|
|
1
|
+
import { useTableContext as e } from "../Table.context.js";
|
|
2
|
+
import t, { Children as n, cloneElement as r, forwardRef as i } from "react";
|
|
3
|
+
import { uyTv as a } from "@payfit/unity-themes";
|
|
4
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
5
|
+
//#region src/components/table/parts/TableBody.tsx
|
|
6
|
+
var s = a({
|
|
7
|
+
base: ["uy:transition-all uy:duration-200 uy:ease-in-out uy:relative"],
|
|
8
|
+
variants: { isEmpty: {
|
|
9
|
+
true: ["uy:h-[var(--uy-table-min-rows)]"],
|
|
10
|
+
false: ["uy:[&_tr:last-child]:border-b", "uy:[&_tr:last-child]:border-b-[length:calc(1px*var(--uy-table-has-remaining-space,0))]"]
|
|
11
|
+
} }
|
|
12
|
+
}), c = ({ children: e, hasDataStateContent: i, enableVirtualization: a, virtualizer: s }) => {
|
|
13
|
+
if (i) return [];
|
|
14
|
+
if (a && s) {
|
|
15
|
+
let n = s.getVirtualItems(), r = s.getTotalSize(), i = n[0], a = n[n.length - 1], c = i ? i.start : 0, l = a ? r - a.end : 0, u = [];
|
|
16
|
+
return c > 0 && u.push(/* @__PURE__ */ o("tr", {
|
|
17
|
+
"aria-hidden": "true",
|
|
18
|
+
style: {
|
|
19
|
+
border: 0,
|
|
20
|
+
borderBottom: 0
|
|
21
|
+
},
|
|
22
|
+
children: /* @__PURE__ */ o("td", {
|
|
23
|
+
colSpan: 1e3,
|
|
24
|
+
style: {
|
|
25
|
+
height: c,
|
|
26
|
+
padding: 0,
|
|
27
|
+
border: 0
|
|
28
|
+
}
|
|
29
|
+
})
|
|
30
|
+
}, "__spacer-top__")), n.forEach((n) => {
|
|
31
|
+
let r = t.Children.toArray(e)[n.index];
|
|
32
|
+
t.isValidElement(r) && u.push(t.cloneElement(r, {
|
|
33
|
+
key: n.index,
|
|
34
|
+
rowIndex: n.index,
|
|
35
|
+
ref: (e) => {
|
|
36
|
+
e && s.measureElement(e);
|
|
37
|
+
}
|
|
38
|
+
}));
|
|
39
|
+
}), l > 0 && u.push(/* @__PURE__ */ o("tr", {
|
|
40
|
+
"aria-hidden": "true",
|
|
41
|
+
style: {
|
|
42
|
+
border: 0,
|
|
43
|
+
borderBottom: 0
|
|
44
|
+
},
|
|
45
|
+
children: /* @__PURE__ */ o("td", {
|
|
46
|
+
colSpan: 1e3,
|
|
47
|
+
style: {
|
|
48
|
+
height: l,
|
|
49
|
+
padding: 0,
|
|
50
|
+
border: 0
|
|
51
|
+
}
|
|
52
|
+
})
|
|
53
|
+
}, "__spacer-bottom__")), u;
|
|
54
|
+
}
|
|
55
|
+
return n.map(e, (e, n) => t.isValidElement(e) ? r(e, {
|
|
56
|
+
rowIndex: n,
|
|
57
|
+
...e.props
|
|
58
|
+
}) : e);
|
|
59
|
+
}, l = i(({ children: t, renderEmptyState: n, renderDataState: r, ...i }, a) => {
|
|
60
|
+
let { virtualizer: l, enableVirtualization: u } = e(), d = r ? r() : void 0, f = d !== void 0, p = c({
|
|
61
|
+
children: t,
|
|
62
|
+
hasDataStateContent: f,
|
|
63
|
+
enableVirtualization: u,
|
|
64
|
+
virtualizer: l
|
|
65
|
+
}), m = !p || p.length === 0 || f, h = m && n ? n() : null, g = null;
|
|
66
|
+
return f ? g = d : m && h && (g = h), /* @__PURE__ */ o("tbody", {
|
|
67
|
+
ref: a,
|
|
68
|
+
className: s({ isEmpty: m }),
|
|
69
|
+
"data-dd-privacy": "mask",
|
|
70
|
+
"data-empty": m || f || void 0,
|
|
71
|
+
...i,
|
|
72
|
+
children: g ? /* @__PURE__ */ o("tr", { children: /* @__PURE__ */ o("td", {
|
|
73
|
+
colSpan: 1e3,
|
|
74
|
+
className: "uy:p-0",
|
|
75
|
+
children: g
|
|
76
|
+
}) }) : p
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
l.displayName = "TableBody";
|
|
80
|
+
//#endregion
|
|
81
|
+
export { l as TableBody, s as tableBody };
|