@pega/cosmos-react-core 2.0.0-dev.9.1 → 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 (738) 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 +2 -1
  5. package/lib/components/AppShell/AppHeader.d.ts.map +1 -1
  6. package/lib/components/AppShell/AppHeader.js +4 -9
  7. package/lib/components/AppShell/AppHeader.js.map +1 -1
  8. package/lib/components/AppShell/AppShell.d.ts.map +1 -1
  9. package/lib/components/AppShell/AppShell.js +89 -62
  10. package/lib/components/AppShell/AppShell.js.map +1 -1
  11. package/lib/components/AppShell/AppShell.styles.d.ts +19 -16
  12. package/lib/components/AppShell/AppShell.styles.d.ts.map +1 -1
  13. package/lib/components/AppShell/AppShell.styles.js +227 -173
  14. package/lib/components/AppShell/AppShell.styles.js.map +1 -1
  15. package/lib/components/AppShell/AppShell.types.d.ts +5 -5
  16. package/lib/components/AppShell/AppShell.types.d.ts.map +1 -1
  17. package/lib/components/AppShell/AppShell.types.js.map +1 -1
  18. package/lib/components/AppShell/AppShellContext.d.ts +3 -0
  19. package/lib/components/AppShell/AppShellContext.d.ts.map +1 -1
  20. package/lib/components/AppShell/AppShellContext.js +3 -1
  21. package/lib/components/AppShell/AppShellContext.js.map +1 -1
  22. package/lib/components/AppShell/AppShellList.d.ts +4 -3
  23. package/lib/components/AppShell/AppShellList.d.ts.map +1 -1
  24. package/lib/components/AppShell/AppShellList.js +24 -19
  25. package/lib/components/AppShell/AppShellList.js.map +1 -1
  26. package/lib/components/AppShell/Drawer.d.ts.map +1 -1
  27. package/lib/components/AppShell/Drawer.js +7 -8
  28. package/lib/components/AppShell/Drawer.js.map +1 -1
  29. package/lib/components/AppShell/Operator.js +3 -5
  30. package/lib/components/AppShell/Operator.js.map +1 -1
  31. package/lib/components/AppShell/SkipNavigation.d.ts.map +1 -1
  32. package/lib/components/AppShell/SkipNavigation.js +30 -39
  33. package/lib/components/AppShell/SkipNavigation.js.map +1 -1
  34. package/lib/components/Avatar/Avatar.d.ts.map +1 -1
  35. package/lib/components/Avatar/Avatar.js +5 -4
  36. package/lib/components/Avatar/Avatar.js.map +1 -1
  37. package/lib/components/Backdrop/Backdrop.d.ts +1 -1
  38. package/lib/components/Backdrop/Backdrop.d.ts.map +1 -1
  39. package/lib/components/Backdrop/Backdrop.js +7 -6
  40. package/lib/components/Backdrop/Backdrop.js.map +1 -1
  41. package/lib/components/Badges/Alert.js +1 -1
  42. package/lib/components/Badges/Alert.js.map +1 -1
  43. package/lib/components/Badges/Count.js +1 -1
  44. package/lib/components/Badges/Count.js.map +1 -1
  45. package/lib/components/Badges/Selection.d.ts.map +1 -1
  46. package/lib/components/Badges/Selection.js +10 -9
  47. package/lib/components/Badges/Selection.js.map +1 -1
  48. package/lib/components/Badges/Status.d.ts +2 -2
  49. package/lib/components/Badges/Status.d.ts.map +1 -1
  50. package/lib/components/Badges/Status.js +1 -1
  51. package/lib/components/Badges/Status.js.map +1 -1
  52. package/lib/components/Badges/Tag.js +1 -1
  53. package/lib/components/Badges/Tag.js.map +1 -1
  54. package/lib/components/Banner/Banner.d.ts.map +1 -1
  55. package/lib/components/Banner/Banner.js +6 -8
  56. package/lib/components/Banner/Banner.js.map +1 -1
  57. package/lib/components/Boolean/BooleanDisplay.js +1 -2
  58. package/lib/components/Boolean/BooleanDisplay.js.map +1 -1
  59. package/lib/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  60. package/lib/components/Breadcrumbs/Breadcrumbs.js +13 -11
  61. package/lib/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
  62. package/lib/components/Button/BareButton.d.ts.map +1 -1
  63. package/lib/components/Button/BareButton.js +21 -2
  64. package/lib/components/Button/BareButton.js.map +1 -1
  65. package/lib/components/Button/BareRoleButton.d.ts +12 -0
  66. package/lib/components/Button/BareRoleButton.d.ts.map +1 -0
  67. package/lib/components/Button/BareRoleButton.js +20 -0
  68. package/lib/components/Button/BareRoleButton.js.map +1 -0
  69. package/lib/components/Button/Button.d.ts +5 -0
  70. package/lib/components/Button/Button.d.ts.map +1 -1
  71. package/lib/components/Button/Button.js +34 -10
  72. package/lib/components/Button/Button.js.map +1 -1
  73. package/lib/components/Card/Card.d.ts.map +1 -1
  74. package/lib/components/Card/Card.js +3 -2
  75. package/lib/components/Card/Card.js.map +1 -1
  76. package/lib/components/Card/CardContent.d.ts.map +1 -1
  77. package/lib/components/Card/CardContent.js +5 -4
  78. package/lib/components/Card/CardContent.js.map +1 -1
  79. package/lib/components/Card/CardFooter.d.ts.map +1 -1
  80. package/lib/components/Card/CardFooter.js +5 -4
  81. package/lib/components/Card/CardFooter.js.map +1 -1
  82. package/lib/components/Card/CardHeader.d.ts +3 -1
  83. package/lib/components/Card/CardHeader.d.ts.map +1 -1
  84. package/lib/components/Card/CardHeader.js +9 -7
  85. package/lib/components/Card/CardHeader.js.map +1 -1
  86. package/lib/components/Card/CardMedia.js +1 -1
  87. package/lib/components/Card/CardMedia.js.map +1 -1
  88. package/lib/components/Card/CollapsibleCard.d.ts.map +1 -1
  89. package/lib/components/Card/CollapsibleCard.js +5 -7
  90. package/lib/components/Card/CollapsibleCard.js.map +1 -1
  91. package/lib/components/Card/SelectableCard.js +1 -1
  92. package/lib/components/Card/SelectableCard.js.map +1 -1
  93. package/lib/components/Checkbox/Checkbox.js +1 -1
  94. package/lib/components/Checkbox/Checkbox.js.map +1 -1
  95. package/lib/components/ColorPicker/ColorPicker.js +8 -11
  96. package/lib/components/ColorPicker/ColorPicker.js.map +1 -1
  97. package/lib/components/ComboBox/ComboBox.d.ts +1 -1
  98. package/lib/components/ComboBox/ComboBox.d.ts.map +1 -1
  99. package/lib/components/ComboBox/ComboBox.js +30 -33
  100. package/lib/components/ComboBox/ComboBox.js.map +1 -1
  101. package/lib/components/ComboBox/ComboBoxInput.js +4 -4
  102. package/lib/components/ComboBox/ComboBoxInput.js.map +1 -1
  103. package/lib/components/ComboBox/MultiSelectInput/MultiSelectInput.d.ts.map +1 -1
  104. package/lib/components/ComboBox/MultiSelectInput/MultiSelectInput.js +23 -29
  105. package/lib/components/ComboBox/MultiSelectInput/MultiSelectInput.js.map +1 -1
  106. package/lib/components/ComboBox/SingleSelectInput/SingleSelectInput.d.ts.map +1 -1
  107. package/lib/components/ComboBox/SingleSelectInput/SingleSelectInput.js +16 -12
  108. package/lib/components/ComboBox/SingleSelectInput/SingleSelectInput.js.map +1 -1
  109. package/lib/components/Configuration/Configuration.js +11 -13
  110. package/lib/components/Configuration/Configuration.js.map +1 -1
  111. package/lib/components/Currency/CurrencyDisplay.d.ts +4 -0
  112. package/lib/components/Currency/CurrencyDisplay.d.ts.map +1 -1
  113. package/lib/components/Currency/CurrencyDisplay.js +11 -7
  114. package/lib/components/Currency/CurrencyDisplay.js.map +1 -1
  115. package/lib/components/Currency/CurrencyInput.d.ts.map +1 -1
  116. package/lib/components/Currency/CurrencyInput.js +16 -16
  117. package/lib/components/Currency/CurrencyInput.js.map +1 -1
  118. package/lib/components/Currency/CurrencyInput.types.d.ts +4 -0
  119. package/lib/components/Currency/CurrencyInput.types.d.ts.map +1 -1
  120. package/lib/components/Currency/CurrencyInput.types.js.map +1 -1
  121. package/lib/components/Currency/utils.d.ts +12 -1
  122. package/lib/components/Currency/utils.d.ts.map +1 -1
  123. package/lib/components/Currency/utils.js +30 -2
  124. package/lib/components/Currency/utils.js.map +1 -1
  125. package/lib/components/DateTime/DateTimeDisplay.d.ts +1 -1
  126. package/lib/components/DateTime/DateTimeDisplay.d.ts.map +1 -1
  127. package/lib/components/DateTime/DateTimeDisplay.js +14 -3
  128. package/lib/components/DateTime/DateTimeDisplay.js.map +1 -1
  129. package/lib/components/DateTime/DurationDisplay.d.ts.map +1 -1
  130. package/lib/components/DateTime/DurationDisplay.js +11 -6
  131. package/lib/components/DateTime/DurationDisplay.js.map +1 -1
  132. package/lib/components/DateTime/Input/DateInput.d.ts.map +1 -1
  133. package/lib/components/DateTime/Input/DateInput.js +25 -27
  134. package/lib/components/DateTime/Input/DateInput.js.map +1 -1
  135. package/lib/components/DateTime/Input/DateRangeInput.d.ts.map +1 -1
  136. package/lib/components/DateTime/Input/DateRangeInput.js +10 -16
  137. package/lib/components/DateTime/Input/DateRangeInput.js.map +1 -1
  138. package/lib/components/DateTime/Input/DateTime.styles.d.ts.map +1 -1
  139. package/lib/components/DateTime/Input/DateTime.styles.js +14 -3
  140. package/lib/components/DateTime/Input/DateTime.styles.js.map +1 -1
  141. package/lib/components/DateTime/Input/DateTimeInput.d.ts.map +1 -1
  142. package/lib/components/DateTime/Input/DateTimeInput.js +42 -42
  143. package/lib/components/DateTime/Input/DateTimeInput.js.map +1 -1
  144. package/lib/components/DateTime/Input/DayOfWeekInput.d.ts.map +1 -1
  145. package/lib/components/DateTime/Input/DayOfWeekInput.js +7 -5
  146. package/lib/components/DateTime/Input/DayOfWeekInput.js.map +1 -1
  147. package/lib/components/DateTime/Input/Duration/DurationInput.d.ts.map +1 -1
  148. package/lib/components/DateTime/Input/Duration/DurationInput.js +3 -3
  149. package/lib/components/DateTime/Input/Duration/DurationInput.js.map +1 -1
  150. package/lib/components/DateTime/Input/Duration/NumberUnit.js +4 -5
  151. package/lib/components/DateTime/Input/Duration/NumberUnit.js.map +1 -1
  152. package/lib/components/DateTime/Input/Duration/Time.d.ts.map +1 -1
  153. package/lib/components/DateTime/Input/Duration/Time.js +12 -15
  154. package/lib/components/DateTime/Input/Duration/Time.js.map +1 -1
  155. package/lib/components/DateTime/Input/MonthInput.d.ts.map +1 -1
  156. package/lib/components/DateTime/Input/MonthInput.js +12 -17
  157. package/lib/components/DateTime/Input/MonthInput.js.map +1 -1
  158. package/lib/components/DateTime/Input/PartInput.js +3 -4
  159. package/lib/components/DateTime/Input/PartInput.js.map +1 -1
  160. package/lib/components/DateTime/Input/QuarterInput.d.ts +9 -0
  161. package/lib/components/DateTime/Input/QuarterInput.d.ts.map +1 -0
  162. package/lib/components/DateTime/Input/QuarterInput.js +102 -0
  163. package/lib/components/DateTime/Input/QuarterInput.js.map +1 -0
  164. package/lib/components/DateTime/Input/TimeInput.d.ts.map +1 -1
  165. package/lib/components/DateTime/Input/TimeInput.js +26 -30
  166. package/lib/components/DateTime/Input/TimeInput.js.map +1 -1
  167. package/lib/components/DateTime/Input/WeekInput.d.ts.map +1 -1
  168. package/lib/components/DateTime/Input/WeekInput.js +22 -23
  169. package/lib/components/DateTime/Input/WeekInput.js.map +1 -1
  170. package/lib/components/DateTime/Input/useAutoFocusNextInput.d.ts.map +1 -1
  171. package/lib/components/DateTime/Input/useAutoFocusNextInput.js +8 -9
  172. package/lib/components/DateTime/Input/useAutoFocusNextInput.js.map +1 -1
  173. package/lib/components/DateTime/Input/usePickerButton.js +4 -4
  174. package/lib/components/DateTime/Input/usePickerButton.js.map +1 -1
  175. package/lib/components/DateTime/Input/utils.d.ts +7 -0
  176. package/lib/components/DateTime/Input/utils.d.ts.map +1 -1
  177. package/lib/components/DateTime/Input/utils.js +52 -10
  178. package/lib/components/DateTime/Input/utils.js.map +1 -1
  179. package/lib/components/DateTime/Picker/Calendar.d.ts.map +1 -1
  180. package/lib/components/DateTime/Picker/Calendar.js +47 -72
  181. package/lib/components/DateTime/Picker/Calendar.js.map +1 -1
  182. package/lib/components/DateTime/Picker/Calendar.styles.d.ts +2 -2
  183. package/lib/components/DateTime/Picker/Calendar.styles.d.ts.map +1 -1
  184. package/lib/components/DateTime/Picker/Calendar.styles.js +16 -7
  185. package/lib/components/DateTime/Picker/Calendar.styles.js.map +1 -1
  186. package/lib/components/DateTime/Picker/DatePicker.d.ts.map +1 -1
  187. package/lib/components/DateTime/Picker/DatePicker.js +13 -17
  188. package/lib/components/DateTime/Picker/DatePicker.js.map +1 -1
  189. package/lib/components/DateTime/Picker/DateRangePicker.d.ts.map +1 -1
  190. package/lib/components/DateTime/Picker/DateRangePicker.js +13 -17
  191. package/lib/components/DateTime/Picker/DateRangePicker.js.map +1 -1
  192. package/lib/components/DateTime/Picker/TimePicker.js +9 -10
  193. package/lib/components/DateTime/Picker/TimePicker.js.map +1 -1
  194. package/lib/components/DateTime/Picker/Weeks.js +9 -11
  195. package/lib/components/DateTime/Picker/Weeks.js.map +1 -1
  196. package/lib/components/DateTime/Picker/utils.d.ts +1 -0
  197. package/lib/components/DateTime/Picker/utils.d.ts.map +1 -1
  198. package/lib/components/DateTime/Picker/utils.js +3 -0
  199. package/lib/components/DateTime/Picker/utils.js.map +1 -1
  200. package/lib/components/DateTime/index.d.ts +2 -0
  201. package/lib/components/DateTime/index.d.ts.map +1 -1
  202. package/lib/components/DateTime/index.js +1 -0
  203. package/lib/components/DateTime/index.js.map +1 -1
  204. package/lib/components/Drawer/Drawer.js +6 -6
  205. package/lib/components/Drawer/Drawer.js.map +1 -1
  206. package/lib/components/Email/EmailDisplay.js +2 -2
  207. package/lib/components/Email/EmailDisplay.js.map +1 -1
  208. package/lib/components/EmojiPicker/EmojiDisplay.d.ts.map +1 -1
  209. package/lib/components/EmojiPicker/EmojiDisplay.js +1 -1
  210. package/lib/components/EmojiPicker/EmojiDisplay.js.map +1 -1
  211. package/lib/components/EmojiPicker/EmojiPicker.js +3 -4
  212. package/lib/components/EmojiPicker/EmojiPicker.js.map +1 -1
  213. package/lib/components/EmptyState/EmptyState.d.ts +14 -0
  214. package/lib/components/EmptyState/EmptyState.d.ts.map +1 -0
  215. package/lib/components/{NoItems/NoItems.js → EmptyState/EmptyState.js} +11 -8
  216. package/lib/components/EmptyState/EmptyState.js.map +1 -0
  217. package/lib/components/EmptyState/index.d.ts +4 -0
  218. package/lib/components/EmptyState/index.d.ts.map +1 -0
  219. package/lib/components/EmptyState/index.js +3 -0
  220. package/lib/components/EmptyState/index.js.map +1 -0
  221. package/lib/components/ErrorState/ErrorState.d.ts +16 -0
  222. package/lib/components/ErrorState/ErrorState.d.ts.map +1 -0
  223. package/lib/components/ErrorState/ErrorState.js +31 -0
  224. package/lib/components/ErrorState/ErrorState.js.map +1 -0
  225. package/lib/components/ErrorState/index.d.ts +4 -0
  226. package/lib/components/ErrorState/index.d.ts.map +1 -0
  227. package/lib/components/ErrorState/index.js +3 -0
  228. package/lib/components/ErrorState/index.js.map +1 -0
  229. package/lib/components/ExpandCollapse/ExpandCollapse.js +5 -5
  230. package/lib/components/ExpandCollapse/ExpandCollapse.js.map +1 -1
  231. package/lib/components/FieldGroup/FieldGroup.d.ts.map +1 -1
  232. package/lib/components/FieldGroup/FieldGroup.js +6 -7
  233. package/lib/components/FieldGroup/FieldGroup.js.map +1 -1
  234. package/lib/components/FieldGroup/FieldGroupList.d.ts.map +1 -1
  235. package/lib/components/FieldGroup/FieldGroupList.js +7 -6
  236. package/lib/components/FieldGroup/FieldGroupList.js.map +1 -1
  237. package/lib/components/FieldValueList/FieldValueList.js +5 -7
  238. package/lib/components/FieldValueList/FieldValueList.js.map +1 -1
  239. package/lib/components/File/FileDisplay.d.ts +4 -1
  240. package/lib/components/File/FileDisplay.d.ts.map +1 -1
  241. package/lib/components/File/FileDisplay.js +7 -7
  242. package/lib/components/File/FileDisplay.js.map +1 -1
  243. package/lib/components/File/FileInput.d.ts +1 -1
  244. package/lib/components/File/FileInput.d.ts.map +1 -1
  245. package/lib/components/File/FileInput.js +18 -19
  246. package/lib/components/File/FileInput.js.map +1 -1
  247. package/lib/components/File/FileItem.js +2 -3
  248. package/lib/components/File/FileItem.js.map +1 -1
  249. package/lib/components/File/FileUploadItem.d.ts +2 -0
  250. package/lib/components/File/FileUploadItem.d.ts.map +1 -1
  251. package/lib/components/File/FileUploadItem.js +43 -12
  252. package/lib/components/File/FileUploadItem.js.map +1 -1
  253. package/lib/components/File/FileVisual.d.ts +5 -7
  254. package/lib/components/File/FileVisual.d.ts.map +1 -1
  255. package/lib/components/File/FileVisual.js +51 -43
  256. package/lib/components/File/FileVisual.js.map +1 -1
  257. package/lib/components/File/utils.js +2 -3
  258. package/lib/components/File/utils.js.map +1 -1
  259. package/lib/components/Flex/Flex.d.ts +17 -7
  260. package/lib/components/Flex/Flex.d.ts.map +1 -1
  261. package/lib/components/Flex/Flex.js +21 -5
  262. package/lib/components/Flex/Flex.js.map +1 -1
  263. package/lib/components/Form/Form.d.ts +7 -1
  264. package/lib/components/Form/Form.d.ts.map +1 -1
  265. package/lib/components/Form/Form.js +5 -4
  266. package/lib/components/Form/Form.js.map +1 -1
  267. package/lib/components/FormControl/FormControl.d.ts +1 -1
  268. package/lib/components/FormControl/FormControl.d.ts.map +1 -1
  269. package/lib/components/FormControl/FormControl.js +1 -1
  270. package/lib/components/FormControl/FormControl.js.map +1 -1
  271. package/lib/components/FormField/FormField.d.ts +5 -7
  272. package/lib/components/FormField/FormField.d.ts.map +1 -1
  273. package/lib/components/FormField/FormField.js +9 -19
  274. package/lib/components/FormField/FormField.js.map +1 -1
  275. package/lib/components/Grid/Grid.d.ts +1 -1
  276. package/lib/components/Grid/Grid.d.ts.map +1 -1
  277. package/lib/components/Grid/Grid.js +13 -17
  278. package/lib/components/Grid/Grid.js.map +1 -1
  279. package/lib/components/Icon/Icon.js +3 -5
  280. package/lib/components/Icon/Icon.js.map +1 -1
  281. package/lib/components/Icon/iconNames.d.ts +1 -1
  282. package/lib/components/Icon/iconNames.d.ts.map +1 -1
  283. package/lib/components/Icon/iconNames.js +2 -0
  284. package/lib/components/Icon/iconNames.js.map +1 -1
  285. package/lib/components/Icon/icons/compass-solid.icon.js +1 -2
  286. package/lib/components/Icon/icons/compass-solid.icon.js.map +1 -1
  287. package/lib/components/Icon/icons/dataviz-table-with-bars.icon.js +1 -4
  288. package/lib/components/Icon/icons/dataviz-table-with-bars.icon.js.map +1 -1
  289. package/lib/components/Icon/icons/dataviz-table-with-cross.icon.js +1 -2
  290. package/lib/components/Icon/icons/dataviz-table-with-cross.icon.js.map +1 -1
  291. package/lib/components/Icon/icons/dataviz-waterfall.icon.js +1 -5
  292. package/lib/components/Icon/icons/dataviz-waterfall.icon.js.map +1 -1
  293. package/lib/components/Icon/icons/dock.icon.d.ts +4 -0
  294. package/lib/components/Icon/icons/dock.icon.d.ts.map +1 -0
  295. package/lib/components/Icon/icons/dock.icon.js +6 -0
  296. package/lib/components/Icon/icons/dock.icon.js.map +1 -0
  297. package/lib/components/Icon/icons/filetype-text.icon.js +1 -4
  298. package/lib/components/Icon/icons/filetype-text.icon.js.map +1 -1
  299. package/lib/components/Icon/icons/folder-dollar.icon.js +1 -2
  300. package/lib/components/Icon/icons/folder-dollar.icon.js.map +1 -1
  301. package/lib/components/Icon/icons/freeze-column.icon.js +1 -2
  302. package/lib/components/Icon/icons/freeze-column.icon.js.map +1 -1
  303. package/lib/components/Icon/icons/galaxy.icon.js +1 -3
  304. package/lib/components/Icon/icons/galaxy.icon.js.map +1 -1
  305. package/lib/components/Icon/icons/grad-solid.icon.js +1 -2
  306. package/lib/components/Icon/icons/grad-solid.icon.js.map +1 -1
  307. package/lib/components/Icon/icons/grad.icon.js +1 -5
  308. package/lib/components/Icon/icons/grad.icon.js.map +1 -1
  309. package/lib/components/Icon/icons/list-number.icon.js +1 -6
  310. package/lib/components/Icon/icons/list-number.icon.js.map +1 -1
  311. package/lib/components/Icon/icons/list.icon.js +1 -6
  312. package/lib/components/Icon/icons/list.icon.js.map +1 -1
  313. package/lib/components/Icon/icons/pin.icon.js +1 -2
  314. package/lib/components/Icon/icons/pin.icon.js.map +1 -1
  315. package/lib/components/Icon/icons/search-solid.icon.js +1 -2
  316. package/lib/components/Icon/icons/search-solid.icon.js.map +1 -1
  317. package/lib/components/Icon/icons/tracer.icon.js +1 -2
  318. package/lib/components/Icon/icons/tracer.icon.js.map +1 -1
  319. package/lib/components/Icon/icons/tribox-solid.icon.js +1 -3
  320. package/lib/components/Icon/icons/tribox-solid.icon.js.map +1 -1
  321. package/lib/components/Icon/icons/tribox.icon.js +1 -3
  322. package/lib/components/Icon/icons/tribox.icon.js.map +1 -1
  323. package/lib/components/Icon/icons/undock.icon.d.ts +4 -0
  324. package/lib/components/Icon/icons/undock.icon.d.ts.map +1 -0
  325. package/lib/components/Icon/icons/undock.icon.js +6 -0
  326. package/lib/components/Icon/icons/undock.icon.js.map +1 -0
  327. package/lib/components/Image/Image.js +1 -1
  328. package/lib/components/Image/Image.js.map +1 -1
  329. package/lib/components/Input/Input.js +13 -13
  330. package/lib/components/Input/Input.js.map +1 -1
  331. package/lib/components/Input/Input.styles.js +2 -2
  332. package/lib/components/Input/Input.styles.js.map +1 -1
  333. package/lib/components/Label/Label.js +1 -1
  334. package/lib/components/Label/Label.js.map +1 -1
  335. package/lib/components/Lightbox/Lightbox.d.ts +6 -0
  336. package/lib/components/Lightbox/Lightbox.d.ts.map +1 -0
  337. package/lib/components/Lightbox/Lightbox.js +129 -0
  338. package/lib/components/Lightbox/Lightbox.js.map +1 -0
  339. package/lib/components/Lightbox/Lightbox.styles.d.ts +11 -0
  340. package/lib/components/Lightbox/Lightbox.styles.d.ts.map +1 -0
  341. package/lib/components/Lightbox/Lightbox.styles.js +166 -0
  342. package/lib/components/Lightbox/Lightbox.styles.js.map +1 -0
  343. package/lib/components/Lightbox/Lightbox.types.d.ts +42 -0
  344. package/lib/components/Lightbox/Lightbox.types.d.ts.map +1 -0
  345. package/lib/components/Lightbox/Lightbox.types.js +2 -0
  346. package/lib/components/Lightbox/Lightbox.types.js.map +1 -0
  347. package/lib/components/Lightbox/index.d.ts +3 -0
  348. package/lib/components/Lightbox/index.d.ts.map +1 -0
  349. package/lib/components/Lightbox/index.js +2 -0
  350. package/lib/components/Lightbox/index.js.map +1 -0
  351. package/lib/components/Link/Link.js +5 -8
  352. package/lib/components/Link/Link.js.map +1 -1
  353. package/lib/components/List/CommaSeparatedList.d.ts +15 -0
  354. package/lib/components/List/CommaSeparatedList.d.ts.map +1 -0
  355. package/lib/components/List/CommaSeparatedList.js +61 -0
  356. package/lib/components/List/CommaSeparatedList.js.map +1 -0
  357. package/lib/components/List/List.d.ts +30 -0
  358. package/lib/components/List/List.d.ts.map +1 -0
  359. package/lib/components/List/List.js +56 -0
  360. package/lib/components/List/List.js.map +1 -0
  361. package/lib/components/List/OrderedList.d.ts +6 -0
  362. package/lib/components/List/OrderedList.d.ts.map +1 -0
  363. package/lib/components/List/OrderedList.js +6 -0
  364. package/lib/components/List/OrderedList.js.map +1 -0
  365. package/lib/components/List/UnorderedList.d.ts +6 -0
  366. package/lib/components/List/UnorderedList.d.ts.map +1 -0
  367. package/lib/components/List/UnorderedList.js +6 -0
  368. package/lib/components/List/UnorderedList.js.map +1 -0
  369. package/lib/components/List/index.d.ts +5 -0
  370. package/lib/components/List/index.d.ts.map +1 -0
  371. package/lib/components/List/index.js +4 -0
  372. package/lib/components/List/index.js.map +1 -0
  373. package/lib/components/Location/CurrentLocationButton.d.ts.map +1 -1
  374. package/lib/components/Location/CurrentLocationButton.js +7 -7
  375. package/lib/components/Location/CurrentLocationButton.js.map +1 -1
  376. package/lib/components/Location/LocationDisplay.js +8 -9
  377. package/lib/components/Location/LocationDisplay.js.map +1 -1
  378. package/lib/components/Location/LocationInput.js +27 -28
  379. package/lib/components/Location/LocationInput.js.map +1 -1
  380. package/lib/components/Location/LocationView.js +8 -13
  381. package/lib/components/Location/LocationView.js.map +1 -1
  382. package/lib/components/Location/utils.js +11 -15
  383. package/lib/components/Location/utils.js.map +1 -1
  384. package/lib/components/Menu/FlyoutMenuList.d.ts.map +1 -1
  385. package/lib/components/Menu/FlyoutMenuList.js +12 -15
  386. package/lib/components/Menu/FlyoutMenuList.js.map +1 -1
  387. package/lib/components/Menu/Menu.context.d.ts.map +1 -1
  388. package/lib/components/Menu/Menu.context.js +2 -0
  389. package/lib/components/Menu/Menu.context.js.map +1 -1
  390. package/lib/components/Menu/Menu.d.ts.map +1 -1
  391. package/lib/components/Menu/Menu.js +89 -46
  392. package/lib/components/Menu/Menu.js.map +1 -1
  393. package/lib/components/Menu/Menu.styles.d.ts +11 -0
  394. package/lib/components/Menu/Menu.styles.d.ts.map +1 -1
  395. package/lib/components/Menu/Menu.styles.js +202 -3
  396. package/lib/components/Menu/Menu.styles.js.map +1 -1
  397. package/lib/components/Menu/Menu.types.d.ts +28 -10
  398. package/lib/components/Menu/Menu.types.d.ts.map +1 -1
  399. package/lib/components/Menu/Menu.types.js.map +1 -1
  400. package/lib/components/Menu/MenuGroup.d.ts +6 -0
  401. package/lib/components/Menu/MenuGroup.d.ts.map +1 -0
  402. package/lib/components/Menu/MenuGroup.js +17 -0
  403. package/lib/components/Menu/MenuGroup.js.map +1 -0
  404. package/lib/components/Menu/MenuItem.d.ts +0 -3
  405. package/lib/components/Menu/MenuItem.d.ts.map +1 -1
  406. package/lib/components/Menu/MenuItem.js +57 -164
  407. package/lib/components/Menu/MenuItem.js.map +1 -1
  408. package/lib/components/Menu/MenuList.d.ts +1 -1
  409. package/lib/components/Menu/MenuList.d.ts.map +1 -1
  410. package/lib/components/Menu/MenuList.js +28 -30
  411. package/lib/components/Menu/MenuList.js.map +1 -1
  412. package/lib/components/Menu/MenuListHeader.d.ts +0 -1
  413. package/lib/components/Menu/MenuListHeader.d.ts.map +1 -1
  414. package/lib/components/Menu/MenuListHeader.js +7 -55
  415. package/lib/components/Menu/MenuListHeader.js.map +1 -1
  416. package/lib/components/Menu/NavItemsList.d.ts.map +1 -1
  417. package/lib/components/Menu/NavItemsList.js +2 -3
  418. package/lib/components/Menu/NavItemsList.js.map +1 -1
  419. package/lib/components/Menu/helpers.d.ts +13 -12
  420. package/lib/components/Menu/helpers.d.ts.map +1 -1
  421. package/lib/components/Menu/helpers.js +40 -36
  422. package/lib/components/Menu/helpers.js.map +1 -1
  423. package/lib/components/Menu/index.d.ts +2 -3
  424. package/lib/components/Menu/index.d.ts.map +1 -1
  425. package/lib/components/Menu/index.js +1 -2
  426. package/lib/components/Menu/index.js.map +1 -1
  427. package/lib/components/MenuButton/MenuButton.d.ts +3 -1
  428. package/lib/components/MenuButton/MenuButton.d.ts.map +1 -1
  429. package/lib/components/MenuButton/MenuButton.js +13 -14
  430. package/lib/components/MenuButton/MenuButton.js.map +1 -1
  431. package/lib/components/MetaList/MetaList.d.ts +11 -2
  432. package/lib/components/MetaList/MetaList.d.ts.map +1 -1
  433. package/lib/components/MetaList/MetaList.js +34 -20
  434. package/lib/components/MetaList/MetaList.js.map +1 -1
  435. package/lib/components/Modal/Contexts.d.ts.map +1 -1
  436. package/lib/components/Modal/Contexts.js +3 -0
  437. package/lib/components/Modal/Contexts.js.map +1 -1
  438. package/lib/components/Modal/DockedModals.d.ts.map +1 -1
  439. package/lib/components/Modal/DockedModals.js +5 -4
  440. package/lib/components/Modal/DockedModals.js.map +1 -1
  441. package/lib/components/Modal/MinimizedModal.d.ts.map +1 -1
  442. package/lib/components/Modal/MinimizedModal.js +53 -38
  443. package/lib/components/Modal/MinimizedModal.js.map +1 -1
  444. package/lib/components/Modal/Modal.d.ts +1 -6
  445. package/lib/components/Modal/Modal.d.ts.map +1 -1
  446. package/lib/components/Modal/Modal.js +82 -134
  447. package/lib/components/Modal/Modal.js.map +1 -1
  448. package/lib/components/Modal/Modal.styles.d.ts +9 -0
  449. package/lib/components/Modal/Modal.styles.d.ts.map +1 -0
  450. package/lib/components/Modal/Modal.styles.js +135 -0
  451. package/lib/components/Modal/Modal.styles.js.map +1 -0
  452. package/lib/components/Modal/Modal.types.d.ts +56 -5
  453. package/lib/components/Modal/Modal.types.d.ts.map +1 -1
  454. package/lib/components/Modal/Modal.types.js.map +1 -1
  455. package/lib/components/Modal/ModalManager.d.ts.map +1 -1
  456. package/lib/components/Modal/ModalManager.js +74 -65
  457. package/lib/components/Modal/ModalManager.js.map +1 -1
  458. package/lib/components/MultiStep/MultiStep.d.ts.map +1 -1
  459. package/lib/components/MultiStep/MultiStep.js +10 -12
  460. package/lib/components/MultiStep/MultiStep.js.map +1 -1
  461. package/lib/components/MultiStep/MultiStep.styles.js +1 -1
  462. package/lib/components/MultiStep/MultiStep.styles.js.map +1 -1
  463. package/lib/components/MultiStep/MultiStep.types.d.ts +2 -0
  464. package/lib/components/MultiStep/MultiStep.types.d.ts.map +1 -1
  465. package/lib/components/MultiStep/MultiStep.types.js.map +1 -1
  466. package/lib/components/Number/NumberDisplay.js +1 -1
  467. package/lib/components/Number/NumberDisplay.js.map +1 -1
  468. package/lib/components/Number/NumberInput.d.ts.map +1 -1
  469. package/lib/components/Number/NumberInput.js +18 -25
  470. package/lib/components/Number/NumberInput.js.map +1 -1
  471. package/lib/components/Number/NumberInput.styles.d.ts +2 -2
  472. package/lib/components/Number/NumberInput.styles.d.ts.map +1 -1
  473. package/lib/components/Number/utils.js +2 -3
  474. package/lib/components/Number/utils.js.map +1 -1
  475. package/lib/components/PageTemplates/CategorySubPage.d.ts +1 -1
  476. package/lib/components/PageTemplates/CategorySubPage.d.ts.map +1 -1
  477. package/lib/components/PageTemplates/CategorySubPage.js +8 -18
  478. package/lib/components/PageTemplates/CategorySubPage.js.map +1 -1
  479. package/lib/components/PageTemplates/CategorySubPage.styles.d.ts +1 -1
  480. package/lib/components/PageTemplates/CategorySubPage.styles.d.ts.map +1 -1
  481. package/lib/components/PageTemplates/DashboardPage.d.ts +7 -1
  482. package/lib/components/PageTemplates/DashboardPage.d.ts.map +1 -1
  483. package/lib/components/PageTemplates/DashboardPage.js +48 -28
  484. package/lib/components/PageTemplates/DashboardPage.js.map +1 -1
  485. package/lib/components/PageTemplates/PageTemplates.d.ts +15 -6
  486. package/lib/components/PageTemplates/PageTemplates.d.ts.map +1 -1
  487. package/lib/components/PageTemplates/PageTemplates.js +89 -79
  488. package/lib/components/PageTemplates/PageTemplates.js.map +1 -1
  489. package/lib/components/PageTemplates/index.d.ts +3 -0
  490. package/lib/components/PageTemplates/index.d.ts.map +1 -1
  491. package/lib/components/PageTemplates/index.js +1 -0
  492. package/lib/components/PageTemplates/index.js.map +1 -1
  493. package/lib/components/Pagination/Pagination.d.ts.map +1 -1
  494. package/lib/components/Pagination/Pagination.js +7 -6
  495. package/lib/components/Pagination/Pagination.js.map +1 -1
  496. package/lib/components/Phone/PhoneDisplay.js +2 -3
  497. package/lib/components/Phone/PhoneDisplay.js.map +1 -1
  498. package/lib/components/Phone/PhoneInput.d.ts.map +1 -1
  499. package/lib/components/Phone/PhoneInput.js +18 -17
  500. package/lib/components/Phone/PhoneInput.js.map +1 -1
  501. package/lib/components/Phone/utils.js +2 -3
  502. package/lib/components/Phone/utils.js.map +1 -1
  503. package/lib/components/Popover/Popover.d.ts +0 -4
  504. package/lib/components/Popover/Popover.d.ts.map +1 -1
  505. package/lib/components/Popover/Popover.js +11 -122
  506. package/lib/components/Popover/Popover.js.map +1 -1
  507. package/lib/components/Popover/Popover.styles.d.ts +5 -0
  508. package/lib/components/Popover/Popover.styles.d.ts.map +1 -0
  509. package/lib/components/Popover/Popover.styles.js +116 -0
  510. package/lib/components/Popover/Popover.styles.js.map +1 -0
  511. package/lib/components/Popover/PopoverManager.js +2 -2
  512. package/lib/components/Popover/PopoverManager.js.map +1 -1
  513. package/lib/components/Popover/index.d.ts +1 -1
  514. package/lib/components/Popover/index.d.ts.map +1 -1
  515. package/lib/components/Popover/index.js +1 -1
  516. package/lib/components/Popover/index.js.map +1 -1
  517. package/lib/components/Progress/Bar.js +2 -2
  518. package/lib/components/Progress/Bar.js.map +1 -1
  519. package/lib/components/Progress/Ellipsis.js +1 -3
  520. package/lib/components/Progress/Ellipsis.js.map +1 -1
  521. package/lib/components/Progress/Progress.js +3 -4
  522. package/lib/components/Progress/Progress.js.map +1 -1
  523. package/lib/components/Progress/Ring.d.ts.map +1 -1
  524. package/lib/components/Progress/Ring.js +3 -3
  525. package/lib/components/Progress/Ring.js.map +1 -1
  526. package/lib/components/RadioButton/RadioButton.js +1 -1
  527. package/lib/components/RadioButton/RadioButton.js.map +1 -1
  528. package/lib/components/RadioCheck/RadioCheck.d.ts.map +1 -1
  529. package/lib/components/RadioCheck/RadioCheck.js +7 -8
  530. package/lib/components/RadioCheck/RadioCheck.js.map +1 -1
  531. package/lib/components/RadioCheckGroup/RadioCheckGroup.d.ts +4 -0
  532. package/lib/components/RadioCheckGroup/RadioCheckGroup.d.ts.map +1 -1
  533. package/lib/components/RadioCheckGroup/RadioCheckGroup.js +19 -18
  534. package/lib/components/RadioCheckGroup/RadioCheckGroup.js.map +1 -1
  535. package/lib/components/Rating/Rating.d.ts.map +1 -1
  536. package/lib/components/Rating/Rating.js +6 -7
  537. package/lib/components/Rating/Rating.js.map +1 -1
  538. package/lib/components/SearchInput/SearchInput.d.ts +2 -2
  539. package/lib/components/SearchInput/SearchInput.d.ts.map +1 -1
  540. package/lib/components/SearchInput/SearchInput.js +14 -14
  541. package/lib/components/SearchInput/SearchInput.js.map +1 -1
  542. package/lib/components/Select/Option.js +1 -1
  543. package/lib/components/Select/Option.js.map +1 -1
  544. package/lib/components/Select/Select.d.ts.map +1 -1
  545. package/lib/components/Select/Select.js +15 -16
  546. package/lib/components/Select/Select.js.map +1 -1
  547. package/lib/components/Sentiment/Sentiment.js +1 -2
  548. package/lib/components/Sentiment/Sentiment.js.map +1 -1
  549. package/lib/components/Skeleton/LineSkeleton.js +1 -1
  550. package/lib/components/Skeleton/LineSkeleton.js.map +1 -1
  551. package/lib/components/Skeleton/ParagraphSkeleton.js +1 -1
  552. package/lib/components/Skeleton/ParagraphSkeleton.js.map +1 -1
  553. package/lib/components/Skeleton/RectangleSkeleton.js +1 -1
  554. package/lib/components/Skeleton/RectangleSkeleton.js.map +1 -1
  555. package/lib/components/Slider/Slider.d.ts.map +1 -1
  556. package/lib/components/Slider/Slider.js +12 -19
  557. package/lib/components/Slider/Slider.js.map +1 -1
  558. package/lib/components/Slider/Slider.styles.d.ts +4 -1
  559. package/lib/components/Slider/Slider.styles.d.ts.map +1 -1
  560. package/lib/components/Slider/Slider.styles.js +17 -5
  561. package/lib/components/Slider/Slider.styles.js.map +1 -1
  562. package/lib/components/Slider/SliderTicks.d.ts +1 -0
  563. package/lib/components/Slider/SliderTicks.d.ts.map +1 -1
  564. package/lib/components/Slider/SliderTicks.js +19 -12
  565. package/lib/components/Slider/SliderTicks.js.map +1 -1
  566. package/lib/components/Slider/utils.d.ts +10 -11
  567. package/lib/components/Slider/utils.d.ts.map +1 -1
  568. package/lib/components/Slider/utils.js +24 -18
  569. package/lib/components/Slider/utils.js.map +1 -1
  570. package/lib/components/SummaryItem/SummaryItem.d.ts +3 -3
  571. package/lib/components/SummaryItem/SummaryItem.d.ts.map +1 -1
  572. package/lib/components/SummaryItem/SummaryItem.js +3 -5
  573. package/lib/components/SummaryItem/SummaryItem.js.map +1 -1
  574. package/lib/components/SummaryList/SummaryList.d.ts +8 -2
  575. package/lib/components/SummaryList/SummaryList.d.ts.map +1 -1
  576. package/lib/components/SummaryList/SummaryList.js +10 -11
  577. package/lib/components/SummaryList/SummaryList.js.map +1 -1
  578. package/lib/components/SummaryList/ViewAll.d.ts +1 -1
  579. package/lib/components/SummaryList/ViewAll.d.ts.map +1 -1
  580. package/lib/components/SummaryList/ViewAll.js +14 -10
  581. package/lib/components/SummaryList/ViewAll.js.map +1 -1
  582. package/lib/components/Switch/Switch.d.ts.map +1 -1
  583. package/lib/components/Switch/Switch.js +41 -30
  584. package/lib/components/Switch/Switch.js.map +1 -1
  585. package/lib/components/Table/Table.d.ts.map +1 -1
  586. package/lib/components/Table/Table.js +14 -13
  587. package/lib/components/Table/Table.js.map +1 -1
  588. package/lib/components/Tabs/Tab.d.ts +1 -1
  589. package/lib/components/Tabs/Tab.d.ts.map +1 -1
  590. package/lib/components/Tabs/Tab.js +9 -7
  591. package/lib/components/Tabs/Tab.js.map +1 -1
  592. package/lib/components/Tabs/TabPanel.d.ts +10 -2
  593. package/lib/components/Tabs/TabPanel.d.ts.map +1 -1
  594. package/lib/components/Tabs/TabPanel.js +24 -8
  595. package/lib/components/Tabs/TabPanel.js.map +1 -1
  596. package/lib/components/Tabs/Tabs.d.ts +1 -0
  597. package/lib/components/Tabs/Tabs.d.ts.map +1 -1
  598. package/lib/components/Tabs/Tabs.js +28 -23
  599. package/lib/components/Tabs/Tabs.js.map +1 -1
  600. package/lib/components/Text/Text.d.ts +1 -1
  601. package/lib/components/Text/Text.d.ts.map +1 -1
  602. package/lib/components/Text/Text.js +2 -2
  603. package/lib/components/Text/Text.js.map +1 -1
  604. package/lib/components/TextArea/TextArea.d.ts.map +1 -1
  605. package/lib/components/TextArea/TextArea.js +33 -30
  606. package/lib/components/TextArea/TextArea.js.map +1 -1
  607. package/lib/components/Toaster/Toaster.d.ts +8 -36
  608. package/lib/components/Toaster/Toaster.d.ts.map +1 -1
  609. package/lib/components/Toaster/Toaster.js +97 -102
  610. package/lib/components/Toaster/Toaster.js.map +1 -1
  611. package/lib/components/Tooltip/Tooltip.d.ts +6 -1
  612. package/lib/components/Tooltip/Tooltip.d.ts.map +1 -1
  613. package/lib/components/Tooltip/Tooltip.js +6 -13
  614. package/lib/components/Tooltip/Tooltip.js.map +1 -1
  615. package/lib/components/Tree/StandardTree.d.ts +6 -0
  616. package/lib/components/Tree/StandardTree.d.ts.map +1 -0
  617. package/lib/components/Tree/StandardTree.js +175 -0
  618. package/lib/components/Tree/StandardTree.js.map +1 -0
  619. package/lib/components/Tree/StandardTree.styles.d.ts +13 -0
  620. package/lib/components/Tree/StandardTree.styles.d.ts.map +1 -0
  621. package/lib/components/Tree/StandardTree.styles.js +155 -0
  622. package/lib/components/Tree/StandardTree.styles.js.map +1 -0
  623. package/lib/components/Tree/StandardTree.types.d.ts +25 -0
  624. package/lib/components/Tree/StandardTree.types.d.ts.map +1 -0
  625. package/lib/components/Tree/StandardTree.types.js +2 -0
  626. package/lib/components/Tree/StandardTree.types.js.map +1 -0
  627. package/lib/components/Tree/Tree.d.ts +35 -49
  628. package/lib/components/Tree/Tree.d.ts.map +1 -1
  629. package/lib/components/Tree/Tree.js +18 -56
  630. package/lib/components/Tree/Tree.js.map +1 -1
  631. package/lib/components/Tree/helpers.d.ts +19 -0
  632. package/lib/components/Tree/helpers.d.ts.map +1 -0
  633. package/lib/components/Tree/helpers.js +180 -0
  634. package/lib/components/Tree/helpers.js.map +1 -0
  635. package/lib/components/Tree/index.d.ts +4 -2
  636. package/lib/components/Tree/index.d.ts.map +1 -1
  637. package/lib/components/Tree/index.js +3 -1
  638. package/lib/components/Tree/index.js.map +1 -1
  639. package/lib/components/URL/URLDisplay.js +2 -2
  640. package/lib/components/URL/URLDisplay.js.map +1 -1
  641. package/lib/hooks/index.d.ts +7 -4
  642. package/lib/hooks/index.d.ts.map +1 -1
  643. package/lib/hooks/index.js +7 -3
  644. package/lib/hooks/index.js.map +1 -1
  645. package/lib/hooks/useActiveDescendant.d.ts +17 -3
  646. package/lib/hooks/useActiveDescendant.d.ts.map +1 -1
  647. package/lib/hooks/useActiveDescendant.js +86 -64
  648. package/lib/hooks/useActiveDescendant.js.map +1 -1
  649. package/lib/hooks/useAutoResize.d.ts.map +1 -1
  650. package/lib/hooks/useAutoResize.js +6 -7
  651. package/lib/hooks/useAutoResize.js.map +1 -1
  652. package/lib/hooks/useBreakpoint.js +2 -4
  653. package/lib/hooks/useBreakpoint.js.map +1 -1
  654. package/lib/hooks/useDraggable.d.ts +8 -0
  655. package/lib/hooks/useDraggable.d.ts.map +1 -0
  656. package/lib/hooks/useDraggable.js +64 -0
  657. package/lib/hooks/useDraggable.js.map +1 -0
  658. package/lib/hooks/useFocusWithin.d.ts +1 -1
  659. package/lib/hooks/useFocusWithin.d.ts.map +1 -1
  660. package/lib/hooks/useFocusWithin.js +29 -24
  661. package/lib/hooks/useFocusWithin.js.map +1 -1
  662. package/lib/hooks/useI18n.d.ts +477 -170
  663. package/lib/hooks/useI18n.d.ts.map +1 -1
  664. package/lib/hooks/useI18n.js +2 -2
  665. package/lib/hooks/useI18n.js.map +1 -1
  666. package/lib/hooks/useLongPress.d.ts +16 -0
  667. package/lib/hooks/useLongPress.d.ts.map +1 -0
  668. package/lib/hooks/useLongPress.js +59 -0
  669. package/lib/hooks/useLongPress.js.map +1 -0
  670. package/lib/hooks/useOuterEvent.js +1 -1
  671. package/lib/hooks/useOuterEvent.js.map +1 -1
  672. package/lib/hooks/useOverride.js +1 -1
  673. package/lib/hooks/useOverride.js.map +1 -1
  674. package/lib/hooks/useScrollStick.js +14 -3
  675. package/lib/hooks/useScrollStick.js.map +1 -1
  676. package/lib/hooks/useScrollToggle.d.ts +6 -0
  677. package/lib/hooks/useScrollToggle.d.ts.map +1 -0
  678. package/lib/hooks/useScrollToggle.js +40 -0
  679. package/lib/hooks/useScrollToggle.js.map +1 -0
  680. package/lib/hooks/useTransitionState.d.ts +39 -0
  681. package/lib/hooks/useTransitionState.d.ts.map +1 -0
  682. package/lib/hooks/useTransitionState.js +56 -0
  683. package/lib/hooks/useTransitionState.js.map +1 -0
  684. package/lib/i18n/default.d.ts +555 -0
  685. package/lib/i18n/default.d.ts.map +1 -0
  686. package/lib/i18n/default.js +600 -0
  687. package/lib/i18n/default.js.map +1 -0
  688. package/lib/i18n/i18n.d.ts +932 -318
  689. package/lib/i18n/i18n.d.ts.map +1 -1
  690. package/lib/i18n/i18n.js +1 -1
  691. package/lib/i18n/i18n.js.map +1 -1
  692. package/lib/i18n/index.d.ts +1 -0
  693. package/lib/i18n/index.d.ts.map +1 -1
  694. package/lib/i18n/index.js.map +1 -1
  695. package/lib/i18n/translate.d.ts +29 -4
  696. package/lib/i18n/translate.d.ts.map +1 -1
  697. package/lib/i18n/translate.js +21 -8
  698. package/lib/i18n/translate.js.map +1 -1
  699. package/lib/index.d.ts +7 -2
  700. package/lib/index.d.ts.map +1 -1
  701. package/lib/index.js +7 -2
  702. package/lib/index.js.map +1 -1
  703. package/lib/styles/GlobalStyle.d.ts.map +1 -1
  704. package/lib/styles/GlobalStyle.js +2 -26
  705. package/lib/styles/GlobalStyle.js.map +1 -1
  706. package/lib/theme/ThemeMachine.js +7 -1
  707. package/lib/theme/ThemeMachine.js.map +1 -1
  708. package/lib/theme/index.d.ts +1 -0
  709. package/lib/theme/index.d.ts.map +1 -1
  710. package/lib/theme/index.js +1 -0
  711. package/lib/theme/index.js.map +1 -1
  712. package/lib/theme/theme.d.ts +83 -53
  713. package/lib/theme/theme.d.ts.map +1 -1
  714. package/lib/theme/themeDefinition.json +50 -30
  715. package/lib/theme/themeOverrides.schema.json +24 -3
  716. package/lib/theme/themes/buildTheme.json +3 -39
  717. package/lib/theme/themes/darkTheme.json +6 -0
  718. package/lib/theme/themes/legacyBuildTheme.json +50 -0
  719. package/lib/types/types.d.ts +6 -1
  720. package/lib/types/types.d.ts.map +1 -1
  721. package/lib/types/types.js.map +1 -1
  722. package/lib/utils/utils.d.ts +46 -4
  723. package/lib/utils/utils.d.ts.map +1 -1
  724. package/lib/utils/utils.js +63 -9
  725. package/lib/utils/utils.js.map +1 -1
  726. package/package.json +10 -11
  727. package/lib/components/DateTime/Input/useButtonAriaLabel.d.ts +0 -3
  728. package/lib/components/DateTime/Input/useButtonAriaLabel.d.ts.map +0 -1
  729. package/lib/components/DateTime/Input/useButtonAriaLabel.js +0 -33
  730. package/lib/components/DateTime/Input/useButtonAriaLabel.js.map +0 -1
  731. package/lib/components/NoItems/NoItems.d.ts +0 -14
  732. package/lib/components/NoItems/NoItems.d.ts.map +0 -1
  733. package/lib/components/NoItems/NoItems.js.map +0 -1
  734. package/lib/components/NoItems/index.d.ts +0 -4
  735. package/lib/components/NoItems/index.d.ts.map +0 -1
  736. package/lib/components/NoItems/index.js +0 -3
  737. package/lib/components/NoItems/index.js.map +0 -1
  738. package/lib/i18n/default.json +0 -246
package/README.md CHANGED
@@ -8,7 +8,7 @@ Cosmos is a visual design system and UI component collection. Its goal is to emp
8
8
 
9
9
  The recommended approach for using Cosmos is individual component imports to bundle with a method of your choosing.
10
10
 
11
- ```javascript
11
+ ```tsx
12
12
  import ReactDOM from 'react-dom';
13
13
  import { SomeComponent } from '@pega/cosmos-react-core';
14
14
 
@@ -70,7 +70,7 @@ This cmd will generate a directory at /packages/cosmos-core/components/YourCompo
70
70
 
71
71
  Inside **`YourComponent.tsx`** will be some initial boilerplate:
72
72
 
73
- ```javascript
73
+ ```ts
74
74
  import { forwardRef, FunctionComponent, PropsWithoutRef, Ref } from 'react';
75
75
  import styled from 'styled-components';
76
76
 
@@ -98,7 +98,7 @@ export default YourComponent;
98
98
 
99
99
  The **`YourComponent.stories.tsx`** file will provide a hot reloading dev environment in Storybook:
100
100
 
101
- ```javascript
101
+ ```tsx
102
102
  import YourComponent from './YourComponent';
103
103
 
104
104
  // These are settings that storybook will use to render your component's stories
@@ -15,7 +15,7 @@ const Actions = forwardRef(({ items, menuAt = 2, iconOnly = true }, ref) => {
15
15
  ...restProps
16
16
  }))
17
17
  } }, void 0)) : (_jsx(_Fragment, { children: items.map(({ id, icon, text, onClick, ...restProps }) => {
18
- return (_jsx(Button, Object.assign({ ref: ref, variant: icon && iconOnly ? 'simple' : undefined, onClick: (event) => onClick === null || onClick === void 0 ? void 0 : onClick(id, event), title: icon ? text : undefined, icon: !!icon && iconOnly }, restProps, { children: icon && iconOnly ? _jsx(Icon, { name: icon }, void 0) : text }), id));
18
+ return (_jsx(Button, { ref: ref, variant: icon && iconOnly ? 'simple' : undefined, onClick: (event) => onClick?.(id, event), label: icon ? text : undefined, icon: !!icon && iconOnly, ...restProps, children: icon && iconOnly ? _jsx(Icon, { name: icon }, void 0) : text }, id));
19
19
  }) }, void 0));
20
20
  });
21
21
  export default Actions;
@@ -1 +1 @@
1
- {"version":3,"file":"Actions.js","sourceRoot":"","sources":["../../../src/components/Actions/Actions.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAuD,MAAM,OAAO,CAAC;AAExF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,UAAU,MAAM,eAAe,CAAC;AAWvC,MAAM,OAAO,GAAmD,UAAU,CACxE,CACE,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAiC,EACrE,GAAwB,EACxB,EAAE;IACF,MAAM,CAAC,GAAG,OAAO,EAAE,CAAC;IAEpB,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QAChC,OAAO,IAAI,CAAC;KACb;IAED,OAAO,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAC9B,KAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,EAClB,QAAQ,QACR,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,QAAQ,EAChB,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5C,OAAO,EAAE,IAAI;gBACb,GAAG,SAAS;aACb,CAAC,CAAC;SACJ,WACD,CACH,CAAC,CAAC,CAAC,CACF,4BACG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE;YACvD,OAAO,CACL,KAAC,MAAM,kBAEL,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAChD,OAAO,EAAE,CAAC,KAAoC,EAAE,EAAE,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,EAAE,EAAE,KAAK,CAAC,EACvE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAC9B,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,QAAQ,IACpB,SAAS,cAEZ,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,WAAI,CAAC,CAAC,CAAC,IAAI,KAR1C,EAAE,CASA,CACV,CAAC;QACJ,CAAC,CAAC,WACD,CACJ,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,OAAO,CAAC","sourcesContent":["import { forwardRef, FunctionComponent, PropsWithoutRef, Ref, MouseEvent } from 'react';\n\nimport { useI18n } from '../../hooks';\nimport { Action, ForwardProps, NoChildrenProp } from '../../types';\nimport Button from '../Button';\nimport Icon from '../Icon';\nimport MenuButton from '../MenuButton';\n\nexport interface ActionsProps extends NoChildrenProp {\n items: Action[];\n /** @default 2 */\n menuAt?: number;\n /** @default true */\n iconOnly?: boolean;\n ref?: Ref<HTMLButtonElement>;\n}\n\nconst Actions: FunctionComponent<ActionsProps & ForwardProps> = forwardRef(\n (\n { items, menuAt = 2, iconOnly = true }: PropsWithoutRef<ActionsProps>,\n ref: ActionsProps['ref']\n ) => {\n const t = useI18n();\n\n if (!items || items.length === 0) {\n return null;\n }\n\n return items.length >= menuAt ? (\n <MenuButton\n ref={ref}\n text={t('actions')}\n iconOnly\n icon='more'\n variant='simple'\n menu={{\n items: items.map(({ text, ...restProps }) => ({\n primary: text,\n ...restProps\n }))\n }}\n />\n ) : (\n <>\n {items.map(({ id, icon, text, onClick, ...restProps }) => {\n return (\n <Button\n key={id}\n ref={ref}\n variant={icon && iconOnly ? 'simple' : undefined}\n onClick={(event: MouseEvent<HTMLButtonElement>) => onClick?.(id, event)}\n title={icon ? text : undefined}\n icon={!!icon && iconOnly}\n {...restProps}\n >\n {icon && iconOnly ? <Icon name={icon} /> : text}\n </Button>\n );\n })}\n </>\n );\n }\n);\n\nexport default Actions;\n"]}
1
+ {"version":3,"file":"Actions.js","sourceRoot":"","sources":["../../../src/components/Actions/Actions.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAuD,MAAM,OAAO,CAAC;AAExF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,UAAU,MAAM,eAAe,CAAC;AAWvC,MAAM,OAAO,GAAmD,UAAU,CACxE,CACE,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAiC,EACrE,GAAwB,EACxB,EAAE;IACF,MAAM,CAAC,GAAG,OAAO,EAAE,CAAC;IAEpB,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QAChC,OAAO,IAAI,CAAC;KACb;IAED,OAAO,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAC9B,KAAC,UAAU,IACT,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,EAClB,QAAQ,QACR,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,QAAQ,EAChB,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5C,OAAO,EAAE,IAAI;gBACb,GAAG,SAAS;aACb,CAAC,CAAC;SACJ,WACD,CACH,CAAC,CAAC,CAAC,CACF,4BACG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE;YACvD,OAAO,CACL,KAAC,MAAM,IAEL,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAChD,OAAO,EAAE,CAAC,KAAoC,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EACvE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAC9B,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,QAAQ,KACpB,SAAS,YAEZ,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,WAAI,CAAC,CAAC,CAAC,IAAI,IAR1C,EAAE,CASA,CACV,CAAC;QACJ,CAAC,CAAC,WACD,CACJ,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,OAAO,CAAC","sourcesContent":["import { forwardRef, FunctionComponent, PropsWithoutRef, Ref, MouseEvent } from 'react';\n\nimport { useI18n } from '../../hooks';\nimport { Action, ForwardProps, NoChildrenProp } from '../../types';\nimport Button from '../Button';\nimport Icon from '../Icon';\nimport MenuButton from '../MenuButton';\n\nexport interface ActionsProps extends NoChildrenProp {\n items: Action[];\n /** @default 2 */\n menuAt?: number;\n /** @default true */\n iconOnly?: boolean;\n ref?: Ref<HTMLButtonElement>;\n}\n\nconst Actions: FunctionComponent<ActionsProps & ForwardProps> = forwardRef(\n (\n { items, menuAt = 2, iconOnly = true }: PropsWithoutRef<ActionsProps>,\n ref: ActionsProps['ref']\n ) => {\n const t = useI18n();\n\n if (!items || items.length === 0) {\n return null;\n }\n\n return items.length >= menuAt ? (\n <MenuButton\n ref={ref}\n text={t('actions')}\n iconOnly\n icon='more'\n variant='simple'\n menu={{\n items: items.map(({ text, ...restProps }) => ({\n primary: text,\n ...restProps\n }))\n }}\n />\n ) : (\n <>\n {items.map(({ id, icon, text, onClick, ...restProps }) => {\n return (\n <Button\n key={id}\n ref={ref}\n variant={icon && iconOnly ? 'simple' : undefined}\n onClick={(event: MouseEvent<HTMLButtonElement>) => onClick?.(id, event)}\n label={icon ? text : undefined}\n icon={!!icon && iconOnly}\n {...restProps}\n >\n {icon && iconOnly ? <Icon name={icon} /> : text}\n </Button>\n );\n })}\n </>\n );\n }\n);\n\nexport default Actions;\n"]}
@@ -1,5 +1,6 @@
1
1
  import { FunctionComponent } from 'react';
2
+ import { ForwardProps } from '../../types';
2
3
  import { AppHeaderProps } from './AppShell.types';
3
- declare const AppHeader: FunctionComponent<AppHeaderProps>;
4
+ declare const AppHeader: FunctionComponent<AppHeaderProps & ForwardProps>;
4
5
  export default AppHeader;
5
6
  //# sourceMappingURL=AppHeader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AppHeader.d.ts","sourceRoot":"","sources":["../../../src/components/AppShell/AppHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAoB,MAAM,OAAO,CAAC;AAQ5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAWlD,QAAA,MAAM,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAkEhD,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"AppHeader.d.ts","sourceRoot":"","sources":["../../../src/components/AppShell/AppHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,iBAAiB,EAAyB,MAAM,OAAO,CAAC;AAM7E,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAWlD,QAAA,MAAM,SAAS,EAAE,iBAAiB,CAAC,cAAc,GAAG,YAAY,CAuE/D,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1,22 +1,17 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useRef, useState } from 'react';
2
+ import { forwardRef, useRef, useState } from 'react';
3
3
  import Flex from '../Flex';
4
4
  import Image from '../Image';
5
5
  import SearchInput from '../SearchInput';
6
- import Link from '../Link';
7
6
  import { useBreakpoint, useFocusWithin } from '../../hooks';
8
7
  import AppShellOperator from './Operator';
9
8
  import { StyledAppHeader, StyledAppHeaderInfo, StyledAppHeaderSearchForm, StyledAppHeaderSpacer, StyledAppHeaderText, StyledAppHeaderOperator } from './AppShell.styles';
10
- const AppHeader = ({ appName, fullImageSrc, imageSrc, href, onClick, portalName, target, operator, searchInput, searchLabel }) => {
9
+ const AppHeader = forwardRef(({ appName, fullImageSrc, imageSrc, href, onClick, portalName, target, operator, searchInput, searchLabel }, ref) => {
11
10
  const isMediumOrAbove = useBreakpoint('md');
12
11
  const searchRef = useRef(null);
13
12
  const [searchFocused, setSearchFocused] = useState(false);
14
13
  useFocusWithin([searchRef], setSearchFocused);
15
- return (_jsxs(Flex, Object.assign({ as: StyledAppHeader, container: { alignItems: 'center', pad: 1 }, hideTitle: !isMediumOrAbove && searchFocused }, { children: [_jsxs(Flex, Object.assign({ as: StyledAppHeaderInfo, forwardedAs: href ? Link : 'div', container: { alignItems: 'center', gap: 1 }, onClick: onClick, href: href, "aria-label": `${appName}${portalName ? ` - ${portalName}` : ''}`, target: target, centerLogo: !fullImageSrc }, { children: [_jsx(Image, { src: fullImageSrc || imageSrc, alt: appName }, void 0),
16
- (isMediumOrAbove || !searchFocused) && (_jsxs(_Fragment, { children: [_jsx(StyledAppHeaderText, { children: appName }, void 0),
17
- _jsx(StyledAppHeaderText, Object.assign({ variant: 'secondary' }, { children: portalName }), void 0)] }, void 0))] }), void 0),
18
- searchInput ? (_jsx(StyledAppHeaderSearchForm, Object.assign({ ref: searchRef, role: 'search', "aria-label": searchLabel, onSubmit: e => e.preventDefault(), isMediumOrAbove: isMediumOrAbove }, { children: _jsx(SearchInput, Object.assign({}, searchInput), void 0) }), void 0)) : (_jsx(StyledAppHeaderSpacer, {}, void 0)),
19
- _jsx(AppShellOperator, Object.assign({ as: StyledAppHeaderOperator, actions: operator.actions, popover: { placement: 'bottom-start' } }, { children: operator.avatar }), void 0)] }), void 0));
20
- };
14
+ return (_jsxs(Flex, { as: StyledAppHeader, container: { alignItems: 'center', pad: 1 }, hideTitle: !isMediumOrAbove && searchFocused, ref: ref, children: [_jsx(StyledAppHeaderInfo, { centerLogo: !fullImageSrc, children: _jsxs(Flex, { container: { inline: true, alignItems: 'center', gap: 1 }, as: href ? 'a' : 'div', href: href, onClick: onClick, target: target, children: [_jsx(Image, { src: fullImageSrc || imageSrc, alt: '', "aria-hidden": 'true' }, void 0), (isMediumOrAbove || !searchFocused) && (_jsxs(_Fragment, { children: [_jsx(StyledAppHeaderText, { children: appName }, void 0), _jsx(StyledAppHeaderText, { variant: 'secondary', children: portalName }, void 0)] }, void 0))] }, void 0) }, void 0), searchInput ? (_jsx(StyledAppHeaderSearchForm, { ref: searchRef, role: 'search', "aria-label": searchLabel, onSubmit: e => e.preventDefault(), isMediumOrAbove: isMediumOrAbove, children: _jsx(SearchInput, { ...searchInput }, void 0) }, void 0)) : (_jsx(StyledAppHeaderSpacer, {}, void 0)), _jsx(AppShellOperator, { as: StyledAppHeaderOperator, actions: operator.actions, popover: { placement: 'bottom-start' }, children: operator.avatar }, void 0)] }, void 0));
15
+ });
21
16
  export default AppHeader;
22
17
  //# sourceMappingURL=AppHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AppHeader.js","sourceRoot":"","sources":["../../../src/components/AppShell/AppHeader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAqB,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5D,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,KAAK,MAAM,UAAU,CAAC;AAC7B,OAAO,WAAW,MAAM,gBAAgB,CAAC;AACzC,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG5D,OAAO,gBAAgB,MAAM,YAAY,CAAC;AAC1C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,SAAS,GAAsC,CAAC,EACpD,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,UAAU,EACV,MAAM,EACN,QAAQ,EACR,WAAW,EACX,WAAW,EACI,EAAE,EAAE;IACnB,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1D,cAAc,CAAC,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAE9C,OAAO,CACL,MAAC,IAAI,kBACH,EAAE,EAAE,eAAe,EACnB,SAAS,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,EAC3C,SAAS,EAAE,CAAC,eAAe,IAAI,aAAa,iBAE5C,MAAC,IAAI,kBACH,EAAE,EAAE,mBAAmB,EACvB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAE,IAAY,CAAC,CAAC,CAAC,KAAK,EACzC,SAAS,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,EAC3C,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,gBACE,GAAG,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAC/D,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,CAAC,YAAY,iBAEzB,KAAC,KAAK,IAAC,GAAG,EAAE,YAAY,IAAI,QAAQ,EAAE,GAAG,EAAE,OAAO,WAAI;oBACrD,CAAC,eAAe,IAAI,CAAC,aAAa,CAAC,IAAI,CACtC,8BACE,KAAC,mBAAmB,cAAE,OAAO,WAAuB;4BACpD,KAAC,mBAAmB,kBAAC,OAAO,EAAC,WAAW,gBAAE,UAAU,YAAuB,YAC1E,CACJ,aACI;YAEN,WAAW,CAAC,CAAC,CAAC,CACb,KAAC,yBAAyB,kBACxB,GAAG,EAAE,SAAS,EACd,IAAI,EAAC,QAAQ,gBACD,WAAW,EACvB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EACjC,eAAe,EAAE,eAAe,gBAEhC,KAAC,WAAW,oBAAK,WAAW,UAAI,YACN,CAC7B,CAAC,CAAC,CAAC,CACF,KAAC,qBAAqB,aAAG,CAC1B;YAED,KAAC,gBAAgB,kBACf,EAAE,EAAE,uBAAuB,EAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO,EACzB,OAAO,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,gBAErC,QAAQ,CAAC,MAAM,YACC,aACd,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC","sourcesContent":["import { FunctionComponent, useRef, useState } from 'react';\n\nimport Flex from '../Flex';\nimport Image from '../Image';\nimport SearchInput from '../SearchInput';\nimport Link from '../Link';\nimport { useBreakpoint, useFocusWithin } from '../../hooks';\n\nimport { AppHeaderProps } from './AppShell.types';\nimport AppShellOperator from './Operator';\nimport {\n StyledAppHeader,\n StyledAppHeaderInfo,\n StyledAppHeaderSearchForm,\n StyledAppHeaderSpacer,\n StyledAppHeaderText,\n StyledAppHeaderOperator\n} from './AppShell.styles';\n\nconst AppHeader: FunctionComponent<AppHeaderProps> = ({\n appName,\n fullImageSrc,\n imageSrc,\n href,\n onClick,\n portalName,\n target,\n operator,\n searchInput,\n searchLabel\n}: AppHeaderProps) => {\n const isMediumOrAbove = useBreakpoint('md');\n const searchRef = useRef(null);\n const [searchFocused, setSearchFocused] = useState(false);\n\n useFocusWithin([searchRef], setSearchFocused);\n\n return (\n <Flex\n as={StyledAppHeader}\n container={{ alignItems: 'center', pad: 1 }}\n hideTitle={!isMediumOrAbove && searchFocused}\n >\n <Flex\n as={StyledAppHeaderInfo}\n forwardedAs={href ? (Link as any) : 'div'}\n container={{ alignItems: 'center', gap: 1 }}\n onClick={onClick}\n href={href}\n aria-label={`${appName}${portalName ? ` - ${portalName}` : ''}`}\n target={target}\n centerLogo={!fullImageSrc}\n >\n <Image src={fullImageSrc || imageSrc} alt={appName} />\n {(isMediumOrAbove || !searchFocused) && (\n <>\n <StyledAppHeaderText>{appName}</StyledAppHeaderText>\n <StyledAppHeaderText variant='secondary'>{portalName}</StyledAppHeaderText>\n </>\n )}\n </Flex>\n\n {searchInput ? (\n <StyledAppHeaderSearchForm\n ref={searchRef}\n role='search'\n aria-label={searchLabel}\n onSubmit={e => e.preventDefault()}\n isMediumOrAbove={isMediumOrAbove}\n >\n <SearchInput {...searchInput} />\n </StyledAppHeaderSearchForm>\n ) : (\n <StyledAppHeaderSpacer />\n )}\n\n <AppShellOperator\n as={StyledAppHeaderOperator}\n actions={operator.actions}\n popover={{ placement: 'bottom-start' }}\n >\n {operator.avatar}\n </AppShellOperator>\n </Flex>\n );\n};\n\nexport default AppHeader;\n"]}
1
+ {"version":3,"file":"AppHeader.js","sourceRoot":"","sources":["../../../src/components/AppShell/AppHeader.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAA0B,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE7E,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,KAAK,MAAM,UAAU,CAAC;AAC7B,OAAO,WAAW,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAI5D,OAAO,gBAAgB,MAAM,YAAY,CAAC;AAC1C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,SAAS,GAAqD,UAAU,CAC5E,CACE,EACE,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,UAAU,EACV,MAAM,EACN,QAAQ,EACR,WAAW,EACX,WAAW,EACI,EACjB,GAAiB,EACjB,EAAE;IACF,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1D,cAAc,CAAC,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAE9C,OAAO,CACL,MAAC,IAAI,IACH,EAAE,EAAE,eAAe,EACnB,SAAS,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,EAC3C,SAAS,EAAE,CAAC,eAAe,IAAI,aAAa,EAC5C,GAAG,EAAE,GAAG,aAER,KAAC,mBAAmB,IAAC,UAAU,EAAE,CAAC,YAAY,YAC5C,MAAC,IAAI,IACH,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,EACzD,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EACtB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,aAEd,KAAC,KAAK,IAAC,GAAG,EAAE,YAAY,IAAI,QAAQ,EAAE,GAAG,EAAC,EAAE,iBAAa,MAAM,WAAG,EACjE,CAAC,eAAe,IAAI,CAAC,aAAa,CAAC,IAAI,CACtC,8BACE,KAAC,mBAAmB,cAAE,OAAO,WAAuB,EACpD,KAAC,mBAAmB,IAAC,OAAO,EAAC,WAAW,YAAE,UAAU,WAAuB,YAC1E,CACJ,YACI,WACa,EAErB,WAAW,CAAC,CAAC,CAAC,CACb,KAAC,yBAAyB,IACxB,GAAG,EAAE,SAAS,EACd,IAAI,EAAC,QAAQ,gBACD,WAAW,EACvB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EACjC,eAAe,EAAE,eAAe,YAEhC,KAAC,WAAW,OAAK,WAAW,WAAI,WACN,CAC7B,CAAC,CAAC,CAAC,CACF,KAAC,qBAAqB,aAAG,CAC1B,EAED,KAAC,gBAAgB,IACf,EAAE,EAAE,uBAAuB,EAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO,EACzB,OAAO,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,YAErC,QAAQ,CAAC,MAAM,WACC,YACd,CACR,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,SAAS,CAAC","sourcesContent":["import { forwardRef, FunctionComponent, Ref, useRef, useState } from 'react';\n\nimport Flex from '../Flex';\nimport Image from '../Image';\nimport SearchInput from '../SearchInput';\nimport { useBreakpoint, useFocusWithin } from '../../hooks';\nimport { ForwardProps } from '../../types';\n\nimport { AppHeaderProps } from './AppShell.types';\nimport AppShellOperator from './Operator';\nimport {\n StyledAppHeader,\n StyledAppHeaderInfo,\n StyledAppHeaderSearchForm,\n StyledAppHeaderSpacer,\n StyledAppHeaderText,\n StyledAppHeaderOperator\n} from './AppShell.styles';\n\nconst AppHeader: FunctionComponent<AppHeaderProps & ForwardProps> = forwardRef(\n (\n {\n appName,\n fullImageSrc,\n imageSrc,\n href,\n onClick,\n portalName,\n target,\n operator,\n searchInput,\n searchLabel\n }: AppHeaderProps,\n ref: Ref<Element>\n ) => {\n const isMediumOrAbove = useBreakpoint('md');\n const searchRef = useRef(null);\n const [searchFocused, setSearchFocused] = useState(false);\n\n useFocusWithin([searchRef], setSearchFocused);\n\n return (\n <Flex\n as={StyledAppHeader}\n container={{ alignItems: 'center', pad: 1 }}\n hideTitle={!isMediumOrAbove && searchFocused}\n ref={ref}\n >\n <StyledAppHeaderInfo centerLogo={!fullImageSrc}>\n <Flex\n container={{ inline: true, alignItems: 'center', gap: 1 }}\n as={href ? 'a' : 'div'}\n href={href}\n onClick={onClick}\n target={target}\n >\n <Image src={fullImageSrc || imageSrc} alt='' aria-hidden='true' />\n {(isMediumOrAbove || !searchFocused) && (\n <>\n <StyledAppHeaderText>{appName}</StyledAppHeaderText>\n <StyledAppHeaderText variant='secondary'>{portalName}</StyledAppHeaderText>\n </>\n )}\n </Flex>\n </StyledAppHeaderInfo>\n\n {searchInput ? (\n <StyledAppHeaderSearchForm\n ref={searchRef}\n role='search'\n aria-label={searchLabel}\n onSubmit={e => e.preventDefault()}\n isMediumOrAbove={isMediumOrAbove}\n >\n <SearchInput {...searchInput} />\n </StyledAppHeaderSearchForm>\n ) : (\n <StyledAppHeaderSpacer />\n )}\n\n <AppShellOperator\n as={StyledAppHeaderOperator}\n actions={operator.actions}\n popover={{ placement: 'bottom-start' }}\n >\n {operator.avatar}\n </AppShellOperator>\n </Flex>\n );\n }\n);\n\nexport default AppHeader;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../../src/components/AppShell/AppShell.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAWjB,EAAE,EAEH,MAAM,OAAO,CAAC;AAWf,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,aAAa,CAAC;AA0C5D,OAAO,EACL,aAAa,EAOb,UAAU,EACX,MAAM,kBAAkB,CAAC;AAsR1B,eAAO,MAAM,KAAK,EAAE,EAAE,CAAC,UAAU,CAwFhC,CAAC;AAEF,QAAA,MAAM,QAAQ,EAAE,iBAAiB,CAAC,aAAa,GAAG,YAAY,CAmO7D,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../../src/components/AppShell/AppShell.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAWjB,EAAE,EAIH,MAAM,OAAO,CAAC;AAiBf,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,aAAa,CAAC;AA6C5D,OAAO,EACL,aAAa,EAOb,UAAU,EACX,MAAM,kBAAkB,CAAC;AAsR1B,eAAO,MAAM,KAAK,EAAE,EAAE,CAAC,UAAU,CAmGhC,CAAC;AAEF,QAAA,MAAM,QAAQ,EAAE,iBAAiB,CAAC,aAAa,GAAG,YAAY,CAqQ7D,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -1,16 +1,23 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { createElement as _createElement } from "react";
3
- import { forwardRef, useState, useCallback, useEffect, useMemo, useContext, useRef } from 'react';
3
+ import { forwardRef, useState, useCallback, useEffect, useMemo, useContext, useRef, useLayoutEffect } from 'react';
4
4
  import Flex from '../Flex';
5
5
  import Link from '../Link';
6
6
  import Count from '../Badges/Count';
7
7
  import BareButton from '../Button/BareButton';
8
8
  import SearchInput from '../SearchInput';
9
- import Icon from '../Icon';
9
+ import Icon, { registerIcon } from '../Icon';
10
+ import * as timesIcon from '../Icon/icons/times.icon';
11
+ import * as plusIcon from '../Icon/icons/plus.icon';
12
+ import * as caseSolidIcon from '../Icon/icons/case-solid.icon';
13
+ import * as barsIcon from '../Icon/icons/bars.icon';
14
+ import * as caretLeftIcon from '../Icon/icons/caret-left.icon';
15
+ import * as caretRightIcon from '../Icon/icons/caret-right.icon';
10
16
  import Text from '../Text';
11
17
  import Image from '../Image';
12
18
  import ExpandCollapse from '../ExpandCollapse';
13
- import { useFocusWithin, useI18n, useBreakpoint, useConsolidatedRef, useDirection, useTheme } from '../../hooks';
19
+ import { useFocusWithin, useI18n, useBreakpoint, useConsolidatedRef, useDirection, useTheme, useElement, useTransitionState } from '../../hooks';
20
+ import { openCloseStates } from '../../hooks/useTransitionState';
14
21
  import Grid from '../Grid';
15
22
  import Button from '../Button';
16
23
  import Drawer from '../Drawer';
@@ -22,6 +29,7 @@ import AppShellOperator from './Operator';
22
29
  import AppHeader from './AppHeader';
23
30
  import SkipNavigation from './SkipNavigation';
24
31
  import { StyledAppNav, StyledAppInfo, StyledSearchForm, StyledCaseTypes, StyledScrollWrap, StyledUtils, StyledNavList, StyledNestedNavList, StyledNavListItem, StyledNavListMenuButton, StyledAppMain, StyledCaseClose, StyledAppShellNavIcon, StyledNavCasesList, StyledAppEnvironment, StyledBannerRegion, StyledCountIcon, StyledUtilIconCount, StyledMobileNav } from './AppShell.styles';
32
+ registerIcon(timesIcon, plusIcon, caseSolidIcon, barsIcon, caretRightIcon, caretLeftIcon);
25
33
  const NavComponents = {
26
34
  List(props) {
27
35
  const { items = [], nestedList, collapsed } = props;
@@ -40,7 +48,7 @@ const NavComponents = {
40
48
  };
41
49
  Component = StyledNestedNavList;
42
50
  }
43
- return (_jsx(Component, Object.assign({}, fwdProps, { children: items === null || items === void 0 ? void 0 : items.map(item => (_createElement(NavComponents.ListItem, { ...item, key: item.id || item.primary }))) }), void 0));
51
+ return (_jsx(Component, { ...fwdProps, children: items?.map(item => (_createElement(NavComponents.ListItem, { ...item, key: item.id || item.primary }))) }, void 0));
44
52
  },
45
53
  ListItem(props) {
46
54
  const { navOpen } = useContext(AppShellContext);
@@ -48,7 +56,8 @@ const NavComponents = {
48
56
  const t = useI18n();
49
57
  const hasItems = Array.isArray(items) && items.length > 0;
50
58
  const compProps = {
51
- onClick
59
+ onClick,
60
+ href
52
61
  };
53
62
  let Component;
54
63
  if (actions) {
@@ -72,12 +81,11 @@ const NavComponents = {
72
81
  ]
73
82
  };
74
83
  }
75
- else if (onClick) {
76
- Component = BareButton;
77
- }
78
84
  else if (href) {
79
85
  Component = Link;
80
- compProps.href = href;
86
+ }
87
+ else if (onClick) {
88
+ Component = BareButton;
81
89
  }
82
90
  else {
83
91
  Component = 'div';
@@ -91,12 +99,9 @@ const NavComponents = {
91
99
  }
92
100
  }, [navOpen]);
93
101
  const { end } = useDirection();
94
- return (_createElement(StyledNavListItem, { ...restProps, key: primary, nestedListCollapsed: hasItems ? collapseItems : true, active: !!active, navOpen: navOpen },
95
- _jsxs(Component, Object.assign({}, compProps, { ref: forwardedRef }, { children: [visual,
96
- secondary ? (_jsxs(Flex, Object.assign({ container: { direction: 'column', alignItems: 'start' } }, { children: [_jsx("span", { children: primary }, void 0),
97
- _jsx(Text, Object.assign({ variant: 'secondary' }, { children: secondary }), void 0)] }), void 0)) : (_jsx("span", { children: primary }, void 0)),
98
- (hasItems || actions) && _jsx(Icon, { name: `caret-${end}`, as: StyledAppShellNavIcon }, void 0)] }), void 0),
99
- dismissible && (_jsx(Button, Object.assign({ icon: true, variant: 'simple', as: StyledCaseClose, onClick: onDismiss, "aria-label": t('dismiss_case') }, { children: _jsx(Icon, { name: 'times' }, void 0) }), void 0)),
102
+ return (_createElement(StyledNavListItem, { ...restProps, key: primary, nestedListCollapsed: hasItems ? collapseItems : true },
103
+ _jsxs(Component, { ...compProps, ref: forwardedRef, children: [visual, secondary ? (_jsxs(Flex, { container: { direction: 'column', alignItems: 'start' }, children: [_jsx("span", { children: primary }, void 0), _jsx(Text, { variant: 'secondary', children: secondary }, void 0)] }, void 0)) : (_jsx("span", { children: primary }, void 0)), (hasItems || actions) && _jsx(Icon, { name: `caret-${end}`, as: StyledAppShellNavIcon }, void 0)] }, void 0),
104
+ dismissible && (_jsx(Button, { icon: true, variant: 'simple', as: StyledCaseClose, onClick: onDismiss, "aria-label": t('dismiss_case'), children: _jsx(Icon, { name: 'times' }, void 0) }, void 0)),
100
105
  hasItems && (_jsx(NavComponents.List, { nestedList: true, items: items, collapsed: !navOpen || collapseItems }, void 0))));
101
106
  }
102
107
  };
@@ -117,7 +122,7 @@ const CaseTypes = ({ caseTypes }) => {
117
122
  primary: caseType.name
118
123
  };
119
124
  });
120
- return useMemo(() => (_jsx(StyledCaseTypes, Object.assign({ expanded: expanded && navOpen }, { children: _jsx(NavComponents.List, { items: [
125
+ return useMemo(() => (_jsx(StyledCaseTypes, { expanded: expanded && navOpen, children: _jsx(NavComponents.List, { items: [
121
126
  {
122
127
  primary: t('app_shell_create'),
123
128
  visual: _jsx(Icon, { name: 'plus', as: StyledAppShellNavIcon }, void 0),
@@ -125,7 +130,7 @@ const CaseTypes = ({ caseTypes }) => {
125
130
  items: transformedCaseTypes,
126
131
  collapseItems: !expanded || !navOpen
127
132
  }
128
- ] }, void 0) }), void 0)), [expanded, navOpen, toggleExpanded, caseTypes]);
133
+ ] }, void 0) }, void 0)), [expanded, navOpen, toggleExpanded, caseTypes]);
129
134
  };
130
135
  const Links = (props) => {
131
136
  const { links } = props;
@@ -183,10 +188,11 @@ const Cases = (props) => {
183
188
  };
184
189
  // TODO: Need to add back re-focus support to drawer.
185
190
  export const Utils = ({ operator, items, appHeader }) => {
186
- const { drawerOpen, setDrawerOpen } = useContext(AppShellContext);
191
+ const { drawerOpen, setDrawerOpen, focusedImperatively } = useContext(AppShellContext);
187
192
  const [transformedLinks, setTransformedLinks] = useState([]);
188
193
  const [item, setItem] = useState();
189
194
  const [activeUtilItem, setActiveUtilItem] = useState('');
195
+ const returnFocusRef = useRef(null);
190
196
  const operatorInfo = useMemo(() => appHeader
191
197
  ? []
192
198
  : [
@@ -198,18 +204,18 @@ export const Utils = ({ operator, items, appHeader }) => {
198
204
  ], [appHeader, operator.name, operator.avatar, operator.actions]);
199
205
  // TODO: Can this be a memo instead of a state and an effect?
200
206
  const mergedUtilItems = (drawerItems) => {
201
- return drawerItems === null || drawerItems === void 0 ? void 0 : drawerItems.map((drawerItem) => {
207
+ return drawerItems?.map((drawerItem) => {
202
208
  return {
203
- ...drawerItem,
204
- primary: drawerItem.name,
205
- visual: drawerItem.count ? (_jsxs(StyledUtilIconCount, { children: [drawerItem.visual,
206
- _jsx(Count, Object.assign({ as: StyledCountIcon, variant: 'urgent' }, { children: drawerItem.count }), void 0)] }, void 0)) : (drawerItem.visual),
207
- onClick: () => {
209
+ onClick: e => {
210
+ returnFocusRef.current = e.currentTarget;
208
211
  if (drawerItem.drawerView) {
209
212
  setItem(drawerItem);
210
213
  setActiveUtilItem(drawerItem.name);
211
214
  }
212
- }
215
+ },
216
+ ...drawerItem,
217
+ primary: drawerItem.name,
218
+ visual: drawerItem.count ? (_jsxs(StyledUtilIconCount, { children: [drawerItem.visual, _jsx(Count, { as: StyledCountIcon, variant: 'urgent', children: drawerItem.count }, void 0)] }, void 0)) : (drawerItem.visual)
213
219
  };
214
220
  });
215
221
  };
@@ -222,7 +228,7 @@ export const Utils = ({ operator, items, appHeader }) => {
222
228
  }
223
229
  }, [items, operatorInfo]);
224
230
  useEffect(() => {
225
- items === null || items === void 0 ? void 0 : items.forEach(uItem => {
231
+ items?.forEach(uItem => {
226
232
  if (uItem.name === activeUtilItem) {
227
233
  setItem(uItem);
228
234
  }
@@ -234,33 +240,59 @@ export const Utils = ({ operator, items, appHeader }) => {
234
240
  }, [item]);
235
241
  useEffect(() => {
236
242
  if (!drawerOpen) {
237
- setItem(undefined);
238
243
  setActiveUtilItem('');
244
+ focusedImperatively.current = true;
245
+ returnFocusRef?.current?.focus();
239
246
  }
240
247
  }, [drawerOpen]);
241
- return (_jsxs(_Fragment, { children: [_jsx(StyledUtils, { children: _jsx(NavComponents.List, { items: transformedLinks, nestedList: false }, void 0) }, void 0),
242
- item && (_jsx(AppShellDrawer, { content: item.drawerView, header: item.drawerHeader || item.name, onDrawerClose: item.onDrawerClose, onDrawerOpen: item.onDrawerOpen }, void 0))] }, void 0));
248
+ return (_jsxs(_Fragment, { children: [_jsx(StyledUtils, { children: _jsx(NavComponents.List
249
+ // Pull onDrawerOpen and onDrawerClose off to avoid DOM passthrough warning.
250
+ , {
251
+ // Pull onDrawerOpen and onDrawerClose off to avoid DOM passthrough warning.
252
+ items: transformedLinks.map(({ onDrawerOpen, onDrawerClose, ...util }) => util) }, void 0) }, void 0), item && (_jsx(AppShellDrawer, { content: item.drawerView, header: item.drawerHeader || item.name, onDrawerClose: () => {
253
+ setItem(undefined);
254
+ item.onDrawerClose?.();
255
+ }, onDrawerOpen: item.onDrawerOpen }, void 0))] }, void 0));
243
256
  };
244
257
  const AppShell = forwardRef((props, ref) => {
245
258
  const { appInfo, searchInput, appHeader, searchLabel = 'Sitewide', // FIXME: TR
246
259
  caseTypes, links, banners, environment: { name: envName, color: envColor } = {}, main, operator, utils, cases, ...restProps } = props;
247
260
  const { appName, portalName, href: appInfoHref, imageSrc: logoSrc, ...appInfoRestProps } = appInfo;
248
261
  const t = useI18n();
249
- const [navOpenState, setNavOpen] = useState(false);
262
+ const theme = useTheme();
263
+ const navRef = useConsolidatedRef(ref);
250
264
  const [drawerOpen, setDrawerOpen] = useState(false);
251
265
  const [mobileNavOpen, setMobileNavOpen] = useState(false);
252
266
  const [mobileNavBackdrop, setMobileNavBackdrop] = useState(false);
253
267
  const [refocusEl, setRefocusEl] = useState(null);
254
268
  const focusedImperatively = useRef(false);
269
+ const [headerEl, setHeaderEl] = useElement();
270
+ const [mobileHeaderEl, setMobileHeaderEl] = useElement();
255
271
  const isXlOrAbove = useBreakpoint('xl');
256
272
  const isSmallOrAbove = useBreakpoint('sm');
257
- const navOpen = isXlOrAbove || navOpenState;
258
273
  const showAppHeader = !!appHeader && isSmallOrAbove;
259
- const openNav = useCallback(() => {
260
- setNavOpen(true);
274
+ const showMainContent = showAppHeader ? headerEl || mobileHeaderEl : true;
275
+ const openNavTimeoutId = useRef();
276
+ const closeNavTimeoutId = useRef();
277
+ const { state: navState, set: setNavState } = useTransitionState({
278
+ ref: navRef,
279
+ property: 'width',
280
+ states: openCloseStates,
281
+ defaultState: isXlOrAbove ? 'open' : 'closed'
282
+ });
283
+ const openNav = useCallback((delay = 0) => {
284
+ if (closeNavTimeoutId.current)
285
+ clearTimeout(closeNavTimeoutId.current);
286
+ openNavTimeoutId.current = setTimeout(() => {
287
+ setNavState('open');
288
+ }, delay);
261
289
  }, []);
262
- const closeNav = useCallback(() => {
263
- setNavOpen(false);
290
+ const closeNav = useCallback((delay = 0) => {
291
+ if (openNavTimeoutId.current)
292
+ clearTimeout(openNavTimeoutId.current);
293
+ closeNavTimeoutId.current = setTimeout(() => {
294
+ setNavState('closed');
295
+ }, delay);
264
296
  }, []);
265
297
  const onFocus = useCallback(() => {
266
298
  if (!focusedImperatively.current && isSmallOrAbove)
@@ -271,15 +303,22 @@ const AppShell = forwardRef((props, ref) => {
271
303
  if (key === 'Escape')
272
304
  setMobileNavOpen(false);
273
305
  }, []);
274
- const navRef = useConsolidatedRef(ref);
275
306
  useFocusWithin([navRef], useCallback((isFocused, navElement) => {
276
- if (!isFocused && !(navElement === null || navElement === void 0 ? void 0 : navElement.matches(':hover')))
307
+ if (!isFocused && !navElement?.matches(':hover'))
277
308
  closeNav();
278
309
  }, [closeNav]));
310
+ useLayoutEffect(() => {
311
+ if (isXlOrAbove) {
312
+ openNav();
313
+ }
314
+ else {
315
+ closeNav();
316
+ }
317
+ }, [isXlOrAbove]);
279
318
  useEffect(() => {
280
- if (!navOpen)
319
+ if (navState === 'closed' || navState === 'closing')
281
320
  setDrawerOpen(false);
282
- }, [navOpen]);
321
+ }, [navState]);
283
322
  useEffect(() => {
284
323
  if (mobileNavOpen) {
285
324
  document.addEventListener('keydown', onKeydown);
@@ -294,41 +333,29 @@ const AppShell = forwardRef((props, ref) => {
294
333
  setMobileNavOpen(false);
295
334
  }
296
335
  }, [isSmallOrAbove, mobileNavOpen]);
297
- const theme = useTheme();
298
- const appShellJSX = (_jsxs(Flex, Object.assign({}, restProps, { container: {
336
+ const appShellJSX = (_jsxs(Flex, { ...restProps, container: {
299
337
  direction: 'column',
300
338
  justify: 'between'
301
- }, ref: navRef, as: StyledAppNav, appHeader: showAppHeader, navOpen: mobileNavOpen || navOpen, onFocus: onFocus, onMouseEnter: isSmallOrAbove ? openNav : undefined, onMouseLeave: isSmallOrAbove ? closeNav : undefined }, { children: [envName && (_jsx(StyledAppEnvironment, Object.assign({ item: { shrink: 0 }, color: envColor !== null && envColor !== void 0 ? envColor : theme.base.colors.red['extra-light'] }, { children: envName }), void 0)),
302
- !showAppHeader && (_jsxs(StyledAppInfo, Object.assign({ as: Grid, forwardedAs: appInfoHref ? Link : 'div', href: appInfoHref, "aria-label": `${appName}${portalName ? ` - ${portalName}` : ''}` }, appInfoRestProps, { container: {
339
+ }, ref: navRef, as: StyledAppNav, appHeader: showAppHeader, navOpen: mobileNavOpen, showEnv: !!envName, onFocus: onFocus, onMouseEnter: isSmallOrAbove && !isXlOrAbove ? () => openNav(200) : undefined, onMouseLeave: isSmallOrAbove && !isXlOrAbove ? () => closeNav(200) : undefined, children: [envName && (_jsx(StyledAppEnvironment, { item: { shrink: 0 }, color: envColor ?? theme.base.colors.red['extra-light'], children: envName }, void 0)), !showAppHeader && (_jsxs(StyledAppInfo, { as: Grid, forwardedAs: appInfoHref ? Link : 'div', href: appInfoHref, "aria-label": `${appName}${portalName ? ` - ${portalName}` : ''}`, ...appInfoRestProps, container: {
303
340
  alignItems: 'center',
304
341
  areas: portalName ? '"logo app" "logo portal"' : '"logo app"'
305
- } }, { children: [_jsx(Grid, { item: { area: 'logo' }, as: Image, src: logoSrc, alt: appName }, void 0),
306
- _jsx(Grid, Object.assign({ item: { area: 'app' }, as: 'span' }, { children: appName }), void 0),
307
- portalName && (_jsx(Grid, Object.assign({ item: { area: 'portal' }, as: 'span' }, { children: portalName }), void 0))] }), void 0)),
308
- searchInput && !showAppHeader && (_jsx(StyledSearchForm, Object.assign({ role: 'search', "aria-label": searchLabel, onSubmit: e => e.preventDefault() }, { children: _jsx(SearchInput, Object.assign({}, searchInput), void 0) }), void 0)),
309
- _jsxs(StyledScrollWrap, Object.assign({ navOpen: mobileNavOpen || navOpen }, { children: [caseTypes && _jsx(CaseTypes, { caseTypes: caseTypes }, void 0),
310
- links && _jsx(Links, { links: links }, void 0),
311
- cases && _jsx(Cases, { cases: cases }, void 0)] }), void 0),
312
- _jsx(Utils, { appHeader: showAppHeader, operator: operator, items: utils }, void 0)] }), void 0));
342
+ }, children: [_jsx(Grid, { item: { area: 'logo' }, as: Image, src: logoSrc, alt: appName }, void 0), _jsx(Grid, { item: { area: 'app' }, as: 'span', children: appName }, void 0), portalName && (_jsx(Grid, { item: { area: 'portal' }, as: 'span', children: portalName }, void 0))] }, void 0)), searchInput && !showAppHeader && (_jsx(StyledSearchForm, { role: 'search', "aria-label": searchLabel, onSubmit: e => e.preventDefault(), children: _jsx(SearchInput, { ...searchInput }, void 0) }, void 0)), _jsxs(StyledScrollWrap, { children: [caseTypes && _jsx(CaseTypes, { caseTypes: caseTypes }, void 0), links && _jsx(Links, { links: links }, void 0), cases && _jsx(Cases, { cases: cases }, void 0)] }, void 0), _jsx(Utils, { appHeader: showAppHeader, operator: operator, items: utils }, void 0)] }, void 0));
313
343
  const { start } = useDirection();
314
- return (_jsxs(AppShellContext.Provider, Object.assign({ value: useMemo(() => ({
315
- navOpen: mobileNavOpen || navOpen,
344
+ return (_jsxs(AppShellContext.Provider, { value: useMemo(() => ({
345
+ navOpen: mobileNavOpen || navState === 'open' || navState === 'opening',
346
+ navState,
316
347
  drawerOpen,
317
348
  setDrawerOpen,
318
349
  refocusEl,
319
350
  setRefocusEl,
320
- focusedImperatively
321
- }), [navOpen, mobileNavOpen, drawerOpen, refocusEl]) }, { children: [_jsx(SkipNavigation, {}, void 0),
322
- showAppHeader && (_jsx(AppHeader, Object.assign({}, appInfo, { searchInput: searchInput, searchLabel: searchLabel, operator: operator }), void 0)),
323
- isSmallOrAbove ? (appShellJSX) : (_jsxs(_Fragment, { children: [_jsx(Flex, Object.assign({ as: StyledMobileNav, container: { alignItems: 'center' } }, { children: _jsx(Button, Object.assign({ variant: 'simple', onClick: () => setMobileNavBackdrop(true), "aria-label": t('app_shell_open_nav'), icon: true }, { children: _jsx(Icon, { name: 'bars' }, void 0) }), void 0) }), void 0),
324
- _jsx(Backdrop, Object.assign({ open: mobileNavBackdrop, transitionSpeed: 'none', onAfterTransitionIn: () => setMobileNavOpen(true), onBeforeTransitionOut: () => setMobileNavOpen(false), onClick: e => {
351
+ focusedImperatively,
352
+ headerEl: headerEl || mobileHeaderEl
353
+ }), [navState, mobileNavOpen, drawerOpen, refocusEl, headerEl, mobileHeaderEl]), children: [_jsx(SkipNavigation, {}, void 0), showAppHeader && (_jsx(AppHeader, { ...appInfo, searchInput: searchInput, searchLabel: searchLabel, operator: operator, ref: setHeaderEl }, void 0)), isSmallOrAbove ? (appShellJSX) : (_jsxs(_Fragment, { children: [_jsx(Flex, { as: StyledMobileNav, container: { alignItems: 'center' }, ref: setMobileHeaderEl, children: _jsx(Button, { variant: 'simple', onClick: () => setMobileNavBackdrop(true), "aria-label": t('app_shell_open_nav'), icon: true, children: _jsx(Icon, { name: 'bars' }, void 0) }, void 0) }, void 0), _jsx(Backdrop, { open: mobileNavBackdrop, transitionSpeed: 'none', onAfterTransitionIn: () => setMobileNavOpen(true), onBeforeTransitionOut: () => setMobileNavOpen(false), onClick: e => {
325
354
  if (e.currentTarget === e.target)
326
355
  setMobileNavOpen(false);
327
- } }, { children: _jsx(Drawer, Object.assign({ open: mobileNavOpen, onAfterClose: () => {
356
+ }, children: _jsx(Drawer, { open: mobileNavOpen, onAfterClose: () => {
328
357
  setMobileNavBackdrop(false);
329
- }, position: 'fixed', placement: start, size: 'min(18.75rem, calc(100vw - 3.5rem))', nullWhenClosed: true }, { children: appShellJSX }), void 0) }), void 0)] }, void 0)),
330
- _jsxs(StyledAppMain, Object.assign({ appHeader: showAppHeader, mobileNav: !isSmallOrAbove }, { children: [banners && _jsx(StyledBannerRegion, { children: banners }, void 0),
331
- main] }), void 0)] }), void 0));
358
+ }, position: 'fixed', placement: start, size: 'min(18.75rem, calc(100vw - 3.5rem))', nullWhenClosed: true, children: appShellJSX }, void 0) }, void 0)] }, void 0)), showMainContent && (_jsxs(StyledAppMain, { tabIndex: -1, appHeader: showAppHeader, mobileNav: !isSmallOrAbove, headerOffset: isSmallOrAbove ? headerEl?.offsetHeight : mobileHeaderEl?.offsetHeight, children: [banners && _jsx(StyledBannerRegion, { children: banners }, void 0), main] }, void 0))] }, void 0));
332
359
  });
333
360
  export default AppShell;
334
361
  //# sourceMappingURL=AppShell.js.map