@pega/cosmos-react-core 2.0.0-dev.9.4 → 2.0.0-rc.1

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 (736) hide show
  1. package/README.md +3 -3
  2. package/lib/components/Actions/Actions.js +1 -1
  3. package/lib/components/Actions/Actions.js.map +1 -1
  4. package/lib/components/AppShell/AppHeader.d.ts.map +1 -1
  5. package/lib/components/AppShell/AppHeader.js +1 -6
  6. package/lib/components/AppShell/AppHeader.js.map +1 -1
  7. package/lib/components/AppShell/AppShell.d.ts.map +1 -1
  8. package/lib/components/AppShell/AppShell.js +84 -61
  9. package/lib/components/AppShell/AppShell.js.map +1 -1
  10. package/lib/components/AppShell/AppShell.styles.d.ts +19 -16
  11. package/lib/components/AppShell/AppShell.styles.d.ts.map +1 -1
  12. package/lib/components/AppShell/AppShell.styles.js +227 -173
  13. package/lib/components/AppShell/AppShell.styles.js.map +1 -1
  14. package/lib/components/AppShell/AppShell.types.d.ts +5 -5
  15. package/lib/components/AppShell/AppShell.types.d.ts.map +1 -1
  16. package/lib/components/AppShell/AppShell.types.js.map +1 -1
  17. package/lib/components/AppShell/AppShellContext.d.ts +2 -0
  18. package/lib/components/AppShell/AppShellContext.d.ts.map +1 -1
  19. package/lib/components/AppShell/AppShellContext.js +1 -0
  20. package/lib/components/AppShell/AppShellContext.js.map +1 -1
  21. package/lib/components/AppShell/AppShellList.d.ts +4 -3
  22. package/lib/components/AppShell/AppShellList.d.ts.map +1 -1
  23. package/lib/components/AppShell/AppShellList.js +24 -19
  24. package/lib/components/AppShell/AppShellList.js.map +1 -1
  25. package/lib/components/AppShell/Drawer.d.ts.map +1 -1
  26. package/lib/components/AppShell/Drawer.js +7 -8
  27. package/lib/components/AppShell/Drawer.js.map +1 -1
  28. package/lib/components/AppShell/Operator.js +3 -5
  29. package/lib/components/AppShell/Operator.js.map +1 -1
  30. package/lib/components/AppShell/SkipNavigation.d.ts.map +1 -1
  31. package/lib/components/AppShell/SkipNavigation.js +30 -39
  32. package/lib/components/AppShell/SkipNavigation.js.map +1 -1
  33. package/lib/components/Avatar/Avatar.d.ts.map +1 -1
  34. package/lib/components/Avatar/Avatar.js +5 -4
  35. package/lib/components/Avatar/Avatar.js.map +1 -1
  36. package/lib/components/Backdrop/Backdrop.d.ts +1 -1
  37. package/lib/components/Backdrop/Backdrop.d.ts.map +1 -1
  38. package/lib/components/Backdrop/Backdrop.js +7 -6
  39. package/lib/components/Backdrop/Backdrop.js.map +1 -1
  40. package/lib/components/Badges/Alert.js +1 -1
  41. package/lib/components/Badges/Alert.js.map +1 -1
  42. package/lib/components/Badges/Count.js +1 -1
  43. package/lib/components/Badges/Count.js.map +1 -1
  44. package/lib/components/Badges/Selection.d.ts.map +1 -1
  45. package/lib/components/Badges/Selection.js +10 -9
  46. package/lib/components/Badges/Selection.js.map +1 -1
  47. package/lib/components/Badges/Status.d.ts +2 -2
  48. package/lib/components/Badges/Status.d.ts.map +1 -1
  49. package/lib/components/Badges/Status.js +1 -1
  50. package/lib/components/Badges/Status.js.map +1 -1
  51. package/lib/components/Badges/Tag.js +1 -1
  52. package/lib/components/Badges/Tag.js.map +1 -1
  53. package/lib/components/Banner/Banner.d.ts.map +1 -1
  54. package/lib/components/Banner/Banner.js +6 -8
  55. package/lib/components/Banner/Banner.js.map +1 -1
  56. package/lib/components/Boolean/BooleanDisplay.js +1 -2
  57. package/lib/components/Boolean/BooleanDisplay.js.map +1 -1
  58. package/lib/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  59. package/lib/components/Breadcrumbs/Breadcrumbs.js +13 -11
  60. package/lib/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
  61. package/lib/components/Button/BareButton.d.ts.map +1 -1
  62. package/lib/components/Button/BareButton.js +21 -2
  63. package/lib/components/Button/BareButton.js.map +1 -1
  64. package/lib/components/Button/BareRoleButton.d.ts +12 -0
  65. package/lib/components/Button/BareRoleButton.d.ts.map +1 -0
  66. package/lib/components/Button/BareRoleButton.js +20 -0
  67. package/lib/components/Button/BareRoleButton.js.map +1 -0
  68. package/lib/components/Button/Button.d.ts +5 -0
  69. package/lib/components/Button/Button.d.ts.map +1 -1
  70. package/lib/components/Button/Button.js +34 -10
  71. package/lib/components/Button/Button.js.map +1 -1
  72. package/lib/components/Card/Card.d.ts.map +1 -1
  73. package/lib/components/Card/Card.js +3 -2
  74. package/lib/components/Card/Card.js.map +1 -1
  75. package/lib/components/Card/CardContent.d.ts.map +1 -1
  76. package/lib/components/Card/CardContent.js +5 -4
  77. package/lib/components/Card/CardContent.js.map +1 -1
  78. package/lib/components/Card/CardFooter.d.ts.map +1 -1
  79. package/lib/components/Card/CardFooter.js +5 -4
  80. package/lib/components/Card/CardFooter.js.map +1 -1
  81. package/lib/components/Card/CardHeader.d.ts +3 -1
  82. package/lib/components/Card/CardHeader.d.ts.map +1 -1
  83. package/lib/components/Card/CardHeader.js +9 -7
  84. package/lib/components/Card/CardHeader.js.map +1 -1
  85. package/lib/components/Card/CardMedia.js +1 -1
  86. package/lib/components/Card/CardMedia.js.map +1 -1
  87. package/lib/components/Card/CollapsibleCard.d.ts.map +1 -1
  88. package/lib/components/Card/CollapsibleCard.js +5 -7
  89. package/lib/components/Card/CollapsibleCard.js.map +1 -1
  90. package/lib/components/Card/SelectableCard.js +1 -1
  91. package/lib/components/Card/SelectableCard.js.map +1 -1
  92. package/lib/components/Checkbox/Checkbox.js +1 -1
  93. package/lib/components/Checkbox/Checkbox.js.map +1 -1
  94. package/lib/components/ColorPicker/ColorPicker.js +8 -11
  95. package/lib/components/ColorPicker/ColorPicker.js.map +1 -1
  96. package/lib/components/ComboBox/ComboBox.d.ts +1 -1
  97. package/lib/components/ComboBox/ComboBox.d.ts.map +1 -1
  98. package/lib/components/ComboBox/ComboBox.js +30 -33
  99. package/lib/components/ComboBox/ComboBox.js.map +1 -1
  100. package/lib/components/ComboBox/ComboBoxInput.js +4 -4
  101. package/lib/components/ComboBox/ComboBoxInput.js.map +1 -1
  102. package/lib/components/ComboBox/MultiSelectInput/MultiSelectInput.d.ts.map +1 -1
  103. package/lib/components/ComboBox/MultiSelectInput/MultiSelectInput.js +23 -29
  104. package/lib/components/ComboBox/MultiSelectInput/MultiSelectInput.js.map +1 -1
  105. package/lib/components/ComboBox/SingleSelectInput/SingleSelectInput.d.ts.map +1 -1
  106. package/lib/components/ComboBox/SingleSelectInput/SingleSelectInput.js +16 -12
  107. package/lib/components/ComboBox/SingleSelectInput/SingleSelectInput.js.map +1 -1
  108. package/lib/components/Configuration/Configuration.js +11 -13
  109. package/lib/components/Configuration/Configuration.js.map +1 -1
  110. package/lib/components/Currency/CurrencyDisplay.d.ts +4 -0
  111. package/lib/components/Currency/CurrencyDisplay.d.ts.map +1 -1
  112. package/lib/components/Currency/CurrencyDisplay.js +11 -7
  113. package/lib/components/Currency/CurrencyDisplay.js.map +1 -1
  114. package/lib/components/Currency/CurrencyInput.d.ts.map +1 -1
  115. package/lib/components/Currency/CurrencyInput.js +16 -16
  116. package/lib/components/Currency/CurrencyInput.js.map +1 -1
  117. package/lib/components/Currency/CurrencyInput.types.d.ts +4 -0
  118. package/lib/components/Currency/CurrencyInput.types.d.ts.map +1 -1
  119. package/lib/components/Currency/CurrencyInput.types.js.map +1 -1
  120. package/lib/components/Currency/utils.d.ts +12 -1
  121. package/lib/components/Currency/utils.d.ts.map +1 -1
  122. package/lib/components/Currency/utils.js +30 -2
  123. package/lib/components/Currency/utils.js.map +1 -1
  124. package/lib/components/DateTime/DateTimeDisplay.d.ts +1 -1
  125. package/lib/components/DateTime/DateTimeDisplay.d.ts.map +1 -1
  126. package/lib/components/DateTime/DateTimeDisplay.js +10 -2
  127. package/lib/components/DateTime/DateTimeDisplay.js.map +1 -1
  128. package/lib/components/DateTime/DurationDisplay.d.ts.map +1 -1
  129. package/lib/components/DateTime/DurationDisplay.js +11 -6
  130. package/lib/components/DateTime/DurationDisplay.js.map +1 -1
  131. package/lib/components/DateTime/Input/DateInput.d.ts.map +1 -1
  132. package/lib/components/DateTime/Input/DateInput.js +26 -28
  133. package/lib/components/DateTime/Input/DateInput.js.map +1 -1
  134. package/lib/components/DateTime/Input/DateRangeInput.d.ts.map +1 -1
  135. package/lib/components/DateTime/Input/DateRangeInput.js +10 -16
  136. package/lib/components/DateTime/Input/DateRangeInput.js.map +1 -1
  137. package/lib/components/DateTime/Input/DateTime.styles.d.ts.map +1 -1
  138. package/lib/components/DateTime/Input/DateTime.styles.js +14 -3
  139. package/lib/components/DateTime/Input/DateTime.styles.js.map +1 -1
  140. package/lib/components/DateTime/Input/DateTimeInput.d.ts.map +1 -1
  141. package/lib/components/DateTime/Input/DateTimeInput.js +37 -44
  142. package/lib/components/DateTime/Input/DateTimeInput.js.map +1 -1
  143. package/lib/components/DateTime/Input/DayOfWeekInput.d.ts.map +1 -1
  144. package/lib/components/DateTime/Input/DayOfWeekInput.js +7 -5
  145. package/lib/components/DateTime/Input/DayOfWeekInput.js.map +1 -1
  146. package/lib/components/DateTime/Input/Duration/DurationInput.d.ts.map +1 -1
  147. package/lib/components/DateTime/Input/Duration/DurationInput.js +3 -3
  148. package/lib/components/DateTime/Input/Duration/DurationInput.js.map +1 -1
  149. package/lib/components/DateTime/Input/Duration/NumberUnit.js +4 -5
  150. package/lib/components/DateTime/Input/Duration/NumberUnit.js.map +1 -1
  151. package/lib/components/DateTime/Input/Duration/Time.d.ts.map +1 -1
  152. package/lib/components/DateTime/Input/Duration/Time.js +12 -15
  153. package/lib/components/DateTime/Input/Duration/Time.js.map +1 -1
  154. package/lib/components/DateTime/Input/MonthInput.js +12 -16
  155. package/lib/components/DateTime/Input/MonthInput.js.map +1 -1
  156. package/lib/components/DateTime/Input/PartInput.js +3 -4
  157. package/lib/components/DateTime/Input/PartInput.js.map +1 -1
  158. package/lib/components/DateTime/Input/QuarterInput.d.ts +9 -0
  159. package/lib/components/DateTime/Input/QuarterInput.d.ts.map +1 -0
  160. package/lib/components/DateTime/Input/QuarterInput.js +102 -0
  161. package/lib/components/DateTime/Input/QuarterInput.js.map +1 -0
  162. package/lib/components/DateTime/Input/TimeInput.d.ts.map +1 -1
  163. package/lib/components/DateTime/Input/TimeInput.js +26 -30
  164. package/lib/components/DateTime/Input/TimeInput.js.map +1 -1
  165. package/lib/components/DateTime/Input/WeekInput.d.ts.map +1 -1
  166. package/lib/components/DateTime/Input/WeekInput.js +23 -24
  167. package/lib/components/DateTime/Input/WeekInput.js.map +1 -1
  168. package/lib/components/DateTime/Input/useAutoFocusNextInput.d.ts.map +1 -1
  169. package/lib/components/DateTime/Input/useAutoFocusNextInput.js +8 -9
  170. package/lib/components/DateTime/Input/useAutoFocusNextInput.js.map +1 -1
  171. package/lib/components/DateTime/Input/usePickerButton.js +4 -4
  172. package/lib/components/DateTime/Input/usePickerButton.js.map +1 -1
  173. package/lib/components/DateTime/Input/utils.d.ts +7 -0
  174. package/lib/components/DateTime/Input/utils.d.ts.map +1 -1
  175. package/lib/components/DateTime/Input/utils.js +52 -10
  176. package/lib/components/DateTime/Input/utils.js.map +1 -1
  177. package/lib/components/DateTime/Picker/Calendar.d.ts.map +1 -1
  178. package/lib/components/DateTime/Picker/Calendar.js +32 -34
  179. package/lib/components/DateTime/Picker/Calendar.js.map +1 -1
  180. package/lib/components/DateTime/Picker/Calendar.styles.d.ts +2 -2
  181. package/lib/components/DateTime/Picker/Calendar.styles.d.ts.map +1 -1
  182. package/lib/components/DateTime/Picker/Calendar.styles.js +16 -7
  183. package/lib/components/DateTime/Picker/Calendar.styles.js.map +1 -1
  184. package/lib/components/DateTime/Picker/DatePicker.d.ts.map +1 -1
  185. package/lib/components/DateTime/Picker/DatePicker.js +13 -17
  186. package/lib/components/DateTime/Picker/DatePicker.js.map +1 -1
  187. package/lib/components/DateTime/Picker/DateRangePicker.d.ts.map +1 -1
  188. package/lib/components/DateTime/Picker/DateRangePicker.js +13 -17
  189. package/lib/components/DateTime/Picker/DateRangePicker.js.map +1 -1
  190. package/lib/components/DateTime/Picker/TimePicker.js +9 -10
  191. package/lib/components/DateTime/Picker/TimePicker.js.map +1 -1
  192. package/lib/components/DateTime/Picker/Weeks.js +9 -11
  193. package/lib/components/DateTime/Picker/Weeks.js.map +1 -1
  194. package/lib/components/DateTime/Picker/utils.d.ts +1 -0
  195. package/lib/components/DateTime/Picker/utils.d.ts.map +1 -1
  196. package/lib/components/DateTime/Picker/utils.js +3 -0
  197. package/lib/components/DateTime/Picker/utils.js.map +1 -1
  198. package/lib/components/DateTime/index.d.ts +2 -0
  199. package/lib/components/DateTime/index.d.ts.map +1 -1
  200. package/lib/components/DateTime/index.js +1 -0
  201. package/lib/components/DateTime/index.js.map +1 -1
  202. package/lib/components/Drawer/Drawer.js +6 -6
  203. package/lib/components/Drawer/Drawer.js.map +1 -1
  204. package/lib/components/Email/EmailDisplay.js +2 -2
  205. package/lib/components/Email/EmailDisplay.js.map +1 -1
  206. package/lib/components/EmojiPicker/EmojiDisplay.d.ts.map +1 -1
  207. package/lib/components/EmojiPicker/EmojiDisplay.js +1 -1
  208. package/lib/components/EmojiPicker/EmojiDisplay.js.map +1 -1
  209. package/lib/components/EmojiPicker/EmojiPicker.js +3 -4
  210. package/lib/components/EmojiPicker/EmojiPicker.js.map +1 -1
  211. package/lib/components/EmptyState/EmptyState.d.ts +14 -0
  212. package/lib/components/EmptyState/EmptyState.d.ts.map +1 -0
  213. package/lib/components/{NoItems/NoItems.js → EmptyState/EmptyState.js} +11 -8
  214. package/lib/components/EmptyState/EmptyState.js.map +1 -0
  215. package/lib/components/EmptyState/index.d.ts +4 -0
  216. package/lib/components/EmptyState/index.d.ts.map +1 -0
  217. package/lib/components/EmptyState/index.js +3 -0
  218. package/lib/components/EmptyState/index.js.map +1 -0
  219. package/lib/components/ErrorState/ErrorState.d.ts +16 -0
  220. package/lib/components/ErrorState/ErrorState.d.ts.map +1 -0
  221. package/lib/components/ErrorState/ErrorState.js +31 -0
  222. package/lib/components/ErrorState/ErrorState.js.map +1 -0
  223. package/lib/components/ErrorState/index.d.ts +4 -0
  224. package/lib/components/ErrorState/index.d.ts.map +1 -0
  225. package/lib/components/ErrorState/index.js +3 -0
  226. package/lib/components/ErrorState/index.js.map +1 -0
  227. package/lib/components/ExpandCollapse/ExpandCollapse.js +5 -5
  228. package/lib/components/ExpandCollapse/ExpandCollapse.js.map +1 -1
  229. package/lib/components/FieldGroup/FieldGroup.d.ts.map +1 -1
  230. package/lib/components/FieldGroup/FieldGroup.js +6 -7
  231. package/lib/components/FieldGroup/FieldGroup.js.map +1 -1
  232. package/lib/components/FieldGroup/FieldGroupList.d.ts.map +1 -1
  233. package/lib/components/FieldGroup/FieldGroupList.js +7 -6
  234. package/lib/components/FieldGroup/FieldGroupList.js.map +1 -1
  235. package/lib/components/FieldValueList/FieldValueList.js +5 -7
  236. package/lib/components/FieldValueList/FieldValueList.js.map +1 -1
  237. package/lib/components/File/FileDisplay.d.ts +4 -1
  238. package/lib/components/File/FileDisplay.d.ts.map +1 -1
  239. package/lib/components/File/FileDisplay.js +7 -7
  240. package/lib/components/File/FileDisplay.js.map +1 -1
  241. package/lib/components/File/FileInput.d.ts +1 -1
  242. package/lib/components/File/FileInput.d.ts.map +1 -1
  243. package/lib/components/File/FileInput.js +18 -19
  244. package/lib/components/File/FileInput.js.map +1 -1
  245. package/lib/components/File/FileItem.js +2 -3
  246. package/lib/components/File/FileItem.js.map +1 -1
  247. package/lib/components/File/FileUploadItem.d.ts +2 -0
  248. package/lib/components/File/FileUploadItem.d.ts.map +1 -1
  249. package/lib/components/File/FileUploadItem.js +43 -12
  250. package/lib/components/File/FileUploadItem.js.map +1 -1
  251. package/lib/components/File/FileVisual.d.ts +5 -7
  252. package/lib/components/File/FileVisual.d.ts.map +1 -1
  253. package/lib/components/File/FileVisual.js +51 -43
  254. package/lib/components/File/FileVisual.js.map +1 -1
  255. package/lib/components/File/utils.js +2 -3
  256. package/lib/components/File/utils.js.map +1 -1
  257. package/lib/components/Flex/Flex.d.ts +17 -7
  258. package/lib/components/Flex/Flex.d.ts.map +1 -1
  259. package/lib/components/Flex/Flex.js +21 -5
  260. package/lib/components/Flex/Flex.js.map +1 -1
  261. package/lib/components/Form/Form.d.ts +7 -1
  262. package/lib/components/Form/Form.d.ts.map +1 -1
  263. package/lib/components/Form/Form.js +5 -4
  264. package/lib/components/Form/Form.js.map +1 -1
  265. package/lib/components/FormControl/FormControl.d.ts +1 -1
  266. package/lib/components/FormControl/FormControl.d.ts.map +1 -1
  267. package/lib/components/FormControl/FormControl.js +1 -1
  268. package/lib/components/FormControl/FormControl.js.map +1 -1
  269. package/lib/components/FormField/FormField.d.ts +5 -7
  270. package/lib/components/FormField/FormField.d.ts.map +1 -1
  271. package/lib/components/FormField/FormField.js +9 -19
  272. package/lib/components/FormField/FormField.js.map +1 -1
  273. package/lib/components/Grid/Grid.d.ts +1 -1
  274. package/lib/components/Grid/Grid.d.ts.map +1 -1
  275. package/lib/components/Grid/Grid.js +13 -17
  276. package/lib/components/Grid/Grid.js.map +1 -1
  277. package/lib/components/Icon/Icon.js +3 -5
  278. package/lib/components/Icon/Icon.js.map +1 -1
  279. package/lib/components/Icon/iconNames.d.ts +1 -1
  280. package/lib/components/Icon/iconNames.d.ts.map +1 -1
  281. package/lib/components/Icon/iconNames.js +2 -0
  282. package/lib/components/Icon/iconNames.js.map +1 -1
  283. package/lib/components/Icon/icons/compass-solid.icon.js +1 -2
  284. package/lib/components/Icon/icons/compass-solid.icon.js.map +1 -1
  285. package/lib/components/Icon/icons/dataviz-table-with-bars.icon.js +1 -4
  286. package/lib/components/Icon/icons/dataviz-table-with-bars.icon.js.map +1 -1
  287. package/lib/components/Icon/icons/dataviz-table-with-cross.icon.js +1 -2
  288. package/lib/components/Icon/icons/dataviz-table-with-cross.icon.js.map +1 -1
  289. package/lib/components/Icon/icons/dataviz-waterfall.icon.js +1 -5
  290. package/lib/components/Icon/icons/dataviz-waterfall.icon.js.map +1 -1
  291. package/lib/components/Icon/icons/dock.icon.d.ts +4 -0
  292. package/lib/components/Icon/icons/dock.icon.d.ts.map +1 -0
  293. package/lib/components/Icon/icons/dock.icon.js +6 -0
  294. package/lib/components/Icon/icons/dock.icon.js.map +1 -0
  295. package/lib/components/Icon/icons/filetype-text.icon.js +1 -4
  296. package/lib/components/Icon/icons/filetype-text.icon.js.map +1 -1
  297. package/lib/components/Icon/icons/folder-dollar.icon.js +1 -2
  298. package/lib/components/Icon/icons/folder-dollar.icon.js.map +1 -1
  299. package/lib/components/Icon/icons/freeze-column.icon.js +1 -2
  300. package/lib/components/Icon/icons/freeze-column.icon.js.map +1 -1
  301. package/lib/components/Icon/icons/galaxy.icon.js +1 -3
  302. package/lib/components/Icon/icons/galaxy.icon.js.map +1 -1
  303. package/lib/components/Icon/icons/grad-solid.icon.js +1 -2
  304. package/lib/components/Icon/icons/grad-solid.icon.js.map +1 -1
  305. package/lib/components/Icon/icons/grad.icon.js +1 -5
  306. package/lib/components/Icon/icons/grad.icon.js.map +1 -1
  307. package/lib/components/Icon/icons/list-number.icon.js +1 -6
  308. package/lib/components/Icon/icons/list-number.icon.js.map +1 -1
  309. package/lib/components/Icon/icons/list.icon.js +1 -6
  310. package/lib/components/Icon/icons/list.icon.js.map +1 -1
  311. package/lib/components/Icon/icons/pin.icon.js +1 -2
  312. package/lib/components/Icon/icons/pin.icon.js.map +1 -1
  313. package/lib/components/Icon/icons/search-solid.icon.js +1 -2
  314. package/lib/components/Icon/icons/search-solid.icon.js.map +1 -1
  315. package/lib/components/Icon/icons/tracer.icon.js +1 -2
  316. package/lib/components/Icon/icons/tracer.icon.js.map +1 -1
  317. package/lib/components/Icon/icons/tribox-solid.icon.js +1 -3
  318. package/lib/components/Icon/icons/tribox-solid.icon.js.map +1 -1
  319. package/lib/components/Icon/icons/tribox.icon.js +1 -3
  320. package/lib/components/Icon/icons/tribox.icon.js.map +1 -1
  321. package/lib/components/Icon/icons/undock.icon.d.ts +4 -0
  322. package/lib/components/Icon/icons/undock.icon.d.ts.map +1 -0
  323. package/lib/components/Icon/icons/undock.icon.js +6 -0
  324. package/lib/components/Icon/icons/undock.icon.js.map +1 -0
  325. package/lib/components/Image/Image.js +1 -1
  326. package/lib/components/Image/Image.js.map +1 -1
  327. package/lib/components/Input/Input.js +13 -13
  328. package/lib/components/Input/Input.js.map +1 -1
  329. package/lib/components/Input/Input.styles.js +2 -2
  330. package/lib/components/Input/Input.styles.js.map +1 -1
  331. package/lib/components/Label/Label.js +1 -1
  332. package/lib/components/Label/Label.js.map +1 -1
  333. package/lib/components/Lightbox/Lightbox.d.ts +6 -0
  334. package/lib/components/Lightbox/Lightbox.d.ts.map +1 -0
  335. package/lib/components/Lightbox/Lightbox.js +129 -0
  336. package/lib/components/Lightbox/Lightbox.js.map +1 -0
  337. package/lib/components/Lightbox/Lightbox.styles.d.ts +11 -0
  338. package/lib/components/Lightbox/Lightbox.styles.d.ts.map +1 -0
  339. package/lib/components/Lightbox/Lightbox.styles.js +166 -0
  340. package/lib/components/Lightbox/Lightbox.styles.js.map +1 -0
  341. package/lib/components/Lightbox/Lightbox.types.d.ts +42 -0
  342. package/lib/components/Lightbox/Lightbox.types.d.ts.map +1 -0
  343. package/lib/components/Lightbox/Lightbox.types.js +2 -0
  344. package/lib/components/Lightbox/Lightbox.types.js.map +1 -0
  345. package/lib/components/Lightbox/index.d.ts +3 -0
  346. package/lib/components/Lightbox/index.d.ts.map +1 -0
  347. package/lib/components/Lightbox/index.js +2 -0
  348. package/lib/components/Lightbox/index.js.map +1 -0
  349. package/lib/components/Link/Link.js +5 -8
  350. package/lib/components/Link/Link.js.map +1 -1
  351. package/lib/components/List/CommaSeparatedList.d.ts +15 -0
  352. package/lib/components/List/CommaSeparatedList.d.ts.map +1 -0
  353. package/lib/components/List/CommaSeparatedList.js +61 -0
  354. package/lib/components/List/CommaSeparatedList.js.map +1 -0
  355. package/lib/components/List/List.d.ts +30 -0
  356. package/lib/components/List/List.d.ts.map +1 -0
  357. package/lib/components/List/List.js +56 -0
  358. package/lib/components/List/List.js.map +1 -0
  359. package/lib/components/List/OrderedList.d.ts +6 -0
  360. package/lib/components/List/OrderedList.d.ts.map +1 -0
  361. package/lib/components/List/OrderedList.js +6 -0
  362. package/lib/components/List/OrderedList.js.map +1 -0
  363. package/lib/components/List/UnorderedList.d.ts +6 -0
  364. package/lib/components/List/UnorderedList.d.ts.map +1 -0
  365. package/lib/components/List/UnorderedList.js +6 -0
  366. package/lib/components/List/UnorderedList.js.map +1 -0
  367. package/lib/components/List/index.d.ts +5 -0
  368. package/lib/components/List/index.d.ts.map +1 -0
  369. package/lib/components/List/index.js +4 -0
  370. package/lib/components/List/index.js.map +1 -0
  371. package/lib/components/Location/CurrentLocationButton.d.ts.map +1 -1
  372. package/lib/components/Location/CurrentLocationButton.js +7 -7
  373. package/lib/components/Location/CurrentLocationButton.js.map +1 -1
  374. package/lib/components/Location/LocationDisplay.js +8 -9
  375. package/lib/components/Location/LocationDisplay.js.map +1 -1
  376. package/lib/components/Location/LocationInput.js +27 -28
  377. package/lib/components/Location/LocationInput.js.map +1 -1
  378. package/lib/components/Location/LocationView.js +8 -13
  379. package/lib/components/Location/LocationView.js.map +1 -1
  380. package/lib/components/Location/utils.js +11 -15
  381. package/lib/components/Location/utils.js.map +1 -1
  382. package/lib/components/Menu/FlyoutMenuList.d.ts.map +1 -1
  383. package/lib/components/Menu/FlyoutMenuList.js +12 -15
  384. package/lib/components/Menu/FlyoutMenuList.js.map +1 -1
  385. package/lib/components/Menu/Menu.context.d.ts.map +1 -1
  386. package/lib/components/Menu/Menu.context.js +2 -0
  387. package/lib/components/Menu/Menu.context.js.map +1 -1
  388. package/lib/components/Menu/Menu.d.ts.map +1 -1
  389. package/lib/components/Menu/Menu.js +89 -46
  390. package/lib/components/Menu/Menu.js.map +1 -1
  391. package/lib/components/Menu/Menu.styles.d.ts +11 -0
  392. package/lib/components/Menu/Menu.styles.d.ts.map +1 -1
  393. package/lib/components/Menu/Menu.styles.js +202 -3
  394. package/lib/components/Menu/Menu.styles.js.map +1 -1
  395. package/lib/components/Menu/Menu.types.d.ts +28 -10
  396. package/lib/components/Menu/Menu.types.d.ts.map +1 -1
  397. package/lib/components/Menu/Menu.types.js.map +1 -1
  398. package/lib/components/Menu/MenuGroup.d.ts +6 -0
  399. package/lib/components/Menu/MenuGroup.d.ts.map +1 -0
  400. package/lib/components/Menu/MenuGroup.js +17 -0
  401. package/lib/components/Menu/MenuGroup.js.map +1 -0
  402. package/lib/components/Menu/MenuItem.d.ts +0 -3
  403. package/lib/components/Menu/MenuItem.d.ts.map +1 -1
  404. package/lib/components/Menu/MenuItem.js +57 -164
  405. package/lib/components/Menu/MenuItem.js.map +1 -1
  406. package/lib/components/Menu/MenuList.d.ts +1 -1
  407. package/lib/components/Menu/MenuList.d.ts.map +1 -1
  408. package/lib/components/Menu/MenuList.js +28 -30
  409. package/lib/components/Menu/MenuList.js.map +1 -1
  410. package/lib/components/Menu/MenuListHeader.d.ts +0 -1
  411. package/lib/components/Menu/MenuListHeader.d.ts.map +1 -1
  412. package/lib/components/Menu/MenuListHeader.js +7 -55
  413. package/lib/components/Menu/MenuListHeader.js.map +1 -1
  414. package/lib/components/Menu/NavItemsList.d.ts.map +1 -1
  415. package/lib/components/Menu/NavItemsList.js +2 -3
  416. package/lib/components/Menu/NavItemsList.js.map +1 -1
  417. package/lib/components/Menu/helpers.d.ts +13 -12
  418. package/lib/components/Menu/helpers.d.ts.map +1 -1
  419. package/lib/components/Menu/helpers.js +40 -36
  420. package/lib/components/Menu/helpers.js.map +1 -1
  421. package/lib/components/Menu/index.d.ts +2 -3
  422. package/lib/components/Menu/index.d.ts.map +1 -1
  423. package/lib/components/Menu/index.js +1 -2
  424. package/lib/components/Menu/index.js.map +1 -1
  425. package/lib/components/MenuButton/MenuButton.d.ts +3 -1
  426. package/lib/components/MenuButton/MenuButton.d.ts.map +1 -1
  427. package/lib/components/MenuButton/MenuButton.js +13 -14
  428. package/lib/components/MenuButton/MenuButton.js.map +1 -1
  429. package/lib/components/MetaList/MetaList.d.ts +11 -2
  430. package/lib/components/MetaList/MetaList.d.ts.map +1 -1
  431. package/lib/components/MetaList/MetaList.js +34 -20
  432. package/lib/components/MetaList/MetaList.js.map +1 -1
  433. package/lib/components/Modal/Contexts.d.ts.map +1 -1
  434. package/lib/components/Modal/Contexts.js +3 -0
  435. package/lib/components/Modal/Contexts.js.map +1 -1
  436. package/lib/components/Modal/DockedModals.d.ts.map +1 -1
  437. package/lib/components/Modal/DockedModals.js +5 -4
  438. package/lib/components/Modal/DockedModals.js.map +1 -1
  439. package/lib/components/Modal/MinimizedModal.d.ts.map +1 -1
  440. package/lib/components/Modal/MinimizedModal.js +53 -38
  441. package/lib/components/Modal/MinimizedModal.js.map +1 -1
  442. package/lib/components/Modal/Modal.d.ts +1 -6
  443. package/lib/components/Modal/Modal.d.ts.map +1 -1
  444. package/lib/components/Modal/Modal.js +82 -134
  445. package/lib/components/Modal/Modal.js.map +1 -1
  446. package/lib/components/Modal/Modal.styles.d.ts +9 -0
  447. package/lib/components/Modal/Modal.styles.d.ts.map +1 -0
  448. package/lib/components/Modal/Modal.styles.js +135 -0
  449. package/lib/components/Modal/Modal.styles.js.map +1 -0
  450. package/lib/components/Modal/Modal.types.d.ts +56 -5
  451. package/lib/components/Modal/Modal.types.d.ts.map +1 -1
  452. package/lib/components/Modal/Modal.types.js.map +1 -1
  453. package/lib/components/Modal/ModalManager.d.ts.map +1 -1
  454. package/lib/components/Modal/ModalManager.js +74 -65
  455. package/lib/components/Modal/ModalManager.js.map +1 -1
  456. package/lib/components/MultiStep/MultiStep.d.ts.map +1 -1
  457. package/lib/components/MultiStep/MultiStep.js +10 -12
  458. package/lib/components/MultiStep/MultiStep.js.map +1 -1
  459. package/lib/components/MultiStep/MultiStep.styles.js +1 -1
  460. package/lib/components/MultiStep/MultiStep.styles.js.map +1 -1
  461. package/lib/components/MultiStep/MultiStep.types.d.ts +2 -0
  462. package/lib/components/MultiStep/MultiStep.types.d.ts.map +1 -1
  463. package/lib/components/MultiStep/MultiStep.types.js.map +1 -1
  464. package/lib/components/Number/NumberDisplay.js +1 -1
  465. package/lib/components/Number/NumberDisplay.js.map +1 -1
  466. package/lib/components/Number/NumberInput.d.ts.map +1 -1
  467. package/lib/components/Number/NumberInput.js +18 -25
  468. package/lib/components/Number/NumberInput.js.map +1 -1
  469. package/lib/components/Number/NumberInput.styles.d.ts +2 -2
  470. package/lib/components/Number/NumberInput.styles.d.ts.map +1 -1
  471. package/lib/components/Number/utils.js +2 -3
  472. package/lib/components/Number/utils.js.map +1 -1
  473. package/lib/components/PageTemplates/CategorySubPage.d.ts +1 -1
  474. package/lib/components/PageTemplates/CategorySubPage.d.ts.map +1 -1
  475. package/lib/components/PageTemplates/CategorySubPage.js +8 -18
  476. package/lib/components/PageTemplates/CategorySubPage.js.map +1 -1
  477. package/lib/components/PageTemplates/CategorySubPage.styles.d.ts +1 -1
  478. package/lib/components/PageTemplates/CategorySubPage.styles.d.ts.map +1 -1
  479. package/lib/components/PageTemplates/DashboardPage.d.ts +7 -1
  480. package/lib/components/PageTemplates/DashboardPage.d.ts.map +1 -1
  481. package/lib/components/PageTemplates/DashboardPage.js +48 -28
  482. package/lib/components/PageTemplates/DashboardPage.js.map +1 -1
  483. package/lib/components/PageTemplates/PageTemplates.d.ts +15 -6
  484. package/lib/components/PageTemplates/PageTemplates.d.ts.map +1 -1
  485. package/lib/components/PageTemplates/PageTemplates.js +89 -79
  486. package/lib/components/PageTemplates/PageTemplates.js.map +1 -1
  487. package/lib/components/PageTemplates/index.d.ts +3 -0
  488. package/lib/components/PageTemplates/index.d.ts.map +1 -1
  489. package/lib/components/PageTemplates/index.js +1 -0
  490. package/lib/components/PageTemplates/index.js.map +1 -1
  491. package/lib/components/Pagination/Pagination.d.ts.map +1 -1
  492. package/lib/components/Pagination/Pagination.js +7 -6
  493. package/lib/components/Pagination/Pagination.js.map +1 -1
  494. package/lib/components/Phone/PhoneDisplay.js +2 -3
  495. package/lib/components/Phone/PhoneDisplay.js.map +1 -1
  496. package/lib/components/Phone/PhoneInput.d.ts.map +1 -1
  497. package/lib/components/Phone/PhoneInput.js +18 -17
  498. package/lib/components/Phone/PhoneInput.js.map +1 -1
  499. package/lib/components/Phone/utils.js +2 -3
  500. package/lib/components/Phone/utils.js.map +1 -1
  501. package/lib/components/Popover/Popover.d.ts +0 -4
  502. package/lib/components/Popover/Popover.d.ts.map +1 -1
  503. package/lib/components/Popover/Popover.js +11 -122
  504. package/lib/components/Popover/Popover.js.map +1 -1
  505. package/lib/components/Popover/Popover.styles.d.ts +5 -0
  506. package/lib/components/Popover/Popover.styles.d.ts.map +1 -0
  507. package/lib/components/Popover/Popover.styles.js +116 -0
  508. package/lib/components/Popover/Popover.styles.js.map +1 -0
  509. package/lib/components/Popover/PopoverManager.js +2 -2
  510. package/lib/components/Popover/PopoverManager.js.map +1 -1
  511. package/lib/components/Popover/index.d.ts +1 -1
  512. package/lib/components/Popover/index.d.ts.map +1 -1
  513. package/lib/components/Popover/index.js +1 -1
  514. package/lib/components/Popover/index.js.map +1 -1
  515. package/lib/components/Progress/Bar.js +2 -2
  516. package/lib/components/Progress/Bar.js.map +1 -1
  517. package/lib/components/Progress/Ellipsis.js +1 -3
  518. package/lib/components/Progress/Ellipsis.js.map +1 -1
  519. package/lib/components/Progress/Progress.js +3 -4
  520. package/lib/components/Progress/Progress.js.map +1 -1
  521. package/lib/components/Progress/Ring.d.ts.map +1 -1
  522. package/lib/components/Progress/Ring.js +3 -3
  523. package/lib/components/Progress/Ring.js.map +1 -1
  524. package/lib/components/RadioButton/RadioButton.js +1 -1
  525. package/lib/components/RadioButton/RadioButton.js.map +1 -1
  526. package/lib/components/RadioCheck/RadioCheck.d.ts.map +1 -1
  527. package/lib/components/RadioCheck/RadioCheck.js +7 -8
  528. package/lib/components/RadioCheck/RadioCheck.js.map +1 -1
  529. package/lib/components/RadioCheckGroup/RadioCheckGroup.d.ts +4 -0
  530. package/lib/components/RadioCheckGroup/RadioCheckGroup.d.ts.map +1 -1
  531. package/lib/components/RadioCheckGroup/RadioCheckGroup.js +19 -18
  532. package/lib/components/RadioCheckGroup/RadioCheckGroup.js.map +1 -1
  533. package/lib/components/Rating/Rating.d.ts.map +1 -1
  534. package/lib/components/Rating/Rating.js +6 -7
  535. package/lib/components/Rating/Rating.js.map +1 -1
  536. package/lib/components/SearchInput/SearchInput.d.ts +2 -2
  537. package/lib/components/SearchInput/SearchInput.d.ts.map +1 -1
  538. package/lib/components/SearchInput/SearchInput.js +14 -14
  539. package/lib/components/SearchInput/SearchInput.js.map +1 -1
  540. package/lib/components/Select/Option.js +1 -1
  541. package/lib/components/Select/Option.js.map +1 -1
  542. package/lib/components/Select/Select.d.ts.map +1 -1
  543. package/lib/components/Select/Select.js +15 -16
  544. package/lib/components/Select/Select.js.map +1 -1
  545. package/lib/components/Sentiment/Sentiment.js +1 -2
  546. package/lib/components/Sentiment/Sentiment.js.map +1 -1
  547. package/lib/components/Skeleton/LineSkeleton.js +1 -1
  548. package/lib/components/Skeleton/LineSkeleton.js.map +1 -1
  549. package/lib/components/Skeleton/ParagraphSkeleton.js +1 -1
  550. package/lib/components/Skeleton/ParagraphSkeleton.js.map +1 -1
  551. package/lib/components/Skeleton/RectangleSkeleton.js +1 -1
  552. package/lib/components/Skeleton/RectangleSkeleton.js.map +1 -1
  553. package/lib/components/Slider/Slider.d.ts.map +1 -1
  554. package/lib/components/Slider/Slider.js +12 -19
  555. package/lib/components/Slider/Slider.js.map +1 -1
  556. package/lib/components/Slider/Slider.styles.d.ts +4 -1
  557. package/lib/components/Slider/Slider.styles.d.ts.map +1 -1
  558. package/lib/components/Slider/Slider.styles.js +17 -5
  559. package/lib/components/Slider/Slider.styles.js.map +1 -1
  560. package/lib/components/Slider/SliderTicks.d.ts +1 -0
  561. package/lib/components/Slider/SliderTicks.d.ts.map +1 -1
  562. package/lib/components/Slider/SliderTicks.js +19 -12
  563. package/lib/components/Slider/SliderTicks.js.map +1 -1
  564. package/lib/components/Slider/utils.d.ts +10 -11
  565. package/lib/components/Slider/utils.d.ts.map +1 -1
  566. package/lib/components/Slider/utils.js +24 -18
  567. package/lib/components/Slider/utils.js.map +1 -1
  568. package/lib/components/SummaryItem/SummaryItem.d.ts +3 -3
  569. package/lib/components/SummaryItem/SummaryItem.d.ts.map +1 -1
  570. package/lib/components/SummaryItem/SummaryItem.js +3 -5
  571. package/lib/components/SummaryItem/SummaryItem.js.map +1 -1
  572. package/lib/components/SummaryList/SummaryList.d.ts +8 -2
  573. package/lib/components/SummaryList/SummaryList.d.ts.map +1 -1
  574. package/lib/components/SummaryList/SummaryList.js +10 -11
  575. package/lib/components/SummaryList/SummaryList.js.map +1 -1
  576. package/lib/components/SummaryList/ViewAll.d.ts +1 -1
  577. package/lib/components/SummaryList/ViewAll.d.ts.map +1 -1
  578. package/lib/components/SummaryList/ViewAll.js +14 -10
  579. package/lib/components/SummaryList/ViewAll.js.map +1 -1
  580. package/lib/components/Switch/Switch.d.ts.map +1 -1
  581. package/lib/components/Switch/Switch.js +41 -30
  582. package/lib/components/Switch/Switch.js.map +1 -1
  583. package/lib/components/Table/Table.d.ts.map +1 -1
  584. package/lib/components/Table/Table.js +14 -13
  585. package/lib/components/Table/Table.js.map +1 -1
  586. package/lib/components/Tabs/Tab.d.ts +1 -1
  587. package/lib/components/Tabs/Tab.d.ts.map +1 -1
  588. package/lib/components/Tabs/Tab.js +9 -7
  589. package/lib/components/Tabs/Tab.js.map +1 -1
  590. package/lib/components/Tabs/TabPanel.d.ts +10 -2
  591. package/lib/components/Tabs/TabPanel.d.ts.map +1 -1
  592. package/lib/components/Tabs/TabPanel.js +24 -8
  593. package/lib/components/Tabs/TabPanel.js.map +1 -1
  594. package/lib/components/Tabs/Tabs.d.ts +1 -0
  595. package/lib/components/Tabs/Tabs.d.ts.map +1 -1
  596. package/lib/components/Tabs/Tabs.js +22 -18
  597. package/lib/components/Tabs/Tabs.js.map +1 -1
  598. package/lib/components/Text/Text.d.ts +1 -1
  599. package/lib/components/Text/Text.d.ts.map +1 -1
  600. package/lib/components/Text/Text.js +2 -2
  601. package/lib/components/Text/Text.js.map +1 -1
  602. package/lib/components/TextArea/TextArea.d.ts.map +1 -1
  603. package/lib/components/TextArea/TextArea.js +33 -30
  604. package/lib/components/TextArea/TextArea.js.map +1 -1
  605. package/lib/components/Toaster/Toaster.d.ts +8 -36
  606. package/lib/components/Toaster/Toaster.d.ts.map +1 -1
  607. package/lib/components/Toaster/Toaster.js +97 -102
  608. package/lib/components/Toaster/Toaster.js.map +1 -1
  609. package/lib/components/Tooltip/Tooltip.d.ts +6 -1
  610. package/lib/components/Tooltip/Tooltip.d.ts.map +1 -1
  611. package/lib/components/Tooltip/Tooltip.js +6 -13
  612. package/lib/components/Tooltip/Tooltip.js.map +1 -1
  613. package/lib/components/Tree/StandardTree.d.ts +6 -0
  614. package/lib/components/Tree/StandardTree.d.ts.map +1 -0
  615. package/lib/components/Tree/StandardTree.js +175 -0
  616. package/lib/components/Tree/StandardTree.js.map +1 -0
  617. package/lib/components/Tree/StandardTree.styles.d.ts +13 -0
  618. package/lib/components/Tree/StandardTree.styles.d.ts.map +1 -0
  619. package/lib/components/Tree/StandardTree.styles.js +155 -0
  620. package/lib/components/Tree/StandardTree.styles.js.map +1 -0
  621. package/lib/components/Tree/StandardTree.types.d.ts +25 -0
  622. package/lib/components/Tree/StandardTree.types.d.ts.map +1 -0
  623. package/lib/components/Tree/StandardTree.types.js +2 -0
  624. package/lib/components/Tree/StandardTree.types.js.map +1 -0
  625. package/lib/components/Tree/Tree.d.ts +35 -49
  626. package/lib/components/Tree/Tree.d.ts.map +1 -1
  627. package/lib/components/Tree/Tree.js +18 -56
  628. package/lib/components/Tree/Tree.js.map +1 -1
  629. package/lib/components/Tree/helpers.d.ts +19 -0
  630. package/lib/components/Tree/helpers.d.ts.map +1 -0
  631. package/lib/components/Tree/helpers.js +180 -0
  632. package/lib/components/Tree/helpers.js.map +1 -0
  633. package/lib/components/Tree/index.d.ts +4 -2
  634. package/lib/components/Tree/index.d.ts.map +1 -1
  635. package/lib/components/Tree/index.js +3 -1
  636. package/lib/components/Tree/index.js.map +1 -1
  637. package/lib/components/URL/URLDisplay.js +2 -2
  638. package/lib/components/URL/URLDisplay.js.map +1 -1
  639. package/lib/hooks/index.d.ts +7 -4
  640. package/lib/hooks/index.d.ts.map +1 -1
  641. package/lib/hooks/index.js +7 -3
  642. package/lib/hooks/index.js.map +1 -1
  643. package/lib/hooks/useActiveDescendant.d.ts +17 -3
  644. package/lib/hooks/useActiveDescendant.d.ts.map +1 -1
  645. package/lib/hooks/useActiveDescendant.js +86 -64
  646. package/lib/hooks/useActiveDescendant.js.map +1 -1
  647. package/lib/hooks/useAutoResize.d.ts.map +1 -1
  648. package/lib/hooks/useAutoResize.js +6 -7
  649. package/lib/hooks/useAutoResize.js.map +1 -1
  650. package/lib/hooks/useBreakpoint.js +2 -4
  651. package/lib/hooks/useBreakpoint.js.map +1 -1
  652. package/lib/hooks/useDraggable.d.ts +8 -0
  653. package/lib/hooks/useDraggable.d.ts.map +1 -0
  654. package/lib/hooks/useDraggable.js +64 -0
  655. package/lib/hooks/useDraggable.js.map +1 -0
  656. package/lib/hooks/useFocusWithin.d.ts +1 -1
  657. package/lib/hooks/useFocusWithin.d.ts.map +1 -1
  658. package/lib/hooks/useFocusWithin.js +29 -24
  659. package/lib/hooks/useFocusWithin.js.map +1 -1
  660. package/lib/hooks/useI18n.d.ts +477 -170
  661. package/lib/hooks/useI18n.d.ts.map +1 -1
  662. package/lib/hooks/useI18n.js +2 -2
  663. package/lib/hooks/useI18n.js.map +1 -1
  664. package/lib/hooks/useLongPress.d.ts +16 -0
  665. package/lib/hooks/useLongPress.d.ts.map +1 -0
  666. package/lib/hooks/useLongPress.js +59 -0
  667. package/lib/hooks/useLongPress.js.map +1 -0
  668. package/lib/hooks/useOuterEvent.js +1 -1
  669. package/lib/hooks/useOuterEvent.js.map +1 -1
  670. package/lib/hooks/useOverride.js +1 -1
  671. package/lib/hooks/useOverride.js.map +1 -1
  672. package/lib/hooks/useScrollStick.js +14 -3
  673. package/lib/hooks/useScrollStick.js.map +1 -1
  674. package/lib/hooks/useScrollToggle.d.ts +6 -0
  675. package/lib/hooks/useScrollToggle.d.ts.map +1 -0
  676. package/lib/hooks/useScrollToggle.js +40 -0
  677. package/lib/hooks/useScrollToggle.js.map +1 -0
  678. package/lib/hooks/useTransitionState.d.ts +39 -0
  679. package/lib/hooks/useTransitionState.d.ts.map +1 -0
  680. package/lib/hooks/useTransitionState.js +56 -0
  681. package/lib/hooks/useTransitionState.js.map +1 -0
  682. package/lib/i18n/default.d.ts +555 -0
  683. package/lib/i18n/default.d.ts.map +1 -0
  684. package/lib/i18n/default.js +600 -0
  685. package/lib/i18n/default.js.map +1 -0
  686. package/lib/i18n/i18n.d.ts +932 -318
  687. package/lib/i18n/i18n.d.ts.map +1 -1
  688. package/lib/i18n/i18n.js +1 -1
  689. package/lib/i18n/i18n.js.map +1 -1
  690. package/lib/i18n/index.d.ts +1 -0
  691. package/lib/i18n/index.d.ts.map +1 -1
  692. package/lib/i18n/index.js.map +1 -1
  693. package/lib/i18n/translate.d.ts +29 -4
  694. package/lib/i18n/translate.d.ts.map +1 -1
  695. package/lib/i18n/translate.js +21 -8
  696. package/lib/i18n/translate.js.map +1 -1
  697. package/lib/index.d.ts +7 -2
  698. package/lib/index.d.ts.map +1 -1
  699. package/lib/index.js +7 -2
  700. package/lib/index.js.map +1 -1
  701. package/lib/styles/GlobalStyle.d.ts.map +1 -1
  702. package/lib/styles/GlobalStyle.js +2 -26
  703. package/lib/styles/GlobalStyle.js.map +1 -1
  704. package/lib/theme/ThemeMachine.js +7 -1
  705. package/lib/theme/ThemeMachine.js.map +1 -1
  706. package/lib/theme/index.d.ts +1 -0
  707. package/lib/theme/index.d.ts.map +1 -1
  708. package/lib/theme/index.js +1 -0
  709. package/lib/theme/index.js.map +1 -1
  710. package/lib/theme/theme.d.ts +83 -53
  711. package/lib/theme/theme.d.ts.map +1 -1
  712. package/lib/theme/themeDefinition.json +50 -30
  713. package/lib/theme/themeOverrides.schema.json +24 -3
  714. package/lib/theme/themes/buildTheme.json +3 -39
  715. package/lib/theme/themes/darkTheme.json +6 -0
  716. package/lib/theme/themes/legacyBuildTheme.json +50 -0
  717. package/lib/types/types.d.ts +6 -1
  718. package/lib/types/types.d.ts.map +1 -1
  719. package/lib/types/types.js.map +1 -1
  720. package/lib/utils/utils.d.ts +46 -4
  721. package/lib/utils/utils.d.ts.map +1 -1
  722. package/lib/utils/utils.js +63 -9
  723. package/lib/utils/utils.js.map +1 -1
  724. package/package.json +10 -11
  725. package/lib/components/DateTime/Input/useButtonAriaLabel.d.ts +0 -3
  726. package/lib/components/DateTime/Input/useButtonAriaLabel.d.ts.map +0 -1
  727. package/lib/components/DateTime/Input/useButtonAriaLabel.js +0 -33
  728. package/lib/components/DateTime/Input/useButtonAriaLabel.js.map +0 -1
  729. package/lib/components/NoItems/NoItems.d.ts +0 -14
  730. package/lib/components/NoItems/NoItems.d.ts.map +0 -1
  731. package/lib/components/NoItems/NoItems.js.map +0 -1
  732. package/lib/components/NoItems/index.d.ts +0 -4
  733. package/lib/components/NoItems/index.d.ts.map +0 -1
  734. package/lib/components/NoItems/index.js +0 -3
  735. package/lib/components/NoItems/index.js.map +0 -1
  736. package/lib/i18n/default.json +0 -246
@@ -4,8 +4,8 @@ import { useDirection } from '../../hooks';
4
4
  import { defaultThemeProp } from '../../theme';
5
5
  import { tryCatch } from '../../utils';
6
6
  import { StyledGrid } from '../Grid';
7
+ import { NumberDisplay } from '../Number';
7
8
  import StyledNumberInput from '../Number/NumberInput.styles';
8
- import { StyledText } from '../Text';
9
9
  export const StyledThumb = styled.div(({ theme: { base: { palette: { 'primary-background': bgColor, 'border-line': borderColor }, spacing, 'border-radius': borderRadius }, components: { progress: { 'progress-color': fgColor }, button } } }) => {
10
10
  const hoverBgColor = tryCatch(() => mix(0.2, fgColor, bgColor));
11
11
  return css `
@@ -38,7 +38,7 @@ export const StyledBar = styled.div(({ theme, showProgress }) => {
38
38
  width: 100%;
39
39
  overflow: hidden;
40
40
  position: relative;
41
- background-color: ${colors.gray.medium};
41
+ background-color: ${colors.gray.light};
42
42
 
43
43
  ${showProgress &&
44
44
  css `
@@ -104,13 +104,18 @@ export const StyledSliderTrackWrapper = styled.div `
104
104
  width: 100%;
105
105
  `;
106
106
  StyledSliderTrackWrapper.defaultProps = defaultThemeProp;
107
+ export const StyledPreview = styled(NumberDisplay) `
108
+ width: ${props => props.size}ch;
109
+ flex-shrink: 0;
110
+ `;
111
+ StyledPreview.defaultProps = defaultThemeProp;
107
112
  export const StyledSlider = styled.div(props => {
108
113
  const { theme: { base: { spacing, palette }, components: { 'form-field': formField } }, status, orientation } = props;
109
114
  const statusColor = status && formField[status] ? formField[status]['status-color'] : 'transparent';
110
115
  const thumbBgColor = tryCatch(() => mix(0.2, statusColor, palette['primary-background']));
111
116
  const borderColor = status && formField[status] ? formField[status]['status-color'] : palette['border-line'];
112
117
  return css `
113
- ${StyledText} {
118
+ > span {
114
119
  line-height: calc(${spacing} * 4);
115
120
  }
116
121
 
@@ -132,16 +137,23 @@ export const StyledSlider = styled.div(props => {
132
137
  ${orientation === 'horizontal' &&
133
138
  css `
134
139
  ${StyledSliderTrackWrapper} {
140
+ margin-inline: calc(1.5 * ${spacing});
141
+
135
142
  ${StyledTrack},
136
143
  ${StyledThumb} {
137
144
  grid-row: 1;
138
145
  }
139
146
 
147
+ ${StyledBar} {
148
+ /* extend by thumb width */
149
+ min-width: calc(100% + ${spacing} * 3);
150
+ }
151
+
140
152
  ${StyledTicksContainer} {
141
153
  grid-row: 2;
142
154
  }
143
155
 
144
- & + ${StyledNumberInput}, & + ${StyledText} {
156
+ & + ${StyledNumberInput}, & + ${StyledPreview} {
145
157
  margin-inline-start: calc(2 * ${spacing});
146
158
  }
147
159
  }
@@ -186,7 +198,7 @@ export const StyledSlider = styled.div(props => {
186
198
  height: 100%;
187
199
  }
188
200
 
189
- & + ${StyledNumberInput}, & + ${StyledText} {
201
+ & + ${StyledNumberInput}, & + ${StyledPreview} {
190
202
  margin-top: calc(2 * ${spacing});
191
203
  width: calc(${spacing} * 4);
192
204
  text-align: center;
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.styles.js","sourceRoot":"","sources":["../../../src/components/Slider/Slider.styles.ts"],"names":[],"mappings":"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","sourcesContent":["import { mix } from 'polished';\nimport styled, { css } from 'styled-components';\n\nimport { useDirection } from '../../hooks';\nimport { defaultThemeProp } from '../../theme';\nimport { PropsWithDefaults } from '../../types';\nimport { tryCatch } from '../../utils';\nimport { FormControlProps } from '../FormControl';\nimport { StyledGrid } from '../Grid';\nimport StyledNumberInput from '../Number/NumberInput.styles';\nimport { StyledText } from '../Text';\n\nimport SliderProps from './Slider.types';\n\nexport type SliderPropsWithDefaults = PropsWithDefaults<SliderProps>;\n\nexport const StyledThumb = styled.div(\n ({\n theme: {\n base: {\n palette: { 'primary-background': bgColor, 'border-line': borderColor },\n spacing,\n 'border-radius': borderRadius\n },\n components: {\n progress: { 'progress-color': fgColor },\n button\n }\n }\n }) => {\n const hoverBgColor = tryCatch(() => mix(0.2, fgColor, bgColor));\n\n return css`\n border: ${button['border-width']} solid ${borderColor};\n border-radius: calc(${borderRadius} * 3);\n outline: none;\n background-color: ${bgColor};\n width: calc(${spacing} * 3);\n height: calc(${spacing} * 3);\n cursor: pointer;\n\n &:focus {\n box-shadow: ${button['focus-shadow']};\n }\n\n &:hover,\n &:active {\n background-color: ${hoverBgColor};\n border-color: ${fgColor};\n }\n `;\n }\n);\n\nStyledThumb.defaultProps = defaultThemeProp;\n\nexport const StyledBar = styled.div<{ showProgress?: boolean }>(({ theme, showProgress }) => {\n const {\n base: { spacing, colors, 'border-radius': borderRadius },\n components: {\n progress: { 'progress-color': progressColor }\n }\n } = theme;\n\n const { ltr } = useDirection();\n\n return css`\n border-radius: ${borderRadius};\n height: ${spacing};\n width: 100%;\n overflow: hidden;\n position: relative;\n background-color: ${colors.gray.medium};\n\n ${showProgress &&\n css`\n ::before {\n position: absolute;\n left: 0;\n top: 0;\n content: '';\n display: block;\n width: 100%;\n height: 100%;\n background-color: ${progressColor};\n ${ltr\n ? css`\n transform: translateX(calc(-100% + var(--slider-value, 0)));\n `\n : css`\n transform: translateX(calc(100% - var(--slider-value, 0)));\n `}\n }\n `}\n `;\n});\n\nStyledBar.defaultProps = defaultThemeProp;\n\nexport const StyledTrack = styled.div(\n ({\n theme: {\n base: { spacing }\n }\n }) => {\n const { ltr } = useDirection();\n return css`\n height: calc(${spacing} * 4);\n width: 100%;\n cursor: pointer;\n position: relative;\n\n > ${StyledThumb} {\n z-index: 1;\n position: absolute;\n top: calc(${spacing} / 2);\n left: var(--slider-value);\n right: var(--slider-value);\n ${ltr\n ? css`\n transform: translate(-50%, 0);\n `\n : css`\n transform: translate(50%, 0);\n `}\n }\n `;\n }\n);\n\nStyledTrack.defaultProps = defaultThemeProp;\n\nexport const StyledTicksContainer = styled.div`\n width: 100%;\n\n div {\n &::before {\n content: '';\n display: table;\n background: ${p => p.theme.base.palette['foreground-color']};\n }\n }\n`;\n\nStyledTicksContainer.defaultProps = defaultThemeProp;\n\nexport const StyledSliderTrackWrapper = styled.div`\n width: 100%;\n`;\n\nStyledSliderTrackWrapper.defaultProps = defaultThemeProp;\n\nexport const StyledSlider = styled.div<{\n orientation: 'vertical' | 'horizontal';\n status: FormControlProps['status'];\n}>(props => {\n const {\n theme: {\n base: { spacing, palette },\n components: { 'form-field': formField }\n },\n status,\n orientation\n } = props;\n\n const statusColor =\n status && formField[status] ? formField[status]['status-color'] : 'transparent';\n const thumbBgColor = tryCatch(() => mix(0.2, statusColor, palette['primary-background']));\n\n const borderColor =\n status && formField[status] ? formField[status]['status-color'] : palette['border-line'];\n\n return css`\n ${StyledText} {\n line-height: calc(${spacing} * 4);\n }\n\n ${status &&\n css`\n ${StyledBar}::before {\n background-color: ${statusColor};\n }\n\n ${StyledThumb} {\n border-color: ${borderColor};\n :hover,\n :active {\n background-color: ${thumbBgColor};\n }\n }\n `}\n\n ${orientation === 'horizontal' &&\n css`\n ${StyledSliderTrackWrapper} {\n ${StyledTrack},\n ${StyledThumb} {\n grid-row: 1;\n }\n\n ${StyledTicksContainer} {\n grid-row: 2;\n }\n\n & + ${StyledNumberInput}, & + ${StyledText} {\n margin-inline-start: calc(2 * ${spacing});\n }\n }\n `}\n\n /* disabling 'duplicate selectors' rule to keep the css rules grouped by orientation prop */\n\n /* stylelint-disable no-duplicate-selectors */\n ${orientation === 'vertical' &&\n css`\n ${StyledSliderTrackWrapper} {\n grid-template-columns: calc(${spacing} * 4) minmax(0, 1fr);\n grid-template-rows: 0.5em [track-start] minmax(calc(${spacing} * 20), max-content) [track-end] 0.5em;\n margin-top: ${spacing};\n\n ${StyledTrack} {\n grid-row: track-start / track-end;\n height: 100%;\n transform: scale(-1);\n\n ${StyledBar} {\n height: 100%;\n width: ${spacing};\n\n ::before {\n transform: translateY(calc(-100% + var(--slider-value, 0)));\n }\n }\n }\n\n ${StyledThumb} {\n grid-row: track-start / track-end;\n top: auto;\n bottom: calc(100% - var(--slider-value));\n left: calc(${spacing} / 2);\n right: calc(${spacing} / 2);\n transform: translate(0, 50%);\n }\n\n ${StyledTicksContainer} {\n grid-row: 1 / -1;\n height: 100%;\n }\n\n & + ${StyledNumberInput}, & + ${StyledText} {\n margin-top: calc(2 * ${spacing});\n width: calc(${spacing} * 4);\n text-align: center;\n\n /* fix NumberInput double padding issue */\n &,\n & > input {\n padding: 0;\n }\n }\n }\n `}\n\n /* stylelint-enable no-duplicate-selectors */\n\n\n &[disabled],\n &[readonly] {\n ${StyledTrack} {\n cursor: default;\n }\n\n ${StyledThumb} {\n cursor: default;\n border-color: ${palette['border-line']};\n :hover,\n :active {\n background-color: ${palette['background-color']};\n }\n }\n }\n `;\n});\n\nStyledSlider.defaultProps = defaultThemeProp;\n\nexport const StyledTickItem = styled(StyledGrid)<{\n lowerBoundaryItem?: boolean;\n upperBoundaryItem?: boolean;\n orientation: 'horizontal' | 'vertical';\n}>(({ lowerBoundaryItem, upperBoundaryItem, orientation, theme }) => {\n const spacing = theme.base.spacing;\n\n const { ltr } = useDirection();\n\n return css`\n /* disabling 'duplicate selectors' rule to keep the css rules grouped by orientation prop */\n\n /* stylelint-disable no-duplicate-selectors */\n ${orientation === 'horizontal' &&\n css`\n text-align: center;\n text-overflow: ellipsis;\n white-space: nowrap;\n &::before {\n width: 0.0625rem;\n height: ${spacing};\n transform: translateY(-50%);\n margin: 0 auto;\n }\n\n ${lowerBoundaryItem &&\n css`\n text-align: start;\n transform: translate(-0.5ch, 0);\n &::before {\n margin-inline-start: 0.5ch;\n }\n `}\n\n ${upperBoundaryItem &&\n css`\n text-align: end;\n transform: translate(0.5ch, 0);\n &::before {\n margin-inline-end: 0.5ch;\n }\n `}\n `}\n\n ${orientation === 'vertical' &&\n css`\n display: flex;\n align-items: center;\n\n &::before {\n width: ${spacing};\n height: calc(${spacing} / 8);\n ${ltr\n ? css`\n transform: translateX(-50%);\n `\n : css`\n transform: translateX(50%);\n `}\n }\n `}\n\n /* stylelint-enable no-duplicate-selectors */\n overflow: hidden;\n `;\n});\n\nStyledTickItem.defaultProps = defaultThemeProp;\n\nexport const StyledTickButton = styled.span`\n cursor: pointer;\n line-height: 1em;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n outline: 0;\n`;\n\nStyledTickButton.defaultProps = defaultThemeProp;\n"]}
1
+ {"version":3,"file":"Slider.styles.js","sourceRoot":"","sources":["../../../src/components/Slider/Slider.styles.ts"],"names":[],"mappings":"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","sourcesContent":["import { mix } from 'polished';\nimport styled, { css } from 'styled-components';\n\nimport { useDirection } from '../../hooks';\nimport { defaultThemeProp } from '../../theme';\nimport { PropsWithDefaults } from '../../types';\nimport { tryCatch } from '../../utils';\nimport { FormControlProps } from '../FormControl';\nimport { StyledGrid } from '../Grid';\nimport { NumberDisplay } from '../Number';\nimport StyledNumberInput from '../Number/NumberInput.styles';\n\nimport SliderProps from './Slider.types';\n\nexport type SliderPropsWithDefaults = PropsWithDefaults<SliderProps>;\n\nexport const StyledThumb = styled.div(\n ({\n theme: {\n base: {\n palette: { 'primary-background': bgColor, 'border-line': borderColor },\n spacing,\n 'border-radius': borderRadius\n },\n components: {\n progress: { 'progress-color': fgColor },\n button\n }\n }\n }) => {\n const hoverBgColor = tryCatch(() => mix(0.2, fgColor, bgColor));\n\n return css`\n border: ${button['border-width']} solid ${borderColor};\n border-radius: calc(${borderRadius} * 3);\n outline: none;\n background-color: ${bgColor};\n width: calc(${spacing} * 3);\n height: calc(${spacing} * 3);\n cursor: pointer;\n\n &:focus {\n box-shadow: ${button['focus-shadow']};\n }\n\n &:hover,\n &:active {\n background-color: ${hoverBgColor};\n border-color: ${fgColor};\n }\n `;\n }\n);\n\nStyledThumb.defaultProps = defaultThemeProp;\n\nexport const StyledBar = styled.div<{ showProgress?: boolean }>(({ theme, showProgress }) => {\n const {\n base: { spacing, colors, 'border-radius': borderRadius },\n components: {\n progress: { 'progress-color': progressColor }\n }\n } = theme;\n\n const { ltr } = useDirection();\n\n return css`\n border-radius: ${borderRadius};\n height: ${spacing};\n width: 100%;\n overflow: hidden;\n position: relative;\n background-color: ${colors.gray.light};\n\n ${showProgress &&\n css`\n ::before {\n position: absolute;\n left: 0;\n top: 0;\n content: '';\n display: block;\n width: 100%;\n height: 100%;\n background-color: ${progressColor};\n ${ltr\n ? css`\n transform: translateX(calc(-100% + var(--slider-value, 0)));\n `\n : css`\n transform: translateX(calc(100% - var(--slider-value, 0)));\n `}\n }\n `}\n `;\n});\n\nStyledBar.defaultProps = defaultThemeProp;\n\nexport const StyledTrack = styled.div(\n ({\n theme: {\n base: { spacing }\n }\n }) => {\n const { ltr } = useDirection();\n return css`\n height: calc(${spacing} * 4);\n width: 100%;\n cursor: pointer;\n position: relative;\n\n > ${StyledThumb} {\n z-index: 1;\n position: absolute;\n top: calc(${spacing} / 2);\n left: var(--slider-value);\n right: var(--slider-value);\n ${ltr\n ? css`\n transform: translate(-50%, 0);\n `\n : css`\n transform: translate(50%, 0);\n `}\n }\n `;\n }\n);\n\nStyledTrack.defaultProps = defaultThemeProp;\n\nexport const StyledTicksContainer = styled.div`\n width: 100%;\n\n div {\n &::before {\n content: '';\n display: table;\n background: ${p => p.theme.base.palette['foreground-color']};\n }\n }\n`;\n\nStyledTicksContainer.defaultProps = defaultThemeProp;\n\nexport const StyledSliderTrackWrapper = styled.div`\n width: 100%;\n`;\n\nStyledSliderTrackWrapper.defaultProps = defaultThemeProp;\n\nexport const StyledPreview = styled(NumberDisplay)<{ size: number }>`\n width: ${props => props.size}ch;\n flex-shrink: 0;\n`;\n\nStyledPreview.defaultProps = defaultThemeProp;\n\nexport const StyledSlider = styled.div<{\n orientation: 'vertical' | 'horizontal';\n status: FormControlProps['status'];\n}>(props => {\n const {\n theme: {\n base: { spacing, palette },\n components: { 'form-field': formField }\n },\n status,\n orientation\n } = props;\n\n const statusColor =\n status && formField[status] ? formField[status]['status-color'] : 'transparent';\n const thumbBgColor = tryCatch(() => mix(0.2, statusColor, palette['primary-background']));\n\n const borderColor =\n status && formField[status] ? formField[status]['status-color'] : palette['border-line'];\n\n return css`\n > span {\n line-height: calc(${spacing} * 4);\n }\n\n ${status &&\n css`\n ${StyledBar}::before {\n background-color: ${statusColor};\n }\n\n ${StyledThumb} {\n border-color: ${borderColor};\n :hover,\n :active {\n background-color: ${thumbBgColor};\n }\n }\n `}\n\n ${orientation === 'horizontal' &&\n css`\n ${StyledSliderTrackWrapper} {\n margin-inline: calc(1.5 * ${spacing});\n\n ${StyledTrack},\n ${StyledThumb} {\n grid-row: 1;\n }\n\n ${StyledBar} {\n /* extend by thumb width */\n min-width: calc(100% + ${spacing} * 3);\n }\n\n ${StyledTicksContainer} {\n grid-row: 2;\n }\n\n & + ${StyledNumberInput}, & + ${StyledPreview} {\n margin-inline-start: calc(2 * ${spacing});\n }\n }\n `}\n\n /* disabling 'duplicate selectors' rule to keep the css rules grouped by orientation prop */\n\n /* stylelint-disable no-duplicate-selectors */\n ${orientation === 'vertical' &&\n css`\n ${StyledSliderTrackWrapper} {\n grid-template-columns: calc(${spacing} * 4) minmax(0, 1fr);\n grid-template-rows: 0.5em [track-start] minmax(calc(${spacing} * 20), max-content) [track-end] 0.5em;\n margin-top: ${spacing};\n\n ${StyledTrack} {\n grid-row: track-start / track-end;\n height: 100%;\n transform: scale(-1);\n\n ${StyledBar} {\n height: 100%;\n width: ${spacing};\n\n ::before {\n transform: translateY(calc(-100% + var(--slider-value, 0)));\n }\n }\n }\n\n ${StyledThumb} {\n grid-row: track-start / track-end;\n top: auto;\n bottom: calc(100% - var(--slider-value));\n left: calc(${spacing} / 2);\n right: calc(${spacing} / 2);\n transform: translate(0, 50%);\n }\n\n ${StyledTicksContainer} {\n grid-row: 1 / -1;\n height: 100%;\n }\n\n & + ${StyledNumberInput}, & + ${StyledPreview} {\n margin-top: calc(2 * ${spacing});\n width: calc(${spacing} * 4);\n text-align: center;\n\n /* fix NumberInput double padding issue */\n &,\n & > input {\n padding: 0;\n }\n }\n }\n `}\n\n /* stylelint-enable no-duplicate-selectors */\n\n\n &[disabled],\n &[readonly] {\n ${StyledTrack} {\n cursor: default;\n }\n\n ${StyledThumb} {\n cursor: default;\n border-color: ${palette['border-line']};\n :hover,\n :active {\n background-color: ${palette['background-color']};\n }\n }\n }\n `;\n});\n\nStyledSlider.defaultProps = defaultThemeProp;\n\nexport const StyledTickItem = styled(StyledGrid)<{\n lowerBoundaryItem?: boolean;\n upperBoundaryItem?: boolean;\n orientation: 'horizontal' | 'vertical';\n}>(({ lowerBoundaryItem, upperBoundaryItem, orientation, theme }) => {\n const spacing = theme.base.spacing;\n\n const { ltr } = useDirection();\n\n return css`\n /* disabling 'duplicate selectors' rule to keep the css rules grouped by orientation prop */\n\n /* stylelint-disable no-duplicate-selectors */\n ${orientation === 'horizontal' &&\n css`\n text-align: center;\n text-overflow: ellipsis;\n white-space: nowrap;\n &::before {\n width: 0.0625rem;\n height: ${spacing};\n transform: translateY(-50%);\n margin: 0 auto;\n }\n\n ${lowerBoundaryItem &&\n css`\n text-align: start;\n transform: translate(-0.5ch, 0);\n &::before {\n margin-inline-start: 0.5ch;\n }\n `}\n\n ${upperBoundaryItem &&\n css`\n text-align: end;\n transform: translate(0.5ch, 0);\n &::before {\n margin-inline-end: 0.5ch;\n }\n `}\n `}\n\n ${orientation === 'vertical' &&\n css`\n display: flex;\n align-items: center;\n\n &::before {\n width: ${spacing};\n height: calc(${spacing} / 8);\n ${ltr\n ? css`\n transform: translateX(-50%);\n `\n : css`\n transform: translateX(50%);\n `}\n }\n `}\n\n /* stylelint-enable no-duplicate-selectors */\n overflow: hidden;\n `;\n});\n\nStyledTickItem.defaultProps = defaultThemeProp;\n\nexport const StyledTickButton = styled.span`\n cursor: pointer;\n line-height: 1em;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n outline: 0;\n`;\n\nStyledTickButton.defaultProps = defaultThemeProp;\n"]}
@@ -4,6 +4,7 @@ interface SliderTicksProps {
4
4
  ticks: NonNullable<SliderProps['ticks']>;
5
5
  min: number;
6
6
  max: number;
7
+ step: number;
7
8
  orientation: NonNullable<SliderProps['orientation']>;
8
9
  onClick: (value: number) => void;
9
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SliderTicks.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/SliderTicks.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAKpC,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAGzC,UAAU,gBAAgB;IACxB,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;IACrD,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC;AAED,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAuDrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"SliderTicks.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/SliderTicks.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAKpC,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAGzC,UAAU,gBAAgB;IACxB,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;IACrD,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC;AAED,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CA2DrC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -3,23 +3,30 @@ import { useMemo } from 'react';
3
3
  import Grid from '../Grid';
4
4
  import { StyledTickButton, StyledTickItem, StyledTicksContainer } from './Slider.styles';
5
5
  import { calculateTicksRegions } from './utils';
6
- const SliderTicks = ({ ticks, min, max, orientation, onClick }) => {
7
- const cellsCount = max - min + 1;
8
- const ticksDefinitions = useMemo(() => calculateTicksRegions(ticks, min, max, orientation === 'horizontal'), [ticks, min, max, orientation]);
9
- return (_jsx(Grid, Object.assign({ container: orientation === 'horizontal'
10
- ? {
11
- cols: `minmax(0, 0.5fr) repeat(${cellsCount - 2}, minmax(0, 1fr)) minmax(0, 0.5fr)`
12
- }
13
- : { rows: `repeat(${cellsCount}, 1em)`, alignContent: 'between' }, as: StyledTicksContainer }, { children: ticksDefinitions.map(tick => {
14
- var _a;
15
- return (_jsx(StyledTickItem, Object.assign({ item: orientation === 'horizontal'
6
+ const SliderTicks = ({ ticks, min, max, step, orientation, onClick }) => {
7
+ const cellsCount = (max - min) / step + 1;
8
+ const ticksDefinitions = useMemo(() => calculateTicksRegions(ticks, min, max, step, orientation === 'horizontal'), [ticks, min, max, orientation]);
9
+ let repeatCells;
10
+ let gridContainerConfig;
11
+ if (orientation === 'horizontal') {
12
+ repeatCells = cellsCount > 2 ? `repeat(${cellsCount - 2}, minmax(0, 1fr))` : '';
13
+ gridContainerConfig = {
14
+ cols: `minmax(0, 0.5fr) ${repeatCells} minmax(0, 0.5fr)`
15
+ };
16
+ }
17
+ else {
18
+ repeatCells = `repeat(${cellsCount}, 1em)`;
19
+ gridContainerConfig = { rows: repeatCells, alignContent: 'between' };
20
+ }
21
+ return (_jsx(Grid, { container: gridContainerConfig, as: StyledTicksContainer, children: ticksDefinitions.map(tick => {
22
+ return (_jsx(StyledTickItem, { item: orientation === 'horizontal'
16
23
  ? {
17
24
  colStartEnd: `${tick.start} / ${tick.end}`
18
25
  }
19
26
  : {
20
27
  rowStartEnd: `${-tick.start} / ${-tick.end}`
21
- }, orientation: orientation, lowerBoundaryItem: tick.value === min, upperBoundaryItem: tick.value === max }, { children: _jsx(StyledTickButton, Object.assign({ tabIndex: -1, role: 'button', "aria-hidden": true, onClick: () => onClick(tick.value) }, { children: tick.label }), void 0) }), (_a = tick.label) !== null && _a !== void 0 ? _a : tick.value));
22
- }) }), void 0));
28
+ }, orientation: orientation, lowerBoundaryItem: tick.value === min, upperBoundaryItem: tick.value === max, children: _jsx(StyledTickButton, { tabIndex: -1, role: 'button', "aria-hidden": true, onClick: () => onClick(tick.value), children: tick.label }, void 0) }, tick.label ?? tick.value));
29
+ }) }, void 0));
23
30
  };
24
31
  export default SliderTicks;
25
32
  //# sourceMappingURL=SliderTicks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SliderTicks.js","sourceRoot":"","sources":["../../../src/components/Slider/SliderTicks.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAM,OAAO,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAUhD,MAAM,WAAW,GAAyB,CAAC,EACzC,KAAK,EACL,GAAG,EACH,GAAG,EACH,WAAW,EACX,OAAO,EACU,EAAE,EAAE;IACrB,MAAM,UAAU,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;IAEjC,MAAM,gBAAgB,GAAG,OAAO,CAC9B,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,KAAK,YAAY,CAAC,EAC1E,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,CAAC,CAC/B,CAAC;IAEF,OAAO,CACL,KAAC,IAAI,kBACH,SAAS,EACP,WAAW,KAAK,YAAY;YAC1B,CAAC,CAAC;gBACE,IAAI,EAAE,2BAA2B,UAAU,GAAG,CAAC,oCAAoC;aACpF;YACH,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,UAAU,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,EAErE,EAAE,EAAE,oBAAoB,gBAEvB,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;;YAC3B,OAAO,CACL,KAAC,cAAc,kBACb,IAAI,EACF,WAAW,KAAK,YAAY;oBAC1B,CAAC,CAAC;wBACE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,GAAG,EAAE;qBAC3C;oBACH,CAAC,CAAC;wBACE,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;qBAC7C,EAGP,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,IAAI,CAAC,KAAK,KAAK,GAAG,EACrC,iBAAiB,EAAE,IAAI,CAAC,KAAK,KAAK,GAAG,gBAErC,KAAC,gBAAgB,kBACf,QAAQ,EAAE,CAAC,CAAC,EACZ,IAAI,EAAC,QAAQ,uBAEb,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,gBAEjC,IAAI,CAAC,KAAK,YACM,KAZd,MAAA,IAAI,CAAC,KAAK,mCAAI,IAAI,CAAC,KAAK,CAad,CAClB,CAAC;QACJ,CAAC,CAAC,YACG,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC","sourcesContent":["import { FC, useMemo } from 'react';\n\nimport Grid from '../Grid';\n\nimport { StyledTickButton, StyledTickItem, StyledTicksContainer } from './Slider.styles';\nimport SliderProps from './Slider.types';\nimport { calculateTicksRegions } from './utils';\n\ninterface SliderTicksProps {\n ticks: NonNullable<SliderProps['ticks']>;\n min: number;\n max: number;\n orientation: NonNullable<SliderProps['orientation']>;\n onClick: (value: number) => void;\n}\n\nconst SliderTicks: FC<SliderTicksProps> = ({\n ticks,\n min,\n max,\n orientation,\n onClick\n}: SliderTicksProps) => {\n const cellsCount = max - min + 1;\n\n const ticksDefinitions = useMemo(\n () => calculateTicksRegions(ticks, min, max, orientation === 'horizontal'),\n [ticks, min, max, orientation]\n );\n\n return (\n <Grid\n container={\n orientation === 'horizontal'\n ? {\n cols: `minmax(0, 0.5fr) repeat(${cellsCount - 2}, minmax(0, 1fr)) minmax(0, 0.5fr)`\n }\n : { rows: `repeat(${cellsCount}, 1em)`, alignContent: 'between' }\n }\n as={StyledTicksContainer}\n >\n {ticksDefinitions.map(tick => {\n return (\n <StyledTickItem\n item={\n orientation === 'horizontal'\n ? {\n colStartEnd: `${tick.start} / ${tick.end}`\n }\n : {\n rowStartEnd: `${-tick.start} / ${-tick.end}`\n }\n }\n key={tick.label ?? tick.value}\n orientation={orientation}\n lowerBoundaryItem={tick.value === min}\n upperBoundaryItem={tick.value === max}\n >\n <StyledTickButton\n tabIndex={-1}\n role='button'\n aria-hidden\n onClick={() => onClick(tick.value)}\n >\n {tick.label}\n </StyledTickButton>\n </StyledTickItem>\n );\n })}\n </Grid>\n );\n};\n\nexport default SliderTicks;\n"]}
1
+ {"version":3,"file":"SliderTicks.js","sourceRoot":"","sources":["../../../src/components/Slider/SliderTicks.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAM,OAAO,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,IAA4B,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAWhD,MAAM,WAAW,GAAyB,CAAC,EACzC,KAAK,EACL,GAAG,EACH,GAAG,EACH,IAAI,EACJ,WAAW,EACX,OAAO,EACU,EAAE,EAAE;IACrB,MAAM,UAAU,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;IAE1C,MAAM,gBAAgB,GAAG,OAAO,CAC9B,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,KAAK,YAAY,CAAC,EAChF,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,CAAC,CAC/B,CAAC;IAEF,IAAI,WAAmB,CAAC;IACxB,IAAI,mBAAuC,CAAC;IAC5C,IAAI,WAAW,KAAK,YAAY,EAAE;QAChC,WAAW,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,UAAU,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;QAChF,mBAAmB,GAAG;YACpB,IAAI,EAAE,oBAAoB,WAAW,mBAAmB;SACzD,CAAC;KACH;SAAM;QACL,WAAW,GAAG,UAAU,UAAU,QAAQ,CAAC;QAC3C,mBAAmB,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;KACtE;IAED,OAAO,CACL,KAAC,IAAI,IAAC,SAAS,EAAE,mBAAmB,EAAE,EAAE,EAAE,oBAAoB,YAC3D,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC3B,OAAO,CACL,KAAC,cAAc,IACb,IAAI,EACF,WAAW,KAAK,YAAY;oBAC1B,CAAC,CAAC;wBACE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,GAAG,EAAE;qBAC3C;oBACH,CAAC,CAAC;wBACE,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;qBAC7C,EAGP,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,IAAI,CAAC,KAAK,KAAK,GAAG,EACrC,iBAAiB,EAAE,IAAI,CAAC,KAAK,KAAK,GAAG,YAErC,KAAC,gBAAgB,IACf,QAAQ,EAAE,CAAC,CAAC,EACZ,IAAI,EAAC,QAAQ,uBAEb,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,YAEjC,IAAI,CAAC,KAAK,WACM,IAZd,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAad,CAClB,CAAC;QACJ,CAAC,CAAC,WACG,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC","sourcesContent":["import { FC, useMemo } from 'react';\n\nimport Grid, { GridContainerProps } from '../Grid';\n\nimport { StyledTickButton, StyledTickItem, StyledTicksContainer } from './Slider.styles';\nimport SliderProps from './Slider.types';\nimport { calculateTicksRegions } from './utils';\n\ninterface SliderTicksProps {\n ticks: NonNullable<SliderProps['ticks']>;\n min: number;\n max: number;\n step: number;\n orientation: NonNullable<SliderProps['orientation']>;\n onClick: (value: number) => void;\n}\n\nconst SliderTicks: FC<SliderTicksProps> = ({\n ticks,\n min,\n max,\n step,\n orientation,\n onClick\n}: SliderTicksProps) => {\n const cellsCount = (max - min) / step + 1;\n\n const ticksDefinitions = useMemo(\n () => calculateTicksRegions(ticks, min, max, step, orientation === 'horizontal'),\n [ticks, min, max, orientation]\n );\n\n let repeatCells: string;\n let gridContainerConfig: GridContainerProps;\n if (orientation === 'horizontal') {\n repeatCells = cellsCount > 2 ? `repeat(${cellsCount - 2}, minmax(0, 1fr))` : '';\n gridContainerConfig = {\n cols: `minmax(0, 0.5fr) ${repeatCells} minmax(0, 0.5fr)`\n };\n } else {\n repeatCells = `repeat(${cellsCount}, 1em)`;\n gridContainerConfig = { rows: repeatCells, alignContent: 'between' };\n }\n\n return (\n <Grid container={gridContainerConfig} as={StyledTicksContainer}>\n {ticksDefinitions.map(tick => {\n return (\n <StyledTickItem\n item={\n orientation === 'horizontal'\n ? {\n colStartEnd: `${tick.start} / ${tick.end}`\n }\n : {\n rowStartEnd: `${-tick.start} / ${-tick.end}`\n }\n }\n key={tick.label ?? tick.value}\n orientation={orientation}\n lowerBoundaryItem={tick.value === min}\n upperBoundaryItem={tick.value === max}\n >\n <StyledTickButton\n tabIndex={-1}\n role='button'\n aria-hidden\n onClick={() => onClick(tick.value)}\n >\n {tick.label}\n </StyledTickButton>\n </StyledTickItem>\n );\n })}\n </Grid>\n );\n};\n\nexport default SliderTicks;\n"]}
@@ -1,14 +1,4 @@
1
1
  import SliderProps, { TickDefinition } from './Slider.types';
2
- /**
3
- * Generator that returns triple of subsequent values in the given array.
4
- * @param array source array
5
- * @returns triple of previous, current and next value on every call
6
- */
7
- export declare function triple<T>(array: T[]): Generator<{
8
- prev?: T;
9
- current: T;
10
- next?: T;
11
- }, undefined, unknown>;
12
2
  /**
13
3
  * The function accepts ticks map and produces an array of tick definitions. The definition
14
4
  * consist of tick value, its label and starting and ending index.
@@ -22,10 +12,11 @@ export declare function triple<T>(array: T[]): Generator<{
22
12
  * @param ticksMap ticks configuration to calculate ticks definition from
23
13
  * @param min minimum allowed value in the range
24
14
  * @param max maximum allowed value in the range
15
+ * @param step step in the range
25
16
  * @param stretch flag indicating the regions should be stretched
26
17
  * @returns ticks definitions array
27
18
  */
28
- export declare const calculateTicksRegions: (ticksMap: NonNullable<SliderProps['ticks']>, min: number, max: number, stretch: boolean) => TickDefinition[];
19
+ export declare const calculateTicksRegions: (ticksMap: NonNullable<SliderProps['ticks']>, min: number, max: number, step: number, stretch: boolean) => TickDefinition[];
29
20
  /**
30
21
  * Function for given input returns nearest discrete value from a series {min, max}
31
22
  * @param input the value to look for nearest value
@@ -35,4 +26,12 @@ export declare const calculateTicksRegions: (ticksMap: NonNullable<SliderProps['
35
26
  * @returns nearest value as a number
36
27
  */
37
28
  export declare const getNearestValue: (input: number, min: number, max: number, step: number) => number;
29
+ /**
30
+ * Function calculates minimum length of the field where any value from the set of possible values will fit in.
31
+ * @param min minimum value
32
+ * @param max maximum value
33
+ * @param step step in range
34
+ * @returns minimum number of characters the field needs
35
+ */
36
+ export declare const calculateValueLength: (min: number, max: number, step: number) => number;
38
37
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/utils.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,EAAE,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE7D;;;;GAIG;AACH,wBAAiB,MAAM,CAAC,CAAC,EACvB,KAAK,EAAE,CAAC,EAAE,GACT,SAAS,CAAC;IAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAAC,OAAO,EAAE,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,CAAC,CAAA;CAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAKnE;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,qBAAqB,aACtB,YAAY,WAAW,CAAC,OAAO,CAAC,CAAC,OACtC,MAAM,OACN,MAAM,WACF,OAAO,KACf,cAAc,EAkDhB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,UAAW,MAAM,OAAO,MAAM,OAAO,MAAM,QAAQ,MAAM,KAAG,MAKvF,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/components/Slider/utils.ts"],"names":[],"mappings":"AAEA,OAAO,WAAW,EAAE,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE7D;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,qBAAqB,aACtB,YAAY,WAAW,CAAC,OAAO,CAAC,CAAC,OACtC,MAAM,OACN,MAAM,QACL,MAAM,WACH,OAAO,KACf,cAAc,EAkDhB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,UAAW,MAAM,OAAO,MAAM,OAAO,MAAM,QAAQ,MAAM,KAAG,MAKvF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,QAAS,MAAM,OAAO,MAAM,QAAQ,MAAM,KAAG,MAW7E,CAAC"}
@@ -1,14 +1,4 @@
1
- /**
2
- * Generator that returns triple of subsequent values in the given array.
3
- * @param array source array
4
- * @returns triple of previous, current and next value on every call
5
- */
6
- export function* triple(array) {
7
- for (let i = 0; i < array.length; i += 1) {
8
- yield { prev: array[i - 1], current: array[i], next: array[i + 1] };
9
- }
10
- return undefined;
11
- }
1
+ import { triple } from '../../utils';
12
2
  /**
13
3
  * The function accepts ticks map and produces an array of tick definitions. The definition
14
4
  * consist of tick value, its label and starting and ending index.
@@ -22,17 +12,17 @@ export function* triple(array) {
22
12
  * @param ticksMap ticks configuration to calculate ticks definition from
23
13
  * @param min minimum allowed value in the range
24
14
  * @param max maximum allowed value in the range
15
+ * @param step step in the range
25
16
  * @param stretch flag indicating the regions should be stretched
26
17
  * @returns ticks definitions array
27
18
  */
28
- export const calculateTicksRegions = (ticksMap, min, max, stretch) => {
29
- var _a, _b;
19
+ export const calculateTicksRegions = (ticksMap, min, max, step, stretch) => {
30
20
  // calculate initial positions for every tick, the tick segment has the width = 1
31
21
  const defs = Object.entries(ticksMap)
32
22
  .filter(([tickValue]) => Number(tickValue) >= min && Number(tickValue) <= max)
33
23
  .sort(([tickValue1], [tickValue2]) => Number(tickValue1) - Number(tickValue2))
34
24
  .map(([tickValue, tickLabel]) => {
35
- const cell = Number(tickValue) - min + 1; // shift by 'min' value and increment to always start from 1
25
+ const cell = (Number(tickValue) - min) / step + 1; // shift by 'min' value, divide by a step and increment, as index starts from 1
36
26
  const cellStart = cell;
37
27
  const cellEnd = cellStart + 1;
38
28
  return {
@@ -44,7 +34,7 @@ export const calculateTicksRegions = (ticksMap, min, max, stretch) => {
44
34
  });
45
35
  if (!stretch)
46
36
  return defs;
47
- const maxCell = max - min + 2;
37
+ const maxCell = (max - min) / step + 2;
48
38
  const result = [];
49
39
  // extend the tick segments one by one
50
40
  // eslint-disable-next-line no-restricted-syntax
@@ -61,7 +51,7 @@ export const calculateTicksRegions = (ticksMap, min, max, stretch) => {
61
51
  }
62
52
  else {
63
53
  // calculate length between current and prev / next tick and choose the smaller value
64
- const length = Math.min(start - ((_a = prev === null || prev === void 0 ? void 0 : prev.end) !== null && _a !== void 0 ? _a : 1), ((_b = next === null || next === void 0 ? void 0 : next.start) !== null && _b !== void 0 ? _b : maxCell) - end);
54
+ const length = Math.min(start - (prev?.end ?? 1), (next?.start ?? maxCell) - end);
65
55
  // expand the segment to the left
66
56
  start -= Math.floor(length / 2);
67
57
  // expand to the right
@@ -85,9 +75,25 @@ export const calculateTicksRegions = (ticksMap, min, max, stretch) => {
85
75
  * @returns nearest value as a number
86
76
  */
87
77
  export const getNearestValue = (input, min, max, step) => {
88
- var _a;
89
78
  const output = Math.round(input / step) * step;
90
- const decimals = (_a = step.toString().split('.')[1]) === null || _a === void 0 ? void 0 : _a.length;
79
+ const decimals = step.toString().split('.')[1]?.length;
91
80
  return Number(output.toFixed(decimals || 0));
92
81
  };
82
+ /**
83
+ * Function calculates minimum length of the field where any value from the set of possible values will fit in.
84
+ * @param min minimum value
85
+ * @param max maximum value
86
+ * @param step step in range
87
+ * @returns minimum number of characters the field needs
88
+ */
89
+ export const calculateValueLength = (min, max, step) => {
90
+ const [minIntegerPart, minDecimalPart = ''] = min.toString().split('.');
91
+ const [maxIntegerPart, maxDecimalPart = ''] = max.toString().split('.');
92
+ const stepDecimalPart = step.toString().split('.')[1] ?? '';
93
+ return (Math.max(minIntegerPart.length, maxIntegerPart.length) +
94
+ Math.max(maxDecimalPart.length, minDecimalPart.length, stepDecimalPart.length) +
95
+ (maxDecimalPart || minDecimalPart || stepDecimalPart
96
+ ? 1 // if there's decimal part, reserve a space for the separator
97
+ : 0));
98
+ };
93
99
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/Slider/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import SliderProps, { TickDefinition } from './Slider.types';\n\n/**\n * Generator that returns triple of subsequent values in the given array.\n * @param array source array\n * @returns triple of previous, current and next value on every call\n */\nexport function* triple<T>(\n array: T[]\n): Generator<{ prev?: T; current: T; next?: T }, undefined, unknown> {\n for (let i = 0; i < array.length; i += 1) {\n yield { prev: array[i - 1], current: array[i], next: array[i + 1] };\n }\n return undefined;\n}\n\n/**\n * The function accepts ticks map and produces an array of tick definitions. The definition\n * consist of tick value, its label and starting and ending index.\n * Function can stretch the ticks regions to allow more text to fit in the cell.\n * To calculate the stretched regions: {min} and {max} values produce the line which is then\n * divided to equal segments. These segments have indices that correspond to CSS grid cells.\n * Then the indices are optimized in the way that every segment is stretched by the half of length\n * between current tick's index and previous tick's index or next tick's index whichever is smaller.\n * |______________|__________|________________________|\n * 1------^ ^----2----^^----3----^ ^------------4\n * @param ticksMap ticks configuration to calculate ticks definition from\n * @param min minimum allowed value in the range\n * @param max maximum allowed value in the range\n * @param stretch flag indicating the regions should be stretched\n * @returns ticks definitions array\n */\nexport const calculateTicksRegions = (\n ticksMap: NonNullable<SliderProps['ticks']>,\n min: number,\n max: number,\n stretch: boolean\n): TickDefinition[] => {\n // calculate initial positions for every tick, the tick segment has the width = 1\n const defs = Object.entries(ticksMap)\n .filter(([tickValue]) => Number(tickValue) >= min && Number(tickValue) <= max)\n .sort(([tickValue1], [tickValue2]) => Number(tickValue1) - Number(tickValue2))\n .map(([tickValue, tickLabel]) => {\n const cell = Number(tickValue) - min + 1; // shift by 'min' value and increment to always start from 1\n const cellStart = cell;\n const cellEnd = cellStart + 1;\n return {\n start: cellStart,\n end: cellEnd,\n value: Number(tickValue),\n label: tickLabel\n };\n });\n\n if (!stretch) return defs;\n\n const maxCell = max - min + 2;\n\n const result = [];\n // extend the tick segments one by one\n // eslint-disable-next-line no-restricted-syntax\n for (const { prev, current, next } of triple(defs)) {\n let start = current.start;\n let end = current.end;\n if (start === 1) {\n // if the tick is marginal (starting) - expand to the 'right'\n end = next ? Math.floor((next.start - end) / 2) + end : maxCell;\n } else if (end === maxCell) {\n // if the tick is marginal (ending) - expand to the 'left'\n start = prev ? Math.floor((start - prev.end) / 2) + prev.end : 1;\n } else {\n // calculate length between current and prev / next tick and choose the smaller value\n const length = Math.min(start - (prev?.end ?? 1), (next?.start ?? maxCell) - end);\n // expand the segment to the left\n start -= Math.floor(length / 2);\n // expand to the right\n end += Math.floor(length / 2);\n }\n result.push({\n start,\n end,\n value: current.value,\n label: current.label\n });\n }\n\n return result;\n};\n\n/**\n * Function for given input returns nearest discrete value from a series {min, max}\n * @param input the value to look for nearest value\n * @param step step value determining discrete series\n * @param min minimal value in the series\n * @param max maximum value in the series\n * @returns nearest value as a number\n */\nexport const getNearestValue = (input: number, min: number, max: number, step: number): number => {\n const output = Math.round(input / step) * step;\n\n const decimals = step.toString().split('.')[1]?.length;\n return Number(output.toFixed(decimals || 0));\n};\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/Slider/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { triple } from '../../utils';\n\nimport SliderProps, { TickDefinition } from './Slider.types';\n\n/**\n * The function accepts ticks map and produces an array of tick definitions. The definition\n * consist of tick value, its label and starting and ending index.\n * Function can stretch the ticks regions to allow more text to fit in the cell.\n * To calculate the stretched regions: {min} and {max} values produce the line which is then\n * divided to equal segments. These segments have indices that correspond to CSS grid cells.\n * Then the indices are optimized in the way that every segment is stretched by the half of length\n * between current tick's index and previous tick's index or next tick's index whichever is smaller.\n * |______________|__________|________________________|\n * 1------^ ^----2----^^----3----^ ^------------4\n * @param ticksMap ticks configuration to calculate ticks definition from\n * @param min minimum allowed value in the range\n * @param max maximum allowed value in the range\n * @param step step in the range\n * @param stretch flag indicating the regions should be stretched\n * @returns ticks definitions array\n */\nexport const calculateTicksRegions = (\n ticksMap: NonNullable<SliderProps['ticks']>,\n min: number,\n max: number,\n step: number,\n stretch: boolean\n): TickDefinition[] => {\n // calculate initial positions for every tick, the tick segment has the width = 1\n const defs = Object.entries(ticksMap)\n .filter(([tickValue]) => Number(tickValue) >= min && Number(tickValue) <= max)\n .sort(([tickValue1], [tickValue2]) => Number(tickValue1) - Number(tickValue2))\n .map(([tickValue, tickLabel]) => {\n const cell = (Number(tickValue) - min) / step + 1; // shift by 'min' value, divide by a step and increment, as index starts from 1\n const cellStart = cell;\n const cellEnd = cellStart + 1;\n return {\n start: cellStart,\n end: cellEnd,\n value: Number(tickValue),\n label: tickLabel\n };\n });\n\n if (!stretch) return defs;\n\n const maxCell = (max - min) / step + 2;\n\n const result = [];\n // extend the tick segments one by one\n // eslint-disable-next-line no-restricted-syntax\n for (const { prev, current, next } of triple(defs)) {\n let start = current.start;\n let end = current.end;\n if (start === 1) {\n // if the tick is marginal (starting) - expand to the 'right'\n end = next ? Math.floor((next.start - end) / 2) + end : maxCell;\n } else if (end === maxCell) {\n // if the tick is marginal (ending) - expand to the 'left'\n start = prev ? Math.floor((start - prev.end) / 2) + prev.end : 1;\n } else {\n // calculate length between current and prev / next tick and choose the smaller value\n const length = Math.min(start - (prev?.end ?? 1), (next?.start ?? maxCell) - end);\n // expand the segment to the left\n start -= Math.floor(length / 2);\n // expand to the right\n end += Math.floor(length / 2);\n }\n result.push({\n start,\n end,\n value: current.value,\n label: current.label\n });\n }\n\n return result;\n};\n\n/**\n * Function for given input returns nearest discrete value from a series {min, max}\n * @param input the value to look for nearest value\n * @param step step value determining discrete series\n * @param min minimal value in the series\n * @param max maximum value in the series\n * @returns nearest value as a number\n */\nexport const getNearestValue = (input: number, min: number, max: number, step: number): number => {\n const output = Math.round(input / step) * step;\n\n const decimals = step.toString().split('.')[1]?.length;\n return Number(output.toFixed(decimals || 0));\n};\n\n/**\n * Function calculates minimum length of the field where any value from the set of possible values will fit in.\n * @param min minimum value\n * @param max maximum value\n * @param step step in range\n * @returns minimum number of characters the field needs\n */\nexport const calculateValueLength = (min: number, max: number, step: number): number => {\n const [minIntegerPart, minDecimalPart = ''] = min.toString().split('.');\n const [maxIntegerPart, maxDecimalPart = ''] = max.toString().split('.');\n const stepDecimalPart = step.toString().split('.')[1] ?? '';\n return (\n Math.max(minIntegerPart.length, maxIntegerPart.length) +\n Math.max(maxDecimalPart.length, minDecimalPart.length, stepDecimalPart.length) +\n (maxDecimalPart || minDecimalPart || stepDecimalPart\n ? 1 // if there's decimal part, reserve a space for the separator\n : 0)\n );\n};\n"]}
@@ -1,9 +1,9 @@
1
- import { FunctionComponent, ReactNode, Ref } from 'react';
1
+ import { FunctionComponent, ReactNode, Ref, ElementType } from 'react';
2
2
  import { GridContainerProps } from '../Grid';
3
3
  import { ForwardProps } from '../../types';
4
4
  export interface SummaryItemProps {
5
5
  /** Region for the primary information. */
6
- primary: ReactNode;
6
+ primary: NonNullable<ReactNode>;
7
7
  /** Region for displaying supporting metadata. */
8
8
  secondary?: ReactNode;
9
9
  /** Region for an Avatar, Icon, or other supporting visual. */
@@ -17,7 +17,7 @@ export interface SummaryItemProps {
17
17
  */
18
18
  overflowStrategy?: 'wrap' | 'ellipsis';
19
19
  /** HTML tag to render the SummaryItem's element with. */
20
- as?: string;
20
+ as?: ElementType;
21
21
  /** Ref for the SummaryItem. */
22
22
  ref?: Ref<HTMLElement>;
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SummaryItem.d.ts","sourceRoot":"","sources":["../../../src/components/SummaryItem/SummaryItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,EAA+B,MAAM,OAAO,CAAC;AAGvF,OAAa,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,OAAO,EAAE,SAAS,CAAC;IACnB,iDAAiD;IACjD,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,oDAAoD;IACpD,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IACvC,yDAAyD;IACzD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,+BAA+B;IAC/B,GAAG,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;CACxB;AAED,eAAO,MAAM,YAAY,yGAOxB,CAAC;AAIF,eAAO,MAAM,aAAa;;uBAEL,gBAAgB,CAAC,kBAAkB,CAAC;SAiBvD,CAAC;AAIH,eAAO,MAAM,eAAe;uBACP,gBAAgB,CAAC,kBAAkB,CAAC;SAYvD,CAAC;AAEH,eAAO,MAAM,wBAAwB,yGAEpC,CAAC;AAEF,eAAO,MAAM,iBAAiB,yGAAe,CAAC;AAgB9C,QAAA,MAAM,WAAW,EAAE,iBAAiB,CAAC,gBAAgB,GAAG,YAAY,CAuDnE,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"SummaryItem.d.ts","sourceRoot":"","sources":["../../../src/components/SummaryItem/SummaryItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,EAA+B,WAAW,EAAE,MAAM,OAAO,CAAC;AAGpG,OAAa,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,iDAAiD;IACjD,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,oDAAoD;IACpD,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IACvC,yDAAyD;IACzD,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,+BAA+B;IAC/B,GAAG,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;CACxB;AAED,eAAO,MAAM,YAAY,yGAOxB,CAAC;AAIF,eAAO,MAAM,aAAa;;uBAEL,gBAAgB,CAAC,kBAAkB,CAAC;SAkBvD,CAAC;AAIH,eAAO,MAAM,eAAe;uBACP,gBAAgB,CAAC,kBAAkB,CAAC;SAYvD,CAAC;AAEH,eAAO,MAAM,wBAAwB,yGAEpC,CAAC;AAEF,eAAO,MAAM,iBAAiB,yGAAe,CAAC;AAgB9C,QAAA,MAAM,WAAW,EAAE,iBAAiB,CAAC,gBAAgB,GAAG,YAAY,CAuDnE,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -17,6 +17,7 @@ export const StyledPrimary = styled(Grid)(({ theme, isString, overflowStrategy }
17
17
  return css `
18
18
  ${overflowStrategy === 'ellipsis'
19
19
  ? css `
20
+ white-space: nowrap;
20
21
  overflow: hidden;
21
22
  text-overflow: ellipsis;
22
23
  `
@@ -54,15 +55,12 @@ const getAreas = ({ secondary, visual, actions }) => {
54
55
  return `"${visual ? 'visual ' : ''}primary${actions ? ' actions' : ''}"${secondary ? `\n"${visual ? 'visual ' : ''}secondary${actions ? ' actions' : ''}"` : ''}`;
55
56
  };
56
57
  const SummaryItem = forwardRef(({ visual, primary, secondary, actions, container, overflowStrategy = 'wrap', as, ...restProps }, ref) => {
57
- return (_jsxs(Grid, Object.assign({}, restProps, { ref: ref, container: {
58
+ return (_jsxs(Grid, { ...restProps, ref: ref, container: {
58
59
  cols: getColumns({ visual, actions }),
59
60
  colGap: 2,
60
61
  areas: getAreas({ secondary, visual, actions }),
61
62
  ...container
62
- }, as: StyledSummaryItem, forwardedAs: as }, { children: [visual && (_jsx(Grid, Object.assign({ as: StyledVisual, item: { area: 'visual', alignSelf: 'center' } }, { children: visual }), void 0)),
63
- _jsx(StyledPrimary, Object.assign({ item: { area: 'primary', alignSelf: secondary ? 'end' : 'center' }, isString: typeof primary === 'string', overflowStrategy: overflowStrategy }, { children: primary }), void 0),
64
- secondary && (_jsx(StyledSecondary, Object.assign({ item: { area: 'secondary', alignSelf: 'start' }, overflowStrategy: overflowStrategy }, { children: secondary }), void 0)),
65
- actions && (_jsx(Grid, Object.assign({ as: StyledSummaryItemActions, item: { area: 'actions', alignSelf: 'center' } }, { children: actions }), void 0))] }), void 0));
63
+ }, as: StyledSummaryItem, forwardedAs: as, children: [visual && (_jsx(Grid, { as: StyledVisual, item: { area: 'visual', alignSelf: 'center' }, children: visual }, void 0)), _jsx(StyledPrimary, { item: { area: 'primary', alignSelf: secondary ? 'end' : 'center' }, isString: typeof primary === 'string', overflowStrategy: overflowStrategy, children: primary }, void 0), secondary && (_jsx(StyledSecondary, { item: { area: 'secondary', alignSelf: 'start' }, overflowStrategy: overflowStrategy, children: secondary }, void 0)), actions && (_jsx(Grid, { as: StyledSummaryItemActions, item: { area: 'actions', alignSelf: 'center' }, children: actions }, void 0))] }, void 0));
66
64
  });
67
65
  export default SummaryItem;
68
66
  //# sourceMappingURL=SummaryItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SummaryItem.js","sourceRoot":"","sources":["../../../src/components/SummaryItem/SummaryItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FunctionComponent, ReactNode, Ref, forwardRef, PropsWithoutRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport Grid, { GridContainerProps } from '../Grid';\nimport { defaultThemeProp } from '../../theme';\nimport { ForwardProps } from '../../types';\nimport { StyledProgressRing } from '../Progress';\n\nexport interface SummaryItemProps {\n /** Region for the primary information. */\n primary: ReactNode;\n /** Region for displaying supporting metadata. */\n secondary?: ReactNode;\n /** Region for an Avatar, Icon, or other supporting visual. */\n visual?: ReactNode;\n /** Region for adding Actions, Buttons, or Links. */\n actions?: ReactNode;\n /* Override the default Grid container props on SummaryItem. */\n container?: GridContainerProps;\n /**\n * Determines how the text within primary and secondary fields should handle overflow.\n * @default \"wrap\"\n */\n overflowStrategy?: 'wrap' | 'ellipsis';\n /** HTML tag to render the SummaryItem's element with. */\n as?: string;\n /** Ref for the SummaryItem. */\n ref?: Ref<HTMLElement>;\n}\n\nexport const StyledVisual = styled.div`\n > ${StyledProgressRing}, img {\n display: block;\n object-fit: cover;\n width: 2rem;\n height: 2rem;\n }\n`;\n\nStyledVisual.defaultProps = defaultThemeProp;\n\nexport const StyledPrimary = styled(Grid)<{\n isString?: boolean;\n overflowStrategy?: SummaryItemProps['overflowStrategy'];\n}>(({ theme, isString, overflowStrategy }) => {\n return css`\n ${overflowStrategy === 'ellipsis'\n ? css`\n overflow: hidden;\n text-overflow: ellipsis;\n `\n : css`\n word-break: break-word;\n `}\n\n ${isString &&\n css`\n font-weight: ${theme.base['font-weight']['semi-bold']};\n `}\n `;\n});\n\nStyledPrimary.defaultProps = defaultThemeProp;\n\nexport const StyledSecondary = styled(Grid)<{\n overflowStrategy?: SummaryItemProps['overflowStrategy'];\n}>(({ overflowStrategy }) => {\n return css`\n ${overflowStrategy === 'ellipsis'\n ? css`\n overflow: hidden;\n text-overflow: ellipsis;\n `\n : css`\n word-break: break-word;\n `}\n `;\n});\n\nexport const StyledSummaryItemActions = styled.div`\n white-space: nowrap;\n`;\n\nexport const StyledSummaryItem = styled.div``;\n\nconst getColumns = ({ visual, actions }: Pick<SummaryItemProps, 'visual' | 'actions'>) => {\n return `${visual ? 'auto ' : ''}minmax(0, 1fr)${actions ? ' auto' : ''}`;\n};\n\nconst getAreas = ({\n secondary,\n visual,\n actions\n}: Pick<SummaryItemProps, 'secondary' | 'visual' | 'actions'>) => {\n return `\"${visual ? 'visual ' : ''}primary${actions ? ' actions' : ''}\"${\n secondary ? `\\n\"${visual ? 'visual ' : ''}secondary${actions ? ' actions' : ''}\"` : ''\n }`;\n};\n\nconst SummaryItem: FunctionComponent<SummaryItemProps & ForwardProps> = forwardRef(\n (\n {\n visual,\n primary,\n secondary,\n actions,\n container,\n overflowStrategy = 'wrap',\n as,\n ...restProps\n }: PropsWithoutRef<SummaryItemProps>,\n ref: SummaryItemProps['ref']\n ) => {\n return (\n <Grid\n {...restProps}\n ref={ref}\n container={{\n cols: getColumns({ visual, actions }),\n colGap: 2,\n areas: getAreas({ secondary, visual, actions }),\n ...container\n }}\n as={StyledSummaryItem}\n forwardedAs={as}\n >\n {visual && (\n <Grid as={StyledVisual} item={{ area: 'visual', alignSelf: 'center' }}>\n {visual}\n </Grid>\n )}\n <StyledPrimary\n item={{ area: 'primary', alignSelf: secondary ? 'end' : 'center' }}\n isString={typeof primary === 'string'}\n overflowStrategy={overflowStrategy}\n >\n {primary}\n </StyledPrimary>\n {secondary && (\n <StyledSecondary\n item={{ area: 'secondary', alignSelf: 'start' }}\n overflowStrategy={overflowStrategy}\n >\n {secondary}\n </StyledSecondary>\n )}\n {actions && (\n <Grid as={StyledSummaryItemActions} item={{ area: 'actions', alignSelf: 'center' }}>\n {actions}\n </Grid>\n )}\n </Grid>\n );\n }\n);\n\nexport default SummaryItem;\n"]}
1
+ {"version":3,"file":"SummaryItem.js","sourceRoot":"","sources":["../../../src/components/SummaryItem/SummaryItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FunctionComponent, ReactNode, Ref, forwardRef, PropsWithoutRef, ElementType } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport Grid, { GridContainerProps } from '../Grid';\nimport { defaultThemeProp } from '../../theme';\nimport { ForwardProps } from '../../types';\nimport { StyledProgressRing } from '../Progress';\n\nexport interface SummaryItemProps {\n /** Region for the primary information. */\n primary: NonNullable<ReactNode>;\n /** Region for displaying supporting metadata. */\n secondary?: ReactNode;\n /** Region for an Avatar, Icon, or other supporting visual. */\n visual?: ReactNode;\n /** Region for adding Actions, Buttons, or Links. */\n actions?: ReactNode;\n /* Override the default Grid container props on SummaryItem. */\n container?: GridContainerProps;\n /**\n * Determines how the text within primary and secondary fields should handle overflow.\n * @default \"wrap\"\n */\n overflowStrategy?: 'wrap' | 'ellipsis';\n /** HTML tag to render the SummaryItem's element with. */\n as?: ElementType;\n /** Ref for the SummaryItem. */\n ref?: Ref<HTMLElement>;\n}\n\nexport const StyledVisual = styled.div`\n > ${StyledProgressRing}, img {\n display: block;\n object-fit: cover;\n width: 2rem;\n height: 2rem;\n }\n`;\n\nStyledVisual.defaultProps = defaultThemeProp;\n\nexport const StyledPrimary = styled(Grid)<{\n isString?: boolean;\n overflowStrategy?: SummaryItemProps['overflowStrategy'];\n}>(({ theme, isString, overflowStrategy }) => {\n return css`\n ${overflowStrategy === 'ellipsis'\n ? css`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n `\n : css`\n word-break: break-word;\n `}\n\n ${isString &&\n css`\n font-weight: ${theme.base['font-weight']['semi-bold']};\n `}\n `;\n});\n\nStyledPrimary.defaultProps = defaultThemeProp;\n\nexport const StyledSecondary = styled(Grid)<{\n overflowStrategy?: SummaryItemProps['overflowStrategy'];\n}>(({ overflowStrategy }) => {\n return css`\n ${overflowStrategy === 'ellipsis'\n ? css`\n overflow: hidden;\n text-overflow: ellipsis;\n `\n : css`\n word-break: break-word;\n `}\n `;\n});\n\nexport const StyledSummaryItemActions = styled.div`\n white-space: nowrap;\n`;\n\nexport const StyledSummaryItem = styled.div``;\n\nconst getColumns = ({ visual, actions }: Pick<SummaryItemProps, 'visual' | 'actions'>) => {\n return `${visual ? 'auto ' : ''}minmax(0, 1fr)${actions ? ' auto' : ''}`;\n};\n\nconst getAreas = ({\n secondary,\n visual,\n actions\n}: Pick<SummaryItemProps, 'secondary' | 'visual' | 'actions'>) => {\n return `\"${visual ? 'visual ' : ''}primary${actions ? ' actions' : ''}\"${\n secondary ? `\\n\"${visual ? 'visual ' : ''}secondary${actions ? ' actions' : ''}\"` : ''\n }`;\n};\n\nconst SummaryItem: FunctionComponent<SummaryItemProps & ForwardProps> = forwardRef(\n (\n {\n visual,\n primary,\n secondary,\n actions,\n container,\n overflowStrategy = 'wrap',\n as,\n ...restProps\n }: PropsWithoutRef<SummaryItemProps>,\n ref: SummaryItemProps['ref']\n ) => {\n return (\n <Grid\n {...restProps}\n ref={ref}\n container={{\n cols: getColumns({ visual, actions }),\n colGap: 2,\n areas: getAreas({ secondary, visual, actions }),\n ...container\n }}\n as={StyledSummaryItem}\n forwardedAs={as}\n >\n {visual && (\n <Grid as={StyledVisual} item={{ area: 'visual', alignSelf: 'center' }}>\n {visual}\n </Grid>\n )}\n <StyledPrimary\n item={{ area: 'primary', alignSelf: secondary ? 'end' : 'center' }}\n isString={typeof primary === 'string'}\n overflowStrategy={overflowStrategy}\n >\n {primary}\n </StyledPrimary>\n {secondary && (\n <StyledSecondary\n item={{ area: 'secondary', alignSelf: 'start' }}\n overflowStrategy={overflowStrategy}\n >\n {secondary}\n </StyledSecondary>\n )}\n {actions && (\n <Grid as={StyledSummaryItemActions} item={{ area: 'actions', alignSelf: 'center' }}>\n {actions}\n </Grid>\n )}\n </Grid>\n );\n }\n);\n\nexport default SummaryItem;\n"]}
@@ -1,7 +1,8 @@
1
1
  import { Ref, FC } from 'react';
2
- import { NoItemsProps } from '../NoItems';
2
+ import { EmptyStateProps } from '../EmptyState';
3
3
  import { ForwardProps, NoChildrenProp, OmitStrict, Action } from '../../types';
4
4
  import SummaryItem, { SummaryItemProps } from '../SummaryItem';
5
+ import type { ErrorStateProps } from '../ErrorState';
5
6
  export interface SummaryListProps extends NoChildrenProp {
6
7
  /** Name of the utility to be used as its heading along with associated actions and aria attributes. */
7
8
  name?: string;
@@ -18,7 +19,12 @@ export interface SummaryListProps extends NoChildrenProp {
18
19
  /** User click initiated callback for when to show view all modal. List lengths less than the count prop will display a "View all" button with this function is bound to. */
19
20
  onViewAll?: (callback: Function) => void;
20
21
  /** A simple message to display when there are no items. */
21
- noItemsText?: NoItemsProps['message'];
22
+ noItemsText?: EmptyStateProps['message'];
23
+ /**
24
+ * Indicate an error occurred while acquiring data for the list.
25
+ * The default error state may be overridden with custom props.
26
+ */
27
+ error?: boolean | ErrorStateProps;
22
28
  /** Ref for the SummaryList's root element. */
23
29
  ref?: Ref<HTMLElement>;
24
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SummaryList.d.ts","sourceRoot":"","sources":["../../../src/components/SummaryList/SummaryList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,GAAG,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAStE,OAAgB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI/E,OAAO,WAAW,EAAE,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAI/D,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,uGAAuG;IACvG,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wHAAwH;IACxH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,qKAAqK;IACrK,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,4KAA4K;IAC5K,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IACzC,2DAA2D;IAC3D,WAAW,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IACtC,+CAA+C;IAC/C,GAAG,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;CACxB;AAED,MAAM,WAAW,eAAgB,SAAQ,UAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAAE,YAAY;IAC5F,yCAAyC;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,oIAAoI;IACpI,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,eAAO,MAAM,wBAAwB;;SAapC,CAAC;AAIF,eAAO,MAAM,qBAAqB,EAAE,OAAO,WAS1C,CAAC;AAIF,eAAO,MAAM,gBAAgB,cAAe,KAAK,gBAAgB,EAAE,OAAO,CAAC,gBAe1E,CAAC;AAEF,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,GAAG,YAAY,CA4DpD,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"SummaryList.d.ts","sourceRoot":"","sources":["../../../src/components/SummaryList/SummaryList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,GAAG,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAStE,OAAmB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI/E,OAAO,WAAW,EAAE,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,uGAAuG;IACvG,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wHAAwH;IACxH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,qKAAqK;IACrK,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,4KAA4K;IAC5K,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IACzC,2DAA2D;IAC3D,WAAW,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACzC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;IAClC,+CAA+C;IAC/C,GAAG,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;CACxB;AAED,MAAM,WAAW,eAAgB,SAAQ,UAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAAE,YAAY;IAC5F,yCAAyC;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,oIAAoI;IACpI,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,eAAO,MAAM,wBAAwB;;SAapC,CAAC;AAIF,eAAO,MAAM,qBAAqB,EAAE,OAAO,WAS1C,CAAC;AAIF,eAAO,MAAM,gBAAgB,cAAe,KAAK,gBAAgB,EAAE,OAAO,CAAC,gBAe1E,CAAC;AAEF,QAAA,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,GAAG,YAAY,CAiEpD,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -7,13 +7,14 @@ import Text from '../Text';
7
7
  import Count from '../Badges/Count';
8
8
  import Icon from '../Icon';
9
9
  import Card, { CardHeader, CardContent, CardFooter } from '../Card';
10
- import NoItems from '../NoItems';
10
+ import EmptyState from '../EmptyState';
11
11
  import { omitProps } from '../../styles';
12
12
  import { useI18n } from '../../hooks';
13
13
  import { defaultThemeProp } from '../../theme';
14
14
  import SummaryItem from '../SummaryItem';
15
15
  import Progress from '../Progress';
16
16
  import Button from '../Button';
17
+ import ErrorState from '../ErrorState';
17
18
  export const StyledSummaryListContent = styled(CardContent).withConfig(omitProps('loading'))(({ theme, loading }) => css `
18
19
  ${loading &&
19
20
  css `
@@ -35,23 +36,21 @@ export const StyledSummaryListItem = styled(SummaryItem)(({ theme }) => css `
35
36
  StyledSummaryListItem.defaultProps = defaultThemeProp;
36
37
  export const SummaryListItems = ({ items }) => {
37
38
  return (_jsx("ul", { children: items.map(({ id, actions: itemActions, ...restItemProps }) => {
38
- return (_jsx(StyledSummaryListItem, Object.assign({}, restItemProps, { forwardedAs: 'li', actions: itemActions && _jsx(Actions, { items: itemActions }, void 0) }), id));
39
+ return (_jsx(StyledSummaryListItem, { ...restItemProps, forwardedAs: 'li', actions: itemActions && _jsx(Actions, { items: itemActions }, void 0) }, id));
39
40
  }) }, void 0));
40
41
  };
41
- const SummaryList = forwardRef(({ icon, name, count, actions, items, onViewAll, loading, noItemsText, ...restProps }, ref) => {
42
+ const SummaryList = forwardRef(({ icon, name, count, actions, items, onViewAll, loading, noItemsText, error, ...restProps }, ref) => {
42
43
  const t = useI18n();
43
44
  const content = useMemo(() => {
44
45
  if (loading) {
45
46
  return (_jsx(Progress, { placement: 'local', message: typeof loading === 'string' ? loading : undefined }, void 0));
46
47
  }
47
- return items.length > 0 ? (_jsx(SummaryListItems, { items: items }, void 0)) : (_jsx(NoItems, { message: noItemsText }, void 0));
48
- }, [loading, items, noItemsText]);
49
- return (_jsxs(Card, Object.assign({ ref: ref }, restProps, { children: [(icon || name || typeof count === 'number' || actions) && (_jsxs(CardHeader, { children: [_jsxs(Flex, Object.assign({ container: { alignItems: 'center', gap: 1 } }, { children: [icon && _jsx(Icon, { name: icon }, void 0),
50
- name && _jsx(Text, Object.assign({ variant: 'h2' }, { children: name }), void 0),
51
- typeof count === 'number' && _jsx(Count, { children: count }, void 0)] }), void 0),
52
- actions && _jsx(Actions, { items: actions }, void 0)] }, void 0)),
53
- _jsx(StyledSummaryListContent, Object.assign({ loading: loading }, { children: content }), void 0),
54
- typeof count === 'number' && count > items.length && onViewAll && (_jsx(CardFooter, Object.assign({ justify: 'center' }, { children: _jsx(Button, Object.assign({ variant: 'link', "aria-label": name ? t('view_all_noun', name) : t('view_all'), onClick: onViewAll }, { children: t('view_all') }), void 0) }), void 0))] }), void 0));
48
+ if (error) {
49
+ return _jsx(ErrorState, { ...(error === true ? {} : error) }, void 0);
50
+ }
51
+ return items.length > 0 ? (_jsx(SummaryListItems, { items: items }, void 0)) : (_jsx(EmptyState, { message: noItemsText }, void 0));
52
+ }, [loading, items, noItemsText, error]);
53
+ return (_jsxs(Card, { ref: ref, ...restProps, children: [(icon || name || typeof count === 'number' || actions) && (_jsxs(CardHeader, { children: [_jsxs(Flex, { container: { alignItems: 'center', gap: 1 }, children: [icon && _jsx(Icon, { name: icon }, void 0), name && _jsx(Text, { variant: 'h2', children: name }, void 0), typeof count === 'number' && _jsx(Count, { children: count }, void 0)] }, void 0), actions && _jsx(Actions, { items: actions }, void 0)] }, void 0)), _jsx(StyledSummaryListContent, { loading: loading, children: content }, void 0), !error && typeof count === 'number' && count > items.length && onViewAll && (_jsx(CardFooter, { justify: 'center', children: _jsx(Button, { variant: 'link', "aria-label": name ? t('view_all_noun', [name.toLowerCase()]) : t('view_all'), onClick: onViewAll, children: t('view_all') }, void 0) }, void 0))] }, void 0));
55
54
  });
56
55
  export default SummaryList;
57
56
  //# sourceMappingURL=SummaryList.js.map