@bspk/ui 1.3.2 → 1.3.4

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 (751) hide show
  1. package/build.ts +41 -10
  2. package/dist/components/AvatarGroup/AvatarGroup.d.ts +1 -1
  3. package/dist/components/AvatarGroup/AvatarGroup.js +1 -1
  4. package/dist/components/Breadcrumb/Breadcrumb.d.ts +4 -23
  5. package/dist/components/Breadcrumb/Breadcrumb.js +3 -7
  6. package/dist/components/Breadcrumb/Breadcrumb.js.map +1 -1
  7. package/dist/components/Breadcrumb/BreadcumbDropdown.d.ts +27 -0
  8. package/dist/components/Breadcrumb/BreadcumbDropdown.js +68 -0
  9. package/dist/components/Breadcrumb/BreadcumbDropdown.js.map +1 -0
  10. package/dist/components/Button/Button.d.ts +5 -1
  11. package/dist/components/Button/Button.js +2 -2
  12. package/dist/components/Button/Button.js.map +1 -1
  13. package/dist/components/Button/button.css +5 -5
  14. package/dist/components/Button/button.css.js +5 -5
  15. package/dist/components/Calendar/Calendar.d.ts +33 -0
  16. package/dist/components/{CalendarPicker/CalendarPicker.js → Calendar/Calendar.js} +30 -34
  17. package/dist/components/Calendar/Calendar.js.map +1 -0
  18. package/dist/components/Calendar/CalendarExample.d.ts +4 -0
  19. package/dist/components/Calendar/CalendarExample.js +29 -0
  20. package/dist/components/Calendar/CalendarExample.js.map +1 -0
  21. package/dist/components/{CalendarPicker/calendar-picker.css → Calendar/calendar.css} +16 -16
  22. package/dist/components/{CalendarPicker/calendar-picker.css.js → Calendar/calendar.css.js} +16 -16
  23. package/dist/components/Calendar/index.d.ts +1 -0
  24. package/dist/components/Calendar/index.js +2 -0
  25. package/dist/components/Calendar/index.js.map +1 -0
  26. package/dist/components/Checkbox/Checkbox.d.ts +5 -3
  27. package/dist/components/Checkbox/Checkbox.js +2 -2
  28. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  29. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +6 -25
  30. package/dist/components/CheckboxGroup/CheckboxGroup.js +15 -5
  31. package/dist/components/CheckboxGroup/CheckboxGroup.js.map +1 -1
  32. package/dist/components/CheckboxGroup/CheckboxGroupExample.js +3 -0
  33. package/dist/components/CheckboxGroup/CheckboxGroupExample.js.map +1 -1
  34. package/dist/components/CheckboxGroup/checkbox-group.css +7 -0
  35. package/dist/components/{DateField/date-field.css.js → CheckboxGroup/checkbox-group.css.js} +4 -5
  36. package/dist/components/CheckboxGroupField/CheckboxGroupField.d.ts +15 -0
  37. package/dist/components/CheckboxGroupField/CheckboxGroupField.js +17 -0
  38. package/dist/components/CheckboxGroupField/CheckboxGroupField.js.map +1 -0
  39. package/dist/components/CheckboxGroupField/index.d.ts +1 -0
  40. package/dist/components/CheckboxGroupField/index.js +2 -0
  41. package/dist/components/CheckboxGroupField/index.js.map +1 -0
  42. package/dist/components/{ChipUtility/ChipUtility.d.ts → Chip/Chip.d.ts} +6 -6
  43. package/dist/components/Chip/Chip.js +25 -0
  44. package/dist/components/Chip/Chip.js.map +1 -0
  45. package/dist/components/Chip/ChipExample.d.ts +4 -0
  46. package/dist/components/{ChipUtility/ChipUtilityExample.js → Chip/ChipExample.js} +2 -2
  47. package/dist/components/Chip/ChipExample.js.map +1 -0
  48. package/dist/components/{ChipUtility/chip-utility.css → Chip/chip.css} +10 -10
  49. package/dist/components/{ChipUtility/chip-utility.css.js → Chip/chip.css.js} +10 -10
  50. package/dist/components/Chip/index.d.ts +1 -0
  51. package/dist/components/Chip/index.js +2 -0
  52. package/dist/components/Chip/index.js.map +1 -0
  53. package/dist/components/ChipGroup/ChipGroup.d.ts +8 -7
  54. package/dist/components/ChipGroup/ChipGroup.js +5 -4
  55. package/dist/components/ChipGroup/ChipGroup.js.map +1 -1
  56. package/dist/components/ChipGroup/ChipGroupExample.js +4 -31
  57. package/dist/components/ChipGroup/ChipGroupExample.js.map +1 -1
  58. package/dist/components/DatePicker/DatePicker.d.ts +50 -0
  59. package/dist/components/DatePicker/DatePicker.js +133 -0
  60. package/dist/components/DatePicker/DatePicker.js.map +1 -0
  61. package/dist/components/DatePicker/DatePickerExample.d.ts +3 -0
  62. package/dist/components/DatePicker/DatePickerExample.js +10 -0
  63. package/dist/components/DatePicker/DatePickerExample.js.map +1 -0
  64. package/dist/components/{DateInput/date-input.css → DatePicker/date-picker.css} +2 -3
  65. package/dist/components/{DateInput/date-input.css.js → DatePicker/date-picker.css.js} +2 -3
  66. package/dist/components/DatePicker/index.d.ts +1 -0
  67. package/dist/components/DatePicker/index.js +2 -0
  68. package/dist/components/DatePicker/index.js.map +1 -0
  69. package/dist/components/DatePickerField/DatePickerField.d.ts +15 -0
  70. package/dist/components/DatePickerField/DatePickerField.js +17 -0
  71. package/dist/components/DatePickerField/DatePickerField.js.map +1 -0
  72. package/dist/components/DatePickerField/index.d.ts +1 -0
  73. package/dist/components/DatePickerField/index.js +2 -0
  74. package/dist/components/DatePickerField/index.js.map +1 -0
  75. package/dist/components/Drawer/Drawer.d.ts +1 -1
  76. package/dist/components/Drawer/Drawer.js +1 -1
  77. package/dist/components/Drawer/DrawerExample.js +3 -3
  78. package/dist/components/Drawer/DrawerExample.js.map +1 -1
  79. package/dist/components/EmptyState/EmptyState.d.ts +1 -1
  80. package/dist/components/EmptyState/EmptyState.js +1 -1
  81. package/dist/components/Fab/Fab.d.ts +1 -1
  82. package/dist/components/Fab/Fab.js +1 -1
  83. package/dist/components/Field/Field.d.ts +58 -0
  84. package/dist/components/Field/Field.js +70 -0
  85. package/dist/components/Field/Field.js.map +1 -0
  86. package/dist/components/Field/FieldDescription.d.ts +7 -0
  87. package/dist/components/Field/FieldDescription.js +9 -0
  88. package/dist/components/Field/FieldDescription.js.map +1 -0
  89. package/dist/components/Field/FieldError.d.ts +5 -0
  90. package/dist/components/Field/FieldError.js +8 -0
  91. package/dist/components/Field/FieldError.js.map +1 -0
  92. package/dist/components/Field/FieldExample.d.ts +5 -0
  93. package/dist/components/Field/FieldExample.js +10 -0
  94. package/dist/components/Field/FieldExample.js.map +1 -0
  95. package/dist/components/Field/FieldLabel.d.ts +15 -0
  96. package/dist/components/Field/FieldLabel.js +8 -0
  97. package/dist/components/Field/FieldLabel.js.map +1 -0
  98. package/dist/components/Field/field.css +36 -0
  99. package/dist/components/Field/field.css.js +41 -0
  100. package/dist/components/Field/index.d.ts +5 -0
  101. package/dist/components/Field/index.js +6 -0
  102. package/dist/components/Field/index.js.map +1 -0
  103. package/dist/components/Field/utils.d.ts +39 -0
  104. package/dist/components/Field/utils.js +35 -0
  105. package/dist/components/Field/utils.js.map +1 -0
  106. package/dist/components/FormField/FormField.d.ts +32 -17
  107. package/dist/components/FormField/FormField.js +10 -18
  108. package/dist/components/FormField/FormField.js.map +1 -1
  109. package/dist/components/FormField/FormFieldExample.d.ts +10 -4
  110. package/dist/components/FormField/FormFieldExample.js +97 -9
  111. package/dist/components/FormField/FormFieldExample.js.map +1 -1
  112. package/dist/components/Img/Img.d.ts +1 -1
  113. package/dist/components/Img/Img.js +1 -1
  114. package/dist/components/InlineAlert/InlineAlert.d.ts +4 -4
  115. package/dist/components/InlineAlert/InlineAlert.js +3 -3
  116. package/dist/components/InlineAlert/InlineAlert.js.map +1 -1
  117. package/dist/components/Input/Input.d.ts +37 -0
  118. package/dist/components/Input/Input.js +48 -0
  119. package/dist/components/Input/Input.js.map +1 -0
  120. package/dist/components/Input/InputElement.d.ts +77 -0
  121. package/dist/components/{TextInput/TextInput.js → Input/InputElement.js} +17 -16
  122. package/dist/components/Input/InputElement.js.map +1 -0
  123. package/dist/components/Input/InputExample.d.ts +8 -0
  124. package/dist/components/{TextInput/TextInputExample.js → Input/InputExample.js} +20 -9
  125. package/dist/components/Input/InputExample.js.map +1 -0
  126. package/dist/components/Input/index.d.ts +2 -0
  127. package/dist/components/Input/index.js +3 -0
  128. package/dist/components/Input/index.js.map +1 -0
  129. package/dist/components/{TextInput/text-input.css → Input/input.css} +23 -23
  130. package/dist/components/{TextInput/text-input.css.js → Input/input.css.js} +23 -23
  131. package/dist/components/InputField/InputField.d.ts +15 -0
  132. package/dist/components/InputField/InputField.js +17 -0
  133. package/dist/components/InputField/InputField.js.map +1 -0
  134. package/dist/components/InputField/index.d.ts +1 -0
  135. package/dist/components/InputField/index.js +2 -0
  136. package/dist/components/InputField/index.js.map +1 -0
  137. package/dist/components/{NumberInput → InputNumber}/IncrementButton.js.map +1 -1
  138. package/dist/components/InputNumber/InputNumber.d.ts +74 -0
  139. package/dist/components/InputNumber/InputNumber.js +78 -0
  140. package/dist/components/InputNumber/InputNumber.js.map +1 -0
  141. package/dist/components/InputNumber/InputNumberExample.d.ts +3 -0
  142. package/dist/components/{NumberInput/NumberInputExample.js → InputNumber/InputNumberExample.js} +2 -2
  143. package/dist/components/InputNumber/InputNumberExample.js.map +1 -0
  144. package/dist/components/InputNumber/index.d.ts +1 -0
  145. package/dist/components/InputNumber/index.js +2 -0
  146. package/dist/components/InputNumber/index.js.map +1 -0
  147. package/dist/components/{NumberInput/number-input.css → InputNumber/input-number.css} +21 -21
  148. package/dist/components/{NumberInput/number-input.css.js → InputNumber/input-number.css.js} +21 -21
  149. package/dist/components/InputNumberField/InputNumberField.d.ts +15 -0
  150. package/dist/components/InputNumberField/InputNumberField.js +17 -0
  151. package/dist/components/InputNumberField/InputNumberField.js.map +1 -0
  152. package/dist/components/InputNumberField/index.d.ts +1 -0
  153. package/dist/components/InputNumberField/index.js +2 -0
  154. package/dist/components/InputNumberField/index.js.map +1 -0
  155. package/dist/components/InputPhone/InputPhone.d.ts +57 -0
  156. package/dist/components/InputPhone/InputPhone.js +161 -0
  157. package/dist/components/InputPhone/InputPhone.js.map +1 -0
  158. package/dist/components/InputPhone/InputPhoneExample.d.ts +4 -0
  159. package/dist/components/InputPhone/InputPhoneExample.js +7 -0
  160. package/dist/components/InputPhone/InputPhoneExample.js.map +1 -0
  161. package/dist/components/InputPhone/index.d.ts +1 -0
  162. package/dist/components/InputPhone/index.js +2 -0
  163. package/dist/components/InputPhone/index.js.map +1 -0
  164. package/dist/components/InputPhone/input-phone.css +42 -0
  165. package/dist/components/InputPhone/input-phone.css.js +47 -0
  166. package/dist/components/InputPhoneField/InputPhoneField.d.ts +15 -0
  167. package/dist/components/InputPhoneField/InputPhoneField.js +17 -0
  168. package/dist/components/InputPhoneField/InputPhoneField.js.map +1 -0
  169. package/dist/components/InputPhoneField/index.d.ts +1 -0
  170. package/dist/components/InputPhoneField/index.js +2 -0
  171. package/dist/components/InputPhoneField/index.js.map +1 -0
  172. package/dist/components/Layout/Layout.d.ts +1 -1
  173. package/dist/components/Layout/Layout.js +1 -1
  174. package/dist/components/Link/Link.d.ts +1 -1
  175. package/dist/components/Link/Link.js +1 -1
  176. package/dist/components/ListItem/ListItem.d.ts +20 -11
  177. package/dist/components/ListItem/ListItem.js +12 -8
  178. package/dist/components/ListItem/ListItem.js.map +1 -1
  179. package/dist/components/ListItem/ListItemExample.d.ts +1 -1
  180. package/dist/components/ListItem/ListItemExample.js +72 -3
  181. package/dist/components/ListItem/ListItemExample.js.map +1 -1
  182. package/dist/components/ListItem/list-item.css +13 -7
  183. package/dist/components/ListItem/list-item.css.js +13 -7
  184. package/dist/components/Menu/Menu.d.ts +1 -1
  185. package/dist/components/Menu/Menu.js +1 -1
  186. package/dist/components/Menu/MenuExample.js +1 -1
  187. package/dist/components/Menu/MenuExample.js.map +1 -1
  188. package/dist/components/MenuButton/MenuButton.d.ts +1 -1
  189. package/dist/components/MenuButton/MenuButton.js +1 -1
  190. package/dist/components/Modal/Modal.d.ts +1 -1
  191. package/dist/components/Modal/Modal.js +1 -1
  192. package/dist/components/Modal/ModalExample.js +1 -1
  193. package/dist/components/Modal/ModalExample.js.map +1 -1
  194. package/dist/components/Pagination/PageInput.js +2 -2
  195. package/dist/components/Pagination/PageInput.js.map +1 -1
  196. package/dist/components/Password/Password.d.ts +43 -0
  197. package/dist/components/Password/Password.js +63 -0
  198. package/dist/components/Password/Password.js.map +1 -0
  199. package/dist/components/Password/index.d.ts +1 -0
  200. package/dist/components/Password/index.js +2 -0
  201. package/dist/components/Password/index.js.map +1 -0
  202. package/dist/components/Password/password.css +21 -0
  203. package/dist/components/Password/password.css.js +26 -0
  204. package/dist/components/PasswordField/PasswordField.d.ts +8 -24
  205. package/dist/components/PasswordField/PasswordField.js +7 -23
  206. package/dist/components/PasswordField/PasswordField.js.map +1 -1
  207. package/dist/components/Popover/Popover.d.ts +3 -3
  208. package/dist/components/Popover/Popover.js +2 -1
  209. package/dist/components/Popover/Popover.js.map +1 -1
  210. package/dist/components/Popover/PopoverExample.js +2 -2
  211. package/dist/components/Popover/PopoverExample.js.map +1 -1
  212. package/dist/components/ProgressBar/ProgressBar.d.ts +1 -1
  213. package/dist/components/ProgressBar/ProgressBar.js +1 -1
  214. package/dist/components/ProgressCircle/ProgressCircle.d.ts +1 -1
  215. package/dist/components/ProgressCircle/ProgressCircle.js +1 -1
  216. package/dist/components/ProgressionStepper/ProgressionStepper.d.ts +4 -8
  217. package/dist/components/ProgressionStepper/ProgressionStepper.js +11 -6
  218. package/dist/components/ProgressionStepper/ProgressionStepper.js.map +1 -1
  219. package/dist/components/ProgressionStepper/ProgressionStepperExample.js +20 -4
  220. package/dist/components/ProgressionStepper/ProgressionStepperExample.js.map +1 -1
  221. package/dist/components/Radio/Radio.d.ts +2 -2
  222. package/dist/components/Radio/Radio.js.map +1 -1
  223. package/dist/components/RadioGroup/RadioGroup.d.ts +7 -36
  224. package/dist/components/RadioGroup/RadioGroup.js +15 -9
  225. package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
  226. package/dist/components/RadioGroup/radio-group.css +2 -1
  227. package/dist/components/RadioGroup/radio-group.css.js +2 -1
  228. package/dist/components/RadioGroupField/RadioGroupField.d.ts +15 -0
  229. package/dist/components/RadioGroupField/RadioGroupField.js +17 -0
  230. package/dist/components/RadioGroupField/RadioGroupField.js.map +1 -0
  231. package/dist/components/RadioGroupField/index.d.ts +1 -0
  232. package/dist/components/RadioGroupField/index.js +2 -0
  233. package/dist/components/RadioGroupField/index.js.map +1 -0
  234. package/dist/components/SearchBar/SearchBar.d.ts +37 -45
  235. package/dist/components/SearchBar/SearchBar.js +104 -53
  236. package/dist/components/SearchBar/SearchBar.js.map +1 -1
  237. package/dist/components/SearchBar/SearchBarExample.js +2 -1
  238. package/dist/components/SearchBar/SearchBarExample.js.map +1 -1
  239. package/dist/components/SegmentedControl/SegmentedControl.d.ts +1 -1
  240. package/dist/components/SegmentedControl/SegmentedControl.js +1 -1
  241. package/dist/components/Select/Select.d.ts +41 -36
  242. package/dist/components/Select/Select.js +52 -26
  243. package/dist/components/Select/Select.js.map +1 -1
  244. package/dist/components/Select/SelectExample.js +1 -9
  245. package/dist/components/Select/SelectExample.js.map +1 -1
  246. package/dist/components/SelectField/SelectField.d.ts +6 -26
  247. package/dist/components/SelectField/SelectField.js +5 -27
  248. package/dist/components/SelectField/SelectField.js.map +1 -1
  249. package/dist/components/Skeleton/SkeletonExample.js +2 -2
  250. package/dist/components/Skeleton/SkeletonExample.js.map +1 -1
  251. package/dist/components/Snackbar/Snackbar.d.ts +72 -14
  252. package/dist/components/Snackbar/Snackbar.js +38 -9
  253. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  254. package/dist/components/Snackbar/SnackbarExample.d.ts +1 -1
  255. package/dist/components/Snackbar/SnackbarExample.js +5 -3
  256. package/dist/components/Snackbar/SnackbarExample.js.map +1 -1
  257. package/dist/components/Snackbar/snackbar.css +31 -2
  258. package/dist/components/Snackbar/snackbar.css.js +31 -2
  259. package/dist/components/StylesProviderDemo/StylesProviderDemo.d.ts +1 -1
  260. package/dist/components/StylesProviderDemo/StylesProviderDemo.js +3 -1
  261. package/dist/components/StylesProviderDemo/StylesProviderDemo.js.map +1 -1
  262. package/dist/components/StylesProviderDemo/exampleCss.d.ts +1 -0
  263. package/dist/components/StylesProviderDemo/exampleCss.js +1900 -0
  264. package/dist/components/StylesProviderDemo/exampleCss.js.map +1 -0
  265. package/dist/components/Switch/Switch.d.ts +5 -3
  266. package/dist/components/Switch/Switch.js +2 -2
  267. package/dist/components/Switch/Switch.js.map +1 -1
  268. package/dist/components/SwitchOption/SwitchOption.js +1 -1
  269. package/dist/components/SwitchOption/SwitchOption.js.map +1 -1
  270. package/dist/components/TabGroup/TabGroup.d.ts +2 -2
  271. package/dist/components/TabGroup/TabGroup.js +3 -3
  272. package/dist/components/TabGroup/TabGroup.js.map +1 -1
  273. package/dist/components/TabList/TabList.d.ts +6 -3
  274. package/dist/components/TabList/TabList.js +6 -3
  275. package/dist/components/TabList/TabList.js.map +1 -1
  276. package/dist/components/TabList/tab-list.css +6 -0
  277. package/dist/components/TabList/tab-list.css.js +6 -0
  278. package/dist/components/Tag/Tag.d.ts +1 -1
  279. package/dist/components/Tag/Tag.js +1 -1
  280. package/dist/components/Textarea/Textarea.d.ts +20 -26
  281. package/dist/components/Textarea/Textarea.js +29 -11
  282. package/dist/components/Textarea/Textarea.js.map +1 -1
  283. package/dist/components/Textarea/textarea.css +24 -10
  284. package/dist/components/Textarea/textarea.css.js +24 -10
  285. package/dist/components/TextareaField/TextareaField.d.ts +6 -30
  286. package/dist/components/TextareaField/TextareaField.js +5 -31
  287. package/dist/components/TextareaField/TextareaField.js.map +1 -1
  288. package/dist/components/TimePicker/Listbox.d.ts +15 -0
  289. package/dist/components/{TimeInput → TimePicker}/Listbox.js +2 -2
  290. package/dist/components/TimePicker/Listbox.js.map +1 -0
  291. package/dist/components/TimePicker/Segment.d.ts +21 -0
  292. package/dist/components/{TimeInput → TimePicker}/Segment.js +2 -1
  293. package/dist/components/TimePicker/Segment.js.map +1 -0
  294. package/dist/components/TimePicker/TimePicker.d.ts +36 -0
  295. package/dist/components/TimePicker/TimePicker.js +133 -0
  296. package/dist/components/TimePicker/TimePicker.js.map +1 -0
  297. package/dist/components/TimePicker/TimePickerExample.d.ts +3 -0
  298. package/dist/components/TimePicker/TimePickerExample.js +6 -0
  299. package/dist/components/TimePicker/TimePickerExample.js.map +1 -0
  300. package/dist/components/TimePicker/index.d.ts +1 -0
  301. package/dist/components/TimePicker/index.js +2 -0
  302. package/dist/components/TimePicker/index.js.map +1 -0
  303. package/dist/components/{TimeInput/time-input.css → TimePicker/time-picker.css} +28 -26
  304. package/dist/components/{TimeInput/time-input.css.js → TimePicker/time-picker.css.js} +28 -26
  305. package/dist/components/TimePicker/utils.d.ts +11 -0
  306. package/dist/components/TimePicker/utils.js +35 -0
  307. package/dist/components/TimePicker/utils.js.map +1 -0
  308. package/dist/components/TimePickerField/TimePickerField.d.ts +15 -0
  309. package/dist/components/TimePickerField/TimePickerField.js +17 -0
  310. package/dist/components/TimePickerField/TimePickerField.js.map +1 -0
  311. package/dist/components/TimePickerField/index.d.ts +1 -0
  312. package/dist/components/TimePickerField/index.js +2 -0
  313. package/dist/components/TimePickerField/index.js.map +1 -0
  314. package/dist/components/ToggleOption/ToggleOption.js +3 -2
  315. package/dist/components/ToggleOption/ToggleOption.js.map +1 -1
  316. package/dist/components/Tooltip/Tooltip.d.ts +1 -1
  317. package/dist/components/Tooltip/Tooltip.js +1 -1
  318. package/dist/components/Tooltip/TooltipExample.js +2 -2
  319. package/dist/components/Tooltip/TooltipExample.js.map +1 -1
  320. package/dist/components/Txt/Txt.d.ts +1 -1
  321. package/dist/components/Txt/Txt.js +1 -1
  322. package/dist/constants/brands.d.ts +1 -1
  323. package/dist/constants/brands.js +4 -0
  324. package/dist/constants/brands.js.map +1 -1
  325. package/dist/hooks/useArrowNavigation.js +6 -1
  326. package/dist/hooks/useArrowNavigation.js.map +1 -1
  327. package/dist/hooks/useCheckboxGroupState.d.ts +1 -1
  328. package/dist/hooks/useCheckboxGroupState.js +1 -1
  329. package/dist/hooks/useCheckboxState.d.ts +1 -1
  330. package/dist/hooks/useCheckboxState.js +1 -1
  331. package/dist/hooks/useContainerWidth.d.ts +1 -1
  332. package/dist/hooks/useContainerWidth.js +1 -1
  333. package/dist/hooks/useModalState.d.ts +1 -1
  334. package/dist/hooks/useModalState.js +1 -1
  335. package/dist/hooks/useOutsideClick.d.ts +5 -4
  336. package/dist/hooks/useOutsideClick.js +14 -3
  337. package/dist/hooks/useOutsideClick.js.map +1 -1
  338. package/dist/hooks/useRadioState.d.ts +2 -2
  339. package/dist/hooks/useRadioState.js +1 -1
  340. package/dist/hooks/useTimeout.d.ts +1 -1
  341. package/dist/styles/base.css +3 -0
  342. package/dist/styles/base.css.js +3 -0
  343. package/dist/types/common.d.ts +18 -10
  344. package/dist/types/common.js.map +1 -1
  345. package/dist/types/meta.d.ts +1 -0
  346. package/dist/types/meta.js.map +1 -1
  347. package/dist/utils/demo.d.ts +1 -0
  348. package/dist/utils/demo.js.map +1 -1
  349. package/meta.ts +1 -0
  350. package/package.json +37 -37
  351. package/src/components/AvatarGroup/AvatarGroup.tsx +1 -1
  352. package/src/components/Breadcrumb/Breadcrumb.tsx +5 -56
  353. package/src/components/Breadcrumb/BreadcumbDropdown.tsx +135 -0
  354. package/src/components/Button/Button.tsx +7 -1
  355. package/src/components/Button/button.scss +5 -5
  356. package/src/components/Calendar/Calendar.rtl.test.tsx +22 -0
  357. package/src/components/{CalendarPicker/CalendarPicker.tsx → Calendar/Calendar.tsx} +86 -87
  358. package/src/components/Calendar/CalendarExample.tsx +31 -0
  359. package/src/components/{CalendarPicker/calendar-picker.scss → Calendar/calendar.scss} +1 -1
  360. package/src/components/Calendar/index.tsx +1 -0
  361. package/src/components/Checkbox/Checkbox.tsx +28 -26
  362. package/src/components/CheckboxGroup/CheckboxGroup.tsx +73 -77
  363. package/src/components/CheckboxGroup/CheckboxGroupExample.tsx +3 -0
  364. package/src/components/CheckboxGroup/checkbox-group.scss +8 -0
  365. package/src/components/CheckboxGroupField/CheckboxGroupField.rtl.test.tsx +27 -0
  366. package/src/components/CheckboxGroupField/CheckboxGroupField.tsx +36 -0
  367. package/src/components/CheckboxGroupField/index.tsx +1 -0
  368. package/src/components/{ChipUtility/ChipUtility.rtl.test.tsx → Chip/Chip.rtl.test.tsx} +5 -5
  369. package/src/components/{ChipUtility/ChipUtility.tsx → Chip/Chip.tsx} +26 -28
  370. package/src/components/{ChipUtility/ChipUtilityExample.tsx → Chip/ChipExample.tsx} +3 -3
  371. package/src/components/{ChipUtility/chip-utility.scss → Chip/chip.scss} +1 -1
  372. package/src/components/Chip/index.tsx +1 -0
  373. package/src/components/ChipGroup/ChipGroup.rtl.test.tsx +7 -7
  374. package/src/components/ChipGroup/ChipGroup.tsx +8 -7
  375. package/src/components/ChipGroup/ChipGroupExample.tsx +38 -138
  376. package/src/components/DatePicker/DatePicker.rtl.test.tsx +17 -0
  377. package/src/components/DatePicker/DatePicker.tsx +227 -0
  378. package/src/components/DatePicker/DatePickerExample.tsx +12 -0
  379. package/src/components/{DateInput/date-input.scss → DatePicker/date-picker.scss} +2 -3
  380. package/src/components/DatePicker/index.tsx +1 -0
  381. package/src/components/DatePickerField/DatePickerField.rtl.test.tsx +17 -0
  382. package/src/components/DatePickerField/DatePickerField.tsx +30 -0
  383. package/src/components/DatePickerField/index.tsx +1 -0
  384. package/src/components/Drawer/Drawer.tsx +1 -1
  385. package/src/components/Drawer/DrawerExample.tsx +2 -2
  386. package/src/components/EmptyState/EmptyState.tsx +1 -1
  387. package/src/components/Fab/Fab.tsx +1 -1
  388. package/src/components/Field/Field.rtl.test.tsx +23 -0
  389. package/src/components/Field/Field.tsx +110 -0
  390. package/src/components/Field/FieldDescription.tsx +15 -0
  391. package/src/components/Field/FieldError.tsx +19 -0
  392. package/src/components/Field/FieldExample.tsx +21 -0
  393. package/src/components/Field/FieldLabel.tsx +38 -0
  394. package/src/components/Field/field.scss +43 -0
  395. package/src/components/Field/index.tsx +5 -0
  396. package/src/components/Field/utils.ts +79 -0
  397. package/src/components/FormField/FormField.rtl.test.tsx +11 -21
  398. package/src/components/FormField/FormField.tsx +44 -66
  399. package/src/components/FormField/FormFieldExample.tsx +275 -38
  400. package/src/components/Img/Img.tsx +1 -1
  401. package/src/components/InlineAlert/InlineAlert.tsx +5 -5
  402. package/src/components/{NumberInput/NumberInput.rtl.test.tsx → Input/Input.rtl.test.tsx} +3 -3
  403. package/src/components/Input/Input.tsx +99 -0
  404. package/src/components/{TextInput/TextInput.tsx → Input/InputElement.tsx} +69 -77
  405. package/src/components/Input/InputExample.tsx +57 -0
  406. package/src/components/Input/index.tsx +2 -0
  407. package/src/components/{TextInput/text-input.scss → Input/input.scss} +7 -7
  408. package/src/components/InputField/InputField.rtl.test.tsx +15 -0
  409. package/src/components/InputField/InputField.tsx +24 -0
  410. package/src/components/InputField/index.tsx +1 -0
  411. package/src/components/{TextField/TextField.rtl.test.tsx → InputNumber/InputNumber.rtl.test.tsx} +3 -12
  412. package/src/components/{NumberInput/NumberInput.tsx → InputNumber/InputNumber.tsx} +61 -56
  413. package/src/components/{NumberInput/NumberInputExample.tsx → InputNumber/InputNumberExample.tsx} +2 -2
  414. package/src/components/InputNumber/index.tsx +1 -0
  415. package/src/components/{NumberInput/number-input.scss → InputNumber/input-number.scss} +1 -1
  416. package/src/components/InputNumberField/InputNumberField.rtl.test.tsx +17 -0
  417. package/src/components/InputNumberField/InputNumberField.tsx +30 -0
  418. package/src/components/InputNumberField/index.tsx +1 -0
  419. package/src/components/InputPhone/InputPhone.rtl.test.tsx +17 -0
  420. package/src/components/InputPhone/InputPhone.tsx +290 -0
  421. package/src/components/InputPhone/InputPhoneExample.tsx +9 -0
  422. package/src/components/InputPhone/index.tsx +1 -0
  423. package/src/components/{PhoneNumberInput/phone-number-input.scss → InputPhone/input-phone.scss} +13 -18
  424. package/src/components/InputPhoneField/InputPhoneField.rtl.test.tsx +17 -0
  425. package/src/components/InputPhoneField/InputPhoneField.tsx +30 -0
  426. package/src/components/InputPhoneField/index.tsx +1 -0
  427. package/src/components/Layout/Layout.tsx +1 -1
  428. package/src/components/Link/Link.tsx +1 -1
  429. package/src/components/ListItem/ListItem.rtl.test.tsx +4 -1
  430. package/src/components/ListItem/ListItem.tsx +48 -23
  431. package/src/components/ListItem/ListItemExample.tsx +74 -4
  432. package/src/components/ListItem/list-item.scss +26 -17
  433. package/src/components/Menu/Menu.tsx +1 -1
  434. package/src/components/Menu/MenuExample.tsx +1 -0
  435. package/src/components/MenuButton/MenuButton.tsx +1 -1
  436. package/src/components/Modal/Modal.tsx +1 -1
  437. package/src/components/Modal/ModalExample.tsx +4 -6
  438. package/src/components/Pagination/PageInput.tsx +2 -2
  439. package/src/components/{CalendarPicker/CalendarPicker.rtl.test.tsx → Password/Password.rtl.test.tsx} +4 -4
  440. package/src/components/Password/Password.tsx +113 -0
  441. package/src/components/Password/index.tsx +1 -0
  442. package/src/components/Password/password.scss +31 -0
  443. package/src/components/PasswordField/PasswordField.rtl.test.tsx +4 -11
  444. package/src/components/PasswordField/PasswordField.tsx +10 -53
  445. package/src/components/Popover/Popover.tsx +3 -2
  446. package/src/components/Popover/PopoverExample.tsx +2 -2
  447. package/src/components/ProgressBar/ProgressBar.tsx +1 -1
  448. package/src/components/ProgressCircle/ProgressCircle.tsx +1 -1
  449. package/src/components/ProgressionStepper/ProgressionStepper.tsx +24 -20
  450. package/src/components/ProgressionStepper/ProgressionStepperExample.tsx +20 -4
  451. package/src/components/Radio/Radio.tsx +15 -16
  452. package/src/components/RadioGroup/RadioGroup.rtl.test.tsx +4 -5
  453. package/src/components/RadioGroup/RadioGroup.tsx +51 -71
  454. package/src/components/RadioGroup/radio-group.scss +3 -1
  455. package/src/components/RadioGroupField/RadioGroupField.rtl.test.tsx +27 -0
  456. package/src/components/RadioGroupField/RadioGroupField.tsx +36 -0
  457. package/src/components/RadioGroupField/index.tsx +1 -0
  458. package/src/components/SearchBar/SearchBar.rtl.test.tsx +3 -4
  459. package/src/components/SearchBar/SearchBar.tsx +190 -126
  460. package/src/components/SearchBar/SearchBarExample.tsx +2 -1
  461. package/src/components/SegmentedControl/SegmentedControl.tsx +1 -1
  462. package/src/components/Select/Select.rtl.test.tsx +6 -5
  463. package/src/components/Select/Select.tsx +62 -66
  464. package/src/components/Select/SelectExample.tsx +1 -14
  465. package/src/components/SelectField/SelectField.rtl.test.tsx +9 -6
  466. package/src/components/SelectField/SelectField.tsx +9 -56
  467. package/src/components/Skeleton/SkeletonExample.tsx +1 -3
  468. package/src/components/Snackbar/Snackbar.tsx +124 -28
  469. package/src/components/Snackbar/SnackbarExample.tsx +9 -3
  470. package/src/components/Snackbar/snackbar.scss +48 -16
  471. package/src/components/StylesProviderDemo/StylesProviderDemo.tsx +5 -2
  472. package/src/components/StylesProviderDemo/exampleCss.ts +1899 -0
  473. package/src/components/Switch/Switch.rtl.test.tsx +3 -1
  474. package/src/components/Switch/Switch.tsx +5 -3
  475. package/src/components/SwitchOption/SwitchOption.rtl.test.tsx +3 -1
  476. package/src/components/SwitchOption/SwitchOption.tsx +1 -1
  477. package/src/components/TabGroup/TabGroup.tsx +2 -2
  478. package/src/components/TabList/TabList.tsx +16 -5
  479. package/src/components/TabList/tab-list.scss +12 -0
  480. package/src/components/Tag/Tag.tsx +1 -1
  481. package/src/components/Textarea/Textarea.rtl.test.tsx +1 -1
  482. package/src/components/Textarea/Textarea.tsx +72 -68
  483. package/src/components/Textarea/textarea.scss +41 -19
  484. package/src/components/TextareaField/TextareaField.rtl.test.tsx +4 -11
  485. package/src/components/TextareaField/TextareaField.tsx +9 -74
  486. package/src/components/{TimeInput → TimePicker}/Listbox.tsx +5 -5
  487. package/src/components/{TimeInput → TimePicker}/Segment.tsx +8 -5
  488. package/src/components/{TextInput/TextInput.rtl.test.tsx → TimePicker/TimePicker.rtl.test.tsx} +3 -3
  489. package/src/components/{TimeInput/TimeInput.tsx → TimePicker/TimePicker.tsx} +104 -67
  490. package/src/components/TimePicker/TimePickerExample.tsx +8 -0
  491. package/src/components/TimePicker/index.tsx +1 -0
  492. package/src/components/{TimeInput/time-input.scss → TimePicker/time-picker.scss} +7 -5
  493. package/src/components/TimePicker/utils.test.tsx +26 -0
  494. package/src/components/TimePicker/utils.ts +44 -0
  495. package/src/components/TimePickerField/TimePickerField.rtl.test.tsx +17 -0
  496. package/src/components/TimePickerField/TimePickerField.tsx +30 -0
  497. package/src/components/TimePickerField/index.tsx +1 -0
  498. package/src/components/ToggleOption/ToggleOption.tsx +10 -5
  499. package/src/components/Tooltip/Tooltip.tsx +1 -1
  500. package/src/components/Tooltip/TooltipExample.tsx +7 -9
  501. package/src/components/Txt/Txt.tsx +1 -1
  502. package/src/constants/brands.ts +5 -1
  503. package/src/hooks/useArrowNavigation.ts +6 -1
  504. package/src/hooks/useCheckboxGroupState.ts +1 -1
  505. package/src/hooks/useCheckboxState.ts +1 -1
  506. package/src/hooks/useContainerWidth.tsx +1 -1
  507. package/src/hooks/useModalState.ts +1 -1
  508. package/src/hooks/useOutsideClick.ts +17 -4
  509. package/src/hooks/useRadioState.ts +1 -1
  510. package/src/hooks/useTimeout.ts +1 -1
  511. package/src/styles/base.scss +3 -0
  512. package/src/types/common.ts +28 -10
  513. package/src/types/meta.ts +1 -0
  514. package/src/utils/demo.ts +1 -0
  515. package/dist/components/CalendarPicker/CalendarPicker.d.ts +0 -32
  516. package/dist/components/CalendarPicker/CalendarPicker.js.map +0 -1
  517. package/dist/components/CalendarPicker/CalendarPickerExample.d.ts +0 -3
  518. package/dist/components/CalendarPicker/CalendarPickerExample.js +0 -17
  519. package/dist/components/CalendarPicker/CalendarPickerExample.js.map +0 -1
  520. package/dist/components/CalendarPicker/index.d.ts +0 -1
  521. package/dist/components/CalendarPicker/index.js +0 -2
  522. package/dist/components/CalendarPicker/index.js.map +0 -1
  523. package/dist/components/ChipAssist/ChipAssist.d.ts +0 -24
  524. package/dist/components/ChipAssist/ChipAssist.js +0 -26
  525. package/dist/components/ChipAssist/ChipAssist.js.map +0 -1
  526. package/dist/components/ChipAssist/ChipAssistExample.d.ts +0 -4
  527. package/dist/components/ChipAssist/ChipAssistExample.js +0 -32
  528. package/dist/components/ChipAssist/ChipAssistExample.js.map +0 -1
  529. package/dist/components/ChipAssist/index.d.ts +0 -1
  530. package/dist/components/ChipAssist/index.js +0 -2
  531. package/dist/components/ChipAssist/index.js.map +0 -1
  532. package/dist/components/ChipFilter/ChipFilter.d.ts +0 -40
  533. package/dist/components/ChipFilter/ChipFilter.js +0 -31
  534. package/dist/components/ChipFilter/ChipFilter.js.map +0 -1
  535. package/dist/components/ChipFilter/ChipFilterExample.d.ts +0 -3
  536. package/dist/components/ChipFilter/ChipFilterExample.js +0 -62
  537. package/dist/components/ChipFilter/ChipFilterExample.js.map +0 -1
  538. package/dist/components/ChipFilter/index.d.ts +0 -1
  539. package/dist/components/ChipFilter/index.js +0 -2
  540. package/dist/components/ChipFilter/index.js.map +0 -1
  541. package/dist/components/ChipInput/ChipInput.d.ts +0 -31
  542. package/dist/components/ChipInput/ChipInput.js +0 -27
  543. package/dist/components/ChipInput/ChipInput.js.map +0 -1
  544. package/dist/components/ChipInput/ChipInputExample.d.ts +0 -4
  545. package/dist/components/ChipInput/ChipInputExample.js +0 -47
  546. package/dist/components/ChipInput/ChipInputExample.js.map +0 -1
  547. package/dist/components/ChipInput/index.d.ts +0 -1
  548. package/dist/components/ChipInput/index.js +0 -2
  549. package/dist/components/ChipInput/index.js.map +0 -1
  550. package/dist/components/ChipSuggestion/ChipSuggestion.d.ts +0 -17
  551. package/dist/components/ChipSuggestion/ChipSuggestion.js +0 -19
  552. package/dist/components/ChipSuggestion/ChipSuggestion.js.map +0 -1
  553. package/dist/components/ChipSuggestion/ChipSuggestionExample.d.ts +0 -4
  554. package/dist/components/ChipSuggestion/ChipSuggestionExample.js +0 -24
  555. package/dist/components/ChipSuggestion/ChipSuggestionExample.js.map +0 -1
  556. package/dist/components/ChipSuggestion/index.d.ts +0 -1
  557. package/dist/components/ChipSuggestion/index.js +0 -2
  558. package/dist/components/ChipSuggestion/index.js.map +0 -1
  559. package/dist/components/ChipUtility/ChipUtility.js +0 -25
  560. package/dist/components/ChipUtility/ChipUtility.js.map +0 -1
  561. package/dist/components/ChipUtility/ChipUtilityExample.d.ts +0 -4
  562. package/dist/components/ChipUtility/ChipUtilityExample.js.map +0 -1
  563. package/dist/components/ChipUtility/index.d.ts +0 -1
  564. package/dist/components/ChipUtility/index.js +0 -2
  565. package/dist/components/ChipUtility/index.js.map +0 -1
  566. package/dist/components/DateField/DateField.d.ts +0 -32
  567. package/dist/components/DateField/DateField.js +0 -34
  568. package/dist/components/DateField/DateField.js.map +0 -1
  569. package/dist/components/DateField/DateFieldExample.d.ts +0 -4
  570. package/dist/components/DateField/DateFieldExample.js +0 -11
  571. package/dist/components/DateField/DateFieldExample.js.map +0 -1
  572. package/dist/components/DateField/date-field.css +0 -8
  573. package/dist/components/DateField/index.d.ts +0 -1
  574. package/dist/components/DateField/index.js +0 -2
  575. package/dist/components/DateField/index.js.map +0 -1
  576. package/dist/components/DateInput/DateInput.d.ts +0 -39
  577. package/dist/components/DateInput/DateInput.js +0 -102
  578. package/dist/components/DateInput/DateInput.js.map +0 -1
  579. package/dist/components/DateInput/DateInputExample.d.ts +0 -4
  580. package/dist/components/DateInput/DateInputExample.js +0 -14
  581. package/dist/components/DateInput/DateInputExample.js.map +0 -1
  582. package/dist/components/DateInput/index.d.ts +0 -1
  583. package/dist/components/DateInput/index.js +0 -2
  584. package/dist/components/DateInput/index.js.map +0 -1
  585. package/dist/components/FormField/form-field.css +0 -17
  586. package/dist/components/FormField/form-field.css.js +0 -22
  587. package/dist/components/ListItemMenu/ListItemMenu.d.ts +0 -146
  588. package/dist/components/ListItemMenu/ListItemMenu.js +0 -159
  589. package/dist/components/ListItemMenu/ListItemMenu.js.map +0 -1
  590. package/dist/components/ListItemMenu/index.d.ts +0 -1
  591. package/dist/components/ListItemMenu/index.js +0 -2
  592. package/dist/components/ListItemMenu/index.js.map +0 -1
  593. package/dist/components/NumberField/NumberField.d.ts +0 -33
  594. package/dist/components/NumberField/NumberField.js +0 -35
  595. package/dist/components/NumberField/NumberField.js.map +0 -1
  596. package/dist/components/NumberField/index.d.ts +0 -1
  597. package/dist/components/NumberField/index.js +0 -2
  598. package/dist/components/NumberField/index.js.map +0 -1
  599. package/dist/components/NumberInput/NumberInput.d.ts +0 -63
  600. package/dist/components/NumberInput/NumberInput.js +0 -64
  601. package/dist/components/NumberInput/NumberInput.js.map +0 -1
  602. package/dist/components/NumberInput/NumberInputExample.d.ts +0 -3
  603. package/dist/components/NumberInput/NumberInputExample.js.map +0 -1
  604. package/dist/components/NumberInput/index.d.ts +0 -1
  605. package/dist/components/NumberInput/index.js +0 -2
  606. package/dist/components/NumberInput/index.js.map +0 -1
  607. package/dist/components/PasswordInput/PasswordInput.d.ts +0 -21
  608. package/dist/components/PasswordInput/PasswordInput.js +0 -34
  609. package/dist/components/PasswordInput/PasswordInput.js.map +0 -1
  610. package/dist/components/PasswordInput/index.d.ts +0 -1
  611. package/dist/components/PasswordInput/index.js +0 -2
  612. package/dist/components/PasswordInput/index.js.map +0 -1
  613. package/dist/components/PasswordInput/password-input.css +0 -28
  614. package/dist/components/PasswordInput/password-input.css.js +0 -33
  615. package/dist/components/PhoneNumberField/PhoneNumberField.d.ts +0 -14
  616. package/dist/components/PhoneNumberField/PhoneNumberField.js +0 -16
  617. package/dist/components/PhoneNumberField/PhoneNumberField.js.map +0 -1
  618. package/dist/components/PhoneNumberField/index.d.ts +0 -1
  619. package/dist/components/PhoneNumberField/index.js +0 -2
  620. package/dist/components/PhoneNumberField/index.js.map +0 -1
  621. package/dist/components/PhoneNumberInput/PhoneNumberInput.d.ts +0 -37
  622. package/dist/components/PhoneNumberInput/PhoneNumberInput.js +0 -83
  623. package/dist/components/PhoneNumberInput/PhoneNumberInput.js.map +0 -1
  624. package/dist/components/PhoneNumberInput/PhoneNumberInputExample.d.ts +0 -4
  625. package/dist/components/PhoneNumberInput/PhoneNumberInputExample.js +0 -5
  626. package/dist/components/PhoneNumberInput/PhoneNumberInputExample.js.map +0 -1
  627. package/dist/components/PhoneNumberInput/index.d.ts +0 -1
  628. package/dist/components/PhoneNumberInput/index.js +0 -2
  629. package/dist/components/PhoneNumberInput/index.js.map +0 -1
  630. package/dist/components/PhoneNumberInput/phone-number-input.css +0 -46
  631. package/dist/components/PhoneNumberInput/phone-number-input.css.js +0 -51
  632. package/dist/components/SelectField/SelectFieldExample.d.ts +0 -23
  633. package/dist/components/SelectField/SelectFieldExample.js +0 -13
  634. package/dist/components/SelectField/SelectFieldExample.js.map +0 -1
  635. package/dist/components/SnackbarProvider/SnackbarProvider.d.ts +0 -90
  636. package/dist/components/SnackbarProvider/SnackbarProvider.js +0 -115
  637. package/dist/components/SnackbarProvider/SnackbarProvider.js.map +0 -1
  638. package/dist/components/SnackbarProvider/SnackbarProviderExample.d.ts +0 -4
  639. package/dist/components/SnackbarProvider/SnackbarProviderExample.js +0 -59
  640. package/dist/components/SnackbarProvider/SnackbarProviderExample.js.map +0 -1
  641. package/dist/components/SnackbarProvider/index.d.ts +0 -1
  642. package/dist/components/SnackbarProvider/index.js +0 -2
  643. package/dist/components/SnackbarProvider/index.js.map +0 -1
  644. package/dist/components/SnackbarProvider/snackbar-provider-example.css +0 -15
  645. package/dist/components/SnackbarProvider/snackbar-provider-example.css.js +0 -20
  646. package/dist/components/SnackbarProvider/snackbar-provider.css +0 -15
  647. package/dist/components/SnackbarProvider/snackbar-provider.css.js +0 -20
  648. package/dist/components/TextField/TextField.d.ts +0 -31
  649. package/dist/components/TextField/TextField.js +0 -33
  650. package/dist/components/TextField/TextField.js.map +0 -1
  651. package/dist/components/TextField/TextFieldExample.d.ts +0 -3
  652. package/dist/components/TextField/TextFieldExample.js +0 -6
  653. package/dist/components/TextField/TextFieldExample.js.map +0 -1
  654. package/dist/components/TextField/index.d.ts +0 -1
  655. package/dist/components/TextField/index.js +0 -2
  656. package/dist/components/TextField/index.js.map +0 -1
  657. package/dist/components/TextInput/TextInput.d.ts +0 -78
  658. package/dist/components/TextInput/TextInput.js.map +0 -1
  659. package/dist/components/TextInput/TextInputExample.d.ts +0 -3
  660. package/dist/components/TextInput/TextInputExample.js.map +0 -1
  661. package/dist/components/TextInput/index.d.ts +0 -1
  662. package/dist/components/TextInput/index.js +0 -2
  663. package/dist/components/TextInput/index.js.map +0 -1
  664. package/dist/components/TextareaField/TextareaFieldExample.d.ts +0 -3
  665. package/dist/components/TextareaField/TextareaFieldExample.js +0 -10
  666. package/dist/components/TextareaField/TextareaFieldExample.js.map +0 -1
  667. package/dist/components/TimeInput/Listbox.d.ts +0 -15
  668. package/dist/components/TimeInput/Listbox.js.map +0 -1
  669. package/dist/components/TimeInput/Segment.d.ts +0 -20
  670. package/dist/components/TimeInput/Segment.js.map +0 -1
  671. package/dist/components/TimeInput/TimeInput.d.ts +0 -24
  672. package/dist/components/TimeInput/TimeInput.js +0 -115
  673. package/dist/components/TimeInput/TimeInput.js.map +0 -1
  674. package/dist/components/TimeInput/TimeInputExample.d.ts +0 -3
  675. package/dist/components/TimeInput/TimeInputExample.js +0 -4
  676. package/dist/components/TimeInput/TimeInputExample.js.map +0 -1
  677. package/dist/components/TimeInput/index.d.ts +0 -1
  678. package/dist/components/TimeInput/index.js +0 -2
  679. package/dist/components/TimeInput/index.js.map +0 -1
  680. package/dist/hooks/useSnackbarContext.d.ts +0 -1
  681. package/dist/hooks/useSnackbarContext.js +0 -16
  682. package/dist/hooks/useSnackbarContext.js.map +0 -1
  683. package/dist/utils/snackbarContext.d.ts +0 -38
  684. package/dist/utils/snackbarContext.js +0 -3
  685. package/dist/utils/snackbarContext.js.map +0 -1
  686. package/src/components/CalendarPicker/CalendarPickerExample.tsx +0 -24
  687. package/src/components/CalendarPicker/index.tsx +0 -1
  688. package/src/components/ChipAssist/ChipAssist.rtl.test.tsx +0 -16
  689. package/src/components/ChipAssist/ChipAssist.tsx +0 -37
  690. package/src/components/ChipAssist/ChipAssistExample.tsx +0 -34
  691. package/src/components/ChipAssist/index.tsx +0 -1
  692. package/src/components/ChipFilter/ChipFilter.rtl.test.tsx +0 -15
  693. package/src/components/ChipFilter/ChipFilter.tsx +0 -75
  694. package/src/components/ChipFilter/ChipFilterExample.tsx +0 -63
  695. package/src/components/ChipFilter/index.tsx +0 -1
  696. package/src/components/ChipInput/ChipInput.rtl.test.tsx +0 -16
  697. package/src/components/ChipInput/ChipInput.tsx +0 -47
  698. package/src/components/ChipInput/ChipInputExample.tsx +0 -49
  699. package/src/components/ChipInput/index.tsx +0 -1
  700. package/src/components/ChipSuggestion/ChipSuggestion.rtl.test.tsx +0 -19
  701. package/src/components/ChipSuggestion/ChipSuggestion.tsx +0 -22
  702. package/src/components/ChipSuggestion/ChipSuggestionExample.tsx +0 -26
  703. package/src/components/ChipSuggestion/index.tsx +0 -1
  704. package/src/components/ChipUtility/index.tsx +0 -1
  705. package/src/components/DateField/DateField.rtl.test.tsx +0 -24
  706. package/src/components/DateField/DateField.tsx +0 -58
  707. package/src/components/DateField/DateFieldExample.tsx +0 -13
  708. package/src/components/DateField/date-field.scss +0 -8
  709. package/src/components/DateField/index.tsx +0 -1
  710. package/src/components/DateInput/DateInput.rtl.test.tsx +0 -17
  711. package/src/components/DateInput/DateInput.tsx +0 -197
  712. package/src/components/DateInput/DateInputExample.tsx +0 -17
  713. package/src/components/DateInput/index.tsx +0 -1
  714. package/src/components/FormField/form-field.scss +0 -19
  715. package/src/components/ListItemMenu/ListItemMenu.tsx +0 -358
  716. package/src/components/ListItemMenu/index.tsx +0 -1
  717. package/src/components/NumberField/NumberField.rtl.test.tsx +0 -24
  718. package/src/components/NumberField/NumberField.tsx +0 -70
  719. package/src/components/NumberField/index.tsx +0 -1
  720. package/src/components/NumberInput/index.tsx +0 -1
  721. package/src/components/PasswordInput/PasswordInput.rtl.test.tsx +0 -15
  722. package/src/components/PasswordInput/PasswordInput.tsx +0 -115
  723. package/src/components/PasswordInput/index.tsx +0 -1
  724. package/src/components/PasswordInput/password-input.scss +0 -36
  725. package/src/components/PhoneNumberField/PhoneNumberField.rtl.test.tsx +0 -24
  726. package/src/components/PhoneNumberField/PhoneNumberField.tsx +0 -41
  727. package/src/components/PhoneNumberField/index.tsx +0 -1
  728. package/src/components/PhoneNumberInput/PhoneNumberInput.rtl.test.tsx +0 -17
  729. package/src/components/PhoneNumberInput/PhoneNumberInput.tsx +0 -186
  730. package/src/components/PhoneNumberInput/PhoneNumberInputExample.tsx +0 -8
  731. package/src/components/PhoneNumberInput/index.tsx +0 -1
  732. package/src/components/SelectField/SelectFieldExample.tsx +0 -16
  733. package/src/components/SnackbarProvider/SnackbarProvider.tsx +0 -160
  734. package/src/components/SnackbarProvider/SnackbarProviderExample.tsx +0 -127
  735. package/src/components/SnackbarProvider/index.tsx +0 -1
  736. package/src/components/SnackbarProvider/snackbar-provider-example.scss +0 -17
  737. package/src/components/SnackbarProvider/snackbar-provider.scss +0 -15
  738. package/src/components/TextField/TextField.tsx +0 -67
  739. package/src/components/TextField/TextFieldExample.tsx +0 -8
  740. package/src/components/TextField/index.tsx +0 -1
  741. package/src/components/TextInput/TextInputExample.tsx +0 -44
  742. package/src/components/TextInput/index.tsx +0 -1
  743. package/src/components/TextareaField/TextareaFieldExample.tsx +0 -13
  744. package/src/components/TimeInput/TimeInput.rtl.test.tsx +0 -15
  745. package/src/components/TimeInput/TimeInputExample.tsx +0 -6
  746. package/src/components/TimeInput/index.tsx +0 -1
  747. package/src/hooks/useSnackbarContext.ts +0 -18
  748. package/src/utils/snackbarContext.tsx +0 -43
  749. /package/dist/components/{NumberInput → InputNumber}/IncrementButton.d.ts +0 -0
  750. /package/dist/components/{NumberInput → InputNumber}/IncrementButton.js +0 -0
  751. /package/src/components/{NumberInput → InputNumber}/IncrementButton.tsx +0 -0
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Field, FieldDescription, FieldError, FieldLabel } from '../Field';
3
+ import { RadioGroup } from '../RadioGroup';
4
+ /**
5
+ * A field wrapper for the RadioGroup component.
6
+ *
7
+ * This component takes properties from the FormField and RadioGroup components.
8
+ *
9
+ * @name RadioGroupField
10
+ * @phase UXReview
11
+ *
12
+ * @generated
13
+ */
14
+ export function RadioGroupField({ label, helperText, labelTrailing, errorMessage, ...controlProps }) {
15
+ return (_jsxs(Field, { as: "fieldset", children: [_jsx(FieldLabel, { as: "legend", labelTrailing: labelTrailing, children: label }), _jsx(RadioGroup, { ...controlProps }), !errorMessage && helperText && _jsx(FieldDescription, { children: helperText }), errorMessage && _jsx(FieldError, { children: errorMessage })] }));
16
+ }
17
+ //# sourceMappingURL=RadioGroupField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RadioGroupField.js","sourceRoot":"","sources":["../../../src/components/RadioGroupField/RadioGroupField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErF,OAAO,EAAE,UAAU,EAAmB,MAAM,yBAAyB,CAAC;AAItE;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,EAC5B,KAAK,EACL,UAAU,EACV,aAAa,EACb,YAAY,EACZ,GAAG,YAAY,EACI;IACnB,OAAO,CACH,MAAC,KAAK,IAAC,EAAE,EAAC,UAAU,aAChB,KAAC,UAAU,IAAC,EAAE,EAAC,QAAQ,EAAC,aAAa,EAAE,aAAa,YAC/C,KAAK,GACG,EACb,KAAC,UAAU,OAAK,YAAY,GAAI,EAC/B,CAAC,YAAY,IAAI,UAAU,IAAI,KAAC,gBAAgB,cAAE,UAAU,GAAoB,EAChF,YAAY,IAAI,KAAC,UAAU,cAAE,YAAY,GAAc,IACpD,CACX,CAAC;AACN,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './RadioGroupField';
@@ -0,0 +1,2 @@
1
+ export * from './RadioGroupField';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/RadioGroupField/index.tsx"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
@@ -1,12 +1,15 @@
1
1
  import './search-bar.scss';
2
- import { ListItemMenuProps, MenuListItem } from '-/components/ListItemMenu';
3
- import { TextInputProps } from '-/components/TextInput';
4
- export type SearchOption = MenuListItem & {
5
- value: string;
6
- };
7
- export type SearchBarProps = Pick<ListItemMenuProps, 'scrollLimit'> & Pick<TextInputProps, 'aria-label' | 'disabled' | 'id' | 'inputRef' | 'name' | 'size'> & {
8
- /** The current value of the search bar. */
9
- value?: string;
2
+ import { InputProps } from '-/components/Input';
3
+ import { ListItemProps } from '-/components/ListItem';
4
+ import { FieldControlProps } from '-/types/common';
5
+ import { ScrollListItemsStyleProps } from '-/utils/scrollListItemsStyle';
6
+ /**
7
+ * An option in a SearchBar component.
8
+ *
9
+ * Essentially the props for a ListItem.
10
+ */
11
+ export type SearchBarOption = Pick<ListItemProps, 'label' | 'leading' | 'trailing'>;
12
+ export type SearchBarProps<O extends SearchBarOption = SearchBarOption> = FieldControlProps<string, O> & Pick<InputProps, 'inputRef' | 'size'> & ScrollListItemsStyleProps & {
10
13
  /**
11
14
  * The placeholder of the field.
12
15
  *
@@ -15,34 +18,26 @@ export type SearchBarProps = Pick<ListItemMenuProps, 'scrollLimit'> & Pick<TextI
15
18
  * @required
16
19
  */
17
20
  placeholder: string;
18
- /**
19
- * Handler for state updates.
20
- *
21
- * @type (value: String) => void
22
- * @required
23
- */
24
- onChange: (value: string) => void;
25
- onSelect: (item?: MenuListItem) => void;
26
21
  /**
27
22
  * Content to display in the menu.
28
23
  *
29
24
  * @example
30
25
  * [
31
- * { value: '1', label: 'Apple Pie' },
32
- * { value: '2', label: 'Banana Split' },
33
- * { value: '3', label: 'Cherry Tart' },
34
- * { value: '4', label: 'Dragonfruit Sorbet' },
35
- * { value: '5', label: 'Elderberry Jam' },
36
- * { value: '6', label: 'Fig Newton' },
37
- * { value: '7', label: 'Grape Soda' },
38
- * { value: '8', label: 'Honeydew Smoothie' },
39
- * { value: '9', label: 'Ice Cream Sandwich' },
40
- * { value: '10', label: 'Jackfruit Pudding' },
26
+ * { label: 'Apple Pie' },
27
+ * { label: 'Banana Split' },
28
+ * { label: 'Cherry Tart' },
29
+ * { label: 'Dragonfruit Sorbet' },
30
+ * { label: 'Elderberry Jam' },
31
+ * { label: 'Fig Newton' },
32
+ * { label: 'Grape Soda' },
33
+ * { label: 'Honeydew Smoothie' },
34
+ * { label: 'Ice Cream Sandwich' },
35
+ * { label: 'Jackfruit Pudding' },
41
36
  * ];
42
37
  *
43
- * @type Array<SearchOption>
38
+ * @type Array<SearchBarOption>
44
39
  */
45
- items?: SearchOption[];
40
+ items?: O[];
46
41
  /**
47
42
  * Message to display when no results are found
48
43
  *
@@ -57,31 +52,28 @@ export type SearchBarProps = Pick<ListItemMenuProps, 'scrollLimit'> & Pick<TextI
57
52
  * import { useState } from 'react';
58
53
  * import { SearchBar } from '@bspk/ui/SearchBar';
59
54
  *
60
- * export function Example() {
61
- * const [searchText, setSearchText] = useState<string>('');
62
- *
63
- * const handleItemSelect = (item) => console.log('Selected item:', item);
55
+ * function Example() {
56
+ * const [searchText, setSearchText] = useState('');
64
57
  *
65
58
  * return (
66
59
  * <SearchBar
67
60
  * aria-label="Example aria-label"
68
61
  * items={[
69
- * { value: '1', label: 'Apple Pie' },
70
- * { value: '2', label: 'Banana Split' },
71
- * { value: '3', label: 'Cherry Tart' },
72
- * { value: '4', label: 'Dragonfruit Sorbet' },
73
- * { value: '5', label: 'Elderberry Jam' },
74
- * { value: '6', label: 'Fig Newton' },
75
- * { value: '7', label: 'Grape Soda' },
76
- * { value: '8', label: 'Honeydew Smoothie' },
77
- * { value: '9', label: 'Ice Cream Sandwich' },
78
- * { value: '10', label: 'Jackfruit Pudding' },
62
+ * { label: 'Apple Pie' },
63
+ * { label: 'Banana Split' },
64
+ * { label: 'Cherry Tart' },
65
+ * { label: 'Dragonfruit Sorbet' },
66
+ * { label: 'Elderberry Jam' },
67
+ * { label: 'Fig Newton' },
68
+ * { label: 'Grape Soda' },
69
+ * { label: 'Honeydew Smoothie' },
70
+ * { label: 'Ice Cream Sandwich' },
71
+ * { label: 'Jackfruit Pudding' },
79
72
  * ]}
80
- * name="Example name"
73
+ * name="example-name"
81
74
  * placeholder="Search"
82
75
  * value={searchText}
83
76
  * onChange={setSearchText}
84
- * onSelect={handleItemSelect}
85
77
  * />
86
78
  * );
87
79
  * }
@@ -89,5 +81,5 @@ export type SearchBarProps = Pick<ListItemMenuProps, 'scrollLimit'> & Pick<TextI
89
81
  * @name SearchBar
90
82
  * @phase UXReview
91
83
  */
92
- export declare function SearchBar({ items: itemsProp, noResultsMessage, placeholder, 'aria-label': ariaLabel, value: idProp, inputRef, name, size, onSelect, value, onChange, disabled, scrollLimit, }: SearchBarProps): import("react/jsx-runtime").JSX.Element;
84
+ export declare function SearchBar<O extends SearchBarOption>({ items: itemsProp, noResultsMessage, placeholder, id: idProp, inputRef, name, size, value, onChange, disabled, scrollLimit, }: SearchBarProps<O>): import("react/jsx-runtime").JSX.Element;
93
85
  /** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */
@@ -1,12 +1,19 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import './search-bar.css.js';
3
3
  import { SvgSearch } from '@bspk/icons/Search';
4
- import { useEffect, useRef, useState } from 'react';
5
- import { ListItemMenu } from '../ListItemMenu';
6
- import { TextInput } from '../TextInput';
4
+ import { useEffect, useMemo, useState } from 'react';
5
+ import { Input } from '../Input';
6
+ import { ListItem } from '../ListItem';
7
+ import { Menu } from '../Menu';
7
8
  import { Txt } from '../Txt';
9
+ import { useArrowNavigation } from '../../hooks/useArrowNavigation';
10
+ import { useFloating } from '../../hooks/useFloating';
8
11
  import { useId } from '../../hooks/useId';
12
+ import { useOutsideClick } from '../../hooks/useOutsideClick';
9
13
  import { useUIContext } from '../../hooks/useUIContext';
14
+ import { getElementById } from '../../utils/dom';
15
+ import { handleKeyDown } from '../../utils/handleKeyDown';
16
+ import { scrollListItemsStyle } from '../../utils/scrollListItemsStyle';
10
17
  import { useIds } from '../../utils/useIds';
11
18
  /**
12
19
  * An input field that allows customers to input search queries and retrieve results.
@@ -15,31 +22,28 @@ import { useIds } from '../../utils/useIds';
15
22
  * import { useState } from 'react';
16
23
  * import { SearchBar } from '@bspk/ui/SearchBar';
17
24
  *
18
- * export function Example() {
19
- * const [searchText, setSearchText] = useState<string>('');
20
- *
21
- * const handleItemSelect = (item) => console.log('Selected item:', item);
25
+ * function Example() {
26
+ * const [searchText, setSearchText] = useState('');
22
27
  *
23
28
  * return (
24
29
  * <SearchBar
25
30
  * aria-label="Example aria-label"
26
31
  * items={[
27
- * { value: '1', label: 'Apple Pie' },
28
- * { value: '2', label: 'Banana Split' },
29
- * { value: '3', label: 'Cherry Tart' },
30
- * { value: '4', label: 'Dragonfruit Sorbet' },
31
- * { value: '5', label: 'Elderberry Jam' },
32
- * { value: '6', label: 'Fig Newton' },
33
- * { value: '7', label: 'Grape Soda' },
34
- * { value: '8', label: 'Honeydew Smoothie' },
35
- * { value: '9', label: 'Ice Cream Sandwich' },
36
- * { value: '10', label: 'Jackfruit Pudding' },
32
+ * { label: 'Apple Pie' },
33
+ * { label: 'Banana Split' },
34
+ * { label: 'Cherry Tart' },
35
+ * { label: 'Dragonfruit Sorbet' },
36
+ * { label: 'Elderberry Jam' },
37
+ * { label: 'Fig Newton' },
38
+ * { label: 'Grape Soda' },
39
+ * { label: 'Honeydew Smoothie' },
40
+ * { label: 'Ice Cream Sandwich' },
41
+ * { label: 'Jackfruit Pudding' },
37
42
  * ]}
38
- * name="Example name"
43
+ * name="example-name"
39
44
  * placeholder="Search"
40
45
  * value={searchText}
41
46
  * onChange={setSearchText}
42
- * onSelect={handleItemSelect}
43
47
  * />
44
48
  * );
45
49
  * }
@@ -47,50 +51,97 @@ import { useIds } from '../../utils/useIds';
47
51
  * @name SearchBar
48
52
  * @phase UXReview
49
53
  */
50
- export function SearchBar({ items: itemsProp, noResultsMessage, placeholder = 'Search', 'aria-label': ariaLabel, value: idProp, inputRef, name, size = 'medium', onSelect, value, onChange, disabled = false, scrollLimit, }) {
54
+ export function SearchBar({ items: itemsProp, noResultsMessage, placeholder = 'Search', id: idProp, inputRef, name, size = 'medium', value, onChange, disabled = false, scrollLimit, }) {
51
55
  const id = useId(idProp);
56
+ const menuId = `${id}-menu`;
52
57
  const items = useIds(`search-bar-${id}`, itemsProp || []);
53
- const inputElementRef = useRef(null);
58
+ const [hasFocus, setHasFocus] = useState(false);
59
+ const filteredItems = useMemo(() => {
60
+ const valueStr = value?.toString().trim().toLowerCase() || '';
61
+ return items.filter((item) => !valueStr || item.label.toLowerCase().includes(valueStr));
62
+ }, [items, value]);
54
63
  const { sendAriaLiveMessage } = useUIContext();
55
64
  useEffect(() => {
56
65
  if (!items.length)
57
66
  sendAriaLiveMessage('No results found', 'assertive');
58
67
  }, [items.length, sendAriaLiveMessage, value]);
59
- const [textValue, setTextValue] = useState(value || '');
68
+ const { activeElementId, setActiveElementId, arrowKeyCallbacks } = useArrowNavigation({
69
+ ids: filteredItems.map((i) => i.id),
70
+ });
71
+ const closeMenu = () => setActiveElementId(null);
72
+ const open = Boolean(activeElementId);
73
+ const { elements, floatingStyles } = useFloating({
74
+ hide: !open,
75
+ offsetOptions: 4,
76
+ refWidth: true,
77
+ });
78
+ useOutsideClick({
79
+ elements: [elements.floating, elements.reference],
80
+ callback: () => {
81
+ setHasFocus(false);
82
+ closeMenu();
83
+ },
84
+ disabled: !open,
85
+ handleTabs: true,
86
+ });
87
+ const spaceEnter = () => {
88
+ if (!open) {
89
+ elements.reference?.click();
90
+ return;
91
+ }
92
+ if (activeElementId)
93
+ getElementById(activeElementId)?.click();
94
+ };
60
95
  useEffect(() => {
61
- setTextValue(items.find((item) => item.value === value)?.label || '');
62
- }, [items, value]);
63
- return (_jsx(_Fragment, { children: _jsx("div", { "data-bspk": "search-bar", children: _jsx(ListItemMenu, { arrowKeyNavigationCallback: (params) => {
64
- // maintain default behavior for arrow keys left/right
65
- return params.key !== 'ArrowLeft' && params.key !== 'ArrowRight';
66
- }, disabled: disabled, itemOnClick: ({ currentId, setShow }) => {
67
- const item = items.find((i) => i.id === currentId);
68
- onSelect(item);
69
- onChange(item.value);
70
- setTextValue(item.label);
71
- setShow(false);
72
- }, items: items.map((item) => {
73
- return {
74
- ...item,
75
- 'aria-selected': item.value === value,
76
- };
77
- }), label: "Search bar", leading: !!value?.length &&
78
- !items?.length && (_jsxs("div", { "data-bspk": "no-items-found", children: [_jsx(Txt, { as: "div", variant: "heading-h5", children: "No results found" }), noResultsMessage && (_jsx(Txt, { as: "div", variant: "body-base", children: noResultsMessage }))] })), onClose: () => {
79
- setTimeout(() => {
80
- if (!inputElementRef.current)
81
- return;
82
- inputElementRef.current.focus();
83
- inputElementRef.current.setSelectionRange(0, inputElementRef.current.value.length);
84
- }, 100);
85
- }, owner: "search-bar", role: "listbox", scrollLimit: scrollLimit, children: (toggleProps, { setRef, toggleMenu }) => (_jsx(TextInput, { "aria-label": (items.length === 0 ? 'No results found' : '') + ariaLabel, autoComplete: "off", containerRef: setRef, disabled: disabled, id: id, inputProps: { ...toggleProps }, inputRef: (node) => {
96
+ if (!hasFocus) {
97
+ setActiveElementId(null);
98
+ return;
99
+ }
100
+ if (activeElementId)
101
+ return;
102
+ // If we have focus but no active element, set the first item as active (if there is one)
103
+ if (filteredItems.length) {
104
+ setActiveElementId(value?.trim().length ? filteredItems[0].id : null);
105
+ }
106
+ }, [hasFocus, filteredItems, activeElementId, setActiveElementId, value]);
107
+ return (_jsxs(_Fragment, { children: [_jsx("div", { "data-bspk": "search-bar", children: _jsx(Input, { autoComplete: "off", containerRef: elements.setReference, disabled: disabled, id: id, inputProps: {
108
+ 'aria-controls': open ? menuId : undefined,
109
+ 'aria-expanded': open,
110
+ 'aria-haspopup': 'listbox',
111
+ 'aria-activedescendant': activeElementId || undefined,
112
+ 'aria-autocomplete': 'list',
113
+ role: 'combobox',
114
+ spellCheck: 'false',
115
+ }, inputRef: (node) => {
86
116
  if (!node)
87
117
  return;
88
118
  inputRef?.(node);
89
- inputElementRef.current = node;
90
- }, leading: _jsx(SvgSearch, {}), name: name, onChange: (str) => {
91
- setTextValue(str);
92
- if (str.length)
93
- toggleMenu(true);
94
- }, owner: "search-bar", placeholder: placeholder, size: size, value: textValue })) }) }) }));
119
+ }, leading: _jsx(SvgSearch, {}), name: name, onChange: (str) => onChange(str), onFocus: () => setHasFocus(true), onKeyDown: handleKeyDown({
120
+ ...arrowKeyCallbacks,
121
+ ArrowDown: (event) => {
122
+ if (!open)
123
+ spaceEnter();
124
+ arrowKeyCallbacks.ArrowDown?.(event);
125
+ },
126
+ Space: spaceEnter,
127
+ Enter: spaceEnter,
128
+ 'Ctrl+Option+Space': spaceEnter,
129
+ }, { preventDefault: true, stopPropagation: true }), owner: "search-bar", placeholder: placeholder, size: size, value: value }) }), _jsxs(Menu, { "aria-autocomplete": undefined, as: "div", id: menuId, innerRef: elements.setFloating, label: "Search results", onClickCapture: () => {
130
+ // Prevent the menu from closing when clicking inside it
131
+ // maintain focus on the select control
132
+ elements.reference?.focus();
133
+ }, onFocus: () => {
134
+ elements.reference?.focus();
135
+ }, owner: "select", role: "listbox", style: {
136
+ ...(open ? scrollListItemsStyle(scrollLimit, items.length) : {}),
137
+ ...floatingStyles,
138
+ }, tabIndex: -1, children: [!!value?.length && !items?.length && (_jsxs("div", { "data-bspk": "no-items-found", children: [_jsx(Txt, { as: "div", variant: "heading-h5", children: "No results found" }), noResultsMessage && (_jsx(Txt, { as: "div", variant: "body-base", children: noResultsMessage }))] })), filteredItems.map((item) => {
139
+ const isActive = activeElementId === item.id;
140
+ const isSelected = value == item.label;
141
+ return (_jsx(ListItem, { ...item, active: isActive || undefined, "aria-label": undefined, "aria-selected": isSelected, as: "li", onClick: () => {
142
+ onChange(item.label, item);
143
+ closeMenu();
144
+ }, owner: "select", role: "option", tabIndex: -1, value: undefined }, item.id));
145
+ })] })] }));
95
146
  }
96
147
  //# sourceMappingURL=SearchBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SearchBar.js","sourceRoot":"","sources":["../../../src/components/SearchBar/SearchBar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchBar.js","sourceRoot":"","sources":["../../../src/components/SearchBar/SearchBar.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { randomString } from '../../utils/random';
2
3
  export const SearchBarExample = {
3
4
  render: ({ props, Component }) => {
4
- return _jsx(Component, { ...props });
5
+ return _jsx(Component, { ...props, id: `search-bar-${randomString(8)}` });
5
6
  },
6
7
  };
7
8
  //# sourceMappingURL=SearchBarExample.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SearchBarExample.js","sourceRoot":"","sources":["../../../src/components/SearchBar/SearchBarExample.tsx"],"names":[],"mappings":";AAGA,MAAM,CAAC,MAAM,gBAAgB,GAAqC;IAC9D,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE;QAC7B,OAAO,KAAC,SAAS,OAAK,KAAK,GAAI,CAAC;IACpC,CAAC;CACJ,CAAC"}
1
+ {"version":3,"file":"SearchBarExample.js","sourceRoot":"","sources":["../../../src/components/SearchBar/SearchBarExample.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,MAAM,gBAAgB,GAAqC;IAC9D,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE;QAC7B,OAAO,KAAC,SAAS,OAAK,KAAK,EAAE,EAAE,EAAE,cAAc,YAAY,CAAC,CAAC,CAAC,EAAE,GAAI,CAAC;IACzE,CAAC;CACJ,CAAC"}
@@ -10,7 +10,7 @@ export type SegmentedControlProps = TabListProps<SegmentedControlOption>;
10
10
  * import { useState } from 'react';
11
11
  * import { SegmentedControl } from '@bspk/ui/SegmentedControl';
12
12
  *
13
- * export function Example() {
13
+ * function Example() {
14
14
  * const [selectedOption, setSelectedOption] = useState<string>();
15
15
  *
16
16
  * return (
@@ -8,7 +8,7 @@ import { TabList } from '../TabList';
8
8
  * import { useState } from 'react';
9
9
  * import { SegmentedControl } from '@bspk/ui/SegmentedControl';
10
10
  *
11
- * export function Example() {
11
+ * function Example() {
12
12
  * const [selectedOption, setSelectedOption] = useState<string>();
13
13
  *
14
14
  * return (
@@ -1,20 +1,20 @@
1
1
  import './select.scss';
2
2
  import { KeyboardEvent, MouseEvent } from 'react';
3
3
  import { ListItemProps } from '-/components/ListItem';
4
- import { CommonProps, ElementProps, FormFieldControlProps } from '-/types/common';
4
+ import { CommonProps, ElementProps, FieldControlProps } from '-/types/common';
5
5
  import { ScrollListItemsStyleProps } from '-/utils/scrollListItemsStyle';
6
6
  /**
7
7
  * An option in a Select component.
8
8
  *
9
- * Essentially the props of ListItemProps. Except for `value` which is required.
9
+ * Essentially the props of ListItemProps.
10
10
  */
11
- export type SelectOption = Omit<ListItemProps, 'id' | 'onClick' | 'subText' | 'value'> & {
11
+ export type SelectOption = CommonProps<'disabled'> & Omit<ListItemProps, 'id' | 'onClick' | 'subText' | 'value'> & {
12
12
  value: string;
13
13
  };
14
14
  export type SelectItem = SelectOption & {
15
15
  id: string;
16
16
  };
17
- export type SelectProps = CommonProps<'disabled' | 'id' | 'invalid' | 'name' | 'readOnly' | 'size'> & FormFieldControlProps & ScrollListItemsStyleProps & {
17
+ export type SelectProps = CommonProps<'size'> & FieldControlProps<string, KeyboardEvent | MouseEvent> & ScrollListItemsStyleProps & {
18
18
  /**
19
19
  * Array of options to display in the select
20
20
  *
@@ -36,23 +36,6 @@ export type SelectProps = CommonProps<'disabled' | 'id' | 'invalid' | 'name' | '
36
36
  * @required
37
37
  */
38
38
  options: SelectOption[];
39
- /** Selected value */
40
- value: string;
41
- /**
42
- * The function to call when the selected values change.
43
- *
44
- * @example
45
- * (value, event) => setState({ value });
46
- *
47
- * @required
48
- */
49
- onChange: (value: string, event?: KeyboardEvent | MouseEvent) => void;
50
- /**
51
- * The label for the select element, used for accessibility, and the dropdown modal header.
52
- *
53
- * @required
54
- */
55
- label: string;
56
39
  /**
57
40
  * Placeholder for the select
58
41
  *
@@ -63,29 +46,30 @@ export type SelectProps = CommonProps<'disabled' | 'id' | 'invalid' | 'name' | '
63
46
  /**
64
47
  * A field element that allows users to select one option from a list of available choices.
65
48
  *
49
+ * For a more complete example with field usage, see the SelectField component.
50
+ *
66
51
  * @example
67
52
  * import { Select } from '@bspk/ui/Select';
68
53
  *
69
- * export function Example() {
54
+ * const OPTIONS = [
55
+ * { id: '1', label: 'Option 1' },
56
+ * { id: '2', label: 'Option 2' },
57
+ * { id: '3', label: 'Option 3' },
58
+ * { id: '4', label: 'Option 4' },
59
+ * { id: '5', label: 'Option 5' },
60
+ * { id: '6', label: 'Option 6' },
61
+ * ];
62
+ *
63
+ * function ExampleStandalone() {
70
64
  * const [selected, setSelected] = React.useState<string[]>([]);
65
+ *
71
66
  * return (
72
67
  * <Select
73
- * label="Select an option"
68
+ * aria-label="Select an option"
74
69
  * itemCount={5}
75
70
  * name="example-select"
76
71
  * onChange={setSelected}
77
- * options={[
78
- * { id: '1', label: 'Option 1' },
79
- * { id: '2', label: 'Option 2' },
80
- * { id: '3', label: 'Option 3' },
81
- * { id: '4', label: 'Option 4' },
82
- * { id: '5', label: 'Option 5' },
83
- * { id: '6', label: 'Option 6' },
84
- * { id: '7', label: 'Option 7' },
85
- * { id: '8', label: 'Option 8' },
86
- * { id: '9', label: 'Option 9' },
87
- * { id: '10', label: 'Option 10' },
88
- * ]}
72
+ * options={OPTIONS}
89
73
  * placeholder="Select an option"
90
74
  * size="medium"
91
75
  * value={selected}
@@ -93,8 +77,29 @@ export type SelectProps = CommonProps<'disabled' | 'id' | 'invalid' | 'name' | '
93
77
  * );
94
78
  * }
95
79
  *
80
+ * function ExampleWithField() {
81
+ * const [selected, setSelected] = React.useState<string[]>([]);
82
+ * return (
83
+ * <Field>
84
+ * <FieldLabel>Select an option</FieldLabel>
85
+ * <Select
86
+ * itemCount={5}
87
+ * name="example-select"
88
+ * onChange={setSelected}
89
+ * options={OPTIONS}
90
+ * placeholder="Select an option"
91
+ * size="medium"
92
+ * value={selected}
93
+ * />
94
+ * <FieldDescription>
95
+ * The select allows you to choose one option from a list of options.
96
+ * </FieldDescription>
97
+ * </Field>
98
+ * );
99
+ * }
100
+ *
96
101
  * @name Select
97
102
  * @phase UXReview
98
103
  */
99
- export declare function Select({ options: optionsProp, value, onChange, label, placeholder, size, disabled, id: idProp, invalid, readOnly, name, 'aria-describedby': ariaDescribedBy, 'aria-errormessage': ariaErrorMessage, 'aria-labelledby': ariaLabelledBy, scrollLimit, ...props }: ElementProps<SelectProps, 'button'>): import("react/jsx-runtime").JSX.Element;
104
+ export declare function Select({ options: optionsProp, value, onChange, placeholder, size, disabled, id: idProp, invalid: invalidProp, readOnly, name, scrollLimit, required, 'aria-label': ariaLabel, ...elementProps }: ElementProps<SelectProps, 'button'>): import("react/jsx-runtime").JSX.Element;
100
105
  /** Copyright 2025 Anywhere Real Estate - CC BY 4.0 */