@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.
Files changed (446) hide show
  1. package/dist/esm/adapters/standardSchemaAdapter.js +18 -19
  2. package/dist/esm/adapters/zodAdapter.js +59 -73
  3. package/dist/esm/components/action-bar/ActionBar.js +46 -69
  4. package/dist/esm/components/action-bar/ActionBar.variants.js +18 -25
  5. package/dist/esm/components/action-bar/hooks/use-action-bar-state.js +31 -21
  6. package/dist/esm/components/action-bar/parts/ActionBarButton.js +29 -35
  7. package/dist/esm/components/action-bar/parts/ActionBarIconButton.js +29 -41
  8. package/dist/esm/components/action-bar/parts/ActionBarOverflowMenu.js +39 -45
  9. package/dist/esm/components/action-bar/parts/ActionBarPrefixArea.js +22 -33
  10. package/dist/esm/components/action-bar/parts/ActionBarRoot.js +44 -56
  11. package/dist/esm/components/action-bar/utils/action-bar-helpers.js +23 -28
  12. package/dist/esm/components/actionable/Actionable.js +66 -82
  13. package/dist/esm/components/alert/Alert.js +84 -99
  14. package/dist/esm/components/alert/parts/AlertActions.js +19 -21
  15. package/dist/esm/components/alert/parts/AlertContent.js +13 -10
  16. package/dist/esm/components/alert/parts/AlertTitle.js +15 -20
  17. package/dist/esm/components/anchor/Anchor.js +40 -48
  18. package/dist/esm/components/app-layout/AppLayout.js +62 -76
  19. package/dist/esm/components/app-menu/AppMenu.js +11 -14
  20. package/dist/esm/components/app-menu/parts/AppMenu.context.js +21 -22
  21. package/dist/esm/components/app-menu/parts/AppMenuFooter.js +189 -246
  22. package/dist/esm/components/app-menu/parts/AppMenuHeader.js +52 -49
  23. package/dist/esm/components/app-menu/parts/AppMenuNavContent.js +14 -22
  24. package/dist/esm/components/autocomplete/Autocomplete.js +136 -168
  25. package/dist/esm/components/autocomplete/parts/AutocompleteClearButton.js +23 -33
  26. package/dist/esm/components/autocomplete/parts/AutocompleteItem.js +28 -36
  27. package/dist/esm/components/autocomplete/parts/AutocompleteItemGroup.js +38 -32
  28. package/dist/esm/components/autocomplete/parts/AutocompletePanel.js +44 -46
  29. package/dist/esm/components/avatar/Avatar.context.js +24 -25
  30. package/dist/esm/components/avatar/Avatar.js +38 -46
  31. package/dist/esm/components/avatar/Avatar.variants.js +62 -62
  32. package/dist/esm/components/avatar/parts/AvatarFallback.js +77 -81
  33. package/dist/esm/components/avatar/parts/AvatarIcon.js +32 -40
  34. package/dist/esm/components/avatar/parts/AvatarImage.js +22 -18
  35. package/dist/esm/components/avatar/parts/AvatarPair.js +49 -47
  36. package/dist/esm/components/avatar/utils.js +4 -4
  37. package/dist/esm/components/badge/Badge.js +57 -92
  38. package/dist/esm/components/badge/parts/BadgeDot.js +42 -83
  39. package/dist/esm/components/bottom-sheet/BottomSheet.js +48 -69
  40. package/dist/esm/components/bottom-sheet/parts/BottomSheetContent.js +26 -26
  41. package/dist/esm/components/bottom-sheet/parts/BottomSheetDragIndicator.js +44 -65
  42. package/dist/esm/components/bottom-sheet/parts/BottomSheetFooter.js +20 -28
  43. package/dist/esm/components/bottom-sheet/parts/BottomSheetHeader.js +49 -45
  44. package/dist/esm/components/breadcrumbs/Breadcrumbs.context.js +22 -25
  45. package/dist/esm/components/breadcrumbs/Breadcrumbs.js +124 -159
  46. package/dist/esm/components/breadcrumbs/Breadcrumbs.variant.js +13 -19
  47. package/dist/esm/components/breadcrumbs/parts/Breadcrumb.js +35 -41
  48. package/dist/esm/components/breadcrumbs/parts/RawBreadcrumbLink.js +53 -62
  49. package/dist/esm/components/button/Button.js +90 -107
  50. package/dist/esm/components/button/Button.variants.js +172 -179
  51. package/dist/esm/components/card/Card.context.js +9 -13
  52. package/dist/esm/components/card/Card.js +63 -99
  53. package/dist/esm/components/card/parts/CardContent.js +11 -7
  54. package/dist/esm/components/card/parts/CardTitle.js +24 -31
  55. package/dist/esm/components/carousel/Carousel.context.js +8 -12
  56. package/dist/esm/components/carousel/Carousel.js +67 -106
  57. package/dist/esm/components/carousel/Carousel.options.js +69 -61
  58. package/dist/esm/components/carousel/hooks/useCarouselAccessibility.js +81 -85
  59. package/dist/esm/components/carousel/hooks/useCarouselState.js +54 -61
  60. package/dist/esm/components/carousel/parts/CarouselContent.js +52 -68
  61. package/dist/esm/components/carousel/parts/CarouselHeader.js +43 -58
  62. package/dist/esm/components/carousel/parts/CarouselNav.js +64 -79
  63. package/dist/esm/components/carousel/parts/CarouselSlide.js +26 -35
  64. package/dist/esm/components/checkbox/Checkbox.js +83 -105
  65. package/dist/esm/components/checkbox/Checkbox.variants.js +60 -80
  66. package/dist/esm/components/checkbox/CheckboxStandalone.js +33 -28
  67. package/dist/esm/components/checkbox/TanstackCheckbox.js +35 -51
  68. package/dist/esm/components/checkbox/parts/CheckboxIndicator.js +131 -161
  69. package/dist/esm/components/checkbox-field/CheckboxField.js +38 -65
  70. package/dist/esm/components/checkbox-field/TanstackCheckboxField.js +23 -39
  71. package/dist/esm/components/checkbox-group/CheckboxGroup.js +44 -73
  72. package/dist/esm/components/checkbox-group/TanstackCheckboxGroup.js +32 -37
  73. package/dist/esm/components/checkbox-group-field/CheckboxGroupField.js +35 -55
  74. package/dist/esm/components/checkbox-group-field/TanstackCheckGroupField.js +26 -39
  75. package/dist/esm/components/client-side-pagination/ClientSidePagination.js +130 -177
  76. package/dist/esm/components/client-side-pagination/hooks/use-pagination.js +20 -27
  77. package/dist/esm/components/client-side-pagination/parts/PaginationEllipsis.js +29 -29
  78. package/dist/esm/components/client-side-pagination/parts/PaginationJumpDialog.js +110 -143
  79. package/dist/esm/components/client-side-pagination/parts/PaginationNavButton.js +23 -31
  80. package/dist/esm/components/client-side-pagination/parts/RawPaginationLink.js +35 -48
  81. package/dist/esm/components/client-side-pagination/utils/pagination-window.js +37 -31
  82. package/dist/esm/components/code/Code.js +34 -38
  83. package/dist/esm/components/code/copyToClipboard.js +9 -9
  84. package/dist/esm/components/collapsible/Collapsible.js +21 -28
  85. package/dist/esm/components/collapsible/parts/CollapsibleContent.js +16 -18
  86. package/dist/esm/components/collapsible/parts/CollapsibleTitle.js +53 -53
  87. package/dist/esm/components/data-table/DataTable.js +101 -155
  88. package/dist/esm/components/data-table/parts/ColumnSortHeader.js +24 -36
  89. package/dist/esm/components/data-table/parts/DataTableBulkActions.js +95 -148
  90. package/dist/esm/components/data-table/parts/DataTableRoot.js +13 -13
  91. package/dist/esm/components/date-calendar/DateCalendar.js +121 -174
  92. package/dist/esm/components/date-calendar/DateCalendar.variants.js +32 -49
  93. package/dist/esm/components/date-calendar/hooks/useMonthsList.js +18 -25
  94. package/dist/esm/components/date-calendar/hooks/useYearsList.js +23 -32
  95. package/dist/esm/components/date-calendar/parts/DateSegmentSelect.js +62 -65
  96. package/dist/esm/components/date-picker/DatePicker.js +131 -174
  97. package/dist/esm/components/date-picker/TanstackDatePicker.js +39 -53
  98. package/dist/esm/components/date-picker/parts/DateInput.js +101 -135
  99. package/dist/esm/components/date-picker-field/DatePickerField.js +52 -71
  100. package/dist/esm/components/date-picker-field/TanstackDatePickerField.js +28 -41
  101. package/dist/esm/components/date-picker-field/test-utils.js +26 -51
  102. package/dist/esm/components/date-range-calendar/DateRangeCalendar.js +148 -211
  103. package/dist/esm/components/date-range-picker/DateRangePicker.js +132 -175
  104. package/dist/esm/components/date-range-picker/TanstackDateRangePicker.js +39 -53
  105. package/dist/esm/components/date-range-picker/parts/DateRangeInput.js +90 -101
  106. package/dist/esm/components/date-range-picker-field/TanstackDateRangePickerField.js +28 -41
  107. package/dist/esm/components/date-range-picker-field/test-utils.js +37 -65
  108. package/dist/esm/components/definition-list/DefinitionList.context.js +12 -16
  109. package/dist/esm/components/definition-list/DefinitionList.js +23 -22
  110. package/dist/esm/components/definition-list/parts/DefinitionItem.js +49 -50
  111. package/dist/esm/components/definition-tooltip/DefinitionTooltip.js +25 -28
  112. package/dist/esm/components/dialog/Dialog.js +79 -110
  113. package/dist/esm/components/dialog/parts/DialogActions/DialogButton.js +41 -61
  114. package/dist/esm/components/dialog/parts/DialogActions.js +10 -13
  115. package/dist/esm/components/dialog/parts/DialogContent.js +17 -22
  116. package/dist/esm/components/dialog/parts/DialogTitle.js +12 -9
  117. package/dist/esm/components/dialog/test-utils.js +46 -88
  118. package/dist/esm/components/empty-state/EmptyState.js +20 -25
  119. package/dist/esm/components/empty-state/EmptyState.variants.js +15 -22
  120. package/dist/esm/components/empty-state/parts/EmptyStateActions.js +12 -17
  121. package/dist/esm/components/empty-state/parts/EmptyStateContent.js +21 -21
  122. package/dist/esm/components/empty-state/parts/EmptyStateIcon.js +19 -14
  123. package/dist/esm/components/empty-state/presets/EmptyStateGetStarted.js +30 -26
  124. package/dist/esm/components/empty-state/presets/EmptyStateGoodJob.js +35 -55
  125. package/dist/esm/components/empty-state/presets/EmptyStateNoSearchResults.js +31 -27
  126. package/dist/esm/components/empty-state/presets/EmptyStateUpgradeRequired.js +30 -26
  127. package/dist/esm/components/empty-state/presets/EmptyStateUseDesktop.js +26 -25
  128. package/dist/esm/components/empty-state/presets/EmptyStateWaitingForData.js +30 -26
  129. package/dist/esm/components/error-state/ErrorState.js +155 -239
  130. package/dist/esm/components/error-state/initConfig.js +90 -148
  131. package/dist/esm/components/error-state/parts/Collapsible.js +68 -67
  132. package/dist/esm/components/fieldset/Fieldset.js +63 -72
  133. package/dist/esm/components/fieldset/parts/FieldGroup.js +13 -18
  134. package/dist/esm/components/filter/Filter.controls.js +49 -42
  135. package/dist/esm/components/filter/Filter.js +101 -146
  136. package/dist/esm/components/filter/hooks/useFilterIds.js +12 -12
  137. package/dist/esm/components/filter/hooks/useFilterState.js +16 -22
  138. package/dist/esm/components/filter/hooks/useFilterValue.js +31 -30
  139. package/dist/esm/components/filter/parts/FilterButton.js +40 -54
  140. package/dist/esm/components/filter/parts/FilterLabel.js +38 -56
  141. package/dist/esm/components/filter/parts/FilterPopover.js +68 -80
  142. package/dist/esm/components/filter/utils/value-formatters.js +9 -11
  143. package/dist/esm/components/filter-toolbar/FilterToolbar.js +124 -173
  144. package/dist/esm/components/filter-toolbar/hooks/use-filter-toolbar-state.js +128 -130
  145. package/dist/esm/components/filter-toolbar/parts/AddFilter.js +81 -109
  146. package/dist/esm/components/filter-toolbar/parts/AddFilterItem.js +20 -18
  147. package/dist/esm/components/filter-toolbar/utils/filter-adapters.js +17 -88
  148. package/dist/esm/components/filter-toolbar/utils/normalize-filter-value.js +12 -18
  149. package/dist/esm/components/flex/Flex.js +38 -57
  150. package/dist/esm/components/flex/Flex.variants.js +198 -199
  151. package/dist/esm/components/flex/FlexItem.js +21 -32
  152. package/dist/esm/components/floating-action-bar/FloatingActionBar.js +55 -68
  153. package/dist/esm/components/form/Form.context.js +15 -26
  154. package/dist/esm/components/form/Form.js +40 -57
  155. package/dist/esm/components/form/TanstackForm.js +22 -29
  156. package/dist/esm/components/form-field/FormField.context.js +44 -70
  157. package/dist/esm/components/form-field/FormField.js +50 -56
  158. package/dist/esm/components/form-field/TanstackFormField.context.js +11 -12
  159. package/dist/esm/components/form-field/TanstackFormField.js +44 -45
  160. package/dist/esm/components/form-field/parts/FormControl.js +41 -52
  161. package/dist/esm/components/form-field/parts/FormFeedbackText.js +24 -26
  162. package/dist/esm/components/form-field/parts/FormHelperText.js +21 -26
  163. package/dist/esm/components/form-field/parts/FormLabel.js +21 -30
  164. package/dist/esm/components/form-field/parts/RawFormContextualLink.js +32 -38
  165. package/dist/esm/components/form-field/parts/TanstackFormFeedbackText.js +28 -31
  166. package/dist/esm/components/form-field/parts/TanstackFormHelperText.js +22 -25
  167. package/dist/esm/components/form-field/parts/TanstackFormLabel.js +21 -26
  168. package/dist/esm/components/form-field/parts/TanstackRawFormContextualLink.js +33 -45
  169. package/dist/esm/components/form-field/utils/isFieldRequired.js +7 -7
  170. package/dist/esm/components/full-page-loader/FullPageLoader.js +26 -35
  171. package/dist/esm/components/funnel-layout/FunnelLayout.context.js +12 -26
  172. package/dist/esm/components/funnel-layout/FunnelLayout.js +75 -91
  173. package/dist/esm/components/funnel-layout/parts/FunnelBackButton.js +24 -34
  174. package/dist/esm/components/funnel-layout/parts/FunnelBody.js +15 -23
  175. package/dist/esm/components/funnel-layout/parts/FunnelPage.js +27 -35
  176. package/dist/esm/components/funnel-layout/parts/FunnelPageAction.js +32 -39
  177. package/dist/esm/components/funnel-layout/parts/FunnelPageActions.js +30 -41
  178. package/dist/esm/components/funnel-layout/parts/FunnelPageContent.js +15 -23
  179. package/dist/esm/components/funnel-layout/parts/FunnelPageFooter.js +20 -28
  180. package/dist/esm/components/funnel-layout/parts/FunnelPageHeader.js +53 -55
  181. package/dist/esm/components/funnel-layout/parts/FunnelProgressBar.js +39 -50
  182. package/dist/esm/components/funnel-layout/parts/FunnelSidebar.js +47 -54
  183. package/dist/esm/components/funnel-layout/parts/FunnelTopBar.js +88 -119
  184. package/dist/esm/components/grid/Grid.js +27 -38
  185. package/dist/esm/components/grid/Grid.variants.js +147 -164
  186. package/dist/esm/components/grid/GridItem.js +24 -43
  187. package/dist/esm/components/icon/Icon.js +112 -115
  188. package/dist/esm/components/icon-button/CircularIconButton.js +117 -119
  189. package/dist/esm/components/icon-button/IconButton.js +82 -93
  190. package/dist/esm/components/icon-button/IconButton.variants.js +167 -174
  191. package/dist/esm/components/inline-field/InlineField.context.js +8 -9
  192. package/dist/esm/components/inline-field/InlineField.js +48 -57
  193. package/dist/esm/components/inline-field/hooks/useInlineFieldMode.js +23 -26
  194. package/dist/esm/components/inline-field/parts/InlineFieldEditView.js +113 -149
  195. package/dist/esm/components/inline-field/parts/InlineFieldReadView.js +52 -57
  196. package/dist/esm/components/inline-field-group/InlineFieldGroup.context.js +5 -5
  197. package/dist/esm/components/inline-field-group/InlineFieldGroup.js +188 -216
  198. package/dist/esm/components/inline-field-group/hooks/useInlineFieldGroupMode.js +23 -26
  199. package/dist/esm/components/inline-field-group/parts/InlineFieldGroupActions.js +109 -156
  200. package/dist/esm/components/inline-field-group/parts/InlineFieldGroupEditView.js +51 -55
  201. package/dist/esm/components/inline-field-group/parts/InlineFieldGroupHeader.js +39 -38
  202. package/dist/esm/components/inline-field-group/parts/InlineFieldGroupReadView.js +18 -27
  203. package/dist/esm/components/input/Input.js +123 -150
  204. package/dist/esm/components/input/TanstackInput.js +33 -38
  205. package/dist/esm/components/label/Label.js +52 -66
  206. package/dist/esm/components/link/RawLink.js +109 -165
  207. package/dist/esm/components/link/utils.js +12 -15
  208. package/dist/esm/components/link-button/RawLinkButton.js +100 -127
  209. package/dist/esm/components/list-view/ListView.js +40 -45
  210. package/dist/esm/components/list-view/parts/ListViewItemLabel.js +17 -22
  211. package/dist/esm/components/list-view/parts/ListViewItemText.js +17 -22
  212. package/dist/esm/components/list-view/parts/ListViewSection.js +25 -23
  213. package/dist/esm/components/list-view/parts/RawListViewItem.js +68 -81
  214. package/dist/esm/components/menu/Menu.js +21 -30
  215. package/dist/esm/components/menu/parts/MenuContent.js +17 -29
  216. package/dist/esm/components/menu/parts/MenuHeader.js +13 -16
  217. package/dist/esm/components/menu/parts/MenuSection.js +32 -42
  218. package/dist/esm/components/menu/parts/MenuSeparator.js +8 -8
  219. package/dist/esm/components/menu/parts/MenuTrigger.js +12 -13
  220. package/dist/esm/components/menu/parts/RawMenuItem.js +29 -42
  221. package/dist/esm/components/multi-select/MultiSelect.js +249 -299
  222. package/dist/esm/components/multi-select/Multiselect.context.js +6 -6
  223. package/dist/esm/components/multi-select/TanstackMultiSelect.js +31 -41
  224. package/dist/esm/components/multi-select/parts/MultiSelectOptGroup.js +35 -43
  225. package/dist/esm/components/multi-select/parts/MultiSelectOption.js +60 -76
  226. package/dist/esm/components/multi-select/utils/selection-adapter.js +9 -15
  227. package/dist/esm/components/multi-select-field/MultiSelectField.js +56 -71
  228. package/dist/esm/components/multi-select-field/TanstackMultiSelectField.js +27 -48
  229. package/dist/esm/components/multi-select-field/test-utils.js +22 -45
  230. package/dist/esm/components/nav/Nav.js +21 -27
  231. package/dist/esm/components/nav/parts/NavGroup.js +103 -123
  232. package/dist/esm/components/nav/parts/RawNavItem.js +99 -118
  233. package/dist/esm/components/navigation-card/NavigationCard.context.js +10 -11
  234. package/dist/esm/components/navigation-card/NavigationCard.js +53 -63
  235. package/dist/esm/components/navigation-card/NavigationCard.variants.js +162 -162
  236. package/dist/esm/components/navigation-card/parts/NavigationCardDescription.js +17 -20
  237. package/dist/esm/components/navigation-card/parts/NavigationCardGroup.js +76 -93
  238. package/dist/esm/components/navigation-card/parts/NavigationCardLabel.js +18 -23
  239. package/dist/esm/components/number-field/NumberField.js +48 -69
  240. package/dist/esm/components/number-field/TanstackNumberField.js +30 -43
  241. package/dist/esm/components/number-input/NumberInput.js +161 -216
  242. package/dist/esm/components/number-input/TanstackNumberInput.js +33 -38
  243. package/dist/esm/components/page/Page.js +33 -48
  244. package/dist/esm/components/page/parts/PageHeader.js +41 -36
  245. package/dist/esm/components/page/parts/PageHeading.js +17 -19
  246. package/dist/esm/components/pagination/Pagination.js +78 -102
  247. package/dist/esm/components/pagination/PaginationContext.js +8 -14
  248. package/dist/esm/components/pagination/hooks/use-pagination-state.js +20 -26
  249. package/dist/esm/components/pagination/hooks/use-pagination-window.js +10 -13
  250. package/dist/esm/components/pagination/parts/PaginationContent.js +26 -37
  251. package/dist/esm/components/pagination/parts/PaginationEllipsis.js +33 -33
  252. package/dist/esm/components/pagination/parts/PaginationItem.js +17 -22
  253. package/dist/esm/components/pagination/parts/RawPaginationLink.js +50 -60
  254. package/dist/esm/components/pagination/parts/RawPaginationNext.js +53 -70
  255. package/dist/esm/components/pagination/parts/RawPaginationPrevious.js +52 -66
  256. package/dist/esm/components/pagination/utils/pagination-window.js +55 -40
  257. package/dist/esm/components/password-field/TanstackPasswordField.js +55 -82
  258. package/dist/esm/components/password-field/hooks/use-caps-lock.js +11 -11
  259. package/dist/esm/components/password-field/parts/PasswordFieldDetails.js +42 -41
  260. package/dist/esm/components/password-field/parts/PasswordInput.js +153 -188
  261. package/dist/esm/components/password-field/parts/ValidationRuleItem.js +38 -43
  262. package/dist/esm/components/payfit-brand/PayFitBrand.js +74 -84
  263. package/dist/esm/components/payfit-brand/PayFitPreprod.js +53 -57
  264. package/dist/esm/components/phone-number/PhoneNumberInput.js +214 -331
  265. package/dist/esm/components/phone-number/TanstackPhoneNumberInput.js +29 -32
  266. package/dist/esm/components/phone-number/parts/PhoneNumberItem.js +49 -65
  267. package/dist/esm/components/phone-number/unknownFlag.js +4 -0
  268. package/dist/esm/components/phone-number-field/TanstackPhoneNumberField.js +21 -32
  269. package/dist/esm/components/pill/Pill.js +48 -58
  270. package/dist/esm/components/popover/Popover.js +37 -41
  271. package/dist/esm/components/popover/parts/PopoverHeader.js +48 -60
  272. package/dist/esm/components/progress-bar/ProgressBar.js +66 -76
  273. package/dist/esm/components/promo-dialog/PromoDialog.js +135 -218
  274. package/dist/esm/components/promo-dialog/parts/PromoDialogActions.js +19 -29
  275. package/dist/esm/components/promo-dialog/parts/PromoDialogContent.js +14 -19
  276. package/dist/esm/components/promo-dialog/parts/PromoDialogHero.js +17 -24
  277. package/dist/esm/components/promo-dialog/parts/PromoDialogSubtitle.js +15 -21
  278. package/dist/esm/components/promo-dialog/parts/PromoDialogTitle.js +11 -16
  279. package/dist/esm/components/radio-button-group/RadioButtonGroup.js +18 -23
  280. package/dist/esm/components/radio-button-group/TanstackRadioButtonGroup.js +32 -42
  281. package/dist/esm/components/radio-button-group/parts/RadioButton.js +61 -66
  282. package/dist/esm/components/radio-button-group/parts/RadioButtonHelper.js +14 -19
  283. package/dist/esm/components/radio-button-group/parts/RadioIndicator.js +107 -129
  284. package/dist/esm/components/radio-button-group-field/RadioButtonGroupField.js +37 -52
  285. package/dist/esm/components/radio-button-group-field/TanstackRadioButtonGroupField.js +31 -37
  286. package/dist/esm/components/search/Search.js +120 -166
  287. package/dist/esm/components/segmented-button-group/SegmentedButtonGroup.js +20 -20
  288. package/dist/esm/components/segmented-button-group/SegmentedButtonGroups.context.js +11 -14
  289. package/dist/esm/components/segmented-button-group/parts/ToggleButton.js +105 -125
  290. package/dist/esm/components/select/Select.js +85 -130
  291. package/dist/esm/components/select/TanstackSelect.js +31 -40
  292. package/dist/esm/components/select/parts/SelectButton.js +79 -103
  293. package/dist/esm/components/select/parts/SelectOption.context.js +14 -21
  294. package/dist/esm/components/select/parts/SelectOption.js +53 -64
  295. package/dist/esm/components/select/parts/SelectOptionGroup.js +34 -27
  296. package/dist/esm/components/select/parts/SelectOptionHelper.js +22 -21
  297. package/dist/esm/components/select-field/SelectField.js +44 -66
  298. package/dist/esm/components/select-field/TanstackSelectField.js +29 -45
  299. package/dist/esm/components/select-field/test-utils.js +10 -25
  300. package/dist/esm/components/select-list/SelectList.js +70 -81
  301. package/dist/esm/components/select-list/constants.js +13 -28
  302. package/dist/esm/components/select-list/helpers.js +37 -43
  303. package/dist/esm/components/select-list/hooks/useControlledSelection.js +13 -15
  304. package/dist/esm/components/select-list/hooks/useSelectedFirstSorting.js +30 -30
  305. package/dist/esm/components/select-list/parts/SelectListEmptyState.js +24 -24
  306. package/dist/esm/components/select-list/parts/SelectListOptGroup.js +33 -30
  307. package/dist/esm/components/select-list/parts/SelectListOption.js +54 -70
  308. package/dist/esm/components/select-list/parts/SelectListSearchInput.js +43 -49
  309. package/dist/esm/components/select-list/parts/SelectedItemsSection.js +29 -35
  310. package/dist/esm/components/select-list/utils/partition.js +7 -8
  311. package/dist/esm/components/selectable-button-group/SelectableButtonGroup.context.js +5 -5
  312. package/dist/esm/components/selectable-button-group/SelectableButtonGroup.js +32 -38
  313. package/dist/esm/components/selectable-button-group/TanstackSelectableButtonGroup.js +27 -33
  314. package/dist/esm/components/selectable-button-group/parts/SelectableButton.js +81 -123
  315. package/dist/esm/components/selectable-button-group-field/SelectableButtonGroupField.js +41 -44
  316. package/dist/esm/components/selectable-button-group-field/TanstackSelectableButtonGroupField.js +29 -46
  317. package/dist/esm/components/selectable-card/internals/Content.js +8 -8
  318. package/dist/esm/components/selectable-card/internals/Description.js +11 -10
  319. package/dist/esm/components/selectable-card/internals/Illustration.js +8 -8
  320. package/dist/esm/components/selectable-card/internals/SelectedIndicator.js +9 -9
  321. package/dist/esm/components/selectable-card/selectable-card-checkbox-group/SelectableCardCheckboxGroup.js +13 -16
  322. package/dist/esm/components/selectable-card/selectable-card-checkbox-group/TanstackSelectableCardCheckboxGroup.js +28 -31
  323. package/dist/esm/components/selectable-card/selectable-card-checkbox-group/parts/SelectableCardCheckbox.js +37 -37
  324. package/dist/esm/components/selectable-card/selectable-card-radio-group/SelectableCardRadioGroup.js +18 -21
  325. package/dist/esm/components/selectable-card/selectable-card-radio-group/TanstackSelectableCardRadioGroup.js +28 -31
  326. package/dist/esm/components/selectable-card/selectable-card-radio-group/parts/SelectableCardRadio.js +40 -47
  327. package/dist/esm/components/selectable-card/selectableCard.variant.js +16 -22
  328. package/dist/esm/components/selectable-card-checkbox-group-field/SelectableCardCheckboxGroupField.js +38 -46
  329. package/dist/esm/components/selectable-card-checkbox-group-field/TanstackSelectableCardCheckboxGroupField.js +29 -37
  330. package/dist/esm/components/selectable-card-radio-group-field/SelectableCardRadioGroupField.js +37 -45
  331. package/dist/esm/components/selectable-card-radio-group-field/TanstackSelectableCardRadioGroupField.js +29 -37
  332. package/dist/esm/components/side-panel/SidePanel.js +53 -71
  333. package/dist/esm/components/side-panel/parts/SidePanelContent.js +25 -25
  334. package/dist/esm/components/side-panel/parts/SidePanelDragIndicator.js +44 -65
  335. package/dist/esm/components/side-panel/parts/SidePanelFooter.js +26 -29
  336. package/dist/esm/components/side-panel/parts/SidePanelHeader.js +41 -43
  337. package/dist/esm/components/skip-links/SkipLinks.js +69 -87
  338. package/dist/esm/components/spinner/Spinner.js +76 -106
  339. package/dist/esm/components/stepper/Stepper.context.js +15 -20
  340. package/dist/esm/components/stepper/Stepper.js +16 -18
  341. package/dist/esm/components/stepper/hooks/useStepper.js +20 -25
  342. package/dist/esm/components/stepper/parts/Step.js +47 -56
  343. package/dist/esm/components/table/Table.context.js +35 -41
  344. package/dist/esm/components/table/Table.js +155 -225
  345. package/dist/esm/components/table/hooks/useTableKeyboardNavigation.js +180 -208
  346. package/dist/esm/components/table/parts/TableBody.js +81 -104
  347. package/dist/esm/components/table/parts/TableCell.js +38 -62
  348. package/dist/esm/components/table/parts/TableColumnHeader.js +62 -78
  349. package/dist/esm/components/table/parts/TableEmptyState.js +131 -161
  350. package/dist/esm/components/table/parts/TableHeader.js +24 -37
  351. package/dist/esm/components/table/parts/TablePagination.js +119 -141
  352. package/dist/esm/components/table/parts/TableRow.js +36 -52
  353. package/dist/esm/components/tabs/Tabs.context.js +19 -20
  354. package/dist/esm/components/tabs/Tabs.js +26 -24
  355. package/dist/esm/components/tabs/Tabs.variant.js +35 -41
  356. package/dist/esm/components/tabs/parts/NavigationButton.js +37 -46
  357. package/dist/esm/components/tabs/parts/RawTab.js +22 -18
  358. package/dist/esm/components/tabs/parts/TabList.js +84 -83
  359. package/dist/esm/components/tabs/parts/TabPanel.js +13 -9
  360. package/dist/esm/components/task-menu/TaskMenu.context.js +44 -58
  361. package/dist/esm/components/task-menu/TaskMenu.js +21 -28
  362. package/dist/esm/components/task-menu/parts/Content.js +43 -48
  363. package/dist/esm/components/task-menu/parts/Header.js +39 -54
  364. package/dist/esm/components/task-menu/parts/RawSubTask.js +141 -166
  365. package/dist/esm/components/task-menu/parts/RawTask.js +115 -145
  366. package/dist/esm/components/task-menu/parts/TaskGroup.js +103 -140
  367. package/dist/esm/components/task-menu/parts/dot.js +19 -0
  368. package/dist/esm/components/task-menu/parts/task.variants.js +59 -64
  369. package/dist/esm/components/text/Text.js +56 -71
  370. package/dist/esm/components/text/Text.variants.js +106 -112
  371. package/dist/esm/components/text-area/TanstackTextArea.js +30 -35
  372. package/dist/esm/components/text-area/TextArea.js +121 -164
  373. package/dist/esm/components/text-field/TanstackTextField.js +39 -59
  374. package/dist/esm/components/text-field/TextField.js +53 -76
  375. package/dist/esm/components/timeline/Timeline.context.js +18 -21
  376. package/dist/esm/components/timeline/Timeline.js +33 -37
  377. package/dist/esm/components/timeline/Timeline.utils.js +8 -8
  378. package/dist/esm/components/timeline/Timeline.variants.js +93 -118
  379. package/dist/esm/components/timeline/parts/TimelineMarker.js +36 -26
  380. package/dist/esm/components/timeline/parts/TimelineStep.context.js +15 -19
  381. package/dist/esm/components/timeline/parts/TimelineStep.js +57 -52
  382. package/dist/esm/components/timeline/parts/TimelineStepContent.context.js +15 -20
  383. package/dist/esm/components/timeline/parts/TimelineStepContent.js +30 -17
  384. package/dist/esm/components/timeline/parts/TimelineStepDescription.js +12 -7
  385. package/dist/esm/components/timeline/parts/TimelineStepHeader.js +34 -36
  386. package/dist/esm/components/timeline/parts/check.js +23 -0
  387. package/dist/esm/components/toast/Toast.context.js +15 -20
  388. package/dist/esm/components/toast/ToastManager.js +13 -21
  389. package/dist/esm/components/toast/UnityToast.js +82 -95
  390. package/dist/esm/components/toast/parts/ToastAction.js +18 -13
  391. package/dist/esm/components/toast/parts/ToastContent.js +13 -9
  392. package/dist/esm/components/toast/parts/ToastTitle.js +13 -8
  393. package/dist/esm/components/toast/test-utils.js +63 -117
  394. package/dist/esm/components/toast/toast.js +27 -38
  395. package/dist/esm/components/toggle-switch/TanstackToggleSwitch.js +21 -24
  396. package/dist/esm/components/toggle-switch/ToggleSwitch.js +111 -112
  397. package/dist/esm/components/toggle-switch-field/TanstackToggleSwitchField.js +19 -33
  398. package/dist/esm/components/toggle-switch-field/ToggleSwitchField.js +33 -58
  399. package/dist/esm/components/toggle-switch-group/TanstackToggleSwitchGroup.js +18 -21
  400. package/dist/esm/components/toggle-switch-group/ToggleSwitchGroup.js +83 -108
  401. package/dist/esm/components/toggle-switch-group-field/TanstackToggleSwitchGroupField.js +30 -49
  402. package/dist/esm/components/toggle-switch-group-field/ToggleSwitchGroupField.js +41 -61
  403. package/dist/esm/components/tooltip/Tooltip.js +30 -31
  404. package/dist/esm/hooks/tanstack-form-context.js +5 -8
  405. package/dist/esm/hooks/tanstack-form-default-values.js +5 -5
  406. package/dist/esm/hooks/use-async-list.js +2 -0
  407. package/dist/esm/hooks/use-breakpoint-listener.js +16 -25
  408. package/dist/esm/hooks/use-container-query-level.js +30 -31
  409. package/dist/esm/hooks/use-form.js +35 -29
  410. package/dist/esm/hooks/use-has-scroll.js +76 -74
  411. package/dist/esm/hooks/use-id.js +18 -24
  412. package/dist/esm/hooks/use-media-query.js +15 -18
  413. package/dist/esm/hooks/use-resizable.js +49 -49
  414. package/dist/esm/hooks/use-responsive-value.js +22 -26
  415. package/dist/esm/hooks/use-scroll-direction.js +50 -52
  416. package/dist/esm/hooks/use-tanstack-form.js +60 -287
  417. package/dist/esm/index.js +240 -577
  418. package/dist/esm/integrations/tanstack-router/components/breadcrumbs/BreadcrumbLink.js +7 -7
  419. package/dist/esm/integrations/tanstack-router/components/form-contextual-link/FormContextualLink.js +7 -7
  420. package/dist/esm/integrations/tanstack-router/components/link/Link.js +7 -7
  421. package/dist/esm/integrations/tanstack-router/components/link-button/LinkButton.js +5 -5
  422. package/dist/esm/integrations/tanstack-router/components/list-view/ListView.js +20 -23
  423. package/dist/esm/integrations/tanstack-router/components/list-view/parts/ListViewItem.js +17 -30
  424. package/dist/esm/integrations/tanstack-router/components/menu-item/MenuItem.js +17 -15
  425. package/dist/esm/integrations/tanstack-router/components/nav-item/NavItem.js +21 -27
  426. package/dist/esm/integrations/tanstack-router/components/navigation-card/NavigationCard.js +19 -35
  427. package/dist/esm/integrations/tanstack-router/components/pagination/PaginationLink.js +18 -20
  428. package/dist/esm/integrations/tanstack-router/components/pagination/PaginationNext.js +17 -20
  429. package/dist/esm/integrations/tanstack-router/components/pagination/PaginationPrevious.js +18 -21
  430. package/dist/esm/integrations/tanstack-router/components/tabs/Tabs.js +52 -67
  431. package/dist/esm/integrations/tanstack-router/components/tabs/parts/Tab.js +16 -22
  432. package/dist/esm/integrations/tanstack-router/components/tabs/parts/TabPanel.js +14 -14
  433. package/dist/esm/integrations/tanstack-router/components/task-menu/SubTask.js +15 -12
  434. package/dist/esm/integrations/tanstack-router/components/task-menu/Task.js +15 -12
  435. package/dist/esm/integrations/tanstack-router.js +19 -40
  436. package/dist/esm/providers/router/RouterProvider.js +24 -20
  437. package/dist/esm/storybook-testing.js +7 -14
  438. package/dist/esm/utils/createSchemaAdapter.js +7 -12
  439. package/dist/esm/utils/field-revalidate-logic.js +41 -38
  440. package/dist/esm/utils/platform.js +4 -4
  441. package/dist/esm/utils/scroll-detection.js +31 -32
  442. package/dist/esm/utils/spacing.js +14 -14
  443. package/package.json +12 -12
  444. package/dist/esm/components/phone-number/unknownFlag.svg.js +0 -4
  445. package/dist/esm/components/task-menu/parts/dot.svg.js +0 -5
  446. package/dist/esm/components/timeline/parts/check.svg.js +0 -5
@@ -1,18 +1,22 @@
1
- import { jsxs as i, jsx as l } from "react/jsx-runtime";
2
- import { forwardRef as p } from "react";
3
- import { Tab as b } from "react-aria-components/Tabs";
4
- import { useTabsContext as c } from "../Tabs.context.js";
5
- import { tabsVariant as f } from "../Tabs.variant.js";
6
- const d = p(
7
- ({ children: a, suffix: r, id: o, ...t }, s) => {
8
- const { variant: m, scrollable: n } = c(), { tab: e } = f({ variant: m, scrollable: n });
9
- return /* @__PURE__ */ i(b, { ...t, ref: s, id: o, className: e(), children: [
10
- a,
11
- r ? /* @__PURE__ */ l("span", { children: r }) : null
12
- ] });
13
- }
14
- );
15
- d.displayName = "RawTab";
16
- export {
17
- d as RawTab
18
- };
1
+ import { useTabsContext as e } from "../Tabs.context.js";
2
+ import { tabsVariant as t } from "../Tabs.variant.js";
3
+ import { forwardRef as n } from "react";
4
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
+ import { Tab as a } from "react-aria-components/Tabs";
6
+ //#region src/components/tabs/parts/RawTab.tsx
7
+ var o = n(({ children: n, suffix: o, id: s, ...c }, l) => {
8
+ let { variant: u, scrollable: d } = e(), { tab: f } = t({
9
+ variant: u,
10
+ scrollable: d
11
+ });
12
+ return /* @__PURE__ */ i(a, {
13
+ ...c,
14
+ ref: l,
15
+ id: s,
16
+ className: f(),
17
+ children: [n, o ? /* @__PURE__ */ r("span", { children: o }) : null]
18
+ });
19
+ });
20
+ o.displayName = "RawTab";
21
+ //#endregion
22
+ export { o as RawTab };
@@ -1,83 +1,84 @@
1
- import { jsxs as A, jsx as c } from "react/jsx-runtime";
2
- import { forwardRef as C, useRef as B, useState as d, useCallback as j } from "react";
3
- import { TabList as L } from "react-aria-components/Tabs";
4
- import { useResizeObserver as q } from "usehooks-ts";
5
- import { useTabsContext as w } from "../Tabs.context.js";
6
- import { tabsVariant as z } from "../Tabs.variant.js";
7
- import { NavigationButton as g } from "./NavigationButton.js";
8
- const P = C(
9
- ({ children: i }, f) => {
10
- const t = B(null), [p, S] = d(!1), [R, v] = d(!1), { variant: y, scrollable: u } = w(), { tabList: b, scroller: W } = z({ variant: y, scrollable: u }), m = j(() => {
11
- if (!t.current) return;
12
- const { scrollLeft: r, scrollWidth: s, clientWidth: e } = t.current;
13
- S(r > 0), v(r + e < s);
14
- }, []);
15
- q({
16
- ref: t,
17
- onResize: m
18
- });
19
- const N = (r) => {
20
- m();
21
- }, T = () => {
22
- const r = t.current?.querySelectorAll("[role=tab]");
23
- if (!t.current || !r) return 0;
24
- const { scrollLeft: s } = t.current, e = Array.from(r);
25
- for (let o = e.length - 1; o >= 0; o--) {
26
- const l = e[o];
27
- if (l.offsetLeft < s)
28
- return -l.offsetWidth;
29
- }
30
- return 0;
31
- }, x = () => {
32
- const r = t.current?.querySelectorAll("[role=tab]");
33
- if (!t.current || !r) return 0;
34
- const { scrollLeft: s, clientWidth: e } = t.current, o = Array.from(r), l = s + e;
35
- for (let n = 0; n < o.length - 1; n++) {
36
- const a = o[n], h = a.offsetLeft + a.offsetWidth;
37
- if (h > l || h < l)
38
- return a.offsetWidth;
39
- }
40
- return 0;
41
- };
42
- return u ? /* @__PURE__ */ A("div", { className: "uy:relative", children: [
43
- p && /* @__PURE__ */ c(
44
- g,
45
- {
46
- direction: "left",
47
- onPress: () => {
48
- t.current?.scrollBy({
49
- behavior: "smooth",
50
- left: T()
51
- });
52
- }
53
- }
54
- ),
55
- /* @__PURE__ */ c(
56
- "div",
57
- {
58
- ref: t,
59
- "data-testid": "scrollable-tab-list",
60
- className: W(),
61
- onScroll: N,
62
- children: /* @__PURE__ */ c(L, { ref: f, className: b(), children: i })
63
- }
64
- ),
65
- R && /* @__PURE__ */ c(
66
- g,
67
- {
68
- direction: "right",
69
- onPress: () => {
70
- t.current?.scrollBy({
71
- behavior: "smooth",
72
- left: x()
73
- });
74
- }
75
- }
76
- )
77
- ] }) : /* @__PURE__ */ c(L, { ref: f, className: b(), children: i });
78
- }
79
- );
80
- P.displayName = "TabList";
81
- export {
82
- P as TabList
83
- };
1
+ import { useTabsContext as e } from "../Tabs.context.js";
2
+ import { tabsVariant as t } from "../Tabs.variant.js";
3
+ import { NavigationButton as n } from "./NavigationButton.js";
4
+ import { forwardRef as r, useCallback as i, useRef as a, useState as o } from "react";
5
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
6
+ import { useResizeObserver as l } from "usehooks-ts";
7
+ import { TabList as u } from "react-aria-components/Tabs";
8
+ //#region src/components/tabs/parts/TabList.tsx
9
+ var d = r(({ children: r }, d) => {
10
+ let f = a(null), [p, m] = o(!1), [h, g] = o(!1), { variant: _, scrollable: v } = e(), { tabList: y, scroller: b } = t({
11
+ variant: _,
12
+ scrollable: v
13
+ }), x = i(() => {
14
+ if (!f.current) return;
15
+ let { scrollLeft: e, scrollWidth: t, clientWidth: n } = f.current;
16
+ m(e > 0), g(e + n < t);
17
+ }, []);
18
+ l({
19
+ ref: f,
20
+ onResize: x
21
+ });
22
+ let S = (e) => {
23
+ x();
24
+ }, C = () => {
25
+ let e = f.current?.querySelectorAll("[role=tab]");
26
+ if (!f.current || !e) return 0;
27
+ let { scrollLeft: t } = f.current, n = Array.from(e);
28
+ for (let e = n.length - 1; e >= 0; e--) {
29
+ let r = n[e];
30
+ if (r.offsetLeft < t) return -r.offsetWidth;
31
+ }
32
+ return 0;
33
+ }, w = () => {
34
+ let e = f.current?.querySelectorAll("[role=tab]");
35
+ if (!f.current || !e) return 0;
36
+ let { scrollLeft: t, clientWidth: n } = f.current, r = Array.from(e), i = t + n;
37
+ for (let e = 0; e < r.length - 1; e++) {
38
+ let t = r[e], n = t.offsetLeft + t.offsetWidth;
39
+ if (n > i || n < i) return t.offsetWidth;
40
+ }
41
+ return 0;
42
+ };
43
+ return v ? /* @__PURE__ */ c("div", {
44
+ className: "uy:relative",
45
+ children: [
46
+ p && /* @__PURE__ */ s(n, {
47
+ direction: "left",
48
+ onPress: () => {
49
+ f.current?.scrollBy({
50
+ behavior: "smooth",
51
+ left: C()
52
+ });
53
+ }
54
+ }),
55
+ /* @__PURE__ */ s("div", {
56
+ ref: f,
57
+ "data-testid": "scrollable-tab-list",
58
+ className: b(),
59
+ onScroll: S,
60
+ children: /* @__PURE__ */ s(u, {
61
+ ref: d,
62
+ className: y(),
63
+ children: r
64
+ })
65
+ }),
66
+ h && /* @__PURE__ */ s(n, {
67
+ direction: "right",
68
+ onPress: () => {
69
+ f.current?.scrollBy({
70
+ behavior: "smooth",
71
+ left: w()
72
+ });
73
+ }
74
+ })
75
+ ]
76
+ }) : /* @__PURE__ */ s(u, {
77
+ ref: d,
78
+ className: y(),
79
+ children: r
80
+ });
81
+ });
82
+ d.displayName = "TabList";
83
+ //#endregion
84
+ export { d as TabList };
@@ -1,10 +1,14 @@
1
- import { jsx as m } from "react/jsx-runtime";
2
- import { forwardRef as t } from "react";
1
+ import { forwardRef as e } from "react";
2
+ import { jsx as t } from "react/jsx-runtime";
3
3
  import { TabPanel as n } from "react-aria-components/Tabs";
4
- const p = t(
5
- ({ children: a, id: r, ...o }, e) => /* @__PURE__ */ m(n, { "data-dd-privacy": "mask", id: r, ref: e, ...o, children: a })
6
- );
7
- p.displayName = "TabPanel";
8
- export {
9
- p as TabPanel
10
- };
4
+ //#region src/components/tabs/parts/TabPanel.tsx
5
+ var r = e(({ children: e, id: r, ...i }, a) => /* @__PURE__ */ t(n, {
6
+ "data-dd-privacy": "mask",
7
+ id: r,
8
+ ref: a,
9
+ ...i,
10
+ children: e
11
+ }));
12
+ r.displayName = "TabPanel";
13
+ //#endregion
14
+ export { r as TabPanel };
@@ -1,61 +1,47 @@
1
- import { jsx as x } from "react/jsx-runtime";
2
- import { useState as r, useRef as i, createContext as C, useContext as M } from "react";
3
- import { useId as G } from "react-aria/useId";
4
- import { useOverlayTrigger as P } from "react-aria/useOverlayTrigger";
5
- import { useOverlayTriggerState as I } from "react-stately/useOverlayTriggerState";
6
- const c = C({
7
- currentTask: void 0,
8
- setCurrentTask: void 0,
9
- toggleTaskGroup: void 0,
10
- expandedTaskGroup: void 0,
11
- taskMenuId: "",
12
- taskMenuContentId: "",
13
- state: null,
14
- triggerRef: { current: null },
15
- overlayRef: { current: null },
16
- triggerProps: {},
17
- overlayProps: {}
1
+ import { createContext as e, useContext as t, useRef as n, useState as r } from "react";
2
+ import { jsx as i } from "react/jsx-runtime";
3
+ import { useId as a } from "react-aria/useId";
4
+ import { useOverlayTriggerState as o } from "react-stately/useOverlayTriggerState";
5
+ import { useOverlayTrigger as s } from "react-aria/useOverlayTrigger";
6
+ //#region src/components/task-menu/TaskMenu.context.tsx
7
+ var c = e({
8
+ currentTask: void 0,
9
+ setCurrentTask: void 0,
10
+ toggleTaskGroup: void 0,
11
+ expandedTaskGroup: void 0,
12
+ taskMenuId: "",
13
+ taskMenuContentId: "",
14
+ state: null,
15
+ triggerRef: { current: null },
16
+ overlayRef: { current: null },
17
+ triggerProps: {},
18
+ overlayProps: {}
18
19
  });
19
- function O({ children: e }) {
20
- const n = G(), [k, d] = r(null), [o, s] = r(
21
- null
22
- ), [p, u] = r(null), a = I({}), l = i(null), T = i(null), { triggerProps: v, overlayProps: f } = P(
23
- { type: "dialog" },
24
- a,
25
- l
26
- ), g = `task-menu-${n}`, m = (t) => {
27
- t === p ? (u(null), s(null)) : (u(t), s(o === t ? null : t));
28
- };
29
- return /* @__PURE__ */ x(
30
- c.Provider,
31
- {
32
- value: {
33
- currentTask: k,
34
- setCurrentTask: d,
35
- toggleTaskGroup: m,
36
- expandedTaskGroup: o,
37
- taskMenuId: n,
38
- taskMenuContentId: g,
39
- state: a,
40
- triggerRef: l,
41
- overlayRef: T,
42
- triggerProps: v,
43
- overlayProps: f
44
- },
45
- children: e
46
- }
47
- );
20
+ function l({ children: e }) {
21
+ let t = a(), [l, u] = r(null), [d, f] = r(null), [p, m] = r(null), h = o({}), g = n(null), _ = n(null), { triggerProps: v, overlayProps: y } = s({ type: "dialog" }, h, g), b = `task-menu-${t}`;
22
+ return /* @__PURE__ */ i(c.Provider, {
23
+ value: {
24
+ currentTask: l,
25
+ setCurrentTask: u,
26
+ toggleTaskGroup: (e) => {
27
+ e === p ? (m(null), f(null)) : (m(e), f(d === e ? null : e));
28
+ },
29
+ expandedTaskGroup: d,
30
+ taskMenuId: t,
31
+ taskMenuContentId: b,
32
+ state: h,
33
+ triggerRef: g,
34
+ overlayRef: _,
35
+ triggerProps: v,
36
+ overlayProps: y
37
+ },
38
+ children: e
39
+ });
48
40
  }
49
- function S() {
50
- const e = M(c);
51
- if (!e)
52
- throw new Error(
53
- "useTaskMenuContext must be used within an TaskMenuProvider"
54
- );
55
- return e;
41
+ function u() {
42
+ let e = t(c);
43
+ if (!e) throw Error("useTaskMenuContext must be used within an TaskMenuProvider");
44
+ return e;
56
45
  }
57
- export {
58
- c as TaskMenuContext,
59
- O as TaskMenuProvider,
60
- S as useTaskMenuContext
61
- };
46
+ //#endregion
47
+ export { l as TaskMenuProvider, u as useTaskMenuContext };
@@ -1,28 +1,21 @@
1
- import { jsx as r, jsxs as m } from "react/jsx-runtime";
2
- import { forwardRef as u } from "react";
3
- import { uyTv as d } from "@payfit/unity-themes";
4
- import { useBreakpointListener as l } from "../../hooks/use-breakpoint-listener.js";
5
- import { Content as y } from "./parts/Content.js";
6
- import { Header as f } from "./parts/Header.js";
7
- import { TaskMenuProvider as p } from "./TaskMenu.context.js";
8
- const c = d({
9
- slots: {
10
- base: [
11
- "uy:relative uy:flex uy:flex-col uy:shadow-raising uy:bg-surface-neutral",
12
- "uy:md:border uy:md:border-solid uy:md:border-border-neutral uy:md:rounded-300 uy:md:p-300"
13
- ]
14
- }
15
- }), b = u(
16
- ({ children: o, label: s, ...t }, a) => {
17
- const { base: n } = c(), e = l(), i = e === "xs" || e === "sm";
18
- return /* @__PURE__ */ r("nav", { ...t, className: n(), ref: a, "aria-label": s, children: /* @__PURE__ */ m(p, { children: [
19
- i && /* @__PURE__ */ r(f, {}),
20
- /* @__PURE__ */ r(y, { children: o })
21
- ] }) });
22
- }
23
- );
24
- b.displayName = "TaskMenu";
25
- export {
26
- b as TaskMenu,
27
- c as taskMenu
28
- };
1
+ import { useBreakpointListener as e } from "../../hooks/use-breakpoint-listener.js";
2
+ import { TaskMenuProvider as t } from "./TaskMenu.context.js";
3
+ import { Content as n } from "./parts/Content.js";
4
+ import { Header as r } from "./parts/Header.js";
5
+ import { forwardRef as i } from "react";
6
+ import { uyTv as a } from "@payfit/unity-themes";
7
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
8
+ //#region src/components/task-menu/TaskMenu.tsx
9
+ var c = a({ slots: { base: ["uy:relative uy:flex uy:flex-col uy:shadow-raising uy:bg-surface-neutral", "uy:md:border uy:md:border-solid uy:md:border-border-neutral uy:md:rounded-300 uy:md:p-300"] } }), l = i(({ children: i, label: a, ...l }, u) => {
10
+ let { base: d } = c(), f = e(), p = f === "xs" || f === "sm";
11
+ return /* @__PURE__ */ o("nav", {
12
+ ...l,
13
+ className: d(),
14
+ ref: u,
15
+ "aria-label": a,
16
+ children: /* @__PURE__ */ s(t, { children: [p && /* @__PURE__ */ o(r, {}), /* @__PURE__ */ o(n, { children: i })] })
17
+ });
18
+ });
19
+ l.displayName = "TaskMenu";
20
+ //#endregion
21
+ export { l as TaskMenu, c as taskMenu };
@@ -1,49 +1,44 @@
1
- import { jsx as t } from "react/jsx-runtime";
2
- import { uyTv as y } from "@payfit/unity-themes";
3
- import { FocusScope as p } from "react-aria/FocusScope";
4
- import { mergeProps as f } from "react-aria/mergeProps";
5
- import { useOverlay as b } from "react-aria/useOverlay";
6
- import { useBreakpointListener as u } from "../../../hooks/use-breakpoint-listener.js";
7
- import { useTaskMenuContext as r } from "../TaskMenu.context.js";
8
- const v = y({
9
- base: [
10
- "uy:flex uy:flex-col uy:mt-100",
11
- "uy:flex uy:md:flex-col uy:md:gap-200 uy:md:list-none uy:md:mt-0",
12
- "uy:focus-visible:outline-2 uy:focus-visible:outline uy:focus-visible:outline-offset-2 uy:focus-visible:outline-utility-focus-ring"
13
- ]
14
- }), l = ({ children: e }) => {
15
- const {
16
- taskMenuContentId: o,
17
- state: s,
18
- overlayProps: a,
19
- overlayRef: n
20
- } = r(), i = u(), m = i === "xs" || i === "sm", { overlayProps: c } = b(
21
- {
22
- onClose: () => s?.close(),
23
- isOpen: s?.isOpen,
24
- isDismissable: !1
25
- },
26
- n
27
- );
28
- return /* @__PURE__ */ t(
29
- "ol",
30
- {
31
- ...f(c, a),
32
- ref: n,
33
- className: v(),
34
- id: o,
35
- ...m && { "data-mobile-open": s?.isOpen },
36
- children: e
37
- }
38
- );
39
- }, d = ({ children: e }) => {
40
- const { state: o } = r();
41
- return !!o?.isOpen && /* @__PURE__ */ t("div", { className: "uy:absolute uy:z-9 uy:top-full uy:inset-x-0 uy:h-[100dvh] uy:bg-surface-neutral", children: /* @__PURE__ */ t(p, { contain: !0, restoreFocus: !0, autoFocus: !0, children: /* @__PURE__ */ t(l, { children: e }) }) });
42
- }, x = ({ children: e }) => {
43
- const o = u();
44
- return o === "xs" || o === "sm" ? /* @__PURE__ */ t(d, { children: e }) : /* @__PURE__ */ t(l, { children: e });
45
- };
46
- x.displayName = "TaskMenuContent";
47
- export {
48
- x as Content
1
+ import { useBreakpointListener as e } from "../../../hooks/use-breakpoint-listener.js";
2
+ import { useTaskMenuContext as t } from "../TaskMenu.context.js";
3
+ import { uyTv as n } from "@payfit/unity-themes";
4
+ import { jsx as r } from "react/jsx-runtime";
5
+ import { mergeProps as i } from "react-aria/mergeProps";
6
+ import { useOverlay as a } from "react-aria/useOverlay";
7
+ import { FocusScope as o } from "react-aria/FocusScope";
8
+ //#region src/components/task-menu/parts/Content.tsx
9
+ var s = n({ base: [
10
+ "uy:flex uy:flex-col uy:mt-100",
11
+ "uy:flex uy:md:flex-col uy:md:gap-200 uy:md:list-none uy:md:mt-0",
12
+ "uy:focus-visible:outline-2 uy:focus-visible:outline uy:focus-visible:outline-offset-2 uy:focus-visible:outline-utility-focus-ring"
13
+ ] }), c = ({ children: n }) => {
14
+ let { taskMenuContentId: o, state: c, overlayProps: l, overlayRef: u } = t(), d = e(), f = d === "xs" || d === "sm", { overlayProps: p } = a({
15
+ onClose: () => c?.close(),
16
+ isOpen: c?.isOpen,
17
+ isDismissable: !1
18
+ }, u);
19
+ return /* @__PURE__ */ r("ol", {
20
+ ...i(p, l),
21
+ ref: u,
22
+ className: s(),
23
+ id: o,
24
+ ...f && { "data-mobile-open": c?.isOpen },
25
+ children: n
26
+ });
27
+ }, l = ({ children: e }) => {
28
+ let { state: n } = t();
29
+ return !!n?.isOpen && /* @__PURE__ */ r("div", {
30
+ className: "uy:absolute uy:z-9 uy:top-full uy:inset-x-0 uy:h-[100dvh] uy:bg-surface-neutral",
31
+ children: /* @__PURE__ */ r(o, {
32
+ contain: !0,
33
+ restoreFocus: !0,
34
+ autoFocus: !0,
35
+ children: /* @__PURE__ */ r(c, { children: e })
36
+ })
37
+ });
38
+ }, u = ({ children: t }) => {
39
+ let n = e();
40
+ return r(n === "xs" || n === "sm" ? l : c, { children: t });
49
41
  };
42
+ u.displayName = "TaskMenuContent";
43
+ //#endregion
44
+ export { u as Content };
@@ -1,55 +1,40 @@
1
- import { jsxs as d, jsx as s } from "react/jsx-runtime";
2
- import { uyTv as m } from "@payfit/unity-themes";
3
- import { useIntl as c } from "react-intl";
4
- import { IconButton as p } from "../../icon-button/IconButton.js";
5
- import { Text as f } from "../../text/Text.js";
6
- import { useTaskMenuContext as y } from "../TaskMenu.context.js";
7
- const h = m({
8
- slots: {
9
- header: ["uy:flex uy:px-300 uy:py-200 uy:gap-200 uy:shadow-raising"],
10
- headerSelectedTask: ["uy:flex-1 uy:basis-full uy:self-center"]
11
- }
12
- }), g = () => {
13
- const {
14
- currentTask: t,
15
- taskMenuId: a,
16
- taskMenuContentId: n,
17
- state: e,
18
- triggerProps: r,
19
- triggerRef: o
20
- } = y(), i = c(), { header: l, headerSelectedTask: u } = h();
21
- return /* @__PURE__ */ d("div", { className: l(), children: [
22
- /* @__PURE__ */ s(
23
- f,
24
- {
25
- asElement: "span",
26
- className: u(),
27
- "aria-describedby": a,
28
- children: t?.label
29
- }
30
- ),
31
- /* @__PURE__ */ s(
32
- p,
33
- {
34
- ...r,
35
- ref: o,
36
- variant: "ghost",
37
- color: "neutral",
38
- icon: e?.isOpen ? "CloseOutlined" : "ListOutlined",
39
- label: i.formatMessage({
40
- id: e?.isOpen ? "unity:component:task-menu:header:menu-close" : "unity:component:task-menu:header:menu-open",
41
- defaultMessage: e?.isOpen ? "Close task menu" : "Open task menu"
42
- }),
43
- onClick: () => {
44
- e?.toggle();
45
- },
46
- "aria-expanded": !!e?.isOpen,
47
- "aria-controls": n
48
- }
49
- )
50
- ] });
51
- };
52
- g.displayName = "Header";
53
- export {
54
- g as Header
1
+ import { IconButton as e } from "../../icon-button/IconButton.js";
2
+ import { Text as t } from "../../text/Text.js";
3
+ import { useTaskMenuContext as n } from "../TaskMenu.context.js";
4
+ import { uyTv as r } from "@payfit/unity-themes";
5
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
6
+ import { useIntl as o } from "react-intl";
7
+ //#region src/components/task-menu/parts/Header.tsx
8
+ var s = r({ slots: {
9
+ header: ["uy:flex uy:px-300 uy:py-200 uy:gap-200 uy:shadow-raising"],
10
+ headerSelectedTask: ["uy:flex-1 uy:basis-full uy:self-center"]
11
+ } }), c = () => {
12
+ let { currentTask: r, taskMenuId: c, taskMenuContentId: l, state: u, triggerProps: d, triggerRef: f } = n(), p = o(), { header: m, headerSelectedTask: h } = s();
13
+ return /* @__PURE__ */ a("div", {
14
+ className: m(),
15
+ children: [/* @__PURE__ */ i(t, {
16
+ asElement: "span",
17
+ className: h(),
18
+ "aria-describedby": c,
19
+ children: r?.label
20
+ }), /* @__PURE__ */ i(e, {
21
+ ...d,
22
+ ref: f,
23
+ variant: "ghost",
24
+ color: "neutral",
25
+ icon: u?.isOpen ? "CloseOutlined" : "ListOutlined",
26
+ label: p.formatMessage({
27
+ id: u?.isOpen ? "unity:component:task-menu:header:menu-close" : "unity:component:task-menu:header:menu-open",
28
+ defaultMessage: u?.isOpen ? "Close task menu" : "Open task menu"
29
+ }),
30
+ onClick: () => {
31
+ u?.toggle();
32
+ },
33
+ "aria-expanded": !!u?.isOpen,
34
+ "aria-controls": l
35
+ })]
36
+ });
55
37
  };
38
+ c.displayName = "Header";
39
+ //#endregion
40
+ export { c as Header };