@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,304 +1,254 @@
1
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
2
- import { forwardRef as he, useRef as U, useState as W, useMemo as h, useCallback as l } from "react";
3
- import { reactAriaValueToSet as ve, setToReactAriaDefaultValue as xe, setToReactAriaValue as Se } from "./utils/selection-adapter.js";
4
- import { uyTv as we } from "@payfit/unity-themes";
5
- import { useFilter as Ve, Autocomplete as Ce } from "react-aria-components/Autocomplete";
6
- import { Button as Ie, ButtonContext as Me } from "react-aria-components/Button";
7
- import { ListBox as q } from "react-aria-components/ListBox";
8
- import { Popover as Oe } from "react-aria-components/Popover";
9
- import { Select as Ne } from "react-aria-components/Select";
10
- import { Separator as Pe } from "react-aria-components/Separator";
11
- import { useIntl as Ae } from "react-intl";
12
- import { Badge as Re } from "../badge/Badge.js";
13
- import { CircularIconButton as Be } from "../icon-button/CircularIconButton.js";
14
- import { Icon as H } from "../icon/Icon.js";
15
- import { Search as De } from "../search/Search.js";
16
- import { Spinner as je } from "../spinner/Spinner.js";
17
- import { MultiSelectContext as Ee } from "./Multiselect.context.js";
18
- const ze = we({
19
- slots: {
20
- root: "uy:relative uy:flex uy:flex-col uy:gap-100 uy:w-full",
21
- trigger: "uy:relative uy:h-5.5 uy:sm:h-500 uy:flex uy:items-center uy:justify-between uy:py-125 uy:sm:py-100 uy:px-150 uy:w-full uy:border uy:border-solid uy:rounded-100 uy:sm:rounded-75 uy:focus-visible:outline-none uy:focus-visible:ring-2 uy:focus-visible:ring-utility-focus-ring uy:focus-visible:ring-offset-2 uy:active:not([disabled]):border-border-form-active uy:pointer-events-auto!",
22
- inputValue: "uy:flex-1 uy:typography-body uy:text-left uy:line-clamp-1",
23
- state: "uy:grow-0 uy:outline-none uy:typography-body uy:placeholder:text-content-neutral-lowest uy:inline-flex uy:gap-50 uy:items-center uy:px-100",
24
- suffix: "uy:text-content-neutral-lowest",
25
- clearButton: "uy:absolute uy:right-[36px] uy:top-1/2 uy:z-10 uy:-translate-y-1/2",
26
- popover: "uy:shadow-300 uy:absolute uy:top-full uy:left-0 uy:z-50 uy:w-[var(--trigger-width)] uy:rounded-100 uy:sm:rounded-75 uy:border uy:border-solid uy:border-border-neutral uy:bg-surface-neutral uy:overflow-y-auto uy:overflow-x-hidden uy:max-h-[min(var(--popover-available-height,300px),300px)] uy:outline-none",
27
- list: "uy:p-100 uy:overflow-y-auto uy:overflow-x-hidden"
28
- },
29
- variants: {
30
- isDisabled: {
31
- true: {
32
- trigger: "uy:bg-surface-form-disabled uy:cursor-not-allowed uy:border-border-form-disabled uy:text-content-form-disabled",
33
- inputValue: "uy:text-content-form-disabled!",
34
- state: "uy:text-content-form-disabled",
35
- suffix: "uy:text-content-form-disabled"
36
- }
37
- },
38
- isReadOnly: {
39
- true: {
40
- trigger: "uy:bg-surface-form-disabled uy:cursor-not-allowed uy:border-border-form-disabled",
41
- inputValue: "uy:text-content-form-disabled",
42
- state: "uy:text-content-form-disabled",
43
- suffix: "uy:text-content-form-disabled"
44
- }
45
- },
46
- isInvalid: {
47
- true: {
48
- trigger: "uy:bg-surface-form-error uy:border-border-form-error",
49
- inputValue: "uy:text-content-form-error",
50
- state: "uy:text-content-form-error"
51
- }
52
- },
53
- isEmpty: {
54
- true: {
55
- inputValue: "uy:text-content-neutral-lowest"
56
- },
57
- false: {
58
- inputValue: "uy:text-content-form-enabled"
59
- }
60
- }
61
- },
62
- compoundVariants: [
63
- {
64
- isInvalid: !1,
65
- isDisabled: !1,
66
- isReadOnly: !1,
67
- className: {
68
- trigger: "uy:border-border-form-enabled uy:bg-surface-form-enabled",
69
- inputValue: "uy:text-content-form-enabled uy:bg-surface-form-enabled",
70
- state: "uy:text-content-neutral-disabled"
71
- }
72
- },
73
- {
74
- isEmpty: !0,
75
- isDisabled: !1,
76
- isReadOnly: !1,
77
- isInvalid: !1,
78
- className: {
79
- inputValue: "uy:text-content-neutral-lowest"
80
- }
81
- }
82
- ]
1
+ import { Icon as e } from "../icon/Icon.js";
2
+ import { Spinner as t } from "../spinner/Spinner.js";
3
+ import { CircularIconButton as n } from "../icon-button/CircularIconButton.js";
4
+ import { Badge as r } from "../badge/Badge.js";
5
+ import { Search as ee } from "../search/Search.js";
6
+ import { reactAriaValueToSet as i, setToReactAriaDefaultValue as te, setToReactAriaValue as ne } from "./utils/selection-adapter.js";
7
+ import { MultiSelectContext as re } from "./Multiselect.context.js";
8
+ import { forwardRef as a, useCallback as o, useMemo as s, useRef as c, useState as l } from "react";
9
+ import { uyTv as u } from "@payfit/unity-themes";
10
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
11
+ import { useIntl as ie } from "react-intl";
12
+ import { Button as ae, ButtonContext as oe } from "react-aria-components/Button";
13
+ import { Separator as se } from "react-aria-components/Separator";
14
+ import { ListBox as p } from "react-aria-components/ListBox";
15
+ import { Popover as ce } from "react-aria-components/Popover";
16
+ import { Autocomplete as le, useFilter as ue } from "react-aria-components/Autocomplete";
17
+ import { Select as de } from "react-aria-components/Select";
18
+ //#region src/components/multi-select/MultiSelect.tsx
19
+ var fe = u({
20
+ slots: {
21
+ root: "uy:relative uy:flex uy:flex-col uy:gap-100 uy:w-full",
22
+ trigger: "uy:relative uy:h-5.5 uy:sm:h-500 uy:flex uy:items-center uy:justify-between uy:py-125 uy:sm:py-100 uy:px-150 uy:w-full uy:border uy:border-solid uy:rounded-100 uy:sm:rounded-75 uy:focus-visible:outline-none uy:focus-visible:ring-2 uy:focus-visible:ring-utility-focus-ring uy:focus-visible:ring-offset-2 uy:active:not([disabled]):border-border-form-active uy:pointer-events-auto!",
23
+ inputValue: "uy:flex-1 uy:typography-body uy:text-left uy:line-clamp-1",
24
+ state: "uy:grow-0 uy:outline-none uy:typography-body uy:placeholder:text-content-neutral-lowest uy:inline-flex uy:gap-50 uy:items-center uy:px-100",
25
+ suffix: "uy:text-content-neutral-lowest",
26
+ clearButton: "uy:absolute uy:right-[36px] uy:top-1/2 uy:z-10 uy:-translate-y-1/2",
27
+ popover: "uy:shadow-300 uy:z-50 uy:w-(--trigger-width) uy:max-h-[min(var(--popover-available-height,300px),300px)] uy:rounded-100 uy:sm:rounded-75 uy:border uy:border-solid uy:border-border-neutral uy:bg-surface-neutral uy:overflow-y-auto uy:overflow-x-hidden uy:outline-none",
28
+ list: "uy:p-100 uy:overflow-y-auto uy:overflow-x-hidden"
29
+ },
30
+ variants: {
31
+ isDisabled: { true: {
32
+ trigger: "uy:bg-surface-form-disabled uy:cursor-not-allowed uy:border-border-form-disabled uy:text-content-form-disabled",
33
+ inputValue: "uy:text-content-form-disabled!",
34
+ state: "uy:text-content-form-disabled",
35
+ suffix: "uy:text-content-form-disabled"
36
+ } },
37
+ isReadOnly: { true: {
38
+ trigger: "uy:bg-surface-form-disabled uy:cursor-not-allowed uy:border-border-form-disabled",
39
+ inputValue: "uy:text-content-form-disabled",
40
+ state: "uy:text-content-form-disabled",
41
+ suffix: "uy:text-content-form-disabled"
42
+ } },
43
+ isInvalid: { true: {
44
+ trigger: "uy:bg-surface-form-error uy:border-border-form-error",
45
+ inputValue: "uy:text-content-form-error",
46
+ state: "uy:text-content-form-error"
47
+ } },
48
+ isEmpty: {
49
+ true: { inputValue: "uy:text-content-neutral-lowest" },
50
+ false: { inputValue: "uy:text-content-form-enabled" }
51
+ }
52
+ },
53
+ compoundVariants: [{
54
+ isInvalid: !1,
55
+ isDisabled: !1,
56
+ isReadOnly: !1,
57
+ className: {
58
+ trigger: "uy:border-border-form-enabled uy:bg-surface-form-enabled",
59
+ inputValue: "uy:text-content-form-enabled uy:bg-surface-form-enabled",
60
+ state: "uy:text-content-neutral-disabled"
61
+ }
62
+ }, {
63
+ isEmpty: !0,
64
+ isDisabled: !1,
65
+ isReadOnly: !1,
66
+ isInvalid: !1,
67
+ className: { inputValue: "uy:text-content-neutral-lowest" }
68
+ }]
83
69
  });
84
- function J(e) {
85
- return e instanceof Map;
70
+ function m(e) {
71
+ return e instanceof Map;
86
72
  }
87
- function ke(e) {
88
- return !Object.prototype.hasOwnProperty.call(e, "items");
73
+ function pe(e) {
74
+ return !Object.prototype.hasOwnProperty.call(e, "items");
89
75
  }
90
- function Q(e) {
91
- return typeof e == "object" && e !== null && "value" in e && (typeof e.value == "string" || typeof e.value == "number") ? e.value : typeof e == "object" && e !== null && "id" in e && (typeof e.id == "string" || typeof e.id == "number") ? e.id : typeof e == "string" || typeof e == "number" ? e : String(e);
76
+ function h(e) {
77
+ return typeof e == "object" && e && "value" in e && (typeof e.value == "string" || typeof e.value == "number") ? e.value : typeof e == "object" && e && "id" in e && (typeof e.id == "string" || typeof e.id == "number") ? e.id : typeof e == "string" || typeof e == "number" ? e : String(e);
92
78
  }
93
- const Le = (e) => Array.from(e).map(String).join(", "), Te = (e) => Array.from(e).map((v) => Q(v)).join(", ");
94
- function Fe(e, v) {
95
- const d = Ae(), X = U(null), Y = U(null), [Z, C] = W(!1), o = ke(e), I = e, M = e, {
96
- placeholder: c,
97
- isDisabled: f,
98
- isReadOnly: u,
99
- isLoading: O,
100
- isInvalid: y,
101
- onClearButtonPress: N,
102
- onBlur: _,
103
- onFocus: $,
104
- onChange: P,
105
- onOpenChange: A,
106
- value: x,
107
- defaultValue: R,
108
- isSearchable: B,
109
- renderValue: ee,
110
- maxVisibleItems: m = 7,
111
- children: S,
112
- searchOptions: te,
113
- ...re
114
- } = e, [D, oe] = W(() => new Set(R ?? [])), n = o ? void 0 : I.items, w = o ? void 0 : I.getItemValue, p = x !== void 0, a = h(
115
- () => p ? new Set(x) : D,
116
- [p, x, D]
117
- ), j = ee ?? (o ? Le : Te), E = l(
118
- (t) => o || !w ? Q(t) : w(t),
119
- [w, o]
120
- ), z = l(() => o || !n ? [] : J(n) ? Array.from(n.values()).flat() : Array.from(n), [n, o]), ne = h(() => {
121
- if (o)
122
- return new Set(a);
123
- const t = z(), s = /* @__PURE__ */ new Set();
124
- return a.forEach((V) => {
125
- const K = t.find((ge) => E(ge) === V);
126
- K && s.add(K);
127
- }), s;
128
- }, [z, o, E, a]), b = Array.from(ne), k = Math.max(
129
- b.length - m,
130
- 0
131
- ), L = a.size > 0 && !f && !u && !O, {
132
- root: ae,
133
- trigger: le,
134
- inputValue: se,
135
- state: ue,
136
- suffix: ie,
137
- clearButton: de,
138
- popover: ce,
139
- list: T
140
- } = ze({
141
- isDisabled: !!f,
142
- isReadOnly: !!u,
143
- isInvalid: !!y,
144
- isEmpty: a.size === 0
145
- }), fe = h(() => {
146
- if (b.length === 0) return c;
147
- const t = b.slice(0, m), s = new Set(t);
148
- return j(
149
- s
150
- );
151
- }, [m, c, j, b]), g = l(
152
- (t) => {
153
- p || oe(t), P?.(t);
154
- },
155
- [p, P]
156
- ), ye = l(
157
- (t) => {
158
- g(ve(t));
159
- },
160
- [g]
161
- ), me = l(() => {
162
- g(/* @__PURE__ */ new Set()), N?.();
163
- }, [N, g]), pe = l(
164
- (t) => {
165
- C(t), A?.(t);
166
- },
167
- [C, A]
168
- ), F = l(() => {
169
- if (o)
170
- return M.children;
171
- if (!n) return null;
172
- if (J(n)) {
173
- const t = n;
174
- return Array.from(t.entries()).map(
175
- ([s, V]) => S(s, V)
176
- );
177
- }
178
- return Array.from(n).map(
179
- (t) => S(t)
180
- );
181
- }, [S, n, o, M.children]), G = h(() => F(), [F]), { contains: be } = Ve(te ?? { sensitivity: "base" });
182
- return /* @__PURE__ */ r(
183
- Ne,
184
- {
185
- ...re,
186
- ref: X,
187
- className: ae(),
188
- isDisabled: f || u,
189
- isInvalid: y,
190
- onBlur: _,
191
- onChange: ye,
192
- onFocus: $,
193
- onOpenChange: pe,
194
- placeholder: c,
195
- selectionMode: "multiple",
196
- shouldCloseOnSelect: !1,
197
- value: Se(a),
198
- defaultValue: xe(R),
199
- allowsEmptyCollection: !0,
200
- children: /* @__PURE__ */ i(
201
- Ee.Provider,
202
- {
203
- value: { isSearchable: B, maxVisibleItems: m, selectedKeys: a },
204
- children: [
205
- /* @__PURE__ */ i(
206
- Ie,
207
- {
208
- ref: v,
209
- className: le(),
210
- "data-dd-privacy": "mask",
211
- isDisabled: f || u,
212
- "aria-invalid": y,
213
- "aria-readonly": u,
214
- children: [
215
- /* @__PURE__ */ r("span", { className: se(), translate: "no", children: a.size > 0 ? fe : c }),
216
- /* @__PURE__ */ i("span", { className: ue(), children: [
217
- O && /* @__PURE__ */ r(
218
- je,
219
- {
220
- color: "inherit",
221
- size: "small",
222
- label: d.formatMessage({
223
- id: "unity:component:form-field:form-input:spinner:label",
224
- defaultMessage: "Loading"
225
- })
226
- }
227
- ),
228
- y && /* @__PURE__ */ r(
229
- H,
230
- {
231
- src: "WarningCircleOutlined",
232
- color: "content.form.invalid",
233
- alt: d.formatMessage({
234
- id: "unity:component:form-field:form-input:error:alt",
235
- defaultMessage: "Error"
236
- })
237
- }
238
- ),
239
- k > 0 && /* @__PURE__ */ i(Re, { variant: "numeric", children: [
240
- "+",
241
- k
242
- ] }),
243
- L && /* @__PURE__ */ r("span", { className: "uy:w-300 uy:shrink-0", "aria-hidden": !0 })
244
- ] }),
245
- /* @__PURE__ */ r(
246
- H,
247
- {
248
- className: ie(),
249
- src: Z ? "CaretUpOutlined" : "CaretDownOutlined",
250
- role: "presentation"
251
- }
252
- )
253
- ]
254
- }
255
- ),
256
- L && /* @__PURE__ */ r(Me.Provider, { value: null, children: /* @__PURE__ */ r(
257
- Be,
258
- {
259
- title: d.formatMessage({
260
- id: "unity:component:common:clear:title",
261
- defaultMessage: "Clear"
262
- }),
263
- className: de(),
264
- icon: "CloseOutlined",
265
- onPress: me,
266
- asElement: "button"
267
- }
268
- ) }),
269
- /* @__PURE__ */ r(
270
- Oe,
271
- {
272
- ref: Y,
273
- offset: 1,
274
- containerPadding: 8,
275
- className: ce(),
276
- children: B ? /* @__PURE__ */ i(Ce, { filter: be, children: [
277
- /* @__PURE__ */ r("div", { className: "uy:m-100", children: /* @__PURE__ */ r(
278
- De,
279
- {
280
- label: d.formatMessage({
281
- id: "unity:component:select:search:label",
282
- defaultMessage: "Search options"
283
- }),
284
- "data-dd-privacy": "mask"
285
- }
286
- ) }),
287
- /* @__PURE__ */ r(Pe, { className: "uy:mx-100 uy:border-t uy:border-border-neutral uy:border-solid" }),
288
- /* @__PURE__ */ r(q, { className: T(), children: G })
289
- ] }) : /* @__PURE__ */ r(q, { className: T(), children: G })
290
- }
291
- )
292
- ]
293
- }
294
- )
295
- }
296
- );
79
+ var g = (e) => Array.from(e).map(String).join(", "), _ = (e) => Array.from(e).map((e) => h(e)).join(", ");
80
+ function v(a, u) {
81
+ let v = ie(), y = c(null), me = c(null), [he, b] = l(!1), x = pe(a), S = a, C = a, { placeholder: w, isDisabled: T, isReadOnly: E, isLoading: D, isInvalid: O, onClearButtonPress: k, onBlur: ge, onFocus: _e, onChange: A, onOpenChange: j, value: M, defaultValue: N, isSearchable: P, renderValue: F, maxVisibleItems: I = 7, children: L, searchOptions: ve, ...ye } = a, [R, be] = l(() => new Set(N ?? [])), z = x ? void 0 : S.items, B = x ? void 0 : S.getItemValue, V = M !== void 0, H = s(() => V ? new Set(M) : R, [
82
+ V,
83
+ M,
84
+ R
85
+ ]), U = F ?? (x ? g : _), W = o((e) => x || !B ? h(e) : B(e), [B, x]), G = o(() => x || !z ? [] : m(z) ? Array.from(z.values()).flat() : Array.from(z), [z, x]), xe = s(() => {
86
+ if (x) return new Set(H);
87
+ let e = G(), t = /* @__PURE__ */ new Set();
88
+ return H.forEach((n) => {
89
+ let r = e.find((e) => W(e) === n);
90
+ r && t.add(r);
91
+ }), t;
92
+ }, [
93
+ G,
94
+ x,
95
+ W,
96
+ H
97
+ ]), K = Array.from(xe), q = Math.max(K.length - I, 0), J = H.size > 0 && !T && !E && !D, { root: Se, trigger: Ce, inputValue: we, state: Te, suffix: Ee, clearButton: De, popover: Y, list: X } = fe({
98
+ isDisabled: !!T,
99
+ isReadOnly: !!E,
100
+ isInvalid: !!O,
101
+ isEmpty: H.size === 0
102
+ }), Oe = s(() => {
103
+ if (K.length === 0) return w;
104
+ let e = K.slice(0, I);
105
+ return U(new Set(e));
106
+ }, [
107
+ I,
108
+ w,
109
+ U,
110
+ K
111
+ ]), Z = o((e) => {
112
+ V || be(e), A?.(e);
113
+ }, [V, A]), ke = o((e) => {
114
+ Z(i(e));
115
+ }, [Z]), Ae = o(() => {
116
+ Z(/* @__PURE__ */ new Set()), k?.();
117
+ }, [k, Z]), je = o((e) => {
118
+ b(e), j?.(e);
119
+ }, [b, j]), Q = o(() => {
120
+ if (x) return C.children;
121
+ if (!z) return null;
122
+ if (m(z)) {
123
+ let e = z;
124
+ return Array.from(e.entries()).map(([e, t]) => L(e, t));
125
+ }
126
+ return Array.from(z).map((e) => L(e));
127
+ }, [
128
+ L,
129
+ z,
130
+ x,
131
+ C.children
132
+ ]), $ = s(() => Q(), [Q]), { contains: Me } = ue(ve ?? { sensitivity: "base" });
133
+ return /* @__PURE__ */ d(de, {
134
+ ...ye,
135
+ ref: y,
136
+ className: Se(),
137
+ isDisabled: T || E,
138
+ isInvalid: O,
139
+ onBlur: ge,
140
+ onChange: ke,
141
+ onFocus: _e,
142
+ onOpenChange: je,
143
+ placeholder: w,
144
+ selectionMode: "multiple",
145
+ shouldCloseOnSelect: !1,
146
+ value: ne(H),
147
+ defaultValue: te(N),
148
+ allowsEmptyCollection: !0,
149
+ children: /* @__PURE__ */ f(re.Provider, {
150
+ value: {
151
+ isSearchable: P,
152
+ maxVisibleItems: I,
153
+ selectedKeys: H
154
+ },
155
+ children: [
156
+ /* @__PURE__ */ f(ae, {
157
+ ref: u,
158
+ className: Ce(),
159
+ "data-dd-privacy": "mask",
160
+ isDisabled: T || E,
161
+ "aria-invalid": O,
162
+ "aria-readonly": E,
163
+ children: [
164
+ /* @__PURE__ */ d("span", {
165
+ className: we(),
166
+ translate: "no",
167
+ children: H.size > 0 ? Oe : w
168
+ }),
169
+ /* @__PURE__ */ f("span", {
170
+ className: Te(),
171
+ children: [
172
+ D && /* @__PURE__ */ d(t, {
173
+ color: "inherit",
174
+ size: "small",
175
+ label: v.formatMessage({
176
+ id: "unity:component:form-field:form-input:spinner:label",
177
+ defaultMessage: "Loading"
178
+ })
179
+ }),
180
+ O && /* @__PURE__ */ d(e, {
181
+ src: "WarningCircleOutlined",
182
+ color: "content.form.invalid",
183
+ alt: v.formatMessage({
184
+ id: "unity:component:form-field:form-input:error:alt",
185
+ defaultMessage: "Error"
186
+ })
187
+ }),
188
+ q > 0 && /* @__PURE__ */ f(r, {
189
+ variant: "numeric",
190
+ children: ["+", q]
191
+ }),
192
+ J && /* @__PURE__ */ d("span", {
193
+ className: "uy:w-300 uy:shrink-0",
194
+ "aria-hidden": !0
195
+ })
196
+ ]
197
+ }),
198
+ /* @__PURE__ */ d(e, {
199
+ className: Ee(),
200
+ src: he ? "CaretUpOutlined" : "CaretDownOutlined",
201
+ role: "presentation"
202
+ })
203
+ ]
204
+ }),
205
+ J && /* @__PURE__ */ d(oe.Provider, {
206
+ value: null,
207
+ children: /* @__PURE__ */ d(n, {
208
+ title: v.formatMessage({
209
+ id: "unity:component:common:clear:title",
210
+ defaultMessage: "Clear"
211
+ }),
212
+ className: De(),
213
+ icon: "CloseOutlined",
214
+ onPress: Ae,
215
+ asElement: "button"
216
+ })
217
+ }),
218
+ /* @__PURE__ */ d(ce, {
219
+ ref: me,
220
+ offset: 1,
221
+ containerPadding: 8,
222
+ className: Y(),
223
+ children: P ? /* @__PURE__ */ f(le, {
224
+ filter: Me,
225
+ children: [
226
+ /* @__PURE__ */ d("div", {
227
+ className: "uy:m-100",
228
+ children: /* @__PURE__ */ d(ee, {
229
+ label: v.formatMessage({
230
+ id: "unity:component:select:search:label",
231
+ defaultMessage: "Search options"
232
+ }),
233
+ "data-dd-privacy": "mask"
234
+ })
235
+ }),
236
+ /* @__PURE__ */ d(se, { className: "uy:mx-100 uy:border-t uy:border-border-neutral uy:border-solid" }),
237
+ /* @__PURE__ */ d(p, {
238
+ className: X(),
239
+ children: $
240
+ })
241
+ ]
242
+ }) : /* @__PURE__ */ d(p, {
243
+ className: X(),
244
+ children: $
245
+ })
246
+ })
247
+ ]
248
+ })
249
+ });
297
250
  }
298
- const Ge = he(
299
- Fe
300
- );
301
- Ge.displayName = "MultiSelect";
302
- export {
303
- Ge as MultiSelect
304
- };
251
+ var y = a(v);
252
+ y.displayName = "MultiSelect";
253
+ //#endregion
254
+ export { y as MultiSelect };
@@ -1,8 +1,8 @@
1
1
  import { createContext as e } from "react";
2
- const o = e({
3
- isSearchable: !1,
4
- selectedKeys: /* @__PURE__ */ new Set()
2
+ //#region src/components/multi-select/Multiselect.context.tsx
3
+ var t = e({
4
+ isSearchable: !1,
5
+ selectedKeys: /* @__PURE__ */ new Set()
5
6
  });
6
- export {
7
- o as MultiSelectContext
8
- };
7
+ //#endregion
8
+ export { t as MultiSelectContext };