@workday/canvas-kit-react 8.0.0 → 8.0.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 (1111) hide show
  1. package/action-bar/lib/ActionBarItem.tsx +2 -7
  2. package/action-bar/lib/ActionBarList.tsx +17 -7
  3. package/action-bar/lib/ActionBarOverflowButton.tsx +10 -6
  4. package/avatar/index.ts +0 -4
  5. package/avatar/lib/Avatar.tsx +1 -3
  6. package/badge/index.ts +1 -1
  7. package/badge/lib/CountBadge.tsx +1 -3
  8. package/banner/lib/Banner.tsx +3 -6
  9. package/breadcrumbs/LICENSE +52 -0
  10. package/breadcrumbs/README.md +9 -0
  11. package/breadcrumbs/index.ts +2 -0
  12. package/breadcrumbs/lib/Breadcrumbs.tsx +151 -0
  13. package/breadcrumbs/lib/BreadcrumbsCurrentItem.tsx +76 -0
  14. package/breadcrumbs/lib/BreadcrumbsItem.tsx +82 -0
  15. package/breadcrumbs/lib/BreadcrumbsLink.tsx +52 -0
  16. package/breadcrumbs/lib/BreadcrumbsList.tsx +51 -0
  17. package/breadcrumbs/lib/BreadcrumbsMenu.tsx +28 -0
  18. package/breadcrumbs/lib/BreadcrumbsOverflowButton.tsx +58 -0
  19. package/breadcrumbs/lib/hooks/useBreadcrumbsModel.tsx +76 -0
  20. package/breadcrumbs/lib/hooks/utils/index.ts +22 -0
  21. package/breadcrumbs/package.json +6 -0
  22. package/button/index.ts +7 -1
  23. package/button/lib/BaseButton.tsx +7 -4
  24. package/button/lib/DeleteButton.tsx +2 -2
  25. package/button/lib/PrimaryButton.tsx +2 -2
  26. package/button/lib/SecondaryButton.tsx +2 -2
  27. package/button/lib/TertiaryButton.tsx +21 -10
  28. package/button/lib/deprecated_Button.tsx +1 -1
  29. package/card/lib/CardBody.tsx +3 -6
  30. package/card/lib/CardHeading.tsx +13 -10
  31. package/checkbox/index.ts +0 -4
  32. package/checkbox/lib/Checkbox.tsx +9 -25
  33. package/collection/index.ts +2 -0
  34. package/collection/lib/ListBox.tsx +1 -1
  35. package/collection/lib/useBaseListModel.tsx +1 -1
  36. package/collection/lib/useCursorListModel.tsx +88 -20
  37. package/collection/lib/useGridModel.ts +34 -0
  38. package/collection/lib/useListItemRovingFocus.tsx +6 -4
  39. package/collection/lib/useListRenderItem.tsx +24 -14
  40. package/color-picker/index.ts +0 -4
  41. package/color-picker/lib/ColorInput.tsx +1 -4
  42. package/color-picker/lib/ColorPreview.tsx +1 -3
  43. package/common/index.ts +1 -0
  44. package/common/lib/InputProvider.tsx +1 -6
  45. package/common/lib/responsive/useResponsiveContainerStyles.ts +128 -0
  46. package/common/lib/styles/focusRing.ts +1 -1
  47. package/common/lib/theming/index.ts +1 -1
  48. package/common/lib/theming/styled.ts +6 -3
  49. package/common/lib/utils/components.ts +51 -25
  50. package/common/lib/utils/elements.ts +7 -12
  51. package/common/lib/utils/index.ts +0 -1
  52. package/common/lib/utils/isWithinBreakpoint.ts +6 -0
  53. package/common/lib/utils/models.ts +10 -2
  54. package/common/lib/utils/useModalityType.ts +13 -13
  55. package/dist/commonjs/action-bar/lib/ActionBar.d.ts +3 -3
  56. package/dist/commonjs/action-bar/lib/ActionBarItem.d.ts +8 -0
  57. package/dist/commonjs/action-bar/lib/ActionBarItem.d.ts.map +1 -1
  58. package/dist/commonjs/action-bar/lib/ActionBarItem.js +1 -1
  59. package/dist/commonjs/action-bar/lib/ActionBarList.d.ts +95 -3
  60. package/dist/commonjs/action-bar/lib/ActionBarList.d.ts.map +1 -1
  61. package/dist/commonjs/action-bar/lib/ActionBarList.js +5 -5
  62. package/dist/commonjs/action-bar/lib/ActionBarOverflowButton.d.ts +5 -1
  63. package/dist/commonjs/action-bar/lib/ActionBarOverflowButton.d.ts.map +1 -1
  64. package/dist/commonjs/action-bar/lib/ActionBarOverflowButton.js +3 -3
  65. package/dist/commonjs/avatar/index.d.ts +0 -3
  66. package/dist/commonjs/avatar/index.d.ts.map +1 -1
  67. package/dist/commonjs/avatar/index.js +0 -7
  68. package/dist/commonjs/avatar/lib/Avatar.d.ts +2 -2
  69. package/dist/commonjs/avatar/lib/Avatar.d.ts.map +1 -1
  70. package/dist/commonjs/avatar/lib/Avatar.js +4 -5
  71. package/dist/commonjs/badge/index.d.ts +1 -1
  72. package/dist/commonjs/badge/index.d.ts.map +1 -1
  73. package/dist/commonjs/badge/index.js +1 -4
  74. package/dist/commonjs/badge/lib/CountBadge.d.ts +1 -2
  75. package/dist/commonjs/badge/lib/CountBadge.d.ts.map +1 -1
  76. package/dist/commonjs/badge/lib/CountBadge.js +2 -1
  77. package/dist/commonjs/banner/lib/Banner.d.ts +0 -9
  78. package/dist/commonjs/banner/lib/Banner.d.ts.map +1 -1
  79. package/dist/commonjs/banner/lib/Banner.js +2 -4
  80. package/dist/commonjs/breadcrumbs/index.d.ts +3 -0
  81. package/dist/commonjs/breadcrumbs/index.d.ts.map +1 -0
  82. package/dist/commonjs/breadcrumbs/index.js +14 -0
  83. package/dist/commonjs/breadcrumbs/lib/Breadcrumbs.d.ts +3851 -0
  84. package/dist/commonjs/breadcrumbs/lib/Breadcrumbs.d.ts.map +1 -0
  85. package/dist/commonjs/breadcrumbs/lib/Breadcrumbs.js +177 -0
  86. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsCurrentItem.d.ts +212 -0
  87. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsCurrentItem.d.ts.map +1 -0
  88. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsCurrentItem.js +63 -0
  89. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsItem.d.ts +226 -0
  90. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsItem.d.ts.map +1 -0
  91. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsItem.js +76 -0
  92. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsLink.d.ts +17 -0
  93. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsLink.d.ts.map +1 -0
  94. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsLink.js +46 -0
  95. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsList.d.ts +164 -0
  96. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsList.d.ts.map +1 -0
  97. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsList.js +63 -0
  98. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsMenu.d.ts +1717 -0
  99. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsMenu.d.ts.map +1 -0
  100. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsMenu.js +58 -0
  101. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsOverflowButton.d.ts +241 -0
  102. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsOverflowButton.d.ts.map +1 -0
  103. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsOverflowButton.js +68 -0
  104. package/dist/commonjs/breadcrumbs/lib/hooks/useBreadcrumbsModel.d.ts +1661 -0
  105. package/dist/commonjs/breadcrumbs/lib/hooks/useBreadcrumbsModel.d.ts.map +1 -0
  106. package/dist/commonjs/breadcrumbs/lib/hooks/useBreadcrumbsModel.js +67 -0
  107. package/dist/commonjs/breadcrumbs/lib/hooks/utils/index.d.ts +6 -0
  108. package/dist/commonjs/breadcrumbs/lib/hooks/utils/index.d.ts.map +1 -0
  109. package/dist/commonjs/breadcrumbs/lib/hooks/utils/index.js +22 -0
  110. package/dist/commonjs/button/index.d.ts +1 -1
  111. package/dist/commonjs/button/index.d.ts.map +1 -1
  112. package/dist/commonjs/button/index.js +3 -1
  113. package/dist/commonjs/button/lib/BaseButton.d.ts +7 -4
  114. package/dist/commonjs/button/lib/BaseButton.d.ts.map +1 -1
  115. package/dist/commonjs/button/lib/DeleteButton.d.ts +2 -1
  116. package/dist/commonjs/button/lib/DeleteButton.d.ts.map +1 -1
  117. package/dist/commonjs/button/lib/PrimaryButton.d.ts +2 -1
  118. package/dist/commonjs/button/lib/PrimaryButton.d.ts.map +1 -1
  119. package/dist/commonjs/button/lib/SecondaryButton.d.ts +2 -1
  120. package/dist/commonjs/button/lib/SecondaryButton.d.ts.map +1 -1
  121. package/dist/commonjs/button/lib/TertiaryButton.d.ts +11 -1
  122. package/dist/commonjs/button/lib/TertiaryButton.d.ts.map +1 -1
  123. package/dist/commonjs/button/lib/TertiaryButton.js +9 -8
  124. package/dist/commonjs/button/lib/deprecated_Button.js +7 -7
  125. package/dist/commonjs/card/lib/Card.d.ts +1 -1
  126. package/dist/commonjs/card/lib/CardBody.d.ts +1 -1
  127. package/dist/commonjs/card/lib/CardBody.d.ts.map +1 -1
  128. package/dist/commonjs/card/lib/CardBody.js +1 -6
  129. package/dist/commonjs/card/lib/CardHeading.d.ts.map +1 -1
  130. package/dist/commonjs/card/lib/CardHeading.js +2 -10
  131. package/dist/commonjs/checkbox/index.d.ts +0 -3
  132. package/dist/commonjs/checkbox/index.d.ts.map +1 -1
  133. package/dist/commonjs/checkbox/index.js +0 -7
  134. package/dist/commonjs/checkbox/lib/Checkbox.d.ts +0 -1
  135. package/dist/commonjs/checkbox/lib/Checkbox.d.ts.map +1 -1
  136. package/dist/commonjs/checkbox/lib/Checkbox.js +3 -15
  137. package/dist/commonjs/collection/index.d.ts +2 -0
  138. package/dist/commonjs/collection/index.d.ts.map +1 -1
  139. package/dist/commonjs/collection/index.js +5 -1
  140. package/dist/commonjs/collection/lib/ListBox.d.ts +1 -58
  141. package/dist/commonjs/collection/lib/ListBox.d.ts.map +1 -1
  142. package/dist/commonjs/collection/lib/useBaseListModel.js +1 -1
  143. package/dist/commonjs/collection/lib/useCursorListModel.d.ts +64 -101
  144. package/dist/commonjs/collection/lib/useCursorListModel.d.ts.map +1 -1
  145. package/dist/commonjs/collection/lib/useCursorListModel.js +64 -23
  146. package/dist/commonjs/collection/lib/useGridModel.d.ts +955 -0
  147. package/dist/commonjs/collection/lib/useGridModel.d.ts.map +1 -0
  148. package/dist/commonjs/collection/lib/useGridModel.js +52 -0
  149. package/dist/commonjs/collection/lib/useListItemRovingFocus.d.ts.map +1 -1
  150. package/dist/commonjs/collection/lib/useListItemRovingFocus.js +6 -4
  151. package/dist/commonjs/collection/lib/useListRenderItem.d.ts +1 -1
  152. package/dist/commonjs/collection/lib/useListRenderItem.d.ts.map +1 -1
  153. package/dist/commonjs/collection/lib/useListRenderItem.js +21 -11
  154. package/dist/commonjs/color-picker/index.d.ts +0 -3
  155. package/dist/commonjs/color-picker/index.d.ts.map +1 -1
  156. package/dist/commonjs/color-picker/index.js +0 -8
  157. package/dist/commonjs/color-picker/lib/ColorInput.d.ts +0 -1
  158. package/dist/commonjs/color-picker/lib/ColorInput.d.ts.map +1 -1
  159. package/dist/commonjs/color-picker/lib/ColorInput.js +1 -3
  160. package/dist/commonjs/color-picker/lib/ColorPreview.d.ts +0 -1
  161. package/dist/commonjs/color-picker/lib/ColorPreview.d.ts.map +1 -1
  162. package/dist/commonjs/color-picker/lib/ColorPreview.js +2 -3
  163. package/dist/commonjs/common/index.d.ts +1 -0
  164. package/dist/commonjs/common/index.d.ts.map +1 -1
  165. package/dist/commonjs/common/index.js +1 -0
  166. package/dist/commonjs/common/lib/InputProvider.d.ts +2 -2
  167. package/dist/commonjs/common/lib/InputProvider.d.ts.map +1 -1
  168. package/dist/commonjs/common/lib/InputProvider.js +0 -7
  169. package/dist/commonjs/common/lib/responsive/useResponsiveContainerStyles.d.ts +78 -0
  170. package/dist/commonjs/common/lib/responsive/useResponsiveContainerStyles.d.ts.map +1 -0
  171. package/dist/commonjs/common/lib/responsive/useResponsiveContainerStyles.js +139 -0
  172. package/dist/commonjs/common/lib/styles/focusRing.js +2 -2
  173. package/dist/commonjs/common/lib/theming/index.d.ts +1 -1
  174. package/dist/commonjs/common/lib/theming/index.d.ts.map +1 -1
  175. package/dist/commonjs/common/lib/theming/styled.d.ts +2 -0
  176. package/dist/commonjs/common/lib/theming/styled.d.ts.map +1 -1
  177. package/dist/commonjs/common/lib/theming/styled.js +1 -2
  178. package/dist/commonjs/common/lib/utils/components.d.ts +31 -19
  179. package/dist/commonjs/common/lib/utils/components.d.ts.map +1 -1
  180. package/dist/commonjs/common/lib/utils/components.js +10 -5
  181. package/dist/commonjs/common/lib/utils/elements.d.ts +1 -1
  182. package/dist/commonjs/common/lib/utils/elements.d.ts.map +1 -1
  183. package/dist/commonjs/common/lib/utils/elements.js +5 -11
  184. package/dist/commonjs/common/lib/utils/index.d.ts +0 -1
  185. package/dist/commonjs/common/lib/utils/index.d.ts.map +1 -1
  186. package/dist/commonjs/common/lib/utils/index.js +0 -1
  187. package/dist/commonjs/common/lib/utils/isWithinBreakpoint.d.ts +5 -0
  188. package/dist/commonjs/common/lib/utils/isWithinBreakpoint.d.ts.map +1 -0
  189. package/dist/commonjs/common/lib/utils/isWithinBreakpoint.js +10 -0
  190. package/dist/commonjs/common/lib/utils/models.d.ts +10 -2
  191. package/dist/commonjs/common/lib/utils/models.d.ts.map +1 -1
  192. package/dist/commonjs/common/lib/utils/models.js +3 -0
  193. package/dist/commonjs/common/lib/utils/useModalityType.js +13 -13
  194. package/dist/commonjs/dialog/lib/Dialog.d.ts +1 -1
  195. package/dist/commonjs/form-field/index.d.ts +0 -5
  196. package/dist/commonjs/form-field/index.d.ts.map +1 -1
  197. package/dist/commonjs/form-field/index.js +0 -11
  198. package/dist/commonjs/form-field/lib/FormField.d.ts +2 -2
  199. package/dist/commonjs/form-field/lib/FormField.d.ts.map +1 -1
  200. package/dist/commonjs/form-field/lib/FormField.js +6 -8
  201. package/dist/commonjs/form-field/lib/Hint.d.ts +1 -1
  202. package/dist/commonjs/form-field/lib/Hint.d.ts.map +1 -1
  203. package/dist/commonjs/form-field/lib/Hint.js +7 -14
  204. package/dist/commonjs/form-field/lib/Label.d.ts +2 -2
  205. package/dist/commonjs/form-field/lib/Label.d.ts.map +1 -1
  206. package/dist/commonjs/form-field/lib/Label.js +2 -3
  207. package/dist/commonjs/icon/index.d.ts +0 -7
  208. package/dist/commonjs/icon/index.d.ts.map +1 -1
  209. package/dist/commonjs/icon/index.js +0 -16
  210. package/dist/commonjs/icon/lib/AccentIcon.d.ts +1 -2
  211. package/dist/commonjs/icon/lib/AccentIcon.d.ts.map +1 -1
  212. package/dist/commonjs/icon/lib/AccentIcon.js +4 -8
  213. package/dist/commonjs/icon/lib/AppletIcon.d.ts +0 -1
  214. package/dist/commonjs/icon/lib/AppletIcon.d.ts.map +1 -1
  215. package/dist/commonjs/icon/lib/AppletIcon.js +2 -6
  216. package/dist/commonjs/icon/lib/Graphic.d.ts +1 -2
  217. package/dist/commonjs/icon/lib/Graphic.d.ts.map +1 -1
  218. package/dist/commonjs/icon/lib/Graphic.js +4 -8
  219. package/dist/commonjs/icon/lib/Icon.d.ts +0 -1
  220. package/dist/commonjs/icon/lib/Icon.d.ts.map +1 -1
  221. package/dist/commonjs/icon/lib/Icon.js +2 -6
  222. package/dist/commonjs/icon/lib/Svg.d.ts +0 -1
  223. package/dist/commonjs/icon/lib/Svg.d.ts.map +1 -1
  224. package/dist/commonjs/icon/lib/Svg.js +0 -1
  225. package/dist/commonjs/icon/lib/SystemIcon.d.ts +2 -3
  226. package/dist/commonjs/icon/lib/SystemIcon.d.ts.map +1 -1
  227. package/dist/commonjs/icon/lib/SystemIcon.js +4 -8
  228. package/dist/commonjs/icon/lib/SystemIconCircle.d.ts +1 -2
  229. package/dist/commonjs/icon/lib/SystemIconCircle.d.ts.map +1 -1
  230. package/dist/commonjs/icon/lib/SystemIconCircle.js +4 -5
  231. package/dist/commonjs/index.d.ts +4 -1
  232. package/dist/commonjs/index.d.ts.map +1 -1
  233. package/dist/commonjs/index.js +4 -1
  234. package/dist/commonjs/layout/index.d.ts +15 -5
  235. package/dist/commonjs/layout/index.d.ts.map +1 -1
  236. package/dist/commonjs/layout/index.js +16 -8
  237. package/dist/commonjs/layout/lib/Box.d.ts +23 -11
  238. package/dist/commonjs/layout/lib/Box.d.ts.map +1 -1
  239. package/dist/commonjs/layout/lib/Box.js +34 -8
  240. package/dist/commonjs/layout/lib/Column.d.ts +13 -4
  241. package/dist/commonjs/layout/lib/Column.d.ts.map +1 -1
  242. package/dist/commonjs/layout/lib/Column.js +10 -6
  243. package/dist/commonjs/layout/lib/Flex.d.ts +6 -3
  244. package/dist/commonjs/layout/lib/Flex.d.ts.map +1 -1
  245. package/dist/commonjs/layout/lib/Flex.js +5 -1
  246. package/dist/commonjs/layout/lib/Grid.d.ts +51 -0
  247. package/dist/commonjs/layout/lib/Grid.d.ts.map +1 -0
  248. package/dist/commonjs/layout/lib/Grid.js +115 -0
  249. package/dist/commonjs/layout/lib/Layout.d.ts +26 -10
  250. package/dist/commonjs/layout/lib/Layout.d.ts.map +1 -1
  251. package/dist/commonjs/layout/lib/Layout.js +24 -12
  252. package/dist/commonjs/layout/lib/Stack.d.ts +4 -4
  253. package/dist/commonjs/layout/lib/Stack.js +4 -4
  254. package/dist/commonjs/layout/lib/utils/background.d.ts +44 -0
  255. package/dist/commonjs/layout/lib/utils/background.d.ts.map +1 -0
  256. package/dist/commonjs/layout/lib/utils/background.js +57 -0
  257. package/dist/commonjs/layout/lib/utils/border/color.d.ts +47 -0
  258. package/dist/commonjs/layout/lib/utils/border/color.d.ts.map +1 -0
  259. package/dist/commonjs/layout/lib/utils/border/color.js +42 -0
  260. package/dist/commonjs/layout/lib/utils/border/index.d.ts +26 -0
  261. package/dist/commonjs/layout/lib/utils/border/index.d.ts.map +1 -0
  262. package/dist/commonjs/layout/lib/utils/border/index.js +46 -0
  263. package/dist/commonjs/layout/lib/utils/border/lineStyle.d.ts +38 -0
  264. package/dist/commonjs/layout/lib/utils/border/lineStyle.d.ts.map +1 -0
  265. package/dist/commonjs/layout/lib/utils/border/lineStyle.js +52 -0
  266. package/dist/commonjs/layout/lib/utils/border/radius.d.ts +33 -0
  267. package/dist/commonjs/layout/lib/utils/border/radius.d.ts.map +1 -0
  268. package/dist/commonjs/layout/lib/utils/border/radius.js +32 -0
  269. package/dist/commonjs/layout/lib/utils/border/shorthand.d.ts +34 -0
  270. package/dist/commonjs/layout/lib/utils/border/shorthand.d.ts.map +1 -0
  271. package/dist/commonjs/layout/lib/utils/border/shorthand.js +42 -0
  272. package/dist/commonjs/layout/lib/utils/border/width.d.ts +34 -0
  273. package/dist/commonjs/layout/lib/utils/border/width.d.ts.map +1 -0
  274. package/dist/commonjs/layout/lib/utils/border/width.js +42 -0
  275. package/dist/commonjs/layout/lib/utils/buildStyleFns.d.ts +12 -0
  276. package/dist/commonjs/layout/lib/utils/buildStyleFns.d.ts.map +1 -0
  277. package/dist/commonjs/layout/lib/utils/buildStyleFns.js +90 -0
  278. package/dist/commonjs/layout/lib/utils/color.d.ts +23 -16
  279. package/dist/commonjs/layout/lib/utils/color.d.ts.map +1 -1
  280. package/dist/commonjs/layout/lib/utils/color.js +25 -48
  281. package/dist/commonjs/layout/lib/utils/depth.d.ts +17 -11
  282. package/dist/commonjs/layout/lib/utils/depth.d.ts.map +1 -1
  283. package/dist/commonjs/layout/lib/utils/depth.js +20 -20
  284. package/dist/commonjs/layout/lib/utils/flex.d.ts +39 -20
  285. package/dist/commonjs/layout/lib/utils/flex.d.ts.map +1 -1
  286. package/dist/commonjs/layout/lib/utils/flex.js +58 -25
  287. package/dist/commonjs/layout/lib/utils/flexItem.d.ts +22 -19
  288. package/dist/commonjs/layout/lib/utils/flexItem.d.ts.map +1 -1
  289. package/dist/commonjs/layout/lib/utils/flexItem.js +43 -26
  290. package/dist/commonjs/layout/lib/utils/grid.d.ts +72 -0
  291. package/dist/commonjs/layout/lib/utils/grid.d.ts.map +1 -0
  292. package/dist/commonjs/layout/lib/utils/grid.js +112 -0
  293. package/dist/commonjs/layout/lib/utils/gridItem.d.ts +42 -0
  294. package/dist/commonjs/layout/lib/utils/gridItem.d.ts.map +1 -0
  295. package/dist/commonjs/layout/lib/utils/gridItem.js +71 -0
  296. package/dist/commonjs/layout/lib/utils/layout.d.ts +54 -32
  297. package/dist/commonjs/layout/lib/utils/layout.d.ts.map +1 -1
  298. package/dist/commonjs/layout/lib/utils/layout.js +71 -33
  299. package/dist/commonjs/layout/lib/utils/other.d.ts +46 -2
  300. package/dist/commonjs/layout/lib/utils/other.d.ts.map +1 -1
  301. package/dist/commonjs/layout/lib/utils/other.js +101 -17
  302. package/dist/commonjs/layout/lib/utils/position.d.ts +40 -23
  303. package/dist/commonjs/layout/lib/utils/position.d.ts.map +1 -1
  304. package/dist/commonjs/layout/lib/utils/position.js +49 -66
  305. package/dist/commonjs/layout/lib/utils/space.d.ts +107 -51
  306. package/dist/commonjs/layout/lib/utils/space.d.ts.map +1 -1
  307. package/dist/commonjs/layout/lib/utils/space.js +98 -148
  308. package/dist/commonjs/layout/lib/utils/stack.d.ts +3 -6
  309. package/dist/commonjs/layout/lib/utils/stack.d.ts.map +1 -1
  310. package/dist/commonjs/layout/lib/utils/stack.js +13 -39
  311. package/dist/commonjs/layout/lib/utils/styleProps.d.ts +41 -0
  312. package/dist/commonjs/layout/lib/utils/styleProps.d.ts.map +1 -0
  313. package/dist/commonjs/layout/lib/utils/{types.js → styleProps.js} +0 -0
  314. package/dist/commonjs/layout/lib/utils/systemProps.d.ts +31 -0
  315. package/dist/commonjs/layout/lib/utils/systemProps.d.ts.map +1 -0
  316. package/dist/commonjs/layout/lib/utils/systemProps.js +2 -0
  317. package/dist/commonjs/layout/lib/utils/text.d.ts +53 -0
  318. package/dist/commonjs/layout/lib/utils/text.d.ts.map +1 -0
  319. package/dist/commonjs/layout/lib/utils/text.js +84 -0
  320. package/dist/commonjs/loading-dots/index.d.ts +2 -0
  321. package/dist/commonjs/loading-dots/index.d.ts.map +1 -0
  322. package/dist/commonjs/{loading-animation → loading-dots}/index.js +0 -8
  323. package/dist/commonjs/{loading-animation → loading-dots}/lib/LoadingDots.d.ts +1 -1
  324. package/dist/commonjs/loading-dots/lib/LoadingDots.d.ts.map +1 -0
  325. package/dist/commonjs/{loading-animation → loading-dots}/lib/LoadingDots.js +7 -6
  326. package/dist/commonjs/menu/lib/Menu.d.ts +1 -1
  327. package/dist/commonjs/menu/lib/MenuCard.d.ts.map +1 -1
  328. package/dist/commonjs/menu/lib/MenuCard.js +1 -1
  329. package/dist/commonjs/menu/lib/MenuContextTarget.d.ts.map +1 -1
  330. package/dist/commonjs/menu/lib/MenuContextTarget.js +2 -4
  331. package/dist/commonjs/menu/lib/MenuItem.js +13 -12
  332. package/dist/commonjs/menu/lib/MenuList.d.ts +3 -3
  333. package/dist/commonjs/menu/lib/MenuList.d.ts.map +1 -1
  334. package/dist/commonjs/menu/lib/MenuTarget.d.ts.map +1 -1
  335. package/dist/commonjs/menu/lib/MenuTarget.js +2 -4
  336. package/dist/commonjs/modal/lib/Modal.d.ts +1 -1
  337. package/dist/commonjs/modal/lib/ModalCard.d.ts.map +1 -1
  338. package/dist/commonjs/modal/lib/ModalCard.js +15 -1
  339. package/dist/commonjs/modal/lib/ModalHeading.d.ts.map +1 -1
  340. package/dist/commonjs/modal/lib/ModalHeading.js +11 -1
  341. package/dist/commonjs/modal/lib/ModalOverlay.d.ts +0 -1
  342. package/dist/commonjs/modal/lib/ModalOverlay.d.ts.map +1 -1
  343. package/dist/commonjs/modal/lib/ModalOverlay.js +21 -16
  344. package/dist/commonjs/modal/lib/hooks/useCloseOnOverlayClick.d.ts.map +1 -1
  345. package/dist/commonjs/modal/lib/hooks/useCloseOnOverlayClick.js +3 -1
  346. package/dist/commonjs/modal/lib/hooks/useModalModel.js +1 -1
  347. package/dist/commonjs/pagination/lib/Pagination/AdditionalDetails.d.ts +1 -1
  348. package/dist/commonjs/pagination/lib/Pagination/AdditionalDetails.d.ts.map +1 -1
  349. package/dist/commonjs/pagination/lib/Pagination/AdditionalDetails.js +5 -4
  350. package/dist/commonjs/pagination/lib/Pagination/GoTo/Label.d.ts +1 -1
  351. package/dist/commonjs/pagination/lib/Pagination/GoTo/Label.d.ts.map +1 -1
  352. package/dist/commonjs/pagination/lib/Pagination/GoTo/Label.js +2 -4
  353. package/dist/commonjs/pagination/lib/Pagination/PageList.d.ts +1 -1
  354. package/dist/commonjs/pagination/lib/Pagination/PageList.d.ts.map +1 -1
  355. package/dist/commonjs/pagination/lib/Pagination/usePaginationModel.d.ts.map +1 -1
  356. package/dist/commonjs/pagination/lib/Pagination/usePaginationModel.js +5 -1
  357. package/dist/commonjs/popup/lib/Popup.d.ts +1 -1
  358. package/dist/commonjs/popup/lib/PopupBody.d.ts +1 -1
  359. package/dist/commonjs/popup/lib/PopupBody.js +1 -1
  360. package/dist/commonjs/popup/lib/PopupCard.d.ts +3 -2
  361. package/dist/commonjs/popup/lib/PopupCard.d.ts.map +1 -1
  362. package/dist/commonjs/popup/lib/PopupCard.js +20 -13
  363. package/dist/commonjs/popup/lib/PopupCloseButton.d.ts.map +1 -1
  364. package/dist/commonjs/popup/lib/PopupCloseButton.js +1 -1
  365. package/dist/commonjs/popup/lib/PopupCloseIcon.js +1 -1
  366. package/dist/commonjs/popup/lib/PopupHeading.js +1 -1
  367. package/dist/commonjs/popup/lib/PopupPopper.d.ts +2 -3
  368. package/dist/commonjs/popup/lib/PopupPopper.d.ts.map +1 -1
  369. package/dist/commonjs/popup/lib/hooks/index.d.ts +1 -0
  370. package/dist/commonjs/popup/lib/hooks/index.d.ts.map +1 -1
  371. package/dist/commonjs/popup/lib/hooks/index.js +1 -0
  372. package/dist/commonjs/popup/lib/hooks/useCloseOnTargetHidden.d.ts +31 -0
  373. package/dist/commonjs/popup/lib/hooks/useCloseOnTargetHidden.d.ts.map +1 -0
  374. package/dist/commonjs/popup/lib/hooks/useCloseOnTargetHidden.js +56 -0
  375. package/dist/commonjs/popup/lib/hooks/useReturnFocus.d.ts.map +1 -1
  376. package/dist/commonjs/popup/lib/hooks/useReturnFocus.js +97 -3
  377. package/dist/commonjs/radio/index.d.ts +0 -4
  378. package/dist/commonjs/radio/index.d.ts.map +1 -1
  379. package/dist/commonjs/radio/index.js +0 -9
  380. package/dist/commonjs/radio/lib/Radio.d.ts +0 -1
  381. package/dist/commonjs/radio/lib/Radio.d.ts.map +1 -1
  382. package/dist/commonjs/radio/lib/Radio.js +3 -15
  383. package/dist/commonjs/radio/lib/RadioGroup.d.ts +1 -1
  384. package/dist/commonjs/radio/lib/RadioGroup.d.ts.map +1 -1
  385. package/dist/commonjs/radio/lib/RadioGroup.js +4 -6
  386. package/dist/commonjs/segmented-control/index.d.ts +0 -3
  387. package/dist/commonjs/segmented-control/index.d.ts.map +1 -1
  388. package/dist/commonjs/segmented-control/index.js +0 -7
  389. package/dist/commonjs/segmented-control/lib/SegmentedControl.d.ts +0 -1
  390. package/dist/commonjs/segmented-control/lib/SegmentedControl.d.ts.map +1 -1
  391. package/dist/commonjs/segmented-control/lib/SegmentedControl.js +0 -1
  392. package/dist/commonjs/segmented-control/lib/SegmentedControlButton.d.ts +3 -1
  393. package/dist/commonjs/segmented-control/lib/SegmentedControlButton.d.ts.map +1 -1
  394. package/dist/commonjs/segmented-control/lib/SegmentedControlButton.js +11 -2
  395. package/dist/commonjs/select/index.d.ts +0 -4
  396. package/dist/commonjs/select/index.d.ts.map +1 -1
  397. package/dist/commonjs/select/index.js +0 -9
  398. package/dist/commonjs/select/lib/Select.d.ts +1 -2
  399. package/dist/commonjs/select/lib/Select.d.ts.map +1 -1
  400. package/dist/commonjs/select/lib/Select.js +0 -1
  401. package/dist/commonjs/select/lib/SelectOption.d.ts +1 -1
  402. package/dist/commonjs/select/lib/SelectOption.d.ts.map +1 -1
  403. package/dist/commonjs/select/lib/SelectOption.js +2 -1
  404. package/dist/commonjs/side-panel/index.d.ts +0 -3
  405. package/dist/commonjs/side-panel/index.d.ts.map +1 -1
  406. package/dist/commonjs/side-panel/index.js +0 -7
  407. package/dist/commonjs/side-panel/lib/SidePanel.d.ts +1 -1
  408. package/dist/commonjs/side-panel/lib/SidePanel.d.ts.map +1 -1
  409. package/dist/commonjs/side-panel/lib/SidePanel.js +4 -4
  410. package/dist/commonjs/status-indicator/index.d.ts +0 -3
  411. package/dist/commonjs/status-indicator/index.d.ts.map +1 -1
  412. package/dist/commonjs/status-indicator/index.js +0 -7
  413. package/dist/commonjs/status-indicator/lib/StatusIndicator.d.ts +1 -1
  414. package/dist/commonjs/status-indicator/lib/StatusIndicator.d.ts.map +1 -1
  415. package/dist/commonjs/status-indicator/lib/StatusIndicator.js +2 -2
  416. package/dist/commonjs/switch/index.d.ts +0 -3
  417. package/dist/commonjs/switch/index.d.ts.map +1 -1
  418. package/dist/commonjs/switch/index.js +0 -7
  419. package/dist/commonjs/switch/lib/Switch.d.ts +0 -1
  420. package/dist/commonjs/switch/lib/Switch.d.ts.map +1 -1
  421. package/dist/commonjs/switch/lib/Switch.js +0 -1
  422. package/dist/commonjs/table/index.d.ts +0 -4
  423. package/dist/commonjs/table/index.d.ts.map +1 -1
  424. package/dist/commonjs/table/index.js +0 -9
  425. package/dist/commonjs/table/lib/Table.d.ts +1 -1
  426. package/dist/commonjs/table/lib/Table.d.ts.map +1 -1
  427. package/dist/commonjs/table/lib/Table.js +2 -2
  428. package/dist/commonjs/table/lib/TableRow.d.ts +1 -2
  429. package/dist/commonjs/table/lib/TableRow.d.ts.map +1 -1
  430. package/dist/commonjs/table/lib/TableRow.js +2 -3
  431. package/dist/commonjs/tabs/lib/Tabs.d.ts +1153 -5
  432. package/dist/commonjs/tabs/lib/Tabs.d.ts.map +1 -1
  433. package/dist/commonjs/tabs/lib/TabsItem.d.ts +1 -1
  434. package/dist/commonjs/tabs/lib/TabsList.d.ts +2 -2
  435. package/dist/commonjs/tabs/lib/TabsList.d.ts.map +1 -1
  436. package/dist/commonjs/tabs/lib/TabsPanel.d.ts +2 -2
  437. package/dist/commonjs/tabs/lib/TabsPanel.d.ts.map +1 -1
  438. package/dist/commonjs/tabs/lib/TabsPanels.d.ts +2 -2
  439. package/dist/commonjs/tabs/lib/TabsPanels.d.ts.map +1 -1
  440. package/dist/commonjs/tabs/lib/useTabsModel.d.ts +2773 -469
  441. package/dist/commonjs/tabs/lib/useTabsModel.d.ts.map +1 -1
  442. package/dist/commonjs/testing/index.d.ts +5 -0
  443. package/dist/commonjs/testing/index.d.ts.map +1 -0
  444. package/dist/commonjs/testing/index.js +16 -0
  445. package/dist/commonjs/testing/lib/ComponentStatesTable.d.ts +26 -0
  446. package/dist/commonjs/testing/lib/ComponentStatesTable.d.ts.map +1 -0
  447. package/dist/commonjs/testing/lib/ComponentStatesTable.js +48 -0
  448. package/dist/commonjs/testing/lib/StaticStates.d.ts +7 -0
  449. package/dist/commonjs/testing/lib/StaticStates.d.ts.map +1 -0
  450. package/dist/commonjs/{common/lib/utils → testing/lib}/StaticStates.js +1 -1
  451. package/dist/commonjs/testing/lib/permutateProps.d.ts +5 -0
  452. package/dist/commonjs/testing/lib/permutateProps.d.ts.map +1 -0
  453. package/dist/commonjs/testing/lib/permutateProps.js +47 -0
  454. package/dist/commonjs/testing/lib/propTypes.d.ts +15 -0
  455. package/dist/commonjs/testing/lib/propTypes.d.ts.map +1 -0
  456. package/dist/commonjs/testing/lib/propTypes.js +2 -0
  457. package/dist/commonjs/text/index.d.ts +4 -0
  458. package/dist/commonjs/text/index.d.ts.map +1 -0
  459. package/dist/commonjs/text/index.js +15 -0
  460. package/dist/commonjs/text/lib/LabelText.d.ts +30 -0
  461. package/dist/commonjs/text/lib/LabelText.d.ts.map +1 -0
  462. package/dist/commonjs/text/lib/LabelText.js +73 -0
  463. package/dist/commonjs/text/lib/Text.d.ts +58 -0
  464. package/dist/commonjs/text/lib/Text.d.ts.map +1 -0
  465. package/dist/commonjs/text/lib/Text.js +123 -0
  466. package/dist/commonjs/text/lib/TypeLevelComponents.d.ts +132 -0
  467. package/dist/commonjs/text/lib/TypeLevelComponents.d.ts.map +1 -0
  468. package/dist/commonjs/text/lib/TypeLevelComponents.js +195 -0
  469. package/dist/commonjs/text-area/index.d.ts +0 -3
  470. package/dist/commonjs/text-area/index.d.ts.map +1 -1
  471. package/dist/commonjs/text-area/index.js +0 -7
  472. package/dist/commonjs/text-area/lib/TextArea.d.ts +0 -1
  473. package/dist/commonjs/text-area/lib/TextArea.d.ts.map +1 -1
  474. package/dist/commonjs/text-area/lib/TextArea.js +0 -1
  475. package/dist/commonjs/text-input/index.d.ts +0 -4
  476. package/dist/commonjs/text-input/index.d.ts.map +1 -1
  477. package/dist/commonjs/text-input/index.js +0 -9
  478. package/dist/commonjs/text-input/lib/InputIconContainer.d.ts +1 -2
  479. package/dist/commonjs/text-input/lib/InputIconContainer.d.ts.map +1 -1
  480. package/dist/commonjs/text-input/lib/InputIconContainer.js +2 -1
  481. package/dist/commonjs/text-input/lib/TextInput.d.ts +0 -1
  482. package/dist/commonjs/text-input/lib/TextInput.d.ts.map +1 -1
  483. package/dist/commonjs/text-input/lib/TextInput.js +0 -1
  484. package/dist/commonjs/toast/index.d.ts +0 -3
  485. package/dist/commonjs/toast/index.d.ts.map +1 -1
  486. package/dist/commonjs/toast/index.js +0 -4
  487. package/dist/commonjs/toast/lib/Toast.d.ts.map +1 -1
  488. package/dist/commonjs/toast/lib/Toast.js +1 -2
  489. package/dist/commonjs/tokens/index.d.ts +1 -2
  490. package/dist/commonjs/tokens/index.d.ts.map +1 -1
  491. package/dist/commonjs/tokens/index.js +2 -3
  492. package/dist/commonjs/tokens/lib/colors.types.d.ts +4 -6
  493. package/dist/commonjs/tokens/lib/colors.types.d.ts.map +1 -1
  494. package/dist/commonjs/tokens/lib/radius.d.ts +1 -1
  495. package/dist/commonjs/tokens/lib/radius.d.ts.map +1 -1
  496. package/dist/commonjs/tokens/lib/radius.js +0 -1
  497. package/dist/commonjs/tooltip/index.d.ts +0 -2
  498. package/dist/commonjs/tooltip/index.d.ts.map +1 -1
  499. package/dist/commonjs/tooltip/index.js +0 -2
  500. package/dist/commonjs/tooltip/lib/OverflowTooltip.d.ts.map +1 -1
  501. package/dist/commonjs/tooltip/lib/OverflowTooltip.js +1 -4
  502. package/dist/commonjs/tooltip/lib/TooltipContainer.d.ts.map +1 -1
  503. package/dist/commonjs/tooltip/lib/TooltipContainer.js +5 -0
  504. package/dist/commonjs/tooltip/lib/useTooltip.d.ts.map +1 -1
  505. package/dist/commonjs/tooltip/lib/useTooltip.js +1 -0
  506. package/dist/es6/action-bar/lib/ActionBar.d.ts +4 -4
  507. package/dist/es6/action-bar/lib/ActionBarItem.d.ts +8 -0
  508. package/dist/es6/action-bar/lib/ActionBarItem.d.ts.map +1 -1
  509. package/dist/es6/action-bar/lib/ActionBarItem.js +2 -2
  510. package/dist/es6/action-bar/lib/ActionBarList.d.ts +95 -3
  511. package/dist/es6/action-bar/lib/ActionBarList.d.ts.map +1 -1
  512. package/dist/es6/action-bar/lib/ActionBarList.js +4 -4
  513. package/dist/es6/action-bar/lib/ActionBarOverflowButton.d.ts +5 -1
  514. package/dist/es6/action-bar/lib/ActionBarOverflowButton.d.ts.map +1 -1
  515. package/dist/es6/action-bar/lib/ActionBarOverflowButton.js +3 -3
  516. package/dist/es6/avatar/index.d.ts +0 -3
  517. package/dist/es6/avatar/index.d.ts.map +1 -1
  518. package/dist/es6/avatar/index.js +0 -3
  519. package/dist/es6/avatar/lib/Avatar.d.ts +2 -2
  520. package/dist/es6/avatar/lib/Avatar.d.ts.map +1 -1
  521. package/dist/es6/avatar/lib/Avatar.js +1 -2
  522. package/dist/es6/badge/index.d.ts +1 -1
  523. package/dist/es6/badge/index.d.ts.map +1 -1
  524. package/dist/es6/badge/index.js +1 -1
  525. package/dist/es6/badge/lib/CountBadge.d.ts +1 -2
  526. package/dist/es6/badge/lib/CountBadge.d.ts.map +1 -1
  527. package/dist/es6/badge/lib/CountBadge.js +1 -2
  528. package/dist/es6/banner/lib/Banner.d.ts +0 -9
  529. package/dist/es6/banner/lib/Banner.d.ts.map +1 -1
  530. package/dist/es6/banner/lib/Banner.js +2 -4
  531. package/dist/es6/breadcrumbs/index.d.ts +3 -0
  532. package/dist/es6/breadcrumbs/index.d.ts.map +1 -0
  533. package/dist/es6/breadcrumbs/index.js +2 -0
  534. package/dist/es6/breadcrumbs/lib/Breadcrumbs.d.ts +3851 -0
  535. package/dist/es6/breadcrumbs/lib/Breadcrumbs.d.ts.map +1 -0
  536. package/dist/es6/breadcrumbs/lib/Breadcrumbs.js +155 -0
  537. package/dist/es6/breadcrumbs/lib/BreadcrumbsCurrentItem.d.ts +212 -0
  538. package/dist/es6/breadcrumbs/lib/BreadcrumbsCurrentItem.d.ts.map +1 -0
  539. package/dist/es6/breadcrumbs/lib/BreadcrumbsCurrentItem.js +57 -0
  540. package/dist/es6/breadcrumbs/lib/BreadcrumbsItem.d.ts +226 -0
  541. package/dist/es6/breadcrumbs/lib/BreadcrumbsItem.d.ts.map +1 -0
  542. package/dist/es6/breadcrumbs/lib/BreadcrumbsItem.js +54 -0
  543. package/dist/es6/breadcrumbs/lib/BreadcrumbsLink.d.ts +17 -0
  544. package/dist/es6/breadcrumbs/lib/BreadcrumbsLink.d.ts.map +1 -0
  545. package/dist/es6/breadcrumbs/lib/BreadcrumbsLink.js +40 -0
  546. package/dist/es6/breadcrumbs/lib/BreadcrumbsList.d.ts +164 -0
  547. package/dist/es6/breadcrumbs/lib/BreadcrumbsList.d.ts.map +1 -0
  548. package/dist/es6/breadcrumbs/lib/BreadcrumbsList.js +41 -0
  549. package/dist/es6/breadcrumbs/lib/BreadcrumbsMenu.d.ts +1717 -0
  550. package/dist/es6/breadcrumbs/lib/BreadcrumbsMenu.d.ts.map +1 -0
  551. package/dist/es6/breadcrumbs/lib/BreadcrumbsMenu.js +36 -0
  552. package/dist/es6/breadcrumbs/lib/BreadcrumbsOverflowButton.d.ts +241 -0
  553. package/dist/es6/breadcrumbs/lib/BreadcrumbsOverflowButton.d.ts.map +1 -0
  554. package/dist/es6/breadcrumbs/lib/BreadcrumbsOverflowButton.js +46 -0
  555. package/dist/es6/breadcrumbs/lib/hooks/useBreadcrumbsModel.d.ts +1661 -0
  556. package/dist/es6/breadcrumbs/lib/hooks/useBreadcrumbsModel.d.ts.map +1 -0
  557. package/dist/es6/breadcrumbs/lib/hooks/useBreadcrumbsModel.js +61 -0
  558. package/dist/es6/breadcrumbs/lib/hooks/utils/index.d.ts +6 -0
  559. package/dist/es6/breadcrumbs/lib/hooks/utils/index.d.ts.map +1 -0
  560. package/dist/es6/breadcrumbs/lib/hooks/utils/index.js +18 -0
  561. package/dist/es6/button/index.d.ts +1 -1
  562. package/dist/es6/button/index.d.ts.map +1 -1
  563. package/dist/es6/button/index.js +1 -1
  564. package/dist/es6/button/lib/BaseButton.d.ts +8 -5
  565. package/dist/es6/button/lib/BaseButton.d.ts.map +1 -1
  566. package/dist/es6/button/lib/DeleteButton.d.ts +2 -1
  567. package/dist/es6/button/lib/DeleteButton.d.ts.map +1 -1
  568. package/dist/es6/button/lib/PrimaryButton.d.ts +2 -1
  569. package/dist/es6/button/lib/PrimaryButton.d.ts.map +1 -1
  570. package/dist/es6/button/lib/SecondaryButton.d.ts +2 -1
  571. package/dist/es6/button/lib/SecondaryButton.d.ts.map +1 -1
  572. package/dist/es6/button/lib/TertiaryButton.d.ts +11 -1
  573. package/dist/es6/button/lib/TertiaryButton.d.ts.map +1 -1
  574. package/dist/es6/button/lib/TertiaryButton.js +9 -8
  575. package/dist/es6/button/lib/deprecated_Button.js +1 -1
  576. package/dist/es6/card/lib/Card.d.ts +1 -1
  577. package/dist/es6/card/lib/CardBody.d.ts +1 -1
  578. package/dist/es6/card/lib/CardBody.d.ts.map +1 -1
  579. package/dist/es6/card/lib/CardBody.js +1 -3
  580. package/dist/es6/card/lib/CardHeading.d.ts.map +1 -1
  581. package/dist/es6/card/lib/CardHeading.js +2 -7
  582. package/dist/es6/checkbox/index.d.ts +0 -3
  583. package/dist/es6/checkbox/index.d.ts.map +1 -1
  584. package/dist/es6/checkbox/index.js +0 -3
  585. package/dist/es6/checkbox/lib/Checkbox.d.ts +0 -1
  586. package/dist/es6/checkbox/lib/Checkbox.d.ts.map +1 -1
  587. package/dist/es6/checkbox/lib/Checkbox.js +3 -15
  588. package/dist/es6/collection/index.d.ts +2 -0
  589. package/dist/es6/collection/index.d.ts.map +1 -1
  590. package/dist/es6/collection/index.js +2 -0
  591. package/dist/es6/collection/lib/ListBox.d.ts +1 -58
  592. package/dist/es6/collection/lib/ListBox.d.ts.map +1 -1
  593. package/dist/es6/collection/lib/useBaseListModel.js +1 -1
  594. package/dist/es6/collection/lib/useCursorListModel.d.ts +64 -101
  595. package/dist/es6/collection/lib/useCursorListModel.d.ts.map +1 -1
  596. package/dist/es6/collection/lib/useCursorListModel.js +64 -23
  597. package/dist/es6/collection/lib/useGridModel.d.ts +955 -0
  598. package/dist/es6/collection/lib/useGridModel.d.ts.map +1 -0
  599. package/dist/es6/collection/lib/useGridModel.js +49 -0
  600. package/dist/es6/collection/lib/useListItemRovingFocus.d.ts.map +1 -1
  601. package/dist/es6/collection/lib/useListItemRovingFocus.js +6 -4
  602. package/dist/es6/collection/lib/useListRenderItem.d.ts +1 -1
  603. package/dist/es6/collection/lib/useListRenderItem.d.ts.map +1 -1
  604. package/dist/es6/collection/lib/useListRenderItem.js +21 -11
  605. package/dist/es6/color-picker/index.d.ts +0 -3
  606. package/dist/es6/color-picker/index.d.ts.map +1 -1
  607. package/dist/es6/color-picker/index.js +0 -3
  608. package/dist/es6/color-picker/lib/ColorInput.d.ts +0 -1
  609. package/dist/es6/color-picker/lib/ColorInput.d.ts.map +1 -1
  610. package/dist/es6/color-picker/lib/ColorInput.js +1 -3
  611. package/dist/es6/color-picker/lib/ColorPreview.d.ts +0 -1
  612. package/dist/es6/color-picker/lib/ColorPreview.d.ts.map +1 -1
  613. package/dist/es6/color-picker/lib/ColorPreview.js +1 -2
  614. package/dist/es6/common/index.d.ts +1 -0
  615. package/dist/es6/common/index.d.ts.map +1 -1
  616. package/dist/es6/common/index.js +1 -0
  617. package/dist/es6/common/lib/InputProvider.d.ts +2 -2
  618. package/dist/es6/common/lib/InputProvider.d.ts.map +1 -1
  619. package/dist/es6/common/lib/InputProvider.js +0 -4
  620. package/dist/es6/common/lib/responsive/useResponsiveContainerStyles.d.ts +78 -0
  621. package/dist/es6/common/lib/responsive/useResponsiveContainerStyles.d.ts.map +1 -0
  622. package/dist/es6/common/lib/responsive/useResponsiveContainerStyles.js +135 -0
  623. package/dist/es6/common/lib/styles/focusRing.js +1 -1
  624. package/dist/es6/common/lib/theming/index.d.ts +1 -1
  625. package/dist/es6/common/lib/theming/index.d.ts.map +1 -1
  626. package/dist/es6/common/lib/theming/styled.d.ts +2 -0
  627. package/dist/es6/common/lib/theming/styled.d.ts.map +1 -1
  628. package/dist/es6/common/lib/theming/styled.js +1 -2
  629. package/dist/es6/common/lib/utils/components.d.ts +34 -22
  630. package/dist/es6/common/lib/utils/components.d.ts.map +1 -1
  631. package/dist/es6/common/lib/utils/components.js +10 -5
  632. package/dist/es6/common/lib/utils/elements.d.ts +1 -1
  633. package/dist/es6/common/lib/utils/elements.d.ts.map +1 -1
  634. package/dist/es6/common/lib/utils/elements.js +5 -11
  635. package/dist/es6/common/lib/utils/index.d.ts +0 -1
  636. package/dist/es6/common/lib/utils/index.d.ts.map +1 -1
  637. package/dist/es6/common/lib/utils/index.js +0 -1
  638. package/dist/es6/common/lib/utils/isWithinBreakpoint.d.ts +5 -0
  639. package/dist/es6/common/lib/utils/isWithinBreakpoint.d.ts.map +1 -0
  640. package/dist/es6/common/lib/utils/isWithinBreakpoint.js +6 -0
  641. package/dist/es6/common/lib/utils/models.d.ts +10 -2
  642. package/dist/es6/common/lib/utils/models.d.ts.map +1 -1
  643. package/dist/es6/common/lib/utils/models.js +3 -0
  644. package/dist/es6/common/lib/utils/useModalityType.js +13 -13
  645. package/dist/es6/dialog/lib/Dialog.d.ts +1 -1
  646. package/dist/es6/form-field/index.d.ts +0 -5
  647. package/dist/es6/form-field/index.d.ts.map +1 -1
  648. package/dist/es6/form-field/index.js +0 -5
  649. package/dist/es6/form-field/lib/FormField.d.ts +2 -2
  650. package/dist/es6/form-field/lib/FormField.d.ts.map +1 -1
  651. package/dist/es6/form-field/lib/FormField.js +3 -3
  652. package/dist/es6/form-field/lib/Hint.d.ts +1 -1
  653. package/dist/es6/form-field/lib/Hint.d.ts.map +1 -1
  654. package/dist/es6/form-field/lib/Hint.js +7 -15
  655. package/dist/es6/form-field/lib/Label.d.ts +2 -2
  656. package/dist/es6/form-field/lib/Label.d.ts.map +1 -1
  657. package/dist/es6/form-field/lib/Label.js +1 -3
  658. package/dist/es6/icon/index.d.ts +0 -7
  659. package/dist/es6/icon/index.d.ts.map +1 -1
  660. package/dist/es6/icon/index.js +0 -7
  661. package/dist/es6/icon/lib/AccentIcon.d.ts +1 -2
  662. package/dist/es6/icon/lib/AccentIcon.d.ts.map +1 -1
  663. package/dist/es6/icon/lib/AccentIcon.js +2 -3
  664. package/dist/es6/icon/lib/AppletIcon.d.ts +0 -1
  665. package/dist/es6/icon/lib/AppletIcon.d.ts.map +1 -1
  666. package/dist/es6/icon/lib/AppletIcon.js +1 -2
  667. package/dist/es6/icon/lib/Graphic.d.ts +1 -2
  668. package/dist/es6/icon/lib/Graphic.d.ts.map +1 -1
  669. package/dist/es6/icon/lib/Graphic.js +2 -3
  670. package/dist/es6/icon/lib/Icon.d.ts +0 -1
  671. package/dist/es6/icon/lib/Icon.d.ts.map +1 -1
  672. package/dist/es6/icon/lib/Icon.js +1 -2
  673. package/dist/es6/icon/lib/Svg.d.ts +0 -1
  674. package/dist/es6/icon/lib/Svg.d.ts.map +1 -1
  675. package/dist/es6/icon/lib/Svg.js +0 -1
  676. package/dist/es6/icon/lib/SystemIcon.d.ts +2 -3
  677. package/dist/es6/icon/lib/SystemIcon.d.ts.map +1 -1
  678. package/dist/es6/icon/lib/SystemIcon.js +2 -3
  679. package/dist/es6/icon/lib/SystemIconCircle.d.ts +1 -2
  680. package/dist/es6/icon/lib/SystemIconCircle.d.ts.map +1 -1
  681. package/dist/es6/icon/lib/SystemIconCircle.js +2 -3
  682. package/dist/es6/index.d.ts +4 -1
  683. package/dist/es6/index.d.ts.map +1 -1
  684. package/dist/es6/index.js +4 -1
  685. package/dist/es6/layout/index.d.ts +15 -5
  686. package/dist/es6/layout/index.d.ts.map +1 -1
  687. package/dist/es6/layout/index.js +12 -3
  688. package/dist/es6/layout/lib/Box.d.ts +23 -11
  689. package/dist/es6/layout/lib/Box.d.ts.map +1 -1
  690. package/dist/es6/layout/lib/Box.js +34 -8
  691. package/dist/es6/layout/lib/Column.d.ts +13 -4
  692. package/dist/es6/layout/lib/Column.d.ts.map +1 -1
  693. package/dist/es6/layout/lib/Column.js +9 -6
  694. package/dist/es6/layout/lib/Flex.d.ts +6 -3
  695. package/dist/es6/layout/lib/Flex.d.ts.map +1 -1
  696. package/dist/es6/layout/lib/Flex.js +5 -1
  697. package/dist/es6/layout/lib/Grid.d.ts +51 -0
  698. package/dist/es6/layout/lib/Grid.d.ts.map +1 -0
  699. package/dist/es6/layout/lib/Grid.js +90 -0
  700. package/dist/es6/layout/lib/Layout.d.ts +26 -10
  701. package/dist/es6/layout/lib/Layout.d.ts.map +1 -1
  702. package/dist/es6/layout/lib/Layout.js +22 -11
  703. package/dist/es6/layout/lib/Stack.d.ts +4 -4
  704. package/dist/es6/layout/lib/Stack.js +4 -4
  705. package/dist/es6/layout/lib/utils/background.d.ts +44 -0
  706. package/dist/es6/layout/lib/utils/background.d.ts.map +1 -0
  707. package/dist/es6/layout/lib/utils/background.js +54 -0
  708. package/dist/es6/layout/lib/utils/border/color.d.ts +47 -0
  709. package/dist/es6/layout/lib/utils/border/color.d.ts.map +1 -0
  710. package/dist/es6/layout/lib/utils/border/color.js +39 -0
  711. package/dist/es6/layout/lib/utils/border/index.d.ts +26 -0
  712. package/dist/es6/layout/lib/utils/border/index.d.ts.map +1 -0
  713. package/dist/es6/layout/lib/utils/border/index.js +43 -0
  714. package/dist/es6/layout/lib/utils/border/lineStyle.d.ts +38 -0
  715. package/dist/es6/layout/lib/utils/border/lineStyle.d.ts.map +1 -0
  716. package/dist/es6/layout/lib/utils/border/lineStyle.js +49 -0
  717. package/dist/es6/layout/lib/utils/border/radius.d.ts +33 -0
  718. package/dist/es6/layout/lib/utils/border/radius.d.ts.map +1 -0
  719. package/dist/es6/layout/lib/utils/border/radius.js +29 -0
  720. package/dist/es6/layout/lib/utils/border/shorthand.d.ts +34 -0
  721. package/dist/es6/layout/lib/utils/border/shorthand.d.ts.map +1 -0
  722. package/dist/es6/layout/lib/utils/border/shorthand.js +39 -0
  723. package/dist/es6/layout/lib/utils/border/width.d.ts +34 -0
  724. package/dist/es6/layout/lib/utils/border/width.d.ts.map +1 -0
  725. package/dist/es6/layout/lib/utils/border/width.js +39 -0
  726. package/dist/es6/layout/lib/utils/buildStyleFns.d.ts +12 -0
  727. package/dist/es6/layout/lib/utils/buildStyleFns.d.ts.map +1 -0
  728. package/dist/es6/layout/lib/utils/buildStyleFns.js +85 -0
  729. package/dist/es6/layout/lib/utils/color.d.ts +23 -16
  730. package/dist/es6/layout/lib/utils/color.d.ts.map +1 -1
  731. package/dist/es6/layout/lib/utils/color.js +24 -46
  732. package/dist/es6/layout/lib/utils/depth.d.ts +17 -11
  733. package/dist/es6/layout/lib/utils/depth.d.ts.map +1 -1
  734. package/dist/es6/layout/lib/utils/depth.js +19 -18
  735. package/dist/es6/layout/lib/utils/flex.d.ts +39 -20
  736. package/dist/es6/layout/lib/utils/flex.d.ts.map +1 -1
  737. package/dist/es6/layout/lib/utils/flex.js +57 -23
  738. package/dist/es6/layout/lib/utils/flexItem.d.ts +22 -19
  739. package/dist/es6/layout/lib/utils/flexItem.d.ts.map +1 -1
  740. package/dist/es6/layout/lib/utils/flexItem.js +42 -24
  741. package/dist/es6/layout/lib/utils/grid.d.ts +72 -0
  742. package/dist/es6/layout/lib/utils/grid.d.ts.map +1 -0
  743. package/dist/es6/layout/lib/utils/grid.js +109 -0
  744. package/dist/es6/layout/lib/utils/gridItem.d.ts +42 -0
  745. package/dist/es6/layout/lib/utils/gridItem.d.ts.map +1 -0
  746. package/dist/es6/layout/lib/utils/gridItem.js +68 -0
  747. package/dist/es6/layout/lib/utils/layout.d.ts +54 -32
  748. package/dist/es6/layout/lib/utils/layout.d.ts.map +1 -1
  749. package/dist/es6/layout/lib/utils/layout.js +70 -31
  750. package/dist/es6/layout/lib/utils/other.d.ts +46 -2
  751. package/dist/es6/layout/lib/utils/other.d.ts.map +1 -1
  752. package/dist/es6/layout/lib/utils/other.js +100 -15
  753. package/dist/es6/layout/lib/utils/position.d.ts +40 -23
  754. package/dist/es6/layout/lib/utils/position.d.ts.map +1 -1
  755. package/dist/es6/layout/lib/utils/position.js +48 -64
  756. package/dist/es6/layout/lib/utils/space.d.ts +107 -51
  757. package/dist/es6/layout/lib/utils/space.d.ts.map +1 -1
  758. package/dist/es6/layout/lib/utils/space.js +97 -146
  759. package/dist/es6/layout/lib/utils/stack.d.ts +3 -6
  760. package/dist/es6/layout/lib/utils/stack.d.ts.map +1 -1
  761. package/dist/es6/layout/lib/utils/stack.js +13 -39
  762. package/dist/es6/layout/lib/utils/styleProps.d.ts +41 -0
  763. package/dist/es6/layout/lib/utils/styleProps.d.ts.map +1 -0
  764. package/dist/es6/layout/lib/utils/{types.js → styleProps.js} +0 -0
  765. package/dist/es6/layout/lib/utils/systemProps.d.ts +31 -0
  766. package/dist/es6/layout/lib/utils/systemProps.d.ts.map +1 -0
  767. package/dist/es6/layout/lib/utils/systemProps.js +1 -0
  768. package/dist/es6/layout/lib/utils/text.d.ts +53 -0
  769. package/dist/es6/layout/lib/utils/text.d.ts.map +1 -0
  770. package/dist/es6/layout/lib/utils/text.js +81 -0
  771. package/dist/es6/loading-dots/index.d.ts +2 -0
  772. package/dist/es6/loading-dots/index.d.ts.map +1 -0
  773. package/dist/es6/loading-dots/index.js +1 -0
  774. package/dist/es6/{loading-animation → loading-dots}/lib/LoadingDots.d.ts +1 -1
  775. package/dist/es6/loading-dots/lib/LoadingDots.d.ts.map +1 -0
  776. package/dist/es6/{loading-animation → loading-dots}/lib/LoadingDots.js +2 -2
  777. package/dist/es6/menu/lib/Menu.d.ts +2 -2
  778. package/dist/es6/menu/lib/MenuCard.d.ts.map +1 -1
  779. package/dist/es6/menu/lib/MenuCard.js +1 -1
  780. package/dist/es6/menu/lib/MenuContextTarget.d.ts.map +1 -1
  781. package/dist/es6/menu/lib/MenuContextTarget.js +2 -4
  782. package/dist/es6/menu/lib/MenuItem.d.ts +1 -1
  783. package/dist/es6/menu/lib/MenuItem.js +13 -12
  784. package/dist/es6/menu/lib/MenuList.d.ts +3 -3
  785. package/dist/es6/menu/lib/MenuList.d.ts.map +1 -1
  786. package/dist/es6/menu/lib/MenuTarget.d.ts.map +1 -1
  787. package/dist/es6/menu/lib/MenuTarget.js +2 -4
  788. package/dist/es6/modal/lib/Modal.d.ts +1 -1
  789. package/dist/es6/modal/lib/ModalCard.d.ts.map +1 -1
  790. package/dist/es6/modal/lib/ModalCard.js +16 -2
  791. package/dist/es6/modal/lib/ModalHeading.d.ts.map +1 -1
  792. package/dist/es6/modal/lib/ModalHeading.js +12 -2
  793. package/dist/es6/modal/lib/ModalOverlay.d.ts +0 -1
  794. package/dist/es6/modal/lib/ModalOverlay.d.ts.map +1 -1
  795. package/dist/es6/modal/lib/ModalOverlay.js +21 -16
  796. package/dist/es6/modal/lib/hooks/useCloseOnOverlayClick.d.ts.map +1 -1
  797. package/dist/es6/modal/lib/hooks/useCloseOnOverlayClick.js +4 -2
  798. package/dist/es6/modal/lib/hooks/useModalModel.js +1 -1
  799. package/dist/es6/pagination/lib/Pagination/AdditionalDetails.d.ts +1 -1
  800. package/dist/es6/pagination/lib/Pagination/AdditionalDetails.d.ts.map +1 -1
  801. package/dist/es6/pagination/lib/Pagination/AdditionalDetails.js +6 -5
  802. package/dist/es6/pagination/lib/Pagination/GoTo/Label.d.ts +1 -1
  803. package/dist/es6/pagination/lib/Pagination/GoTo/Label.d.ts.map +1 -1
  804. package/dist/es6/pagination/lib/Pagination/GoTo/Label.js +2 -4
  805. package/dist/es6/pagination/lib/Pagination/PageList.d.ts +1 -1
  806. package/dist/es6/pagination/lib/Pagination/PageList.d.ts.map +1 -1
  807. package/dist/es6/pagination/lib/Pagination/usePaginationModel.d.ts.map +1 -1
  808. package/dist/es6/pagination/lib/Pagination/usePaginationModel.js +5 -1
  809. package/dist/es6/popup/lib/Popup.d.ts +1 -1
  810. package/dist/es6/popup/lib/PopupBody.d.ts +1 -1
  811. package/dist/es6/popup/lib/PopupBody.js +1 -1
  812. package/dist/es6/popup/lib/PopupCard.d.ts +3 -2
  813. package/dist/es6/popup/lib/PopupCard.d.ts.map +1 -1
  814. package/dist/es6/popup/lib/PopupCard.js +21 -14
  815. package/dist/es6/popup/lib/PopupCloseButton.d.ts.map +1 -1
  816. package/dist/es6/popup/lib/PopupCloseButton.js +1 -1
  817. package/dist/es6/popup/lib/PopupCloseIcon.js +1 -1
  818. package/dist/es6/popup/lib/PopupHeading.js +1 -1
  819. package/dist/es6/popup/lib/PopupPopper.d.ts +2 -3
  820. package/dist/es6/popup/lib/PopupPopper.d.ts.map +1 -1
  821. package/dist/es6/popup/lib/hooks/index.d.ts +1 -0
  822. package/dist/es6/popup/lib/hooks/index.d.ts.map +1 -1
  823. package/dist/es6/popup/lib/hooks/index.js +1 -0
  824. package/dist/es6/popup/lib/hooks/useCloseOnTargetHidden.d.ts +31 -0
  825. package/dist/es6/popup/lib/hooks/useCloseOnTargetHidden.d.ts.map +1 -0
  826. package/dist/es6/popup/lib/hooks/useCloseOnTargetHidden.js +50 -0
  827. package/dist/es6/popup/lib/hooks/useReturnFocus.d.ts.map +1 -1
  828. package/dist/es6/popup/lib/hooks/useReturnFocus.js +98 -4
  829. package/dist/es6/radio/index.d.ts +0 -4
  830. package/dist/es6/radio/index.d.ts.map +1 -1
  831. package/dist/es6/radio/index.js +0 -4
  832. package/dist/es6/radio/lib/Radio.d.ts +0 -1
  833. package/dist/es6/radio/lib/Radio.d.ts.map +1 -1
  834. package/dist/es6/radio/lib/Radio.js +3 -15
  835. package/dist/es6/radio/lib/RadioGroup.d.ts +1 -1
  836. package/dist/es6/radio/lib/RadioGroup.d.ts.map +1 -1
  837. package/dist/es6/radio/lib/RadioGroup.js +2 -2
  838. package/dist/es6/segmented-control/index.d.ts +0 -3
  839. package/dist/es6/segmented-control/index.d.ts.map +1 -1
  840. package/dist/es6/segmented-control/index.js +0 -3
  841. package/dist/es6/segmented-control/lib/SegmentedControl.d.ts +0 -1
  842. package/dist/es6/segmented-control/lib/SegmentedControl.d.ts.map +1 -1
  843. package/dist/es6/segmented-control/lib/SegmentedControl.js +0 -1
  844. package/dist/es6/segmented-control/lib/SegmentedControlButton.d.ts +3 -1
  845. package/dist/es6/segmented-control/lib/SegmentedControlButton.d.ts.map +1 -1
  846. package/dist/es6/segmented-control/lib/SegmentedControlButton.js +12 -3
  847. package/dist/es6/select/index.d.ts +0 -4
  848. package/dist/es6/select/index.d.ts.map +1 -1
  849. package/dist/es6/select/index.js +0 -4
  850. package/dist/es6/select/lib/Select.d.ts +1 -2
  851. package/dist/es6/select/lib/Select.d.ts.map +1 -1
  852. package/dist/es6/select/lib/Select.js +0 -1
  853. package/dist/es6/select/lib/SelectOption.d.ts +1 -1
  854. package/dist/es6/select/lib/SelectOption.d.ts.map +1 -1
  855. package/dist/es6/select/lib/SelectOption.js +1 -1
  856. package/dist/es6/side-panel/index.d.ts +0 -3
  857. package/dist/es6/side-panel/index.d.ts.map +1 -1
  858. package/dist/es6/side-panel/index.js +0 -3
  859. package/dist/es6/side-panel/lib/SidePanel.d.ts +1 -1
  860. package/dist/es6/side-panel/lib/SidePanel.d.ts.map +1 -1
  861. package/dist/es6/side-panel/lib/SidePanel.js +4 -4
  862. package/dist/es6/status-indicator/index.d.ts +0 -3
  863. package/dist/es6/status-indicator/index.d.ts.map +1 -1
  864. package/dist/es6/status-indicator/index.js +0 -3
  865. package/dist/es6/status-indicator/lib/StatusIndicator.d.ts +1 -1
  866. package/dist/es6/status-indicator/lib/StatusIndicator.d.ts.map +1 -1
  867. package/dist/es6/status-indicator/lib/StatusIndicator.js +1 -1
  868. package/dist/es6/switch/index.d.ts +0 -3
  869. package/dist/es6/switch/index.d.ts.map +1 -1
  870. package/dist/es6/switch/index.js +0 -3
  871. package/dist/es6/switch/lib/Switch.d.ts +0 -1
  872. package/dist/es6/switch/lib/Switch.d.ts.map +1 -1
  873. package/dist/es6/switch/lib/Switch.js +0 -1
  874. package/dist/es6/table/index.d.ts +0 -4
  875. package/dist/es6/table/index.d.ts.map +1 -1
  876. package/dist/es6/table/index.js +0 -4
  877. package/dist/es6/table/lib/Table.d.ts +1 -1
  878. package/dist/es6/table/lib/Table.d.ts.map +1 -1
  879. package/dist/es6/table/lib/Table.js +1 -1
  880. package/dist/es6/table/lib/TableRow.d.ts +1 -2
  881. package/dist/es6/table/lib/TableRow.d.ts.map +1 -1
  882. package/dist/es6/table/lib/TableRow.js +1 -2
  883. package/dist/es6/tabs/lib/Tabs.d.ts +1154 -6
  884. package/dist/es6/tabs/lib/Tabs.d.ts.map +1 -1
  885. package/dist/es6/tabs/lib/TabsItem.d.ts +1 -1
  886. package/dist/es6/tabs/lib/TabsList.d.ts +2 -2
  887. package/dist/es6/tabs/lib/TabsList.d.ts.map +1 -1
  888. package/dist/es6/tabs/lib/TabsPanel.d.ts +2 -2
  889. package/dist/es6/tabs/lib/TabsPanel.d.ts.map +1 -1
  890. package/dist/es6/tabs/lib/TabsPanels.d.ts +2 -2
  891. package/dist/es6/tabs/lib/TabsPanels.d.ts.map +1 -1
  892. package/dist/es6/tabs/lib/useTabsModel.d.ts +2773 -469
  893. package/dist/es6/tabs/lib/useTabsModel.d.ts.map +1 -1
  894. package/dist/es6/testing/index.d.ts +5 -0
  895. package/dist/es6/testing/index.d.ts.map +1 -0
  896. package/dist/es6/testing/index.js +4 -0
  897. package/dist/es6/testing/lib/ComponentStatesTable.d.ts +26 -0
  898. package/dist/es6/testing/lib/ComponentStatesTable.d.ts.map +1 -0
  899. package/dist/es6/testing/lib/ComponentStatesTable.js +41 -0
  900. package/dist/es6/testing/lib/StaticStates.d.ts +7 -0
  901. package/dist/es6/testing/lib/StaticStates.d.ts.map +1 -0
  902. package/dist/es6/{common/lib/utils → testing/lib}/StaticStates.js +1 -1
  903. package/dist/es6/testing/lib/permutateProps.d.ts +5 -0
  904. package/dist/es6/testing/lib/permutateProps.d.ts.map +1 -0
  905. package/dist/es6/testing/lib/permutateProps.js +43 -0
  906. package/dist/es6/testing/lib/propTypes.d.ts +15 -0
  907. package/dist/es6/testing/lib/propTypes.d.ts.map +1 -0
  908. package/dist/es6/testing/lib/propTypes.js +1 -0
  909. package/dist/es6/text/index.d.ts +4 -0
  910. package/dist/es6/text/index.d.ts.map +1 -0
  911. package/dist/es6/text/index.js +3 -0
  912. package/dist/es6/text/lib/LabelText.d.ts +30 -0
  913. package/dist/es6/text/lib/LabelText.d.ts.map +1 -0
  914. package/dist/es6/text/lib/LabelText.js +51 -0
  915. package/dist/es6/text/lib/Text.d.ts +58 -0
  916. package/dist/es6/text/lib/Text.d.ts.map +1 -0
  917. package/dist/es6/text/lib/Text.js +101 -0
  918. package/dist/es6/text/lib/TypeLevelComponents.d.ts +132 -0
  919. package/dist/es6/text/lib/TypeLevelComponents.d.ts.map +1 -0
  920. package/dist/es6/text/lib/TypeLevelComponents.js +173 -0
  921. package/dist/es6/text-area/index.d.ts +0 -3
  922. package/dist/es6/text-area/index.d.ts.map +1 -1
  923. package/dist/es6/text-area/index.js +0 -3
  924. package/dist/es6/text-area/lib/TextArea.d.ts +0 -1
  925. package/dist/es6/text-area/lib/TextArea.d.ts.map +1 -1
  926. package/dist/es6/text-area/lib/TextArea.js +0 -1
  927. package/dist/es6/text-input/index.d.ts +0 -4
  928. package/dist/es6/text-input/index.d.ts.map +1 -1
  929. package/dist/es6/text-input/index.js +0 -4
  930. package/dist/es6/text-input/lib/InputIconContainer.d.ts +1 -2
  931. package/dist/es6/text-input/lib/InputIconContainer.d.ts.map +1 -1
  932. package/dist/es6/text-input/lib/InputIconContainer.js +1 -2
  933. package/dist/es6/text-input/lib/TextInput.d.ts +0 -1
  934. package/dist/es6/text-input/lib/TextInput.d.ts.map +1 -1
  935. package/dist/es6/text-input/lib/TextInput.js +0 -1
  936. package/dist/es6/toast/index.d.ts +0 -3
  937. package/dist/es6/toast/index.d.ts.map +1 -1
  938. package/dist/es6/toast/index.js +0 -3
  939. package/dist/es6/toast/lib/Toast.d.ts.map +1 -1
  940. package/dist/es6/toast/lib/Toast.js +1 -2
  941. package/dist/es6/tokens/index.d.ts +1 -2
  942. package/dist/es6/tokens/index.d.ts.map +1 -1
  943. package/dist/es6/tokens/index.js +1 -2
  944. package/dist/es6/tokens/lib/colors.types.d.ts +4 -6
  945. package/dist/es6/tokens/lib/colors.types.d.ts.map +1 -1
  946. package/dist/es6/tokens/lib/radius.d.ts +1 -1
  947. package/dist/es6/tokens/lib/radius.d.ts.map +1 -1
  948. package/dist/es6/tokens/lib/radius.js +0 -1
  949. package/dist/es6/tooltip/index.d.ts +0 -2
  950. package/dist/es6/tooltip/index.d.ts.map +1 -1
  951. package/dist/es6/tooltip/index.js +0 -2
  952. package/dist/es6/tooltip/lib/OverflowTooltip.d.ts.map +1 -1
  953. package/dist/es6/tooltip/lib/OverflowTooltip.js +1 -4
  954. package/dist/es6/tooltip/lib/TooltipContainer.d.ts +1 -1
  955. package/dist/es6/tooltip/lib/TooltipContainer.d.ts.map +1 -1
  956. package/dist/es6/tooltip/lib/TooltipContainer.js +5 -0
  957. package/dist/es6/tooltip/lib/useTooltip.d.ts.map +1 -1
  958. package/dist/es6/tooltip/lib/useTooltip.js +2 -1
  959. package/form-field/index.ts +0 -6
  960. package/form-field/lib/FormField.tsx +4 -4
  961. package/form-field/lib/Hint.tsx +9 -20
  962. package/form-field/lib/Label.tsx +3 -4
  963. package/icon/index.ts +0 -9
  964. package/icon/lib/AccentIcon.tsx +2 -4
  965. package/icon/lib/AppletIcon.tsx +1 -3
  966. package/icon/lib/Graphic.tsx +2 -4
  967. package/icon/lib/Icon.tsx +1 -3
  968. package/icon/lib/Svg.tsx +0 -2
  969. package/icon/lib/SystemIcon.tsx +3 -5
  970. package/icon/lib/SystemIconCircle.tsx +2 -4
  971. package/index.ts +4 -1
  972. package/layout/README.md +28 -27
  973. package/layout/index.ts +15 -5
  974. package/layout/lib/Box.tsx +63 -45
  975. package/layout/lib/Column.tsx +22 -5
  976. package/layout/lib/Flex.tsx +6 -2
  977. package/layout/lib/Grid.tsx +85 -0
  978. package/layout/lib/Layout.tsx +38 -15
  979. package/layout/lib/Stack.tsx +4 -4
  980. package/layout/lib/utils/background.ts +83 -0
  981. package/layout/lib/utils/border/color.ts +85 -0
  982. package/layout/lib/utils/border/index.ts +49 -0
  983. package/layout/lib/utils/border/lineStyle.ts +87 -0
  984. package/layout/lib/utils/border/radius.ts +61 -0
  985. package/layout/lib/utils/border/shorthand.ts +73 -0
  986. package/layout/lib/utils/border/width.ts +73 -0
  987. package/layout/lib/utils/buildStyleFns.ts +117 -0
  988. package/layout/lib/utils/color.ts +40 -50
  989. package/layout/lib/utils/depth.ts +28 -24
  990. package/layout/lib/utils/flex.ts +91 -47
  991. package/layout/lib/utils/flexItem.ts +58 -40
  992. package/layout/lib/utils/grid.ts +166 -0
  993. package/layout/lib/utils/gridItem.ts +96 -0
  994. package/layout/lib/utils/layout.ts +116 -64
  995. package/layout/lib/utils/other.ts +144 -15
  996. package/layout/lib/utils/position.ts +82 -76
  997. package/layout/lib/utils/space.ts +202 -196
  998. package/layout/lib/utils/stack.ts +19 -45
  999. package/layout/lib/utils/styleProps.ts +56 -0
  1000. package/layout/lib/utils/systemProps.ts +46 -0
  1001. package/layout/lib/utils/text.ts +122 -0
  1002. package/{loading-animation → loading-dots}/LICENSE +0 -0
  1003. package/loading-dots/README.md +7 -0
  1004. package/loading-dots/index.ts +1 -0
  1005. package/{loading-animation → loading-dots}/lib/LoadingDots.tsx +2 -2
  1006. package/loading-dots/package.json +6 -0
  1007. package/menu/lib/MenuCard.tsx +1 -0
  1008. package/menu/lib/MenuContextTarget.tsx +2 -4
  1009. package/menu/lib/MenuItem.tsx +12 -12
  1010. package/menu/lib/MenuList.tsx +3 -2
  1011. package/menu/lib/MenuTarget.tsx +2 -4
  1012. package/modal/lib/ModalCard.tsx +17 -4
  1013. package/modal/lib/ModalHeading.tsx +14 -2
  1014. package/modal/lib/ModalOverlay.tsx +13 -17
  1015. package/modal/lib/hooks/useCloseOnOverlayClick.ts +4 -2
  1016. package/modal/lib/hooks/useModalModel.ts +1 -1
  1017. package/package.json +5 -8
  1018. package/pagination/lib/Pagination/AdditionalDetails.tsx +8 -9
  1019. package/pagination/lib/Pagination/GoTo/Label.tsx +5 -12
  1020. package/pagination/lib/Pagination/PageList.tsx +1 -1
  1021. package/pagination/lib/Pagination/usePaginationModel.ts +5 -2
  1022. package/popup/lib/PopupBody.tsx +1 -1
  1023. package/popup/lib/PopupCard.tsx +16 -8
  1024. package/popup/lib/PopupCloseButton.tsx +5 -1
  1025. package/popup/lib/PopupCloseIcon.tsx +1 -1
  1026. package/popup/lib/PopupHeading.tsx +1 -1
  1027. package/popup/lib/PopupPopper.tsx +2 -3
  1028. package/popup/lib/hooks/index.ts +1 -0
  1029. package/popup/lib/hooks/useCloseOnFullscreenExit.ts +1 -1
  1030. package/popup/lib/hooks/useCloseOnTargetHidden.ts +66 -0
  1031. package/popup/lib/hooks/useReturnFocus.tsx +112 -4
  1032. package/popup/lib/hooks/useTransferOnFullscreenEnter.ts +1 -1
  1033. package/popup/lib/hooks/useTransferOnFullscreenExit.ts +1 -1
  1034. package/radio/index.ts +0 -5
  1035. package/radio/lib/Radio.tsx +9 -25
  1036. package/radio/lib/RadioGroup.tsx +2 -2
  1037. package/segmented-control/index.ts +0 -4
  1038. package/segmented-control/lib/SegmentedControl.tsx +0 -2
  1039. package/segmented-control/lib/SegmentedControlButton.tsx +24 -5
  1040. package/select/index.ts +0 -5
  1041. package/select/lib/Select.tsx +2 -4
  1042. package/select/lib/SelectOption.tsx +1 -1
  1043. package/side-panel/README.md +1 -1
  1044. package/side-panel/index.ts +0 -4
  1045. package/side-panel/lib/SidePanel.tsx +8 -8
  1046. package/status-indicator/index.ts +0 -4
  1047. package/status-indicator/lib/StatusIndicator.tsx +1 -1
  1048. package/switch/index.ts +0 -4
  1049. package/switch/lib/Switch.tsx +0 -2
  1050. package/table/index.ts +0 -5
  1051. package/table/lib/Table.tsx +1 -1
  1052. package/table/lib/TableRow.tsx +1 -3
  1053. package/tabs/lib/TabsList.tsx +2 -1
  1054. package/tabs/lib/TabsPanel.tsx +1 -1
  1055. package/tabs/lib/TabsPanels.tsx +1 -1
  1056. package/tabs/lib/useTabsModel.tsx +2 -2
  1057. package/testing/LICENSE +52 -0
  1058. package/testing/README.md +6 -0
  1059. package/testing/index.ts +4 -0
  1060. package/testing/lib/ComponentStatesTable.tsx +80 -0
  1061. package/{common/lib/utils → testing/lib}/StaticStates.tsx +7 -6
  1062. package/testing/lib/permutateProps.ts +47 -0
  1063. package/testing/lib/propTypes.ts +15 -0
  1064. package/testing/package.json +6 -0
  1065. package/text/LICENSE +52 -0
  1066. package/text/README.md +5 -0
  1067. package/text/index.ts +3 -0
  1068. package/text/lib/LabelText.tsx +47 -0
  1069. package/text/lib/Text.tsx +110 -0
  1070. package/text/lib/TypeLevelComponents.tsx +164 -0
  1071. package/text/package.json +6 -0
  1072. package/text-area/index.ts +0 -4
  1073. package/text-area/lib/TextArea.tsx +0 -2
  1074. package/text-input/index.ts +0 -5
  1075. package/text-input/lib/InputIconContainer.tsx +3 -7
  1076. package/text-input/lib/TextInput.tsx +0 -2
  1077. package/toast/index.ts +0 -4
  1078. package/toast/lib/Toast.tsx +1 -2
  1079. package/tokens/index.ts +1 -2
  1080. package/tokens/lib/colors.types.ts +4 -7
  1081. package/tokens/lib/radius.ts +0 -2
  1082. package/tooltip/index.ts +0 -3
  1083. package/tooltip/lib/OverflowTooltip.tsx +1 -4
  1084. package/tooltip/lib/TooltipContainer.tsx +6 -0
  1085. package/tooltip/lib/useTooltip.tsx +2 -0
  1086. package/dist/commonjs/common/lib/utils/StaticStates.d.ts +0 -8
  1087. package/dist/commonjs/common/lib/utils/StaticStates.d.ts.map +0 -1
  1088. package/dist/commonjs/layout/lib/utils/border.d.ts +0 -103
  1089. package/dist/commonjs/layout/lib/utils/border.d.ts.map +0 -1
  1090. package/dist/commonjs/layout/lib/utils/border.js +0 -153
  1091. package/dist/commonjs/layout/lib/utils/types.d.ts +0 -20
  1092. package/dist/commonjs/layout/lib/utils/types.d.ts.map +0 -1
  1093. package/dist/commonjs/loading-animation/index.d.ts +0 -5
  1094. package/dist/commonjs/loading-animation/index.d.ts.map +0 -1
  1095. package/dist/commonjs/loading-animation/lib/LoadingDots.d.ts.map +0 -1
  1096. package/dist/es6/common/lib/utils/StaticStates.d.ts +0 -8
  1097. package/dist/es6/common/lib/utils/StaticStates.d.ts.map +0 -1
  1098. package/dist/es6/layout/lib/utils/border.d.ts +0 -103
  1099. package/dist/es6/layout/lib/utils/border.d.ts.map +0 -1
  1100. package/dist/es6/layout/lib/utils/border.js +0 -149
  1101. package/dist/es6/layout/lib/utils/types.d.ts +0 -20
  1102. package/dist/es6/layout/lib/utils/types.d.ts.map +0 -1
  1103. package/dist/es6/loading-animation/index.d.ts +0 -5
  1104. package/dist/es6/loading-animation/index.d.ts.map +0 -1
  1105. package/dist/es6/loading-animation/index.js +0 -4
  1106. package/dist/es6/loading-animation/lib/LoadingDots.d.ts.map +0 -1
  1107. package/layout/lib/utils/border.ts +0 -263
  1108. package/layout/lib/utils/types.ts +0 -148
  1109. package/loading-animation/README.md +0 -7
  1110. package/loading-animation/index.ts +0 -5
  1111. package/loading-animation/package.json +0 -6
@@ -6,17 +6,40 @@ import {useBaseListModel, Item, defaultGetId as getId} from './useBaseListModel'
6
6
  type NavigationInput = Pick<ReturnType<typeof useCursorListModel>, 'state'>;
7
7
 
8
8
  export interface NavigationManager {
9
+ /** Get the first item in a collection. This will be called when the `Home` key is pressed for
10
+ * Lists and `Ctrl+Home` for Grids. */
9
11
  getFirst: NavigationRequestor;
12
+ /** Get the last item in a collection. This will be called when the `End` key is pressed for Lists
13
+ * and `Ctrl+End` for Grids. */
10
14
  getLast: NavigationRequestor;
15
+ /** Get an item with the provided `id`. */
11
16
  getItem: NavigationRequestor;
17
+ /** Get the next item after the provided `id`. This will be called when the `Right` arrow key is
18
+ * pressed for RTL languages and when the `Left` arrow is pressed for LTR languages. */
12
19
  getNext: NavigationRequestor;
20
+ /** **For Grids:** Get the cell in the next row from the provided `id`. This will be called when
21
+ * the `Down` arrow is pressed. */
13
22
  getNextRow: NavigationRequestor;
23
+ /** Get the previous item before the provided `id`. This will be called when the `Left` arrow key
24
+ * is pressed for RTL languages and when the `Right` arrow is pressed for LTR languages. */
14
25
  getPrevious: NavigationRequestor;
26
+ /** **For Grids:** Get the cell in the previous row from the provided `id`. This will be called
27
+ * when the `Up` arrow is pressed. */
15
28
  getPreviousRow: NavigationRequestor;
29
+ /** **For Grids:** Get the first item in a row. This will be called when the `Home` key is
30
+ * pressed. */
16
31
  getFirstOfRow: NavigationRequestor;
32
+ /** **For Grids:** Get the last item in a row. This will be called when the `End` key is
33
+ * pressed. */
17
34
  getLastOfRow: NavigationRequestor;
18
- getPreviousPage: NavigationRequestor;
35
+ /** Get the next "page". A "page" is application specific and usually means next visible screen.
36
+ * If the viewport is scrollable, it would scroll so that the last item visible is now the first
37
+ * item visible. This is called when the `PageDown` key is pressed */
19
38
  getNextPage: NavigationRequestor;
39
+ /** Get the next "page". A "page" is application specific and usually means previous visible
40
+ * screen. If the viewport is scrollable, it would scroll so that the first item visible is now
41
+ * the last item visible. This is called when the `PageUp` key is pressed */
42
+ getPreviousPage: NavigationRequestor;
20
43
  }
21
44
 
22
45
  /**
@@ -56,7 +79,7 @@ export const getLast: NavigationRequestor = (_, {state}) => state.items[state.it
56
79
  export const getFirstOfRow: NavigationRequestor = (id, {state}) => {
57
80
  if (state.columnCount) {
58
81
  const item = getItem(id, {state});
59
- const currentIndex = state.items.findIndex(i => getId(item) === getId(i));
82
+ const currentIndex = item.index;
60
83
  const offset = currentIndex % state.columnCount;
61
84
  return state.items[currentIndex - offset];
62
85
  }
@@ -69,9 +92,13 @@ export const getFirstOfRow: NavigationRequestor = (id, {state}) => {
69
92
  export const getLastOfRow: NavigationRequestor = (id, {state}) => {
70
93
  if (state.columnCount) {
71
94
  const item = getItem(id, {state});
72
- const currentIndex = state.items.findIndex(i => getId(item) === getId(i));
95
+ const currentIndex = item.index;
73
96
  const offset = (currentIndex % state.columnCount) - state.columnCount + 1;
74
- return state.items[currentIndex - offset];
97
+ let nextIndex = currentIndex - offset;
98
+ if (nextIndex >= state.items.length) {
99
+ nextIndex = state.items.length - 1;
100
+ }
101
+ return state.items[nextIndex];
75
102
  }
76
103
  return getLast(id, {state});
77
104
  };
@@ -83,7 +110,7 @@ export const getLastOfRow: NavigationRequestor = (id, {state}) => {
83
110
  export const getPreviousPage: NavigationRequestor = (id, {state}) => {
84
111
  if (state.columnCount) {
85
112
  const item = getItem(id, {state});
86
- const currentIndex = state.items.findIndex(i => getId(item) === getId(i));
113
+ const currentIndex = item.index;
87
114
  return state.items[currentIndex % state.columnCount];
88
115
  }
89
116
  return getFirst(id, {state});
@@ -96,7 +123,7 @@ export const getPreviousPage: NavigationRequestor = (id, {state}) => {
96
123
  export const getNextPage: NavigationRequestor = (id, {state}) => {
97
124
  if (state.columnCount) {
98
125
  const item = getItem(id, {state});
99
- const currentIndex = state.items.findIndex(i => getId(item) === getId(i));
126
+ const currentIndex = item.index;
100
127
  const lastRowIndex = state.items.length - state.columnCount;
101
128
  return state.items[lastRowIndex + (currentIndex % state.columnCount)];
102
129
  }
@@ -117,12 +144,38 @@ export const getWrappingOffsetItem = (offset: number) => (
117
144
  const items = state.items;
118
145
  const item = getItem(id, {state});
119
146
 
120
- const currentIndex = items.findIndex(i => getId(item) === getId(i));
147
+ const currentIndex = item.index;
121
148
  let nextIndex = currentIndex + offset;
149
+
150
+ // calculate idealLength as in if the grid was a perfect rectangle
151
+ const rows = Math.ceil(items.length / state.columnCount);
152
+ const idealLength = rows * state.columnCount;
122
153
  if (nextIndex < 0) {
123
- nextIndex = items.length + nextIndex;
154
+ if (offset === -1) {
155
+ // if the offset is -1, we want to wrap to the end
156
+ nextIndex = items.length - 1;
157
+ } else {
158
+ // if the offset is smaller than -1, we want to wrap by column
159
+ if (idealLength + nextIndex >= items.length) {
160
+ // we'll overflow the grid because there isn't enough items. Move `nextIndex` up so we wrap in
161
+ // the right spot
162
+ nextIndex -= state.columnCount;
163
+ }
164
+ nextIndex = idealLength + nextIndex;
165
+ }
124
166
  } else if (nextIndex >= items.length) {
125
- nextIndex = nextIndex - items.length;
167
+ if (offset === 1) {
168
+ // if the offset is 1, we want to wrap to the beginning
169
+ nextIndex = 0;
170
+ } else {
171
+ // if the offset is larger than 1, we want to wrap by column
172
+ if (nextIndex - idealLength < 0) {
173
+ // we're going to overflow the grid because there isn't enough items. Move `nextIndex` down to
174
+ // the missing item in the next row. This way we'll end up wrapping in the right spot
175
+ nextIndex += state.columnCount;
176
+ }
177
+ nextIndex = nextIndex - idealLength;
178
+ }
126
179
  }
127
180
 
128
181
  if (state.nonInteractiveIds.includes(getId(items[nextIndex])) && tries > 0) {
@@ -142,8 +195,9 @@ export const getOffsetItem = (offset: number) => (
142
195
  const {items, columnCount} = state;
143
196
  const item = getItem(id, {state});
144
197
 
145
- const currentIndex = items.findIndex(i => getId(item) === getId(i));
198
+ const currentIndex = item.index;
146
199
  let nextIndex = currentIndex + offset;
200
+
147
201
  if (Math.abs(offset) < columnCount) {
148
202
  // if we're here, the columnCount is non-zero and the absolute value of offset is less than the
149
203
  // column count. We don't want to wrap, so we'll bound within the row
@@ -157,10 +211,19 @@ export const getOffsetItem = (offset: number) => (
157
211
  // if we're here, there's a column count, but the offset will move into another row. We need to
158
212
  // bound to row values
159
213
  const nextRow = Math.floor(nextIndex / columnCount);
214
+
160
215
  if (nextRow < 0 || nextRow >= columnCount) {
161
216
  nextIndex = currentIndex;
162
217
  }
163
- } else if (nextIndex < 0) {
218
+
219
+ // make sure we don't go out of bounds if the grid isn't a perfect rectangle
220
+ if (nextIndex > items.length - 1) {
221
+ nextIndex = currentIndex;
222
+ }
223
+ }
224
+
225
+ // make sure we're always in bounds
226
+ if (nextIndex < 0) {
164
227
  nextIndex = 0;
165
228
  } else if (nextIndex >= items.length) {
166
229
  nextIndex = items.length - 1;
@@ -176,30 +239,36 @@ export const getOffsetItem = (offset: number) => (
176
239
  };
177
240
 
178
241
  /**
179
- * The default navigation manager of lists
242
+ * The default navigation manager of lists. This navigation manager will wrap around when the edge
243
+ * is hit. For example, if the user is the the right-most item in a list or right-most item in a
244
+ * row, the cursor will wrap around to the beginning or the next row.
180
245
  */
181
246
  export const wrappingNavigationManager = createNavigationManager({
182
247
  getFirst,
183
248
  getLast,
184
249
  getItem,
185
250
  getNext: getWrappingOffsetItem(1),
186
- getNextRow: (id, {state}) => getWrappingOffsetItem(-state.columnCount)(id, {state}),
251
+ getNextRow: (id, {state}) => getWrappingOffsetItem(state.columnCount)(id, {state}),
187
252
  getPrevious: getWrappingOffsetItem(-1),
188
- getPreviousRow: (id, {state}) => getWrappingOffsetItem(state.columnCount)(id, {state}),
253
+ getPreviousRow: (id, {state}) => getWrappingOffsetItem(-state.columnCount)(id, {state}),
189
254
  getPreviousPage,
190
255
  getNextPage,
191
256
  getFirstOfRow,
192
257
  getLastOfRow,
193
258
  });
194
259
 
260
+ /**
261
+ * The default navigation of grids. This navigation manager will not wrap, but will stop when an
262
+ * edge is detected. This could be the last item in a list or the last item of a row in a grid.
263
+ */
195
264
  export const navigationManager = createNavigationManager({
196
265
  getFirst,
197
266
  getLast,
198
267
  getItem,
199
268
  getNext: getOffsetItem(1),
200
- getNextRow: (id, {state}) => getOffsetItem(-state.columnCount)(id, {state}),
269
+ getNextRow: (id, {state}) => getOffsetItem(state.columnCount)(id, {state}),
201
270
  getPrevious: getOffsetItem(-1),
202
- getPreviousRow: (id, {state}) => getOffsetItem(state.columnCount)(id, {state}),
271
+ getPreviousRow: (id, {state}) => getOffsetItem(-state.columnCount)(id, {state}),
203
272
  getPreviousPage,
204
273
  getNextPage,
205
274
  getFirstOfRow,
@@ -229,9 +298,7 @@ export const useCursorListModel = createModelHook({
229
298
  * (left-to-right or right-to-left) and call the correct navigation method. In our example, a
230
299
  * left-to-right language would send a `getNext`. The navigation manager may return the next item
231
300
  * in the list. Different managers can be created for slightly different use cases. The default
232
- * navigation manager will accept `orientation` and directionality to determine mapping. If
233
- * `columnCount` is non-zero, it will use a grid mode where `orientation` is ignored and only
234
- * directionality matters.
301
+ * navigation manager will accept `orientation` and directionality to determine mapping.
235
302
  *
236
303
  * An example override might be a tab list with an overflow menu that is meant to be transparent
237
304
  * to screen reader users. This would require the overflow menu to accept both up/down keys as
@@ -247,6 +314,7 @@ export const useCursorListModel = createModelHook({
247
314
  const initialCurrentRef = React.useRef(
248
315
  config.initialCursorId || (config.items?.length ? getId(config.items![0]) : '')
249
316
  );
317
+ const navigation = config.navigation;
250
318
 
251
319
  const state = {
252
320
  ...list.state,
@@ -255,10 +323,10 @@ export const useCursorListModel = createModelHook({
255
323
  /**
256
324
  * Any positive non-zero value treats the list like a grid with rows and columns
257
325
  * @default 0
326
+ * @private Use useGridModel instead to make a grid instead of a list
258
327
  */
259
328
  columnCount,
260
329
  };
261
- const navigation = config.navigation || wrappingNavigationManager;
262
330
 
263
331
  const events = {
264
332
  ...list.events,
@@ -0,0 +1,34 @@
1
+ import {createModelHook} from '@workday/canvas-kit-react/common';
2
+ import {navigationManager} from './useCursorListModel';
3
+ import {useListModel} from './useListModel';
4
+
5
+ const {columnCount, orientation, ...defaultConfig} = useListModel.defaultConfig;
6
+
7
+ export const useGridModel = createModelHook({
8
+ defaultConfig: {
9
+ ...defaultConfig,
10
+ /**
11
+ * Controls the state changes when the user sends navigation events to the model. For example,
12
+ * when the user hits the "right" arrow, a behavior hook will determine directionality
13
+ * (left-to-right or right-to-left) and call the correct navigation method. In our example, a
14
+ * left-to-right language would send a `getNext`. The navigation manager may return the next
15
+ * item in the list. Different managers can be created for slightly different use cases. The
16
+ * default navigation manager will stop when the end of a row/column is detected. For example,
17
+ * `getNext` will return the same item the cursor was previously on if the cursor is on the last
18
+ * item of a row.
19
+ */
20
+ navigation: navigationManager,
21
+ },
22
+ requiredConfig: {
23
+ /**
24
+ * The number of columns represented in a grid
25
+ */
26
+ columnCount: 1,
27
+ ...useListModel.requiredConfig,
28
+ },
29
+ contextOverride: useListModel.Context,
30
+ })(config => {
31
+ const list = useListModel(config);
32
+
33
+ return list;
34
+ });
@@ -103,10 +103,12 @@ export const useListItemRovingFocus = createElemPropsHook(useCursorListModel)(
103
103
  if (event.ctrlKey) {
104
104
  for (const key in ctrlKeyMap) {
105
105
  if (hasOwnKey(ctrlKeyMap, key)) {
106
- keyDownRef.current = true;
107
- events[ctrlKeyMap[key]]?.();
108
- event.preventDefault();
109
- return;
106
+ if (event.key === key) {
107
+ keyDownRef.current = true;
108
+ events[ctrlKeyMap[key]]?.();
109
+ event.preventDefault();
110
+ return;
111
+ }
110
112
  }
111
113
  }
112
114
  }
@@ -7,26 +7,36 @@ import {useBaseListModel} from './useBaseListModel';
7
7
  export function useListRenderItems<T>(
8
8
  model: ReturnType<typeof useBaseListModel>,
9
9
  children: ((item: Generic, index: number) => React.ReactNode) | React.ReactNode
10
- ) {
10
+ ): React.ReactNode {
11
11
  const items =
12
12
  typeof children === 'function'
13
13
  ? model.state.isVirtualized
14
14
  ? model.state.UNSTABLE_virtual.virtualItems.map(virtual => {
15
15
  const item = model.state.items[virtual.index];
16
16
  const child = children(item.value, virtual.index);
17
- return React.cloneElement(child, {
18
- // We call this `virtual` instead of `virtualItem` to avoid a React render warning
19
- // about capital letters in attributes. React thinks this will be applied to the DOM
20
- // element even though we remove it later...
21
- virtual,
22
- key: item.id,
23
- item,
24
- });
17
+ if (React.isValidElement(child)) {
18
+ return React.cloneElement(child, {
19
+ // We call this `virtual` instead of `virtualItem` to avoid a React render warning
20
+ // about capital letters in attributes. React thinks this will be applied to the DOM
21
+ // element even though we remove it later...
22
+ virtual,
23
+ key: item.id,
24
+ item,
25
+ });
26
+ }
27
+ return child;
25
28
  })
26
- : model.state.items.map(item =>
27
- React.cloneElement(children(item.value, item.index), {key: item.id, item: item.value})
28
- )
29
- : null;
29
+ : model.state.items.map(item => {
30
+ const child = children(item.value, item.index);
31
+ if (React.isValidElement(child)) {
32
+ return React.cloneElement(child, {
33
+ key: item.id,
34
+ item: item.value,
35
+ });
36
+ }
37
+ return child;
38
+ })
39
+ : children;
30
40
 
31
- return items || children;
41
+ return items;
32
42
  }
@@ -1,7 +1,3 @@
1
- import ColorInput from './lib/ColorInput';
2
- import ColorPreview from './lib/ColorPreview';
3
-
4
- export {ColorInput, ColorPreview};
5
1
  export * from './lib/ColorInput';
6
2
  export * from './lib/ColorPreview';
7
3
  export * from './lib/parts/ColorSwatch';
@@ -110,9 +110,8 @@ const PoundSignPrefix = styled('span')<Pick<ColorInputProps, 'disabled'>>(
110
110
 
111
111
  const SwatchTile = styled(ColorSwatch)({
112
112
  position: 'absolute',
113
- top: 0,
113
+ top: '10px', // input is 40px high, and the tile is 20 x 20px, this centers the tile
114
114
  left: space.xxs,
115
- marginTop: '10px', // Fix vertical alignment on IE11
116
115
  boxShadow: 'inset 0 0 0 1px rgba(0,0,0,0.25)',
117
116
  pointerEvents: 'none',
118
117
  });
@@ -184,5 +183,3 @@ export const ColorInput = createComponent('input')({
184
183
  );
185
184
  },
186
185
  });
187
-
188
- export default ColorInput;
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import ColorInput from './ColorInput';
2
+ import {ColorInput} from './ColorInput';
3
3
  import {createComponent, StyledType} from '@workday/canvas-kit-react/common';
4
4
  import {TextInputProps} from '@workday/canvas-kit-react/text-input';
5
5
  import styled from '@emotion/styled';
@@ -36,5 +36,3 @@ export const ColorPreview = createComponent('input')({
36
36
  />
37
37
  ),
38
38
  });
39
-
40
- export default ColorPreview;
package/common/index.ts CHANGED
@@ -7,3 +7,4 @@ export * from './lib/utils';
7
7
  export * from './lib/CanvasProvider';
8
8
  export * from './lib/InputProvider';
9
9
  export * from './lib/EllipsisText';
10
+ export * from './lib/responsive/useResponsiveContainerStyles';
@@ -1,6 +1,4 @@
1
1
  import * as React from 'react';
2
- // @ts-ignore
3
- import elementClosestPolyfill from 'element-closest';
4
2
 
5
3
  export interface InputProviderProps {
6
4
  provideIntent?: boolean;
@@ -117,7 +115,7 @@ const supportsPassive = () => {
117
115
  /**
118
116
  * This component takes heavy inspiration from what-input (https://github.com/ten1seven/what-input)
119
117
  */
120
- export class InputProvider extends React.Component<InputProviderProps> {
118
+ export class InputProvider extends React.Component<React.PropsWithChildren<InputProviderProps>> {
121
119
  private eventTimer: number | undefined;
122
120
 
123
121
  private currentInput: InputType;
@@ -171,9 +169,6 @@ export class InputProvider extends React.Component<InputProviderProps> {
171
169
  }
172
170
 
173
171
  componentDidMount() {
174
- // For IE11 and under, we'll need to polyfill element.closest
175
- elementClosestPolyfill(window);
176
-
177
172
  // Check for passive event listener support
178
173
  this.supportsPassive = supportsPassive();
179
174
 
@@ -0,0 +1,128 @@
1
+ import { useTheme, breakpointKeys, CanvasBreakpoints } from "@workday/canvas-kit-react/common";
2
+ import type {AllStyleProps} from "@workday/canvas-kit-react/layout";
3
+ import {isWithinBreakpoint} from '../utils/isWithinBreakpoint'
4
+
5
+ export type BreakpointKeys = typeof breakpointKeys[number];
6
+
7
+ type ResponsiveCSSObject<T> = {
8
+ [P in keyof T]: Partial<Record<BreakpointKeys, AllStyleProps>> &
9
+ AllStyleProps;
10
+ };
11
+ type CSSObject<T> = {
12
+ [P in keyof T]: AllStyleProps;
13
+ };
14
+
15
+ // Takes in CanvasBreakpoint keys and returns current breakpoint key. Current breakpoint key is determined by the `width` of the container
16
+
17
+ const getSize = (width: number, breakpoints: CanvasBreakpoints) => {
18
+ const ranges: {[key: string ]: [number, number?]} = {
19
+ 'zero': [0, breakpoints.s],
20
+ 's': [breakpoints.s, breakpoints.m],
21
+ 'm': [breakpoints.m, breakpoints.l],
22
+ 'l': [breakpoints.l, breakpoints.xl],
23
+ 'xl': [breakpoints.xl]
24
+ };
25
+ return breakpointKeys.find((size: BreakpointKeys) => isWithinBreakpoint(width, ...ranges[size])) || 'zero';
26
+ }
27
+
28
+ // Returns responsive style objects that are within the current CanvasBreakpoint size
29
+
30
+ function getStyles<T>(key: BreakpointKeys, styles: ResponsiveCSSObject<T>) {
31
+ const responsiveStyles = {} as CSSObject<T>;
32
+ const breakpointSize = breakpointKeys.indexOf(key);
33
+ for (let i = 0; i <= breakpointSize; i++) {
34
+ const breakpointName = breakpointKeys[i];
35
+ // property is key of the style object
36
+ Object.keys(styles).forEach((property) => {
37
+ const { zero, s, m, l, xl, ...base } = styles[property as keyof T];
38
+ const currentBreakpointStyles =
39
+ styles[property as keyof T][breakpointName] ?? {};
40
+ const previousBreakpointStyles = responsiveStyles[property as keyof T] ?? {};
41
+ responsiveStyles[property as keyof T] = {
42
+ ...base,
43
+ ...previousBreakpointStyles,
44
+ ...currentBreakpointStyles
45
+ };
46
+ });
47
+ }
48
+ return responsiveStyles;
49
+ }
50
+
51
+ /**
52
+ * useResponsiveContainerStyles
53
+ *
54
+ * ---
55
+ *
56
+ * This hook allows you to create container-based responsive styles with objects.
57
+ * It accepts two or three arguments: the responsive style object, the container width, and (optionally) the theme object.
58
+ * Each style object accepts five breakpoint keys: "zero", "s", "m", "l", and "xl".
59
+ * The sizes will act like `min-width`. For example, if you want to apply styles from `medium` and up, then you would write those styles under `m`.
60
+ *
61
+ * @example
62
+ * ```tsx
63
+ import {Flex, Box} from '@workday/canvas-kit-react/layout';
64
+ import {
65
+ useResponsiveStyles,
66
+ } from '@workday/canvas-kit-react/common';
67
+
68
+ const ref = React.useRef(null);
69
+ const [containerWidth, setContainerWidth] = React.useState(0);
70
+
71
+ useResizeObserver({
72
+ ref: ref,
73
+ onResize: data => {
74
+ setWidth(data.width || 0);
75
+ },
76
+ });
77
+
78
+ const containerResponsiveStyles = useResponsiveStyles(
79
+ {
80
+ flex: {
81
+ flexDirection: 'column',
82
+ padding: 'm',
83
+ depth: 1,
84
+ borderRadius: 'l',
85
+ zero: {
86
+ backgroundColor: 'Red',
87
+ },
88
+ s: {
89
+ backgroundColor: 'Orange',
90
+ },
91
+ m: {
92
+ backgroundColor: 'Yellow',
93
+ },
94
+ l: {
95
+ backgroundColor: 'Green',
96
+ },
97
+ xl: {
98
+ backgroundColor: 'Blue',
99
+ },
100
+ },
101
+ box: {
102
+ padding: 's',
103
+ },
104
+ },
105
+ containerWidth
106
+ );
107
+
108
+ return (
109
+ <Box ref={ref}>
110
+ <Flex {...containerResponsiveStyles.flex}>
111
+ <Box {...containerResponsiveStyles.box}>Hello World</Box>
112
+ </Flex>
113
+ </Box>
114
+ );
115
+ ```
116
+ */
117
+
118
+ export function useResponsiveContainerStyles<T extends ResponsiveCSSObject<T>>(
119
+ styles: ResponsiveCSSObject<T>,
120
+ width: number,
121
+ theme = {}
122
+ ) {
123
+ const canvasTheme = useTheme(theme);
124
+ const breakpoints = canvasTheme.canvas.breakpoints.values;
125
+
126
+ const size = getSize(width, breakpoints);
127
+ return getStyles(size, styles);
128
+ }
@@ -1,5 +1,5 @@
1
1
  import {keyframes, Theme, CSSObject} from '@emotion/react';
2
- import canvas from '@workday/canvas-kit-react/tokens';
2
+ import {canvas} from '@workday/canvas-kit-react/tokens';
3
3
  import {defaultCanvasTheme} from '../theming/index';
4
4
  import memoize from 'lodash/memoize';
5
5
 
@@ -1,7 +1,7 @@
1
1
  export * from './breakpoints';
2
2
  export {createCanvasTheme} from './createCanvasTheme';
3
3
  export * from './types';
4
- export {default as styled} from './styled';
4
+ export {default as styled, StyleRewriteFn} from './styled';
5
5
  export * from './theme';
6
6
  export * from './useTheme';
7
7
  export * from './useIsRTL';
@@ -1,22 +1,25 @@
1
1
  import {default as emotionStyled, CreateStyled, Interpolation, CSSObject} from '@emotion/styled';
2
+ import {CSSProperties} from '@workday/canvas-kit-react/tokens';
2
3
 
3
4
  import {useTheme, EmotionCanvasTheme, ContentDirection} from './index';
4
5
  import rtlCSSJS from 'rtl-css-js';
5
- import {convertToStaticStates} from '../utils/StaticStates';
6
6
 
7
7
  const noop = (styles: any) => styles;
8
8
 
9
9
  // Pulled from https://github.com/emotion-js/emotion/blob/master/packages/styled-base/src/utils.js#L6 (not exported)
10
10
  type Interpolations = Array<any>;
11
+ export type StyleRewriteFn = (obj?: CSSProperties) => CSSProperties | undefined;
11
12
 
12
13
  function styled<Props>(node: any) {
13
14
  return (...args: Interpolation<Props>[]) => {
14
15
  const newArgs: Interpolations = args.map(
15
- interpolation => (props: Props & {theme: EmotionCanvasTheme & {_staticStates?: boolean}}) => {
16
+ interpolation => (
17
+ props: Props & {theme: EmotionCanvasTheme & {_styleRewriteFn?: StyleRewriteFn}}
18
+ ) => {
16
19
  props.theme = useTheme(props.theme);
17
20
  const direction = props.theme.canvas.direction;
18
21
  const maybeFlip = direction === ContentDirection.RTL ? rtlCSSJS : noop;
19
- const maybeConvert = props.theme._staticStates ? convertToStaticStates : noop;
22
+ const maybeConvert = props.theme._styleRewriteFn || noop;
20
23
  try {
21
24
  if (typeof interpolation === 'function') {
22
25
  return maybeFlip(maybeConvert(interpolation(props)) as CSSObject);