@payfit/unity-components 2.47.5 → 2.47.7

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,169 +1,137 @@
1
- import { jsxs as s, jsx as e } from "react/jsx-runtime";
2
- import { forwardRef as R, useRef as A, useState as O, useCallback as W } from "react";
3
- import { uyTv as k } from "@payfit/unity-themes";
4
- import { ComboBox as C, Input as z } from "react-aria-components/ComboBox";
5
- import { useId as T } from "react-aria/useId";
6
- import { useIntl as j } from "react-intl";
7
- import { useResizeObserver as B } from "usehooks-ts";
8
- import { Icon as y } from "../icon/Icon.js";
9
- import { Spinner as D } from "../spinner/Spinner.js";
10
- import { Text as P } from "../text/Text.js";
11
- import { AutocompleteClearButton as E } from "./parts/AutocompleteClearButton.js";
12
- import { AutocompletePanel as G } from "./parts/AutocompletePanel.js";
13
- const L = k({
14
- slots: {
15
- base: [
16
- "uy:group uy:transition-colors uy:w-full uy:flex uy:gap-100 uy:py-125 uy:sm:py-100 uy:px-150 uy:rounded-100 uy:sm:rounded-75",
17
- "uy:enabled:bg-surface-form-high-enabled",
18
- 'uy:has-data-[focus-visible="true"]:outline-none uy:has-data-[focus-visible="true"]:ring-2 uy:has-data-[focus-visible="true"]:ring-utility-focus-ring uy:has-data-[focus-visible="true"]:ring-offset-2 uy:has-data-[focus-visible="true"]:bg-surface-form-high-focus',
19
- "uy:active:border uy:active:border-solid uy:active:border-border-form-active",
20
- "uy:data-[disabled=true]:border uy:data-[disabled=true]:border-solid uy:data-[disabled=true]:border-border-form-disabled uy:data-[disabled=true]:bg-surface-form-high-disabled",
21
- "uy:data-[invalid=true]:border uy:data-[invalid=true]:border-solid uy:data-[invalid=true]:border-border-form-error uy:data-[invalid=true]:bg-surface-form-high-error"
22
- ],
23
- input: [
24
- "uy:h-300 uy:typography-body uy:flex-grow uy:outline-none uy:[&::-webkit-search-cancel-button]:hidden",
25
- "uy:enabled:text-content-form-enabled",
26
- "uy:data-[hovered]:text-content-form-hover",
27
- "uy:data-[focus-visible]:text-content-form-focus",
28
- "uy:active:text-content-form-active",
29
- "uy:group-data-[invalid=true]:bg-surface-form-high-error"
30
- ],
31
- icon: [
32
- "uy:self-center",
33
- "uy:group-data-[disabled=true]:text-content-neutral-lowest-disabled"
34
- ],
35
- invalidIcon: [
36
- "uy:self-center uy:hidden",
37
- "uy:group-data-[invalid=true]:block"
38
- ],
39
- wrapperState: ["uy:flex uy:items-center uy:gap-50"]
40
- },
41
- variants: {
42
- isReadOnly: {
43
- true: {
44
- base: "uy:border uy:border-solid uy:border-border-form-disabled uy:bg-surface-form-high-disabled",
45
- icon: "uy:text-content-neutral-lowest-disabled",
46
- input: "uy:bg-surface-form-high-disabled uy:text-content-form-read-only uy:placeholder-content-form-read-only uy:cursor-text"
47
- },
48
- false: {
49
- base: [
50
- "uy:bg-surface-form-high-enabled",
51
- "uy:has-data-[hovered]:bg-surface-form-high-hover uy:data-[disabled=true]:cursor-not-allowed"
52
- ],
53
- icon: "uy:text-content-neutral-lowest",
54
- input: "uy:bg-text-content-form-active uy:placeholder-content-neutral-lowest uy:group-data-[disabled=true]:cursor-not-allowed"
55
- }
56
- }
57
- }
58
- }), U = ({
59
- intl: a,
60
- placeholder: r,
61
- isDisabled: o
62
- }) => o ? "" : r || a.formatMessage({
63
- id: "unity:component:autocomplete:placeholder",
64
- defaultMessage: "Search"
65
- }), $ = (a, r) => {
66
- const {
67
- placeholder: o,
68
- isDisabled: d,
69
- isInvalid: l,
70
- isReadOnly: u,
71
- items: f,
72
- children: m,
73
- loadingState: n,
74
- name: b,
75
- feedbackText: p,
76
- ...h
77
- } = a, i = j(), t = A(null), [g, v] = O(null), c = T(), x = W(() => {
78
- t.current && v(`${t.current.offsetWidth}px`);
79
- }, [t]);
80
- B({ ref: t, onResize: x });
81
- const { base: w, input: I, icon: M, invalidIcon: N, wrapperState: S } = L({
82
- isReadOnly: u
83
- });
84
- return /* @__PURE__ */ s("search", { ref: r, children: [
85
- /* @__PURE__ */ s(
86
- C,
87
- {
88
- className: w(),
89
- name: b,
90
- isInvalid: l,
91
- isDisabled: d || u,
92
- isReadOnly: u,
93
- ref: t,
94
- "aria-label": i.formatMessage({
95
- id: "unity:component:autocomplete:placeholder",
96
- defaultMessage: "Search"
97
- }),
98
- items: f,
99
- ...h,
100
- children: [
101
- /* @__PURE__ */ e(
102
- y,
103
- {
104
- src: "MagnifyingGlassOutlined",
105
- className: M(),
106
- "aria-hidden": "true"
107
- }
108
- ),
109
- /* @__PURE__ */ e(
110
- z,
111
- {
112
- className: I(),
113
- "aria-describedby": c,
114
- placeholder: U({ intl: i, placeholder: o, isDisabled: d })
115
- }
116
- ),
117
- /* @__PURE__ */ s("div", { className: S(), children: [
118
- /* @__PURE__ */ e(
119
- y,
120
- {
121
- className: N(),
122
- src: "WarningCircleOutlined",
123
- color: "content.form.invalid",
124
- alt: i.formatMessage({
125
- id: "unity:component:form-field:form-input:error:alt",
126
- defaultMessage: "Error"
127
- })
128
- }
129
- ),
130
- n && n !== "error" && n !== "idle" && /* @__PURE__ */ e("span", { className: "uy:px-50", children: /* @__PURE__ */ e(
131
- D,
132
- {
133
- label: i.formatMessage({
134
- id: "unity:component:common:loading:label",
135
- defaultMessage: "Loading..."
136
- }),
137
- color: "primary",
138
- size: "small",
139
- "aria-hidden": "true"
140
- }
141
- ) }),
142
- /* @__PURE__ */ e(
143
- E,
144
- {
145
- isReadOnly: u,
146
- isDisabled: d
147
- }
148
- )
149
- ] }),
150
- /* @__PURE__ */ e(G, { panelWidth: g, searchRef: t, children: m })
151
- ]
152
- }
153
- ),
154
- l && /* @__PURE__ */ e(
155
- P,
156
- {
157
- id: c,
158
- className: "uy:typography-body-small-strong uy:text-content-form-invalid",
159
- children: p
160
- }
161
- )
162
- ] });
163
- }, q = R(function(r, o) {
164
- return $(r, o);
1
+ import { Icon as e } from "../icon/Icon.js";
2
+ import { Spinner as t } from "../spinner/Spinner.js";
3
+ import { Text as n } from "../text/Text.js";
4
+ import { AutocompleteClearButton as r } from "./parts/AutocompleteClearButton.js";
5
+ import { AutocompletePanel as i } from "./parts/AutocompletePanel.js";
6
+ import { forwardRef as a, useCallback as o, useRef as s, useState as c } from "react";
7
+ import { uyTv as l } from "@payfit/unity-themes";
8
+ import { jsx as u, jsxs as d } from "react/jsx-runtime";
9
+ import { useIntl as f } from "react-intl";
10
+ import { useResizeObserver as p } from "usehooks-ts";
11
+ import { ComboBox as m, Input as h } from "react-aria-components/ComboBox";
12
+ import { useId as g } from "react-aria/useId";
13
+ //#region src/components/autocomplete/Autocomplete.tsx
14
+ var _ = l({
15
+ slots: {
16
+ base: [
17
+ "uy:group uy:transition-colors uy:w-full uy:flex uy:gap-100 uy:py-125 uy:sm:py-100 uy:px-150 uy:rounded-100 uy:sm:rounded-75",
18
+ "uy:enabled:bg-surface-form-high-enabled",
19
+ "uy:has-data-[focus-visible=\"true\"]:outline-none uy:has-data-[focus-visible=\"true\"]:ring-2 uy:has-data-[focus-visible=\"true\"]:ring-utility-focus-ring uy:has-data-[focus-visible=\"true\"]:ring-offset-2 uy:has-data-[focus-visible=\"true\"]:bg-surface-form-high-focus",
20
+ "uy:active:border uy:active:border-solid uy:active:border-border-form-active",
21
+ "uy:data-[disabled=true]:border uy:data-[disabled=true]:border-solid uy:data-[disabled=true]:border-border-form-disabled uy:data-[disabled=true]:bg-surface-form-high-disabled",
22
+ "uy:data-[invalid=true]:border uy:data-[invalid=true]:border-solid uy:data-[invalid=true]:border-border-form-error uy:data-[invalid=true]:bg-surface-form-high-error"
23
+ ],
24
+ input: [
25
+ "uy:h-300 uy:typography-body uy:flex-grow uy:outline-none uy:[&::-webkit-search-cancel-button]:hidden",
26
+ "uy:enabled:text-content-form-enabled",
27
+ "uy:data-[hovered]:text-content-form-hover",
28
+ "uy:data-[focus-visible]:text-content-form-focus",
29
+ "uy:active:text-content-form-active",
30
+ "uy:group-data-[invalid=true]:bg-surface-form-high-error"
31
+ ],
32
+ icon: ["uy:self-center", "uy:group-data-[disabled=true]:text-content-neutral-lowest-disabled"],
33
+ invalidIcon: ["uy:self-center uy:hidden", "uy:group-data-[invalid=true]:block"],
34
+ wrapperState: ["uy:flex uy:items-center uy:gap-50"]
35
+ },
36
+ variants: { isReadOnly: {
37
+ true: {
38
+ base: "uy:border uy:border-solid uy:border-border-form-disabled uy:bg-surface-form-high-disabled",
39
+ icon: "uy:text-content-neutral-lowest-disabled",
40
+ input: "uy:bg-surface-form-high-disabled uy:text-content-form-read-only uy:placeholder-content-form-read-only uy:cursor-text"
41
+ },
42
+ false: {
43
+ base: ["uy:bg-surface-form-high-enabled", "uy:has-data-[hovered]:bg-surface-form-high-hover uy:data-[disabled=true]:cursor-not-allowed"],
44
+ icon: "uy:text-content-neutral-lowest",
45
+ input: "uy:bg-text-content-form-active uy:placeholder-content-neutral-lowest uy:group-data-[disabled=true]:cursor-not-allowed"
46
+ }
47
+ } }
48
+ }), v = ({ intl: e, placeholder: t, isDisabled: n }) => n ? "" : t || e.formatMessage({
49
+ id: "unity:component:autocomplete:placeholder",
50
+ defaultMessage: "Search"
51
+ }), y = (a, l) => {
52
+ let { placeholder: y, isDisabled: b, isInvalid: x, isReadOnly: S, items: C, children: w, loadingState: T, name: E, feedbackText: D, ...O } = a, k = f(), A = s(null), [j, M] = c(null), N = g();
53
+ p({
54
+ ref: A,
55
+ onResize: o(() => {
56
+ A.current && M(`${A.current.offsetWidth}px`);
57
+ }, [A])
58
+ });
59
+ let { base: P, input: F, icon: I, invalidIcon: L, wrapperState: R } = _({ isReadOnly: S });
60
+ return /* @__PURE__ */ d("search", {
61
+ ref: l,
62
+ children: [/* @__PURE__ */ d(m, {
63
+ className: P(),
64
+ name: E,
65
+ isInvalid: x,
66
+ isDisabled: b || S,
67
+ isReadOnly: S,
68
+ ref: A,
69
+ "aria-label": k.formatMessage({
70
+ id: "unity:component:autocomplete:placeholder",
71
+ defaultMessage: "Search"
72
+ }),
73
+ items: C,
74
+ ...O,
75
+ children: [
76
+ /* @__PURE__ */ u(e, {
77
+ src: "MagnifyingGlassOutlined",
78
+ className: I(),
79
+ "aria-hidden": "true"
80
+ }),
81
+ /* @__PURE__ */ u(h, {
82
+ className: F(),
83
+ "aria-describedby": N,
84
+ placeholder: v({
85
+ intl: k,
86
+ placeholder: y,
87
+ isDisabled: b
88
+ })
89
+ }),
90
+ /* @__PURE__ */ d("div", {
91
+ className: R(),
92
+ children: [
93
+ /* @__PURE__ */ u(e, {
94
+ className: L(),
95
+ src: "WarningCircleOutlined",
96
+ color: "content.form.invalid",
97
+ alt: k.formatMessage({
98
+ id: "unity:component:form-field:form-input:error:alt",
99
+ defaultMessage: "Error"
100
+ })
101
+ }),
102
+ T && T !== "error" && T !== "idle" && /* @__PURE__ */ u("span", {
103
+ className: "uy:px-50",
104
+ children: /* @__PURE__ */ u(t, {
105
+ label: k.formatMessage({
106
+ id: "unity:component:common:loading:label",
107
+ defaultMessage: "Loading..."
108
+ }),
109
+ color: "primary",
110
+ size: "small",
111
+ "aria-hidden": "true"
112
+ })
113
+ }),
114
+ /* @__PURE__ */ u(r, {
115
+ isReadOnly: S,
116
+ isDisabled: b
117
+ })
118
+ ]
119
+ }),
120
+ /* @__PURE__ */ u(i, {
121
+ panelWidth: j,
122
+ searchRef: A,
123
+ children: w
124
+ })
125
+ ]
126
+ }), x && /* @__PURE__ */ u(n, {
127
+ id: N,
128
+ className: "uy:typography-body-small-strong uy:text-content-form-invalid",
129
+ children: D
130
+ })]
131
+ });
132
+ }, b = a(function(e, t) {
133
+ return y(e, t);
165
134
  });
166
- q.displayName = "Autocomplete";
167
- export {
168
- q as Autocomplete
169
- };
135
+ b.displayName = "Autocomplete";
136
+ //#endregion
137
+ export { b as Autocomplete };
@@ -1,35 +1,25 @@
1
- import { jsx as l } from "react/jsx-runtime";
2
- import { useContext as u } from "react";
3
- import { uyMerge as m } from "@payfit/unity-themes";
1
+ import { CircularIconButton as e } from "../../icon-button/CircularIconButton.js";
2
+ import { useContext as t } from "react";
3
+ import { uyMerge as n } from "@payfit/unity-themes";
4
+ import { jsx as r } from "react/jsx-runtime";
5
+ import { useIntl as i } from "react-intl";
4
6
  import { ComboBoxStateContext as a } from "react-aria-components/ComboBox";
5
- import { useIntl as s } from "react-intl";
6
- import { CircularIconButton as i } from "../../icon-button/CircularIconButton.js";
7
- const c = ({
8
- className: e,
9
- isReadOnly: o,
10
- isDisabled: n
11
- }) => {
12
- const t = u(a), r = s();
13
- return !t?.inputValue || o || n ? null : /* @__PURE__ */ l(
14
- i,
15
- {
16
- slot: null,
17
- title: r.formatMessage({
18
- id: "unity:component:common:clear:title",
19
- defaultMessage: "Clear"
20
- }),
21
- className: m(
22
- e,
23
- "uy:text-content-neutral-enabled uy:group-data-[empty=true]:hidden"
24
- ),
25
- icon: "CloseOutlined",
26
- onPress: () => {
27
- t.setSelectedKey(null);
28
- }
29
- }
30
- );
31
- };
32
- c.displayName = "ClearButton";
33
- export {
34
- c as AutocompleteClearButton
7
+ //#region src/components/autocomplete/parts/AutocompleteClearButton.tsx
8
+ var o = ({ className: o, isReadOnly: s, isDisabled: c }) => {
9
+ let l = t(a), u = i();
10
+ return !l?.inputValue || s || c ? null : /* @__PURE__ */ r(e, {
11
+ slot: null,
12
+ title: u.formatMessage({
13
+ id: "unity:component:common:clear:title",
14
+ defaultMessage: "Clear"
15
+ }),
16
+ className: n(o, "uy:text-content-neutral-enabled uy:group-data-[empty=true]:hidden"),
17
+ icon: "CloseOutlined",
18
+ onPress: () => {
19
+ l.setSelectedKey(null);
20
+ }
21
+ });
35
22
  };
23
+ o.displayName = "ClearButton";
24
+ //#endregion
25
+ export { o as AutocompleteClearButton };
@@ -1,36 +1,28 @@
1
- import { jsx as s } from "react/jsx-runtime";
2
- import { forwardRef as l } from "react";
3
- import { uyTv as n } from "@payfit/unity-themes";
4
- import { ListBoxItem as d } from "react-aria-components/ListBox";
5
- const i = n({
6
- base: [
7
- "uy:flex uy:flex-col uy:typography-body uy:rounded-50 uy:pt-100 uy:pb-100 uy:pl-150 uy:pr-150 uy:outline-none uy:bg-surface-neutral-enabled uy:enabled:text-content-neutral-enabled",
8
- "uy:enabled:bg-surface-neutral-enabled uy:enabled:text-content-neutral-enabled",
9
- "uy:data-[pressed]:bg-surface-neutral-pressed uy:data-[pressed]:text-content-neutral-pressed",
10
- 'uy:data-[focus-visible="true"]:outline-offset-2 uy:data-[focus-visible="true"]:outline-2 uy:data-[focus-visible="true"]:outline-utility-focus-ring uy:data-[focus-visible="true"]:bg-surface-neutral-focus uy:data-[focus-visible="true"]:text-content-neutral-focus',
11
- "uy:data-[disabled]:text-content-neutral-disabled"
12
- ],
13
- variants: {
14
- isDisabled: {
15
- false: 'uy:data-[hovered="true"]:bg-surface-neutral-hover',
16
- true: "uy:cursor-not-allowed"
17
- }
18
- }
19
- }), y = l(
20
- ({ children: e, isDisabled: t, textValue: u, ...a }, r) => /* @__PURE__ */ s(
21
- d,
22
- {
23
- ...a,
24
- isDisabled: t,
25
- textValue: u,
26
- ref: r,
27
- className: ({ isDisabled: o }) => i({ isDisabled: o }),
28
- children: e
29
- }
30
- )
31
- );
32
- y.displayName = "AutocompleteItem";
33
- export {
34
- y as AutocompleteItem,
35
- i as autocompleteItem
36
- };
1
+ import { forwardRef as e } from "react";
2
+ import { uyTv as t } from "@payfit/unity-themes";
3
+ import { jsx as n } from "react/jsx-runtime";
4
+ import { ListBoxItem as r } from "react-aria-components/ListBox";
5
+ //#region src/components/autocomplete/parts/AutocompleteItem.tsx
6
+ var i = t({
7
+ base: [
8
+ "uy:flex uy:flex-col uy:typography-body uy:rounded-50 uy:pt-100 uy:pb-100 uy:pl-150 uy:pr-150 uy:outline-none uy:bg-surface-neutral-enabled uy:enabled:text-content-neutral-enabled",
9
+ "uy:enabled:bg-surface-neutral-enabled uy:enabled:text-content-neutral-enabled",
10
+ "uy:data-[pressed]:bg-surface-neutral-pressed uy:data-[pressed]:text-content-neutral-pressed",
11
+ "uy:data-[focus-visible=\"true\"]:outline-offset-2 uy:data-[focus-visible=\"true\"]:outline-2 uy:data-[focus-visible=\"true\"]:outline-utility-focus-ring uy:data-[focus-visible=\"true\"]:bg-surface-neutral-focus uy:data-[focus-visible=\"true\"]:text-content-neutral-focus",
12
+ "uy:data-[disabled]:text-content-neutral-disabled"
13
+ ],
14
+ variants: { isDisabled: {
15
+ false: "uy:data-[hovered=\"true\"]:bg-surface-neutral-hover",
16
+ true: "uy:cursor-not-allowed"
17
+ } }
18
+ }), a = e(({ children: e, isDisabled: t, textValue: a, ...o }, s) => /* @__PURE__ */ n(r, {
19
+ ...o,
20
+ isDisabled: t,
21
+ textValue: a,
22
+ ref: s,
23
+ className: ({ isDisabled: e }) => i({ isDisabled: e }),
24
+ children: e
25
+ }));
26
+ a.displayName = "AutocompleteItem";
27
+ //#endregion
28
+ export { a as AutocompleteItem, i as autocompleteItem };
@@ -1,33 +1,39 @@
1
- import { jsxs as a, jsx as e, Fragment as p } from "react/jsx-runtime";
2
- import { forwardRef as i } from "react";
3
- import { uyTv as c } from "@payfit/unity-themes";
4
- import { Collection as y } from "react-aria-components/Collection";
5
- import { Header as d } from "react-aria-components/Header";
6
- import { ListBoxSection as f } from "react-aria-components/ListBox";
7
- import { Separator as u } from "react-aria-components/Separator";
8
- const h = c({
9
- slots: {
10
- base: "",
11
- header: "uy:text-content-neutral-enabled uy:typography-body-strong uy:pt-100 uy:pb-100 uy:pl-150 uy:pr-150",
12
- separator: "uy:h-[1px] uy:bg-surface-neutral-lowest uy:w-full uy:mb-100 uy:mt-100 uy:[section:last-child_&]:hidden"
13
- }
14
- }), b = ({ label: r, children: t, items: o }, n) => {
15
- const { base: l, header: s, separator: m } = h();
16
- return /* @__PURE__ */ a(f, { ref: n, className: l(), id: r, items: o, children: [
17
- /* @__PURE__ */ e(d, { className: s(), children: r }),
18
- o ? /* @__PURE__ */ a(p, { children: [
19
- /* @__PURE__ */ e(y, { items: o, children: t }),
20
- /* @__PURE__ */ e(u, { orientation: "horizontal", className: m() })
21
- ] }) : /* @__PURE__ */ a(p, { children: [
22
- t,
23
- /* @__PURE__ */ e(u, { orientation: "horizontal", className: m() })
24
- ] })
25
- ] });
26
- }, x = i(function(t, o) {
27
- return b(t, o);
1
+ import { forwardRef as e } from "react";
2
+ import { uyTv as t } from "@payfit/unity-themes";
3
+ import { Fragment as n, jsx as r, jsxs as i } from "react/jsx-runtime";
4
+ import { Header as a } from "react-aria-components/Header";
5
+ import { Separator as o } from "react-aria-components/Separator";
6
+ import { ListBoxSection as s } from "react-aria-components/ListBox";
7
+ import { Collection as c } from "react-aria-components/Collection";
8
+ //#region src/components/autocomplete/parts/AutocompleteItemGroup.tsx
9
+ var l = t({ slots: {
10
+ base: "",
11
+ header: "uy:text-content-neutral-enabled uy:typography-body-strong uy:pt-100 uy:pb-100 uy:pl-150 uy:pr-150",
12
+ separator: "uy:h-[1px] uy:bg-surface-neutral-lowest uy:w-full uy:mb-100 uy:mt-100 uy:[section:last-child_&]:hidden"
13
+ } }), u = ({ label: e, children: t, items: u }, d) => {
14
+ let { base: f, header: p, separator: m } = l();
15
+ return /* @__PURE__ */ i(s, {
16
+ ref: d,
17
+ className: f(),
18
+ id: e,
19
+ items: u,
20
+ children: [/* @__PURE__ */ r(a, {
21
+ className: p(),
22
+ children: e
23
+ }), u ? /* @__PURE__ */ i(n, { children: [/* @__PURE__ */ r(c, {
24
+ items: u,
25
+ children: t
26
+ }), /* @__PURE__ */ r(o, {
27
+ orientation: "horizontal",
28
+ className: m()
29
+ })] }) : /* @__PURE__ */ i(n, { children: [t, /* @__PURE__ */ r(o, {
30
+ orientation: "horizontal",
31
+ className: m()
32
+ })] })]
33
+ });
34
+ }, d = e(function(e, t) {
35
+ return u(e, t);
28
36
  });
29
- x.displayName = "AutocompleteItemGroup";
30
- export {
31
- x as AutocompleteItemGroup,
32
- h as autocompleteItemGroup
33
- };
37
+ d.displayName = "AutocompleteItemGroup";
38
+ //#endregion
39
+ export { d as AutocompleteItemGroup, l as autocompleteItemGroup };
@@ -1,48 +1,46 @@
1
- import { jsx as e, jsxs as i } from "react/jsx-runtime";
2
- import { uyTv as y } from "@payfit/unity-themes";
3
- import { ListBox as m } from "react-aria-components/ListBox";
4
- import { Popover as c } from "react-aria-components/Popover";
5
- import { FormattedMessage as d } from "react-intl";
6
- import { Icon as p } from "../../icon/Icon.js";
1
+ import { Icon as e } from "../../icon/Icon.js";
7
2
  import { Text as t } from "../../text/Text.js";
8
- const f = y({
9
- slots: {
10
- base: "uy:rounded-75 uy:border uy:border-solid uy:border-border-neutral uy:w-[var(--trigger-width)] uy:bg-surface-neutral uy:max-h-[312px] uy:shadow-300",
11
- list: "uy:overflow-y-auto uy:max-h-[296px] uy:p-100"
12
- }
13
- }), g = () => /* @__PURE__ */ i("div", { className: "uy:flex uy:flex-col uy:gap-200 uy:items-center uy:justify-center uy:h-[312px]", children: [
14
- /* @__PURE__ */ e(
15
- t,
16
- {
17
- variant: "body",
18
- className: "uy:w-500 uy:h-500 uy:bg-surface-neutral-lowest uy:flex uy:items-center uy:justify-center uy:rounded-75",
19
- children: /* @__PURE__ */ e(p, { size: 24, src: "MagnifyingGlassOutlined" })
20
- }
21
- ),
22
- /* @__PURE__ */ e(t, { variant: "bodyLarge", children: /* @__PURE__ */ e(
23
- d,
24
- {
25
- id: "unity:component:autocomplete:panel:empty:label",
26
- defaultMessage: "No results found"
27
- }
28
- ) })
29
- ] }), h = (r) => {
30
- const { children: o, panelWidth: s, searchRef: u, ...a } = r, { base: l, list: n } = f();
31
- return /* @__PURE__ */ e(
32
- c,
33
- {
34
- ...a,
35
- className: l(),
36
- offset: 1,
37
- triggerRef: u,
38
- isNonModal: !0,
39
- style: { "--trigger-width": s },
40
- children: /* @__PURE__ */ e(m, { className: n(), renderEmptyState: g, children: o })
41
- }
42
- );
43
- };
44
- h.displayName = "AutocompletePanel";
45
- export {
46
- h as AutocompletePanel,
47
- f as autocompletePanel
3
+ import { uyTv as n } from "@payfit/unity-themes";
4
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
+ import { FormattedMessage as a } from "react-intl";
6
+ import { ListBox as o } from "react-aria-components/ListBox";
7
+ import { Popover as s } from "react-aria-components/Popover";
8
+ //#region src/components/autocomplete/parts/AutocompletePanel.tsx
9
+ var c = n({ slots: {
10
+ base: "uy:rounded-75 uy:border uy:border-solid uy:border-border-neutral uy:w-[var(--trigger-width)] uy:bg-surface-neutral uy:max-h-[312px] uy:shadow-300",
11
+ list: "uy:overflow-y-auto uy:max-h-[296px] uy:p-100"
12
+ } }), l = () => /* @__PURE__ */ i("div", {
13
+ className: "uy:flex uy:flex-col uy:gap-200 uy:items-center uy:justify-center uy:h-[312px]",
14
+ children: [/* @__PURE__ */ r(t, {
15
+ variant: "body",
16
+ className: "uy:w-500 uy:h-500 uy:bg-surface-neutral-lowest uy:flex uy:items-center uy:justify-center uy:rounded-75",
17
+ children: /* @__PURE__ */ r(e, {
18
+ size: 24,
19
+ src: "MagnifyingGlassOutlined"
20
+ })
21
+ }), /* @__PURE__ */ r(t, {
22
+ variant: "bodyLarge",
23
+ children: /* @__PURE__ */ r(a, {
24
+ id: "unity:component:autocomplete:panel:empty:label",
25
+ defaultMessage: "No results found"
26
+ })
27
+ })]
28
+ }), u = (e) => {
29
+ let { children: t, panelWidth: n, searchRef: i, ...a } = e, { base: u, list: d } = c();
30
+ return /* @__PURE__ */ r(s, {
31
+ ...a,
32
+ className: u(),
33
+ offset: 1,
34
+ triggerRef: i,
35
+ isNonModal: !0,
36
+ style: { "--trigger-width": n },
37
+ children: /* @__PURE__ */ r(o, {
38
+ className: d(),
39
+ renderEmptyState: l,
40
+ children: t
41
+ })
42
+ });
48
43
  };
44
+ u.displayName = "AutocompletePanel";
45
+ //#endregion
46
+ export { u as AutocompletePanel };