@workday/canvas-kit-react 8.0.0 → 8.0.2

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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@workday/canvas-kit-react",
3
- "version": "8.0.0",
3
+ "version": "8.0.2",
4
4
  "description": "The parent module that contains all Workday Canvas Kit React components",
5
5
  "author": "Workday, Inc. (https://www.workday.com)",
6
6
  "license": "Apache-2.0",
@@ -41,7 +41,7 @@
41
41
  "workday"
42
42
  ],
43
43
  "peerDependencies": {
44
- "react": "^16.8 || ^17.0"
44
+ "react": "^17.0 || ^18.0"
45
45
  },
46
46
  "dependencies": {
47
47
  "@emotion/is-prop-valid": "^1.1.1",
@@ -49,14 +49,11 @@
49
49
  "@emotion/styled": "^11.6.0",
50
50
  "@popperjs/core": "^2.5.4",
51
51
  "@workday/canvas-colors-web": "^2.0.0",
52
- "@workday/canvas-kit-labs-react": "^8.0.0",
53
- "@workday/canvas-kit-popup-stack": "^8.0.0",
54
- "@workday/canvas-kit-preview-react": "^8.0.0",
52
+ "@workday/canvas-kit-popup-stack": "^8.0.2",
55
53
  "@workday/canvas-system-icons-web": "^3.0.0",
56
54
  "@workday/design-assets-types": "^0.2.8",
57
55
  "chroma-js": "^2.1.0",
58
- "csstype": "^2.6.17",
59
- "element-closest": "^3.0.2",
56
+ "csstype": "^3.0.2",
60
57
  "lodash": "^4.17.14",
61
58
  "polished": "^4.1.3",
62
59
  "react-innertext": "^1.1.5",
@@ -70,5 +67,5 @@
70
67
  "@workday/canvas-accent-icons-web": "^3.0.0",
71
68
  "@workday/canvas-applet-icons-web": "^2.0.0"
72
69
  },
73
- "gitHead": "433a9d272804ceed26191ac1ef629d61fab4dcb4"
70
+ "gitHead": "0f1b4cb0314b4ff02e2c81fdcc7986fac582ae9e"
74
71
  }
@@ -1,12 +1,12 @@
1
1
  import * as React from 'react';
2
- import {type, typeColors, space} from '@workday/canvas-kit-react/tokens';
2
+ import {type, space, typeColors} from '@workday/canvas-kit-react/tokens';
3
3
  import {accessibleHide, styled, StyledType} from '@workday/canvas-kit-react/common';
4
4
 
5
5
  import {PaginationModel} from './types';
6
6
  import {Flex, FlexProps} from '@workday/canvas-kit-react/layout';
7
7
  import {useLiveRegion} from './common/useLiveRegion';
8
8
 
9
- export interface AdditionalDetailsProps extends FlexProps {
9
+ export interface AdditionalDetailsProps extends Omit<FlexProps, 'children'> {
10
10
  children: (model: PaginationModel) => React.ReactNode | React.ReactNode;
11
11
  model: PaginationModel;
12
12
  shouldAnnounceToScreenReader?: boolean;
@@ -16,19 +16,13 @@ export interface AdditionalDetailsProps extends FlexProps {
16
16
  const StyledAdditionalDetails = styled(Flex)<
17
17
  StyledType & Pick<AdditionalDetailsProps, 'shouldHideDetails'>
18
18
  >(({shouldHideDetails}) => {
19
- const styles = {
20
- ...type.levels.subtext.medium,
21
- color: typeColors.hint,
22
- };
23
19
  if (shouldHideDetails) {
24
20
  return {
25
- ...styles,
26
21
  ...accessibleHide,
27
22
  marginTop: space.zero,
28
23
  };
29
24
  } else {
30
25
  return {
31
- ...styles,
32
26
  marginTop: space.xs,
33
27
  };
34
28
  }
@@ -43,7 +37,12 @@ export const AdditionalDetails = ({
43
37
  const liveRegionProps = useLiveRegion({shouldAnnounceToScreenReader});
44
38
 
45
39
  return (
46
- <StyledAdditionalDetails {...liveRegionProps} {...elemProps}>
40
+ <StyledAdditionalDetails
41
+ {...type.levels.subtext.medium}
42
+ color={typeColors.hint}
43
+ {...liveRegionProps}
44
+ {...elemProps}
45
+ >
47
46
  {typeof children === 'function' ? children(model) : children}
48
47
  </StyledAdditionalDetails>
49
48
  );
@@ -1,10 +1,9 @@
1
1
  import * as React from 'react';
2
- import {type, typeColors} from '@workday/canvas-kit-react/tokens';
3
-
4
2
  import {PaginationModel} from '../types';
5
- import {StyledType, styled} from '@workday/canvas-kit-react/common';
3
+ import {LabelText} from '@workday/canvas-kit-react/text';
6
4
 
7
- export interface GoToLabelProps extends React.LabelHTMLAttributes<HTMLLabelElement> {
5
+ export interface GoToLabelProps
6
+ extends Omit<React.LabelHTMLAttributes<HTMLLabelElement>, 'children'> {
8
7
  model: PaginationModel;
9
8
  /**
10
9
  * Accepts child elements or a render prop.
@@ -12,16 +11,10 @@ export interface GoToLabelProps extends React.LabelHTMLAttributes<HTMLLabelEleme
12
11
  children?: (model: PaginationModel) => React.ReactNode | React.ReactNode;
13
12
  }
14
13
 
15
- const StyledLabel = styled('label')<StyledType>({
16
- ...type.levels.subtext.medium,
17
- color: typeColors.hint,
18
- whiteSpace: 'nowrap',
19
- });
20
-
21
14
  export const GoToLabel = ({model, children, ...elemProps}: GoToLabelProps) => {
22
15
  return (
23
- <StyledLabel {...elemProps}>
16
+ <LabelText typeLevel="subtext.medium" variant="hint" whiteSpace="nowrap" {...elemProps}>
24
17
  {typeof children === 'function' ? children(model) : children}
25
- </StyledLabel>
18
+ </LabelText>
26
19
  );
27
20
  };
@@ -4,7 +4,7 @@ import {PaginationModel} from './types';
4
4
  import {ListItem, ListItemProps} from './common/List';
5
5
  import {HStack, HStackProps} from '@workday/canvas-kit-react/layout';
6
6
 
7
- export interface PageListProps extends Omit<HStackProps, 'as' | 'spacing'> {
7
+ export interface PageListProps extends Omit<HStackProps, 'as' | 'spacing' | 'children'> {
8
8
  model: PaginationModel;
9
9
  children?: (model: PaginationModel) => React.ReactNode[] | React.ReactNode;
10
10
  }
@@ -41,8 +41,11 @@ export const usePaginationModel = ({
41
41
  const [currentPage, setCurrentPage] = React.useState(initialCurrentPage);
42
42
 
43
43
  const changePage = (page: number) => {
44
- onPageChange?.(page);
45
-
44
+ // Don't fire an `onPageChange` event if the page number is the same as the current page.
45
+ // `setCurrentPage` doesn't need this check, because React won't update the state if the values are the same.
46
+ if (currentPage !== page) {
47
+ onPageChange?.(page);
48
+ }
46
49
  setCurrentPage(page);
47
50
  };
48
51
 
@@ -8,5 +8,5 @@ export const PopupBody = createSubcomponent('div')({
8
8
  displayName: 'Popup.Body',
9
9
  modelHook: usePopupModel,
10
10
  })<ExtractProps<typeof Card.Body>>(elemProps => {
11
- return <Card.Body overflowY="auto" {...elemProps} />;
11
+ return <Card.Body overflowY="auto" padding="xxs" {...elemProps} />;
12
12
  });
@@ -12,12 +12,13 @@ import {
12
12
  useConstant,
13
13
  createSubcomponent,
14
14
  } from '@workday/canvas-kit-react/common';
15
- import {Stack, StackStyleProps} from '@workday/canvas-kit-react/layout';
15
+ import {Flex, FlexStyleProps} from '@workday/canvas-kit-react/layout';
16
16
 
17
17
  import {getTransformFromPlacement} from './getTransformFromPlacement';
18
18
  import {usePopupCard, usePopupModel} from './hooks';
19
19
 
20
- export interface PopupCardProps extends ExtractProps<typeof Card, never>, Partial<StackStyleProps> {
20
+ export type FlexAndBoxProps = ExtractProps<typeof Card, never> & FlexStyleProps;
21
+ export interface PopupCardProps extends FlexAndBoxProps {
21
22
  children?: React.ReactNode;
22
23
  }
23
24
 
@@ -38,15 +39,22 @@ const popupAnimation = (transformOrigin: TransformOrigin) => {
38
39
 
39
40
  const StyledPopupCard = styled(Card)<
40
41
  StyledType & {width?: number | string; transformOrigin?: TransformOrigin}
41
- >(type.levels.subtext.large, ({transformOrigin}) => {
42
+ >(({transformOrigin, theme}) => {
42
43
  if (transformOrigin == null) {
43
44
  return {};
44
45
  }
46
+
45
47
  return {
46
48
  animation: popupAnimation(transformOrigin),
47
49
  animationDuration: '150ms',
48
50
  animationTimingFunction: 'ease-out',
49
51
  transformOrigin: `${transformOrigin.vertical} ${transformOrigin.horizontal}`,
52
+ [theme.canvas.breakpoints.down('s')]: {
53
+ animation: popupAnimation({vertical: 'bottom', horizontal: 'center'}),
54
+ animationDuration: '150ms',
55
+ animationTimingFunction: 'ease-out',
56
+ transformOrigin: 'bottom center',
57
+ },
50
58
  // Allow overriding of animation in special cases
51
59
  '.wd-no-animation &': {
52
60
  animation: 'none',
@@ -63,24 +71,24 @@ export const PopupCard = createSubcomponent('div')({
63
71
  return getTransformFromPlacement(model.state.placement || 'bottom');
64
72
  }, [model.state.placement]);
65
73
 
66
- // As is a Stack that will render an element of `Element`
67
- const As = useConstant(() => Stack.as(Element));
74
+ // As is a Flex that will render an element of `Element`
75
+ const As = useConstant(() => Flex.as(Element));
68
76
 
69
77
  return (
70
78
  <StyledPopupCard
71
79
  as={As}
72
80
  transformOrigin={transformOrigin}
73
81
  position="relative"
74
- padding="l"
75
82
  depth={5}
76
83
  maxWidth={`calc(100vw - ${space.l})`}
77
- spacing={0}
78
84
  flexDirection="column"
79
85
  minHeight={0}
86
+ padding="m"
80
87
  maxHeight={`calc(100vh - ${
81
88
  elemProps.margin ? space[elemProps.margin as CanvasSpaceKeys] || elemProps.margin : space.xl
82
89
  } * 2)`}
83
- overflowY="auto" // force IE11 to limit the flex size of the card. Without this, the body isn't allowed to overflow properly: https://github.com/philipwalton/flexbugs/issues/216#issuecomment-453053557
90
+ overflowY="auto"
91
+ {...type.levels.subtext.large}
84
92
  {...elemProps}
85
93
  >
86
94
  {children}
@@ -14,5 +14,9 @@ export const PopupCloseButton = createSubcomponent(SecondaryButton)({
14
14
  modelHook: usePopupModel,
15
15
  elemPropsHook: usePopupCloseButton,
16
16
  })<PopupCloseButtonProps>(({children, ...elemProps}: PopupCloseButtonProps, Element) => {
17
- return <Element {...elemProps}>{children}</Element>;
17
+ return (
18
+ <Element type="button" {...elemProps}>
19
+ {children}
20
+ </Element>
21
+ );
18
22
  });
@@ -26,5 +26,5 @@ export const PopupCloseIcon = createSubcomponent('button')({
26
26
  modelHook: usePopupModel,
27
27
  elemPropsHook: usePopupCloseButton,
28
28
  })<PopupCloseIconProps>(({children, ...elemProps}, Element) => {
29
- return <StyledCloseIcon as={Element} size="medium" icon={xIcon} {...elemProps} />;
29
+ return <StyledCloseIcon as={Element} size="medium" icon={xIcon} type="button" {...elemProps} />;
30
30
  });
@@ -15,7 +15,7 @@ export const PopupHeading = createSubcomponent('h2')({
15
15
  elemPropsHook: usePopupHeading,
16
16
  })<PopupHeadingProps>(({children, ...elemProps}, Element) => {
17
17
  return (
18
- <Card.Heading as={Element} marginBottom="s" {...elemProps}>
18
+ <Card.Heading as={Element} marginBottom="xxs" padding="xxs" {...elemProps}>
19
19
  {children}
20
20
  </Card.Heading>
21
21
  );
@@ -3,9 +3,9 @@ import * as React from 'react';
3
3
  import {createSubcomponent} from '@workday/canvas-kit-react/common';
4
4
 
5
5
  import {usePopupModel, usePopupPopper} from './hooks';
6
- import {Placement, PopperOptions, Popper} from './Popper';
6
+ import {Placement, PopperOptions, Popper, PopperProps} from './Popper';
7
7
 
8
- export interface PopupPopperProps {
8
+ export interface PopupPopperProps extends PopperProps {
9
9
  /**
10
10
  * The placement of the `Popper` contents relative to the `anchorElement`. Accepts `auto`, `top`,
11
11
  * `right`, `bottom`, or `left`. Each placement can also be modified using any of the following
@@ -17,7 +17,6 @@ export interface PopupPopperProps {
17
17
  * The additional options passed to the Popper's `popper.js` instance.
18
18
  */
19
19
  popperOptions?: Partial<PopperOptions>;
20
- children?: React.ReactNode;
21
20
  }
22
21
 
23
22
  export const PopupPopper = createSubcomponent('div')({
@@ -4,6 +4,7 @@ export * from './useBringToTopOnClick';
4
4
  export * from './useCloseOnEscape';
5
5
  export * from './useCloseOnFullscreenExit';
6
6
  export * from './useCloseOnOutsideClick';
7
+ export * from './useCloseOnTargetHidden';
7
8
  export * from './useDisableBodyScroll';
8
9
  export * from './useFocusRedirect';
9
10
  export * from './useFocusTrap';
@@ -12,7 +12,7 @@ import {usePopupModel} from './usePopupModel';
12
12
  */
13
13
  export const useCloseOnFullscreenExit = createElemPropsHook(usePopupModel)(model => {
14
14
  const handler = React.useCallback(
15
- event => {
15
+ (event: any) => {
16
16
  if (!screenfull.isFullscreen) {
17
17
  model.events.hide(event);
18
18
  }
@@ -0,0 +1,66 @@
1
+ import React from 'react';
2
+
3
+ import {createElemPropsHook} from '@workday/canvas-kit-react/common';
4
+ import {usePopupModel} from '@workday/canvas-kit-react/popup';
5
+
6
+ function getScrollParent(element: HTMLElement): HTMLElement {
7
+ if (element === document.body || !element.parentElement) {
8
+ return element;
9
+ }
10
+ const styles = getComputedStyle(element);
11
+
12
+ if (
13
+ styles.overflowY === 'scroll' ||
14
+ styles.overflowY === 'auto' ||
15
+ styles.overflowX === 'scroll' ||
16
+ styles.overflowX === 'auto'
17
+ ) {
18
+ return element;
19
+ }
20
+
21
+ return getScrollParent(element.parentElement);
22
+ }
23
+
24
+ /**
25
+ * Sets up an
26
+ * [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API)
27
+ * for the target element. When the target is detected as being less than 50% visible, the popup
28
+ * will close. Most likely, this will happen if the user scrolls an overflowed content area of the
29
+ * page and the target is no longer visible.
30
+ *
31
+ * This should be used with popup elements that are transitory like Tooltips and dropdown menus.
32
+ */
33
+ export const useCloseOnTargetHidden = createElemPropsHook(usePopupModel)(model => {
34
+ const visible = model.state.visibility !== 'hidden';
35
+
36
+ const callback: IntersectionObserverCallback = React.useCallback(
37
+ entries => {
38
+ if (entries[0].intersectionRatio < 0.5) {
39
+ model.events.hide();
40
+ }
41
+ },
42
+ [model.events]
43
+ );
44
+
45
+ React.useLayoutEffect(() => {
46
+ if (!visible || !model.state.targetRef.current) {
47
+ return;
48
+ }
49
+
50
+ const target = model.state.targetRef.current;
51
+ const scrollParent = getScrollParent(target);
52
+
53
+ // eslint-disable-next-line compat/compat
54
+ const observer = new IntersectionObserver(callback, {
55
+ root: scrollParent,
56
+ threshold: 0.5,
57
+ });
58
+
59
+ observer.observe(model.state.targetRef.current);
60
+ return () => {
61
+ observer.disconnect();
62
+ };
63
+ }, [callback, model.state.targetRef, visible]);
64
+
65
+ return {};
66
+ });
@@ -1,8 +1,35 @@
1
1
  import React from 'react';
2
2
 
3
- import {changeFocus, createElemPropsHook} from '@workday/canvas-kit-react/common';
3
+ import {changeFocus, createElemPropsHook, isFocusable} from '@workday/canvas-kit-react/common';
4
4
 
5
5
  import {usePopupModel} from './usePopupModel';
6
+ import {PopupStack} from '@workday/canvas-kit-popup-stack';
7
+
8
+ function getScrollParent(element: HTMLElement): HTMLElement {
9
+ if (element === document.body || !element.parentElement) {
10
+ return element;
11
+ }
12
+ const styles = getComputedStyle(element);
13
+
14
+ if (styles.overflowY === 'scroll' || styles.overflowY === 'auto') {
15
+ return element;
16
+ }
17
+
18
+ return getScrollParent(element.parentElement);
19
+ }
20
+
21
+ /**
22
+ * Get a focusable element in an element's tree
23
+ */
24
+ function getFocusableElement(element: Element | null): Element | null {
25
+ if (element === null || element === document.body || !element.parentElement) {
26
+ return null;
27
+ } else if (isFocusable(element)) {
28
+ return element;
29
+ }
30
+
31
+ return getFocusableElement(element.parentElement);
32
+ }
6
33
 
7
34
  /**
8
35
  * Returns focus to the target element when the popup is hidden. This works well with
@@ -13,17 +40,98 @@ import {usePopupModel} from './usePopupModel';
13
40
  */
14
41
  export const useReturnFocus = createElemPropsHook(usePopupModel)(model => {
15
42
  const visible = model.state.visibility !== 'hidden';
43
+ const elementRef = React.useRef<Element | null>(null);
44
+
45
+ // This boolean tracks keyboard-driven focus changes. This is required for `useFocusRedirect` as
46
+ // focus redirection needs synchronous focus management and everything else needs asynchronous
47
+ // focus management.
48
+ const requiresFocusChangeRef = React.useRef(false);
16
49
 
50
+ const onKeyDown = React.useCallback((event: KeyboardEvent) => {
51
+ // The tab key changes focus
52
+ if (event.key === 'Tab') {
53
+ requiresFocusChangeRef.current = true;
54
+ }
55
+ }, []);
56
+
57
+ // track mousedown events to determine if the mouse target is a focusable element. If it is, we
58
+ // should not return focus
59
+ const onMouseDown = React.useCallback(
60
+ (event: MouseEvent) => {
61
+ if (model.state.stackRef.current && event.target instanceof HTMLElement) {
62
+ if (!PopupStack.contains(model.state.stackRef.current, event.target)) {
63
+ elementRef.current = event.target;
64
+ }
65
+ }
66
+ },
67
+ [model.state.stackRef]
68
+ );
69
+
70
+ // We use `useLayoutEffect` because the callback will be called _before_ the browser changes
71
+ // focus. This allows the browser to change focus as normal. For example, if the popup closes
72
+ // because the user hits the tab key when focused on the last focusable element,
73
+ // `useFocusRedirect` will cause the popup to close before the browser is finished processing the
74
+ // `keydown`. The browser's default action of a keydown of a tab key is to advance focus to the
75
+ // next focusable element. This means that the `useFocusRedirect` will change focus back to the
76
+ // target, then the tab key is processed by the browser to focus on the next item after the target
77
+ // without us having to use a focus manager to guess what the next focusable element is.
78
+ //
79
+ // But because we're using `useLayoutEffect` instead of `useEffect`, we cannot use
80
+ // `document.activeElement` (because the focus hasn't changed yet because the browser hasn't
81
+ // triggered a default action yet) to determine if a user clicked on something that can accept
82
+ // focus itself. If we don't short-circuit return focus, the user will intend to click on an
83
+ // `input` element only to get focus changed back. This is annoying to users and unintuitive. Instead,
84
+ // we'll use `mousedown` and `mouseup` to determine if we're closing because of a mouse click.
17
85
  React.useLayoutEffect(() => {
18
86
  if (!visible) {
19
87
  return;
20
88
  }
21
89
  // capture the element here. The refs will be null by the time the cleanup function is called
22
- const element = (model.state.returnFocusRef || model.state.targetRef).current;
90
+ const element = (model.state.returnFocusRef || model.state.targetRef)
91
+ .current as HTMLElement | null;
92
+ document.addEventListener('mousedown', onMouseDown, true);
93
+ document.addEventListener('keydown', onKeyDown, true);
94
+
23
95
  return () => {
24
- changeFocus(element);
96
+ document.removeEventListener('mousedown', onMouseDown, true);
97
+ document.removeEventListener('keydown', onKeyDown, true);
98
+ if (!element) {
99
+ return;
100
+ }
101
+ const scrollParent = getScrollParent(element);
102
+ const scrollParentRect = scrollParent.getBoundingClientRect();
103
+ const elementRect = element.getBoundingClientRect();
104
+
105
+ // Don't change focus if user focused on a different element like a `input` or the target
106
+ // element isn't on at least halfway rendered on the screen.
107
+ if (
108
+ (elementRef.current && getFocusableElement(elementRef.current)) || // did the user click on a focusable element?
109
+ elementRect.top + elementRect.height / 2 < scrollParentRect.top || // is the top half of the target element visible?
110
+ elementRect.bottom - elementRect.height / 2 > scrollParentRect.bottom || // is the bottom half of the target element visible?
111
+ elementRect.left + elementRect.width / 2 < scrollParentRect.left || // is the left half of the target element visible?
112
+ elementRect.right - elementRect.width / 2 > scrollParentRect.right // is the right half of the target element visible?
113
+ ) {
114
+ // reset the focus element and bail early
115
+ elementRef.current = null;
116
+ return;
117
+ }
118
+
119
+ if (requiresFocusChangeRef.current) {
120
+ // We need to change focus _before_ the browser process the default action of picking a new
121
+ // focus target. Doing this immediately prevents the `focus` event from firing on `element`,
122
+ // but that's okay because the browser will change focus anyways.
123
+ changeFocus(element);
124
+ } else {
125
+ // We wait a frame for the current event to process, allowing the browser to fire default
126
+ // actions. This delay allows the focus change to trigger a `focus` event on `element`.
127
+ requestAnimationFrame(() => {
128
+ changeFocus(element);
129
+ });
130
+ }
131
+
132
+ elementRef.current = null;
25
133
  };
26
- }, [model.state.returnFocusRef, model.state.targetRef, visible]);
134
+ }, [model.state.returnFocusRef, model.state.targetRef, visible, onMouseDown, onKeyDown]);
27
135
 
28
136
  return {};
29
137
  });
@@ -16,7 +16,7 @@ import {usePopupModel} from './usePopupModel';
16
16
  */
17
17
  export const useTransferOnFullscreenEnter = createElemPropsHook(usePopupModel)(model => {
18
18
  const handler = React.useCallback(
19
- event => {
19
+ (event: any) => {
20
20
  if (screenfull.isFullscreen && model.state.stackRef.current) {
21
21
  PopupStack.transferToCurrentContext({
22
22
  element: model.state.stackRef.current,
@@ -15,7 +15,7 @@ import {usePopupModel} from './usePopupModel';
15
15
  */
16
16
  export const useTransferOnFullscreenExit = createElemPropsHook(usePopupModel)(model => {
17
17
  const handler = React.useCallback(
18
- event => {
18
+ (event: any) => {
19
19
  if (!screenfull.isFullscreen && model.state.stackRef.current) {
20
20
  PopupStack.transferToCurrentContext({
21
21
  element: model.state.stackRef.current,
package/radio/index.ts CHANGED
@@ -1,7 +1,2 @@
1
- import Radio from './lib/Radio';
2
-
3
- export default Radio;
4
- export {Radio};
5
- export {default as RadioGroup} from './lib/RadioGroup';
6
1
  export * from './lib/Radio';
7
2
  export * from './lib/RadioGroup';
@@ -8,12 +8,8 @@ import {
8
8
  Themeable,
9
9
  useUniqueId,
10
10
  } from '@workday/canvas-kit-react/common';
11
- import canvas, {
12
- borderRadius,
13
- colors,
14
- inputColors,
15
- spaceNumbers,
16
- } from '@workday/canvas-kit-react/tokens';
11
+ import {borderRadius, colors, inputColors, spaceNumbers} from '@workday/canvas-kit-react/tokens';
12
+ import {LabelText} from '@workday/canvas-kit-react/text';
17
13
 
18
14
  export interface RadioProps extends Themeable {
19
15
  /**
@@ -276,21 +272,6 @@ const RadioCheck = styled('div')<Pick<RadioProps, 'checked' | 'variant'>>(
276
272
  })
277
273
  );
278
274
 
279
- const RadioLabel = styled('label')<{disabled?: boolean; variant?: 'inverse' | undefined}>(
280
- {
281
- ...canvas.type.levels.subtext.large,
282
- paddingLeft: radioLabelDistance,
283
- },
284
- ({variant}) => (variant === 'inverse' ? {color: colors.frenchVanilla100} : undefined),
285
- ({disabled, variant}) =>
286
- disabled
287
- ? {
288
- color: variant === 'inverse' ? colors.frenchVanilla100 : inputColors.disabled.text,
289
- opacity: variant === 'inverse' ? '.4' : '1',
290
- }
291
- : {cursor: 'pointer'}
292
- );
293
-
294
275
  export const Radio = createComponent('input')({
295
276
  displayName: 'Radio',
296
277
  Component: (
@@ -332,13 +313,16 @@ export const Radio = createComponent('input')({
332
313
  </RadioBackground>
333
314
  </RadioInputWrapper>
334
315
  {label && (
335
- <RadioLabel htmlFor={inputId} disabled={disabled} variant={variant}>
316
+ <LabelText
317
+ paddingLeft={radioLabelDistance}
318
+ htmlFor={inputId}
319
+ disabled={disabled}
320
+ variant={variant}
321
+ >
336
322
  {label}
337
- </RadioLabel>
323
+ </LabelText>
338
324
  )}
339
325
  </RadioContainer>
340
326
  );
341
327
  },
342
328
  });
343
-
344
- export default Radio;
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import Radio, {RadioProps} from './Radio';
2
+ import {Radio, RadioProps} from './Radio';
3
3
  import {borderRadius, space} from '@workday/canvas-kit-react/tokens';
4
4
  import {
5
5
  ErrorType,
@@ -121,4 +121,4 @@ class RadioGroup extends React.Component<RadioGroupProps> {
121
121
 
122
122
  RadioGroup.ErrorType = ErrorType;
123
123
 
124
- export default RadioGroup;
124
+ export {RadioGroup};
@@ -1,5 +1 @@
1
- import SegmentedControl from './lib/SegmentedControl';
2
-
3
- export default SegmentedControl;
4
- export {SegmentedControl};
5
1
  export * from './lib/SegmentedControl';
@@ -78,5 +78,3 @@ export const SegmentedControl = createComponent('div')({
78
78
  Button: SegmentedControlButton,
79
79
  },
80
80
  });
81
-
82
- export default SegmentedControl;