@workday/canvas-kit-react 6.0.0-beta.0-next.13 → 6.0.0

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 (677) hide show
  1. package/action-bar/lib/ActionBar.tsx +43 -30
  2. package/button/lib/PrimaryButton.tsx +110 -32
  3. package/button/lib/SecondaryButton.tsx +31 -16
  4. package/button/lib/TertiaryButton.tsx +45 -36
  5. package/button/lib/parts/ButtonContainer.tsx +18 -5
  6. package/button/lib/parts/ButtonLabelIcon.tsx +34 -14
  7. package/button/lib/types.ts +11 -0
  8. package/common/index.ts +1 -0
  9. package/common/lib/EllipsisText.tsx +11 -0
  10. package/common/lib/styles/accessibleHide.ts +2 -2
  11. package/common/lib/theming/README.md +189 -25
  12. package/common/lib/theming/breakpoints.ts +296 -16
  13. package/common/lib/theming/types.ts +191 -1
  14. package/common/lib/utils/components.ts +50 -23
  15. package/common/lib/utils/index.ts +1 -0
  16. package/common/lib/utils/mergeProps.ts +4 -0
  17. package/common/lib/utils/useConstant.ts +18 -0
  18. package/common/lib/utils/useResizeObserver.ts +29 -0
  19. package/common/lib/utils/useUniqueId.ts +4 -3
  20. package/cookie-banner/README.md +15 -10
  21. package/cookie-banner/index.ts +3 -3
  22. package/cookie-banner/lib/CookieBanner.tsx +29 -4
  23. package/dist/commonjs/action-bar/lib/ActionBar.d.ts.map +1 -1
  24. package/dist/commonjs/action-bar/lib/ActionBar.js +35 -27
  25. package/dist/commonjs/button/lib/PrimaryButton.d.ts +80 -6
  26. package/dist/commonjs/button/lib/PrimaryButton.d.ts.map +1 -1
  27. package/dist/commonjs/button/lib/PrimaryButton.js +80 -26
  28. package/dist/commonjs/button/lib/SecondaryButton.d.ts +8 -5
  29. package/dist/commonjs/button/lib/SecondaryButton.d.ts.map +1 -1
  30. package/dist/commonjs/button/lib/SecondaryButton.js +22 -12
  31. package/dist/commonjs/button/lib/TertiaryButton.d.ts +8 -4
  32. package/dist/commonjs/button/lib/TertiaryButton.d.ts.map +1 -1
  33. package/dist/commonjs/button/lib/TertiaryButton.js +24 -20
  34. package/dist/commonjs/button/lib/parts/ButtonContainer.d.ts +5 -3
  35. package/dist/commonjs/button/lib/parts/ButtonContainer.d.ts.map +1 -1
  36. package/dist/commonjs/button/lib/parts/ButtonContainer.js +7 -9
  37. package/dist/commonjs/button/lib/parts/ButtonLabel.d.ts +1 -1
  38. package/dist/commonjs/button/lib/parts/ButtonLabel.d.ts.map +1 -1
  39. package/dist/commonjs/button/lib/parts/ButtonLabelIcon.d.ts +7 -4
  40. package/dist/commonjs/button/lib/parts/ButtonLabelIcon.d.ts.map +1 -1
  41. package/dist/commonjs/button/lib/parts/ButtonLabelIcon.js +28 -13
  42. package/dist/commonjs/button/lib/types.d.ts +9 -0
  43. package/dist/commonjs/button/lib/types.d.ts.map +1 -1
  44. package/dist/commonjs/common/index.d.ts +1 -0
  45. package/dist/commonjs/common/index.d.ts.map +1 -1
  46. package/dist/commonjs/common/index.js +1 -0
  47. package/dist/commonjs/common/lib/EllipsisText.d.ts +5 -0
  48. package/dist/commonjs/common/lib/EllipsisText.d.ts.map +1 -0
  49. package/dist/commonjs/common/lib/EllipsisText.js +13 -0
  50. package/dist/commonjs/common/lib/styles/accessibleHide.d.ts +2 -2
  51. package/dist/commonjs/common/lib/styles/accessibleHide.d.ts.map +1 -1
  52. package/dist/commonjs/common/lib/theming/breakpoints.d.ts +287 -6
  53. package/dist/commonjs/common/lib/theming/breakpoints.d.ts.map +1 -1
  54. package/dist/commonjs/common/lib/theming/breakpoints.js +192 -10
  55. package/dist/commonjs/common/lib/theming/types.d.ts +191 -1
  56. package/dist/commonjs/common/lib/theming/types.d.ts.map +1 -1
  57. package/dist/commonjs/common/lib/utils/components.d.ts +19 -9
  58. package/dist/commonjs/common/lib/utils/components.d.ts.map +1 -1
  59. package/dist/commonjs/common/lib/utils/components.js +12 -2
  60. package/dist/commonjs/common/lib/utils/index.d.ts +1 -0
  61. package/dist/commonjs/common/lib/utils/index.d.ts.map +1 -1
  62. package/dist/commonjs/common/lib/utils/index.js +1 -0
  63. package/dist/commonjs/common/lib/utils/mergeProps.d.ts.map +1 -1
  64. package/dist/commonjs/common/lib/utils/mergeProps.js +5 -0
  65. package/dist/commonjs/common/lib/utils/useConstant.d.ts +9 -0
  66. package/dist/commonjs/common/lib/utils/useConstant.d.ts.map +1 -0
  67. package/dist/commonjs/common/lib/utils/useConstant.js +18 -0
  68. package/dist/commonjs/common/lib/utils/useResizeObserver.d.ts +3 -0
  69. package/dist/commonjs/common/lib/utils/useResizeObserver.d.ts.map +1 -0
  70. package/dist/commonjs/common/lib/utils/useResizeObserver.js +42 -0
  71. package/dist/commonjs/common/lib/utils/useUniqueId.d.ts.map +1 -1
  72. package/dist/commonjs/common/lib/utils/useUniqueId.js +3 -10
  73. package/dist/commonjs/cookie-banner/index.d.ts +3 -3
  74. package/dist/commonjs/cookie-banner/index.d.ts.map +1 -1
  75. package/dist/commonjs/cookie-banner/index.js +1 -1
  76. package/dist/commonjs/cookie-banner/lib/CookieBanner.d.ts +19 -2
  77. package/dist/commonjs/cookie-banner/lib/CookieBanner.d.ts.map +1 -1
  78. package/dist/commonjs/cookie-banner/lib/CookieBanner.js +19 -8
  79. package/dist/commonjs/dialog/lib/hooks/useDialogCard.d.ts +4 -16
  80. package/dist/commonjs/dialog/lib/hooks/useDialogCard.d.ts.map +1 -1
  81. package/dist/commonjs/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
  82. package/dist/commonjs/dialog/lib/hooks/useDialogPopper.d.ts.map +1 -1
  83. package/dist/commonjs/modal/lib/ModalOverlay.d.ts +4 -2
  84. package/dist/commonjs/modal/lib/ModalOverlay.d.ts.map +1 -1
  85. package/dist/commonjs/modal/lib/hooks/useModalCard.d.ts +4 -16
  86. package/dist/commonjs/modal/lib/hooks/useModalCard.d.ts.map +1 -1
  87. package/dist/commonjs/modal/lib/hooks/useModalHeading.d.ts +5 -17
  88. package/dist/commonjs/modal/lib/hooks/useModalHeading.d.ts.map +1 -1
  89. package/dist/commonjs/page-header/index.d.ts +3 -3
  90. package/dist/commonjs/page-header/index.d.ts.map +1 -1
  91. package/dist/commonjs/page-header/index.js +1 -1
  92. package/dist/commonjs/page-header/lib/PageHeader.d.ts +19 -2
  93. package/dist/commonjs/page-header/lib/PageHeader.d.ts.map +1 -1
  94. package/dist/commonjs/page-header/lib/PageHeader.js +18 -7
  95. package/dist/commonjs/pagination/lib/Pagination/GoTo/Label.d.ts +3 -0
  96. package/dist/commonjs/pagination/lib/Pagination/GoTo/Label.d.ts.map +1 -1
  97. package/dist/commonjs/pagination/lib/Pagination/PageList.d.ts +1 -1
  98. package/dist/commonjs/pagination/lib/Pagination/PageList.d.ts.map +1 -1
  99. package/dist/commonjs/pagination/lib/Pagination/Pagination.d.ts +5 -5
  100. package/dist/commonjs/pagination/lib/Pagination/common/List.d.ts +1 -1
  101. package/dist/commonjs/pagination/lib/Pagination/common/List.d.ts.map +1 -1
  102. package/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
  103. package/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.d.ts.map +1 -1
  104. package/dist/commonjs/pagination/lib/Pagination/common/utils/space.d.ts +28 -28
  105. package/dist/commonjs/pagination/lib/Pagination/types.d.ts +39 -0
  106. package/dist/commonjs/pagination/lib/Pagination/types.d.ts.map +1 -1
  107. package/dist/commonjs/pagination/lib/Pagination/usePaginationModel.d.ts +19 -0
  108. package/dist/commonjs/pagination/lib/Pagination/usePaginationModel.d.ts.map +1 -1
  109. package/dist/commonjs/popup/lib/PopupCard.d.ts.map +1 -1
  110. package/dist/commonjs/popup/lib/PopupCard.js +2 -3
  111. package/dist/commonjs/popup/lib/hooks/usePopupCard.d.ts +5 -2
  112. package/dist/commonjs/popup/lib/hooks/usePopupCard.d.ts.map +1 -1
  113. package/dist/commonjs/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
  114. package/dist/commonjs/popup/lib/hooks/usePopupCloseButton.d.ts.map +1 -1
  115. package/dist/commonjs/popup/lib/hooks/usePopupHeading.d.ts +5 -2
  116. package/dist/commonjs/popup/lib/hooks/usePopupHeading.d.ts.map +1 -1
  117. package/dist/commonjs/popup/lib/hooks/usePopupPopper.d.ts +4 -2
  118. package/dist/commonjs/popup/lib/hooks/usePopupPopper.d.ts.map +1 -1
  119. package/dist/commonjs/popup/lib/hooks/usePopupTarget.d.ts +4 -2
  120. package/dist/commonjs/popup/lib/hooks/usePopupTarget.d.ts.map +1 -1
  121. package/dist/commonjs/tabs/index.d.ts +5 -0
  122. package/dist/commonjs/tabs/index.d.ts.map +1 -1
  123. package/dist/commonjs/tabs/index.js +11 -0
  124. package/dist/commonjs/tabs/lib/Tabs.d.ts +35 -7
  125. package/dist/commonjs/tabs/lib/Tabs.d.ts.map +1 -1
  126. package/dist/commonjs/tabs/lib/Tabs.js +28 -7
  127. package/dist/commonjs/tabs/lib/TabsItem.d.ts +107 -0
  128. package/dist/commonjs/tabs/lib/TabsItem.d.ts.map +1 -0
  129. package/dist/commonjs/tabs/lib/TabsItem.js +140 -0
  130. package/dist/commonjs/tabs/lib/TabsList.d.ts +43 -0
  131. package/dist/commonjs/tabs/lib/TabsList.d.ts.map +1 -0
  132. package/dist/commonjs/tabs/lib/TabsList.js +53 -0
  133. package/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts +21 -0
  134. package/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts.map +1 -0
  135. package/dist/commonjs/tabs/lib/{TabList.js → TabsMenuPopper.js} +7 -19
  136. package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts +31 -0
  137. package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
  138. package/dist/commonjs/tabs/lib/TabsOverflowButton.js +57 -0
  139. package/{ts3.5/dist/commonjs/tabs/lib/TabPanel.d.ts → dist/commonjs/tabs/lib/TabsPanel.d.ts} +39 -29
  140. package/dist/commonjs/tabs/lib/TabsPanel.d.ts.map +1 -0
  141. package/dist/commonjs/tabs/lib/TabsPanel.js +64 -0
  142. package/dist/{es6/tabs/lib/TabList.d.ts → commonjs/tabs/lib/TabsPanels.d.ts} +5 -5
  143. package/dist/commonjs/tabs/lib/TabsPanels.d.ts.map +1 -0
  144. package/dist/commonjs/tabs/lib/TabsPanels.js +21 -0
  145. package/dist/commonjs/tabs/lib/cursor/index.d.ts +1 -1
  146. package/dist/commonjs/tabs/lib/cursor/index.d.ts.map +1 -1
  147. package/dist/commonjs/tabs/lib/cursor/index.js +1 -1
  148. package/dist/commonjs/tabs/lib/cursor/useCursorModel.d.ts +23 -13
  149. package/dist/commonjs/tabs/lib/cursor/useCursorModel.d.ts.map +1 -1
  150. package/dist/commonjs/tabs/lib/cursor/useCursorModel.js +50 -49
  151. package/dist/commonjs/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
  152. package/dist/commonjs/tabs/lib/cursor/useRovingFocus.d.ts.map +1 -0
  153. package/dist/commonjs/tabs/lib/cursor/{hooks.js → useRovingFocus.js} +26 -50
  154. package/dist/commonjs/tabs/lib/list/index.d.ts +2 -1
  155. package/dist/commonjs/tabs/lib/list/index.d.ts.map +1 -1
  156. package/dist/commonjs/tabs/lib/list/index.js +2 -1
  157. package/dist/commonjs/tabs/lib/list/renderItem.d.ts +4 -0
  158. package/dist/commonjs/tabs/lib/list/renderItem.d.ts.map +1 -0
  159. package/dist/commonjs/tabs/lib/list/renderItem.js +18 -0
  160. package/dist/commonjs/tabs/lib/list/useListModel.d.ts +25 -13
  161. package/dist/commonjs/tabs/lib/list/useListModel.d.ts.map +1 -1
  162. package/dist/commonjs/tabs/lib/list/useListModel.js +20 -7
  163. package/dist/commonjs/tabs/lib/list/useListRegisterItem.d.ts +14 -0
  164. package/dist/commonjs/tabs/lib/list/useListRegisterItem.d.ts.map +1 -0
  165. package/dist/commonjs/tabs/lib/list/useListRegisterItem.js +46 -0
  166. package/dist/commonjs/tabs/lib/menu/Menu.d.ts +80 -0
  167. package/dist/commonjs/tabs/lib/menu/Menu.d.ts.map +1 -0
  168. package/dist/commonjs/tabs/lib/menu/Menu.js +94 -0
  169. package/dist/commonjs/tabs/lib/menu/MenuCard.d.ts +17 -0
  170. package/dist/commonjs/tabs/lib/menu/MenuCard.d.ts.map +1 -0
  171. package/dist/commonjs/tabs/lib/menu/MenuCard.js +82 -0
  172. package/dist/commonjs/tabs/lib/menu/MenuItem.d.ts +62 -0
  173. package/dist/commonjs/tabs/lib/menu/MenuItem.d.ts.map +1 -0
  174. package/dist/commonjs/tabs/lib/menu/MenuItem.js +145 -0
  175. package/dist/commonjs/tabs/lib/menu/MenuList.d.ts +23 -0
  176. package/dist/commonjs/tabs/lib/menu/MenuList.d.ts.map +1 -0
  177. package/dist/commonjs/tabs/lib/menu/MenuList.js +52 -0
  178. package/dist/commonjs/tabs/lib/menu/MenuPopper.d.ts +21 -0
  179. package/dist/commonjs/tabs/lib/menu/MenuPopper.d.ts.map +1 -0
  180. package/dist/commonjs/tabs/lib/menu/MenuPopper.js +45 -0
  181. package/dist/commonjs/tabs/lib/menu/MenuTarget.d.ts +21 -0
  182. package/dist/commonjs/tabs/lib/menu/MenuTarget.d.ts.map +1 -0
  183. package/dist/commonjs/tabs/lib/menu/MenuTarget.js +60 -0
  184. package/dist/commonjs/tabs/lib/menu/index.d.ts +8 -0
  185. package/dist/commonjs/tabs/lib/menu/index.d.ts.map +1 -0
  186. package/dist/commonjs/tabs/lib/menu/index.js +18 -0
  187. package/dist/commonjs/tabs/lib/menu/useMenuModel.d.ts +35 -0
  188. package/dist/commonjs/tabs/lib/menu/useMenuModel.d.ts.map +1 -0
  189. package/dist/commonjs/tabs/lib/menu/useMenuModel.js +33 -0
  190. package/dist/commonjs/tabs/lib/overflow/index.d.ts +5 -0
  191. package/dist/commonjs/tabs/lib/overflow/index.d.ts.map +1 -0
  192. package/dist/commonjs/tabs/lib/overflow/index.js +9 -0
  193. package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
  194. package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.d.ts.map +1 -0
  195. package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.js +22 -0
  196. package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
  197. package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.d.ts.map +1 -0
  198. package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.js +32 -0
  199. package/dist/commonjs/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
  200. package/dist/commonjs/tabs/lib/overflow/useOverflowModel.d.ts.map +1 -0
  201. package/dist/commonjs/tabs/lib/overflow/useOverflowModel.js +117 -0
  202. package/dist/commonjs/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
  203. package/dist/commonjs/tabs/lib/overflow/useOverflowTarget.d.ts.map +1 -0
  204. package/dist/commonjs/tabs/lib/overflow/useOverflowTarget.js +35 -0
  205. package/dist/commonjs/tabs/lib/selection/index.d.ts +4 -0
  206. package/dist/commonjs/tabs/lib/selection/index.d.ts.map +1 -0
  207. package/dist/commonjs/tabs/lib/selection/index.js +8 -0
  208. package/dist/commonjs/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
  209. package/dist/commonjs/tabs/lib/selection/useResetCursorOnBlur.d.ts.map +1 -0
  210. package/dist/commonjs/tabs/lib/{hooks.js → selection/useResetCursorOnBlur.js} +8 -9
  211. package/dist/commonjs/tabs/lib/selection/useSelectionItem.d.ts +8 -0
  212. package/dist/commonjs/tabs/lib/selection/useSelectionItem.d.ts.map +1 -0
  213. package/dist/commonjs/tabs/lib/selection/useSelectionItem.js +16 -0
  214. package/dist/commonjs/tabs/lib/selection/useSelectionModel.d.ts +62 -0
  215. package/dist/commonjs/tabs/lib/selection/useSelectionModel.d.ts.map +1 -0
  216. package/dist/commonjs/tabs/lib/selection/useSelectionModel.js +80 -0
  217. package/dist/commonjs/tabs/lib/useTabsModel.d.ts +39 -38
  218. package/dist/commonjs/tabs/lib/useTabsModel.d.ts.map +1 -1
  219. package/dist/commonjs/tabs/lib/useTabsModel.js +50 -37
  220. package/dist/commonjs/tokens/index.d.ts +3 -20
  221. package/dist/commonjs/tokens/index.d.ts.map +1 -1
  222. package/dist/commonjs/tokens/index.js +3 -6
  223. package/dist/commonjs/tokens/lib/depth.d.ts +109 -3
  224. package/dist/commonjs/tokens/lib/depth.d.ts.map +1 -1
  225. package/dist/commonjs/tokens/lib/depth.js +40 -5
  226. package/dist/commonjs/tooltip/lib/OverflowTooltip.d.ts +10 -0
  227. package/dist/commonjs/tooltip/lib/OverflowTooltip.d.ts.map +1 -1
  228. package/dist/commonjs/tooltip/lib/OverflowTooltip.js +19 -15
  229. package/dist/commonjs/tooltip/lib/useTooltip.d.ts +4 -4
  230. package/dist/commonjs/tooltip/lib/useTooltip.d.ts.map +1 -1
  231. package/dist/es6/action-bar/lib/ActionBar.d.ts.map +1 -1
  232. package/dist/es6/action-bar/lib/ActionBar.js +33 -22
  233. package/dist/es6/button/lib/PrimaryButton.d.ts +80 -6
  234. package/dist/es6/button/lib/PrimaryButton.d.ts.map +1 -1
  235. package/dist/es6/button/lib/PrimaryButton.js +81 -27
  236. package/dist/es6/button/lib/SecondaryButton.d.ts +8 -5
  237. package/dist/es6/button/lib/SecondaryButton.d.ts.map +1 -1
  238. package/dist/es6/button/lib/SecondaryButton.js +22 -12
  239. package/dist/es6/button/lib/TertiaryButton.d.ts +8 -4
  240. package/dist/es6/button/lib/TertiaryButton.d.ts.map +1 -1
  241. package/dist/es6/button/lib/TertiaryButton.js +25 -21
  242. package/dist/es6/button/lib/parts/ButtonContainer.d.ts +5 -3
  243. package/dist/es6/button/lib/parts/ButtonContainer.d.ts.map +1 -1
  244. package/dist/es6/button/lib/parts/ButtonContainer.js +7 -9
  245. package/dist/es6/button/lib/parts/ButtonLabel.d.ts +1 -1
  246. package/dist/es6/button/lib/parts/ButtonLabel.d.ts.map +1 -1
  247. package/dist/es6/button/lib/parts/ButtonLabelIcon.d.ts +7 -4
  248. package/dist/es6/button/lib/parts/ButtonLabelIcon.d.ts.map +1 -1
  249. package/dist/es6/button/lib/parts/ButtonLabelIcon.js +28 -13
  250. package/dist/es6/button/lib/types.d.ts +9 -0
  251. package/dist/es6/button/lib/types.d.ts.map +1 -1
  252. package/dist/es6/common/index.d.ts +1 -0
  253. package/dist/es6/common/index.d.ts.map +1 -1
  254. package/dist/es6/common/index.js +1 -0
  255. package/dist/es6/common/lib/EllipsisText.d.ts +5 -0
  256. package/dist/es6/common/lib/EllipsisText.d.ts.map +1 -0
  257. package/dist/es6/common/lib/EllipsisText.js +8 -0
  258. package/dist/es6/common/lib/styles/accessibleHide.d.ts +2 -2
  259. package/dist/es6/common/lib/styles/accessibleHide.d.ts.map +1 -1
  260. package/dist/es6/common/lib/theming/breakpoints.d.ts +287 -6
  261. package/dist/es6/common/lib/theming/breakpoints.d.ts.map +1 -1
  262. package/dist/es6/common/lib/theming/breakpoints.js +192 -10
  263. package/dist/es6/common/lib/theming/types.d.ts +191 -1
  264. package/dist/es6/common/lib/theming/types.d.ts.map +1 -1
  265. package/dist/es6/common/lib/utils/components.d.ts +19 -9
  266. package/dist/es6/common/lib/utils/components.d.ts.map +1 -1
  267. package/dist/es6/common/lib/utils/components.js +12 -2
  268. package/dist/es6/common/lib/utils/index.d.ts +1 -0
  269. package/dist/es6/common/lib/utils/index.d.ts.map +1 -1
  270. package/dist/es6/common/lib/utils/index.js +1 -0
  271. package/dist/es6/common/lib/utils/mergeProps.d.ts.map +1 -1
  272. package/dist/es6/common/lib/utils/mergeProps.js +5 -0
  273. package/dist/es6/common/lib/utils/useConstant.d.ts +9 -0
  274. package/dist/es6/common/lib/utils/useConstant.d.ts.map +1 -0
  275. package/dist/es6/common/lib/utils/useConstant.js +15 -0
  276. package/dist/es6/common/lib/utils/useResizeObserver.d.ts +3 -0
  277. package/dist/es6/common/lib/utils/useResizeObserver.d.ts.map +1 -0
  278. package/dist/es6/common/lib/utils/useResizeObserver.js +37 -0
  279. package/dist/es6/common/lib/utils/useUniqueId.d.ts.map +1 -1
  280. package/dist/es6/common/lib/utils/useUniqueId.js +3 -3
  281. package/dist/es6/cookie-banner/index.d.ts +3 -3
  282. package/dist/es6/cookie-banner/index.d.ts.map +1 -1
  283. package/dist/es6/cookie-banner/index.js +3 -3
  284. package/dist/es6/cookie-banner/lib/CookieBanner.d.ts +19 -2
  285. package/dist/es6/cookie-banner/lib/CookieBanner.d.ts.map +1 -1
  286. package/dist/es6/cookie-banner/lib/CookieBanner.js +19 -8
  287. package/dist/es6/dialog/lib/hooks/useDialogCard.d.ts +4 -16
  288. package/dist/es6/dialog/lib/hooks/useDialogCard.d.ts.map +1 -1
  289. package/dist/es6/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
  290. package/dist/es6/dialog/lib/hooks/useDialogPopper.d.ts.map +1 -1
  291. package/dist/es6/modal/lib/ModalOverlay.d.ts +4 -2
  292. package/dist/es6/modal/lib/ModalOverlay.d.ts.map +1 -1
  293. package/dist/es6/modal/lib/hooks/useModalCard.d.ts +4 -16
  294. package/dist/es6/modal/lib/hooks/useModalCard.d.ts.map +1 -1
  295. package/dist/es6/modal/lib/hooks/useModalHeading.d.ts +5 -17
  296. package/dist/es6/modal/lib/hooks/useModalHeading.d.ts.map +1 -1
  297. package/dist/es6/page-header/index.d.ts +3 -3
  298. package/dist/es6/page-header/index.d.ts.map +1 -1
  299. package/dist/es6/page-header/index.js +3 -3
  300. package/dist/es6/page-header/lib/PageHeader.d.ts +19 -2
  301. package/dist/es6/page-header/lib/PageHeader.d.ts.map +1 -1
  302. package/dist/es6/page-header/lib/PageHeader.js +18 -7
  303. package/dist/es6/pagination/lib/Pagination/GoTo/Label.d.ts +3 -0
  304. package/dist/es6/pagination/lib/Pagination/GoTo/Label.d.ts.map +1 -1
  305. package/dist/es6/pagination/lib/Pagination/PageList.d.ts +1 -1
  306. package/dist/es6/pagination/lib/Pagination/PageList.d.ts.map +1 -1
  307. package/dist/es6/pagination/lib/Pagination/Pagination.d.ts +5 -5
  308. package/dist/es6/pagination/lib/Pagination/common/List.d.ts +1 -1
  309. package/dist/es6/pagination/lib/Pagination/common/List.d.ts.map +1 -1
  310. package/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
  311. package/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.d.ts.map +1 -1
  312. package/dist/es6/pagination/lib/Pagination/common/utils/space.d.ts +28 -28
  313. package/dist/es6/pagination/lib/Pagination/types.d.ts +39 -0
  314. package/dist/es6/pagination/lib/Pagination/types.d.ts.map +1 -1
  315. package/dist/es6/pagination/lib/Pagination/usePaginationModel.d.ts +19 -0
  316. package/dist/es6/pagination/lib/Pagination/usePaginationModel.d.ts.map +1 -1
  317. package/dist/es6/popup/lib/PopupCard.d.ts.map +1 -1
  318. package/dist/es6/popup/lib/PopupCard.js +3 -4
  319. package/dist/es6/popup/lib/hooks/usePopupCard.d.ts +5 -2
  320. package/dist/es6/popup/lib/hooks/usePopupCard.d.ts.map +1 -1
  321. package/dist/es6/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
  322. package/dist/es6/popup/lib/hooks/usePopupCloseButton.d.ts.map +1 -1
  323. package/dist/es6/popup/lib/hooks/usePopupHeading.d.ts +5 -2
  324. package/dist/es6/popup/lib/hooks/usePopupHeading.d.ts.map +1 -1
  325. package/dist/es6/popup/lib/hooks/usePopupPopper.d.ts +4 -2
  326. package/dist/es6/popup/lib/hooks/usePopupPopper.d.ts.map +1 -1
  327. package/dist/es6/popup/lib/hooks/usePopupTarget.d.ts +4 -2
  328. package/dist/es6/popup/lib/hooks/usePopupTarget.d.ts.map +1 -1
  329. package/dist/es6/tabs/index.d.ts +5 -0
  330. package/dist/es6/tabs/index.d.ts.map +1 -1
  331. package/dist/es6/tabs/index.js +5 -0
  332. package/dist/es6/tabs/lib/Tabs.d.ts +35 -7
  333. package/dist/es6/tabs/lib/Tabs.d.ts.map +1 -1
  334. package/dist/es6/tabs/lib/Tabs.js +28 -7
  335. package/dist/es6/tabs/lib/TabsItem.d.ts +107 -0
  336. package/dist/es6/tabs/lib/TabsItem.d.ts.map +1 -0
  337. package/dist/es6/tabs/lib/TabsItem.js +131 -0
  338. package/dist/es6/tabs/lib/TabsList.d.ts +43 -0
  339. package/dist/es6/tabs/lib/TabsList.d.ts.map +1 -0
  340. package/dist/es6/tabs/lib/TabsList.js +44 -0
  341. package/dist/es6/tabs/lib/TabsMenuPopper.d.ts +21 -0
  342. package/dist/es6/tabs/lib/TabsMenuPopper.d.ts.map +1 -0
  343. package/dist/es6/tabs/lib/{TabList.js → TabsMenuPopper.js} +8 -20
  344. package/dist/es6/tabs/lib/TabsOverflowButton.d.ts +31 -0
  345. package/dist/es6/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
  346. package/dist/es6/tabs/lib/TabsOverflowButton.js +48 -0
  347. package/dist/{commonjs/tabs/lib/TabPanel.d.ts → es6/tabs/lib/TabsPanel.d.ts} +15 -5
  348. package/dist/es6/tabs/lib/TabsPanel.d.ts.map +1 -0
  349. package/dist/es6/tabs/lib/TabsPanel.js +59 -0
  350. package/{ts3.5/dist/commonjs/tabs/lib/TabList.d.ts → dist/es6/tabs/lib/TabsPanels.d.ts} +15 -15
  351. package/dist/es6/tabs/lib/TabsPanels.d.ts.map +1 -0
  352. package/dist/es6/tabs/lib/TabsPanels.js +12 -0
  353. package/dist/es6/tabs/lib/cursor/index.d.ts +1 -1
  354. package/dist/es6/tabs/lib/cursor/index.d.ts.map +1 -1
  355. package/dist/es6/tabs/lib/cursor/index.js +1 -1
  356. package/dist/es6/tabs/lib/cursor/useCursorModel.d.ts +23 -13
  357. package/dist/es6/tabs/lib/cursor/useCursorModel.d.ts.map +1 -1
  358. package/dist/es6/tabs/lib/cursor/useCursorModel.js +51 -50
  359. package/dist/es6/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
  360. package/dist/es6/tabs/lib/cursor/useRovingFocus.d.ts.map +1 -0
  361. package/dist/es6/tabs/lib/cursor/useRovingFocus.js +84 -0
  362. package/dist/es6/tabs/lib/list/index.d.ts +2 -1
  363. package/dist/es6/tabs/lib/list/index.d.ts.map +1 -1
  364. package/dist/es6/tabs/lib/list/index.js +2 -1
  365. package/dist/es6/tabs/lib/list/renderItem.d.ts +4 -0
  366. package/dist/es6/tabs/lib/list/renderItem.d.ts.map +1 -0
  367. package/dist/es6/tabs/lib/list/renderItem.js +12 -0
  368. package/dist/es6/tabs/lib/list/useListModel.d.ts +25 -13
  369. package/dist/es6/tabs/lib/list/useListModel.d.ts.map +1 -1
  370. package/dist/es6/tabs/lib/list/useListModel.js +21 -8
  371. package/dist/es6/tabs/lib/list/useListRegisterItem.d.ts +14 -0
  372. package/dist/es6/tabs/lib/list/useListRegisterItem.d.ts.map +1 -0
  373. package/dist/es6/tabs/lib/list/useListRegisterItem.js +41 -0
  374. package/dist/es6/tabs/lib/menu/Menu.d.ts +80 -0
  375. package/dist/es6/tabs/lib/menu/Menu.d.ts.map +1 -0
  376. package/dist/es6/tabs/lib/menu/Menu.js +89 -0
  377. package/dist/es6/tabs/lib/menu/MenuCard.d.ts +17 -0
  378. package/dist/es6/tabs/lib/menu/MenuCard.d.ts.map +1 -0
  379. package/dist/es6/tabs/lib/menu/MenuCard.js +73 -0
  380. package/dist/es6/tabs/lib/menu/MenuItem.d.ts +62 -0
  381. package/dist/es6/tabs/lib/menu/MenuItem.d.ts.map +1 -0
  382. package/dist/es6/tabs/lib/menu/MenuItem.js +136 -0
  383. package/dist/es6/tabs/lib/menu/MenuList.d.ts +23 -0
  384. package/dist/es6/tabs/lib/menu/MenuList.d.ts.map +1 -0
  385. package/dist/es6/tabs/lib/menu/MenuList.js +43 -0
  386. package/dist/es6/tabs/lib/menu/MenuPopper.d.ts +21 -0
  387. package/dist/es6/tabs/lib/menu/MenuPopper.d.ts.map +1 -0
  388. package/dist/es6/tabs/lib/menu/MenuPopper.js +36 -0
  389. package/dist/es6/tabs/lib/menu/MenuTarget.d.ts +21 -0
  390. package/dist/es6/tabs/lib/menu/MenuTarget.d.ts.map +1 -0
  391. package/dist/es6/tabs/lib/menu/MenuTarget.js +51 -0
  392. package/dist/es6/tabs/lib/menu/index.d.ts +8 -0
  393. package/dist/es6/tabs/lib/menu/index.d.ts.map +1 -0
  394. package/dist/es6/tabs/lib/menu/index.js +7 -0
  395. package/dist/es6/tabs/lib/menu/useMenuModel.d.ts +35 -0
  396. package/dist/es6/tabs/lib/menu/useMenuModel.d.ts.map +1 -0
  397. package/dist/es6/tabs/lib/menu/useMenuModel.js +31 -0
  398. package/dist/es6/tabs/lib/overflow/index.d.ts +5 -0
  399. package/dist/es6/tabs/lib/overflow/index.d.ts.map +1 -0
  400. package/dist/es6/tabs/lib/overflow/index.js +4 -0
  401. package/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
  402. package/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.d.ts.map +1 -0
  403. package/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.js +13 -0
  404. package/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
  405. package/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.d.ts.map +1 -0
  406. package/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.js +30 -0
  407. package/dist/es6/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
  408. package/dist/es6/tabs/lib/overflow/useOverflowModel.d.ts.map +1 -0
  409. package/dist/es6/tabs/lib/overflow/useOverflowModel.js +111 -0
  410. package/dist/es6/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
  411. package/dist/es6/tabs/lib/overflow/useOverflowTarget.d.ts.map +1 -0
  412. package/dist/es6/tabs/lib/overflow/useOverflowTarget.js +30 -0
  413. package/dist/es6/tabs/lib/selection/index.d.ts +4 -0
  414. package/dist/es6/tabs/lib/selection/index.d.ts.map +1 -0
  415. package/dist/es6/tabs/lib/selection/index.js +3 -0
  416. package/dist/es6/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
  417. package/dist/es6/tabs/lib/selection/useResetCursorOnBlur.d.ts.map +1 -0
  418. package/dist/es6/tabs/lib/{hooks.js → selection/useResetCursorOnBlur.js} +8 -9
  419. package/dist/es6/tabs/lib/selection/useSelectionItem.d.ts +8 -0
  420. package/dist/es6/tabs/lib/selection/useSelectionItem.d.ts.map +1 -0
  421. package/dist/es6/tabs/lib/selection/useSelectionItem.js +14 -0
  422. package/dist/es6/tabs/lib/selection/useSelectionModel.d.ts +62 -0
  423. package/dist/es6/tabs/lib/selection/useSelectionModel.d.ts.map +1 -0
  424. package/dist/es6/tabs/lib/selection/useSelectionModel.js +75 -0
  425. package/dist/es6/tabs/lib/useTabsModel.d.ts +39 -38
  426. package/dist/es6/tabs/lib/useTabsModel.d.ts.map +1 -1
  427. package/dist/es6/tabs/lib/useTabsModel.js +50 -37
  428. package/dist/es6/tokens/index.d.ts +3 -20
  429. package/dist/es6/tokens/index.d.ts.map +1 -1
  430. package/dist/es6/tokens/index.js +1 -1
  431. package/dist/es6/tokens/lib/depth.d.ts +109 -3
  432. package/dist/es6/tokens/lib/depth.d.ts.map +1 -1
  433. package/dist/es6/tokens/lib/depth.js +40 -2
  434. package/dist/es6/tooltip/lib/OverflowTooltip.d.ts +10 -0
  435. package/dist/es6/tooltip/lib/OverflowTooltip.d.ts.map +1 -1
  436. package/dist/es6/tooltip/lib/OverflowTooltip.js +16 -9
  437. package/dist/es6/tooltip/lib/useTooltip.d.ts +4 -4
  438. package/dist/es6/tooltip/lib/useTooltip.d.ts.map +1 -1
  439. package/package.json +7 -6
  440. package/page-header/README.md +11 -6
  441. package/page-header/index.ts +3 -3
  442. package/page-header/lib/PageHeader.tsx +28 -3
  443. package/pagination/lib/Pagination/GoTo/Label.tsx +3 -0
  444. package/pagination/lib/Pagination/types.ts +44 -5
  445. package/pagination/lib/Pagination/usePaginationModel.ts +19 -0
  446. package/popup/lib/PopupCard.tsx +3 -2
  447. package/tabs/README.md +5 -133
  448. package/tabs/index.ts +6 -0
  449. package/tabs/lib/Tabs.tsx +34 -9
  450. package/tabs/lib/TabsItem.tsx +250 -0
  451. package/tabs/lib/TabsList.tsx +67 -0
  452. package/tabs/lib/TabsMenuPopper.tsx +27 -0
  453. package/tabs/lib/TabsOverflowButton.tsx +58 -0
  454. package/tabs/lib/{TabPanel.tsx → TabsPanel.tsx} +33 -31
  455. package/tabs/lib/TabsPanels.tsx +28 -0
  456. package/tabs/lib/cursor/index.ts +1 -1
  457. package/tabs/lib/cursor/useCursorModel.tsx +78 -65
  458. package/tabs/lib/cursor/useRovingFocus.tsx +94 -0
  459. package/tabs/lib/list/index.ts +2 -1
  460. package/tabs/lib/list/renderItem.tsx +19 -0
  461. package/tabs/lib/list/useListModel.tsx +48 -23
  462. package/tabs/lib/list/useListRegisterItem.tsx +53 -0
  463. package/tabs/lib/menu/Menu.tsx +95 -0
  464. package/tabs/lib/menu/MenuCard.tsx +96 -0
  465. package/tabs/lib/menu/MenuItem.tsx +195 -0
  466. package/tabs/lib/menu/MenuList.tsx +59 -0
  467. package/tabs/lib/menu/MenuPopper.tsx +31 -0
  468. package/tabs/lib/menu/MenuTarget.tsx +52 -0
  469. package/tabs/lib/menu/index.ts +8 -0
  470. package/tabs/lib/menu/useMenuModel.tsx +67 -0
  471. package/tabs/lib/overflow/index.ts +4 -0
  472. package/tabs/lib/overflow/spec/tsconfig.json +3 -0
  473. package/tabs/lib/overflow/spec/useOverflowModel.spec.tsx +46 -0
  474. package/tabs/lib/overflow/useOverflowMeasureContainer.ts +20 -0
  475. package/tabs/lib/overflow/useOverflowMeasureItem.tsx +40 -0
  476. package/tabs/lib/overflow/useOverflowModel.tsx +185 -0
  477. package/tabs/lib/overflow/useOverflowTarget.tsx +42 -0
  478. package/tabs/lib/selection/index.ts +3 -0
  479. package/tabs/lib/selection/useResetCursorOnBlur.tsx +29 -0
  480. package/tabs/lib/selection/useSelectionItem.tsx +26 -0
  481. package/tabs/lib/selection/useSelectionModel.tsx +133 -0
  482. package/tabs/lib/useTabsModel.tsx +93 -78
  483. package/tokens/README.md +5 -12
  484. package/tokens/index.ts +2 -2
  485. package/tokens/lib/depth.ts +125 -3
  486. package/tooltip/lib/OverflowTooltip.tsx +23 -16
  487. package/tooltip/lib/useTooltip.tsx +5 -5
  488. package/ts3.5/dist/commonjs/button/lib/PrimaryButton.d.ts +80 -6
  489. package/ts3.5/dist/commonjs/button/lib/SecondaryButton.d.ts +8 -5
  490. package/ts3.5/dist/commonjs/button/lib/TertiaryButton.d.ts +8 -4
  491. package/ts3.5/dist/commonjs/button/lib/parts/ButtonContainer.d.ts +5 -3
  492. package/ts3.5/dist/commonjs/button/lib/parts/ButtonLabel.d.ts +1 -1
  493. package/ts3.5/dist/commonjs/button/lib/parts/ButtonLabelIcon.d.ts +7 -4
  494. package/ts3.5/dist/commonjs/button/lib/types.d.ts +9 -0
  495. package/ts3.5/dist/commonjs/common/index.d.ts +1 -0
  496. package/ts3.5/dist/commonjs/common/lib/EllipsisText.d.ts +5 -0
  497. package/ts3.5/dist/commonjs/common/lib/styles/accessibleHide.d.ts +2 -2
  498. package/ts3.5/dist/commonjs/common/lib/theming/breakpoints.d.ts +287 -6
  499. package/ts3.5/dist/commonjs/common/lib/theming/types.d.ts +191 -1
  500. package/ts3.5/dist/commonjs/common/lib/utils/components.d.ts +19 -9
  501. package/ts3.5/dist/commonjs/common/lib/utils/index.d.ts +1 -0
  502. package/ts3.5/dist/commonjs/common/lib/utils/useConstant.d.ts +9 -0
  503. package/ts3.5/dist/commonjs/common/lib/utils/useResizeObserver.d.ts +3 -0
  504. package/ts3.5/dist/commonjs/cookie-banner/index.d.ts +3 -3
  505. package/ts3.5/dist/commonjs/cookie-banner/lib/CookieBanner.d.ts +19 -2
  506. package/ts3.5/dist/commonjs/dialog/lib/hooks/useDialogCard.d.ts +4 -16
  507. package/ts3.5/dist/commonjs/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
  508. package/ts3.5/dist/commonjs/modal/lib/ModalOverlay.d.ts +4 -2
  509. package/ts3.5/dist/commonjs/modal/lib/hooks/useModalCard.d.ts +4 -16
  510. package/ts3.5/dist/commonjs/modal/lib/hooks/useModalHeading.d.ts +5 -17
  511. package/ts3.5/dist/commonjs/page-header/index.d.ts +3 -3
  512. package/ts3.5/dist/commonjs/page-header/lib/PageHeader.d.ts +19 -2
  513. package/ts3.5/dist/commonjs/pagination/lib/Pagination/GoTo/Label.d.ts +3 -0
  514. package/ts3.5/dist/commonjs/pagination/lib/Pagination/PageList.d.ts +1 -1
  515. package/ts3.5/dist/commonjs/pagination/lib/Pagination/Pagination.d.ts +5 -5
  516. package/ts3.5/dist/commonjs/pagination/lib/Pagination/common/List.d.ts +1 -1
  517. package/ts3.5/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
  518. package/ts3.5/dist/commonjs/pagination/lib/Pagination/common/utils/space.d.ts +28 -28
  519. package/ts3.5/dist/commonjs/pagination/lib/Pagination/types.d.ts +39 -0
  520. package/ts3.5/dist/commonjs/pagination/lib/Pagination/usePaginationModel.d.ts +19 -0
  521. package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupCard.d.ts +5 -2
  522. package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
  523. package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupHeading.d.ts +5 -2
  524. package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupPopper.d.ts +4 -2
  525. package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupTarget.d.ts +4 -2
  526. package/ts3.5/dist/commonjs/tabs/index.d.ts +5 -0
  527. package/ts3.5/dist/commonjs/tabs/lib/Tabs.d.ts +35 -7
  528. package/ts3.5/dist/commonjs/tabs/lib/TabsItem.d.ts +107 -0
  529. package/ts3.5/dist/commonjs/tabs/lib/TabsList.d.ts +43 -0
  530. package/ts3.5/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts +21 -0
  531. package/ts3.5/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts +31 -0
  532. package/{dist/es6/tabs/lib/TabPanel.d.ts → ts3.5/dist/commonjs/tabs/lib/TabsPanel.d.ts} +39 -29
  533. package/ts3.5/dist/{es6/tabs/lib/TabList.d.ts → commonjs/tabs/lib/TabsPanels.d.ts} +5 -5
  534. package/ts3.5/dist/commonjs/tabs/lib/cursor/index.d.ts +1 -1
  535. package/ts3.5/dist/commonjs/tabs/lib/cursor/useCursorModel.d.ts +23 -13
  536. package/ts3.5/dist/commonjs/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
  537. package/ts3.5/dist/commonjs/tabs/lib/list/index.d.ts +2 -1
  538. package/ts3.5/dist/commonjs/tabs/lib/list/renderItem.d.ts +4 -0
  539. package/ts3.5/dist/commonjs/tabs/lib/list/useListModel.d.ts +25 -13
  540. package/ts3.5/dist/commonjs/tabs/lib/list/useListRegisterItem.d.ts +14 -0
  541. package/ts3.5/dist/commonjs/tabs/lib/menu/Menu.d.ts +80 -0
  542. package/ts3.5/dist/commonjs/tabs/lib/menu/MenuCard.d.ts +17 -0
  543. package/ts3.5/dist/commonjs/tabs/lib/menu/MenuItem.d.ts +62 -0
  544. package/ts3.5/dist/commonjs/tabs/lib/menu/MenuList.d.ts +23 -0
  545. package/ts3.5/dist/commonjs/tabs/lib/menu/MenuPopper.d.ts +21 -0
  546. package/ts3.5/dist/commonjs/tabs/lib/menu/MenuTarget.d.ts +21 -0
  547. package/ts3.5/dist/commonjs/tabs/lib/menu/index.d.ts +8 -0
  548. package/ts3.5/dist/commonjs/tabs/lib/menu/useMenuModel.d.ts +35 -0
  549. package/ts3.5/dist/commonjs/tabs/lib/overflow/index.d.ts +5 -0
  550. package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
  551. package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
  552. package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
  553. package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
  554. package/ts3.5/dist/commonjs/tabs/lib/selection/index.d.ts +4 -0
  555. package/ts3.5/dist/commonjs/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
  556. package/ts3.5/dist/commonjs/tabs/lib/selection/useSelectionItem.d.ts +8 -0
  557. package/ts3.5/dist/commonjs/tabs/lib/selection/useSelectionModel.d.ts +62 -0
  558. package/ts3.5/dist/commonjs/tabs/lib/useTabsModel.d.ts +39 -38
  559. package/ts3.5/dist/commonjs/tokens/index.d.ts +3 -20
  560. package/ts3.5/dist/commonjs/tokens/lib/depth.d.ts +109 -3
  561. package/ts3.5/dist/commonjs/tooltip/lib/OverflowTooltip.d.ts +10 -0
  562. package/ts3.5/dist/commonjs/tooltip/lib/useTooltip.d.ts +4 -4
  563. package/ts3.5/dist/es6/button/lib/PrimaryButton.d.ts +80 -6
  564. package/ts3.5/dist/es6/button/lib/SecondaryButton.d.ts +8 -5
  565. package/ts3.5/dist/es6/button/lib/TertiaryButton.d.ts +8 -4
  566. package/ts3.5/dist/es6/button/lib/parts/ButtonContainer.d.ts +5 -3
  567. package/ts3.5/dist/es6/button/lib/parts/ButtonLabel.d.ts +1 -1
  568. package/ts3.5/dist/es6/button/lib/parts/ButtonLabelIcon.d.ts +7 -4
  569. package/ts3.5/dist/es6/button/lib/types.d.ts +9 -0
  570. package/ts3.5/dist/es6/common/index.d.ts +1 -0
  571. package/ts3.5/dist/es6/common/lib/EllipsisText.d.ts +5 -0
  572. package/ts3.5/dist/es6/common/lib/styles/accessibleHide.d.ts +2 -2
  573. package/ts3.5/dist/es6/common/lib/theming/breakpoints.d.ts +287 -6
  574. package/ts3.5/dist/es6/common/lib/theming/types.d.ts +191 -1
  575. package/ts3.5/dist/es6/common/lib/utils/components.d.ts +19 -9
  576. package/ts3.5/dist/es6/common/lib/utils/index.d.ts +1 -0
  577. package/ts3.5/dist/es6/common/lib/utils/useConstant.d.ts +9 -0
  578. package/ts3.5/dist/es6/common/lib/utils/useResizeObserver.d.ts +3 -0
  579. package/ts3.5/dist/es6/cookie-banner/index.d.ts +3 -3
  580. package/ts3.5/dist/es6/cookie-banner/lib/CookieBanner.d.ts +19 -2
  581. package/ts3.5/dist/es6/dialog/lib/hooks/useDialogCard.d.ts +4 -16
  582. package/ts3.5/dist/es6/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
  583. package/ts3.5/dist/es6/modal/lib/ModalOverlay.d.ts +4 -2
  584. package/ts3.5/dist/es6/modal/lib/hooks/useModalCard.d.ts +4 -16
  585. package/ts3.5/dist/es6/modal/lib/hooks/useModalHeading.d.ts +5 -17
  586. package/ts3.5/dist/es6/page-header/index.d.ts +3 -3
  587. package/ts3.5/dist/es6/page-header/lib/PageHeader.d.ts +19 -2
  588. package/ts3.5/dist/es6/pagination/lib/Pagination/GoTo/Label.d.ts +3 -0
  589. package/ts3.5/dist/es6/pagination/lib/Pagination/PageList.d.ts +1 -1
  590. package/ts3.5/dist/es6/pagination/lib/Pagination/Pagination.d.ts +5 -5
  591. package/ts3.5/dist/es6/pagination/lib/Pagination/common/List.d.ts +1 -1
  592. package/ts3.5/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
  593. package/ts3.5/dist/es6/pagination/lib/Pagination/common/utils/space.d.ts +28 -28
  594. package/ts3.5/dist/es6/pagination/lib/Pagination/types.d.ts +39 -0
  595. package/ts3.5/dist/es6/pagination/lib/Pagination/usePaginationModel.d.ts +19 -0
  596. package/ts3.5/dist/es6/popup/lib/hooks/usePopupCard.d.ts +5 -2
  597. package/ts3.5/dist/es6/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
  598. package/ts3.5/dist/es6/popup/lib/hooks/usePopupHeading.d.ts +5 -2
  599. package/ts3.5/dist/es6/popup/lib/hooks/usePopupPopper.d.ts +4 -2
  600. package/ts3.5/dist/es6/popup/lib/hooks/usePopupTarget.d.ts +4 -2
  601. package/ts3.5/dist/es6/tabs/index.d.ts +5 -0
  602. package/ts3.5/dist/es6/tabs/lib/Tabs.d.ts +35 -7
  603. package/ts3.5/dist/es6/tabs/lib/TabsItem.d.ts +107 -0
  604. package/ts3.5/dist/es6/tabs/lib/TabsList.d.ts +43 -0
  605. package/ts3.5/dist/es6/tabs/lib/TabsMenuPopper.d.ts +21 -0
  606. package/ts3.5/dist/es6/tabs/lib/TabsOverflowButton.d.ts +31 -0
  607. package/ts3.5/dist/es6/tabs/lib/{TabPanel.d.ts → TabsPanel.d.ts} +15 -5
  608. package/{dist/commonjs/tabs/lib/TabList.d.ts → ts3.5/dist/es6/tabs/lib/TabsPanels.d.ts} +15 -15
  609. package/ts3.5/dist/es6/tabs/lib/cursor/index.d.ts +1 -1
  610. package/ts3.5/dist/es6/tabs/lib/cursor/useCursorModel.d.ts +23 -13
  611. package/ts3.5/dist/es6/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
  612. package/ts3.5/dist/es6/tabs/lib/list/index.d.ts +2 -1
  613. package/ts3.5/dist/es6/tabs/lib/list/renderItem.d.ts +4 -0
  614. package/ts3.5/dist/es6/tabs/lib/list/useListModel.d.ts +25 -13
  615. package/ts3.5/dist/es6/tabs/lib/list/useListRegisterItem.d.ts +14 -0
  616. package/ts3.5/dist/es6/tabs/lib/menu/Menu.d.ts +80 -0
  617. package/ts3.5/dist/es6/tabs/lib/menu/MenuCard.d.ts +17 -0
  618. package/ts3.5/dist/es6/tabs/lib/menu/MenuItem.d.ts +62 -0
  619. package/ts3.5/dist/es6/tabs/lib/menu/MenuList.d.ts +23 -0
  620. package/ts3.5/dist/es6/tabs/lib/menu/MenuPopper.d.ts +21 -0
  621. package/ts3.5/dist/es6/tabs/lib/menu/MenuTarget.d.ts +21 -0
  622. package/ts3.5/dist/es6/tabs/lib/menu/index.d.ts +8 -0
  623. package/ts3.5/dist/es6/tabs/lib/menu/useMenuModel.d.ts +35 -0
  624. package/ts3.5/dist/es6/tabs/lib/overflow/index.d.ts +5 -0
  625. package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
  626. package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
  627. package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
  628. package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
  629. package/ts3.5/dist/es6/tabs/lib/selection/index.d.ts +4 -0
  630. package/ts3.5/dist/es6/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
  631. package/ts3.5/dist/es6/tabs/lib/selection/useSelectionItem.d.ts +8 -0
  632. package/ts3.5/dist/es6/tabs/lib/selection/useSelectionModel.d.ts +62 -0
  633. package/ts3.5/dist/es6/tabs/lib/useTabsModel.d.ts +39 -38
  634. package/ts3.5/dist/es6/tokens/index.d.ts +3 -20
  635. package/ts3.5/dist/es6/tokens/lib/depth.d.ts +109 -3
  636. package/ts3.5/dist/es6/tooltip/lib/OverflowTooltip.d.ts +10 -0
  637. package/ts3.5/dist/es6/tooltip/lib/useTooltip.d.ts +4 -4
  638. package/dist/commonjs/tabs/lib/Tab.d.ts +0 -49
  639. package/dist/commonjs/tabs/lib/Tab.d.ts.map +0 -1
  640. package/dist/commonjs/tabs/lib/Tab.js +0 -101
  641. package/dist/commonjs/tabs/lib/TabList.d.ts.map +0 -1
  642. package/dist/commonjs/tabs/lib/TabPanel.d.ts.map +0 -1
  643. package/dist/commonjs/tabs/lib/TabPanel.js +0 -56
  644. package/dist/commonjs/tabs/lib/cursor/hooks.d.ts +0 -39
  645. package/dist/commonjs/tabs/lib/cursor/hooks.d.ts.map +0 -1
  646. package/dist/commonjs/tabs/lib/hooks.d.ts +0 -10
  647. package/dist/commonjs/tabs/lib/hooks.d.ts.map +0 -1
  648. package/dist/commonjs/tabs/lib/list/hooks.d.ts +0 -11
  649. package/dist/commonjs/tabs/lib/list/hooks.d.ts.map +0 -1
  650. package/dist/commonjs/tabs/lib/list/hooks.js +0 -39
  651. package/dist/es6/tabs/lib/Tab.d.ts +0 -49
  652. package/dist/es6/tabs/lib/Tab.d.ts.map +0 -1
  653. package/dist/es6/tabs/lib/Tab.js +0 -92
  654. package/dist/es6/tabs/lib/TabList.d.ts.map +0 -1
  655. package/dist/es6/tabs/lib/TabPanel.d.ts.map +0 -1
  656. package/dist/es6/tabs/lib/TabPanel.js +0 -51
  657. package/dist/es6/tabs/lib/cursor/hooks.d.ts +0 -39
  658. package/dist/es6/tabs/lib/cursor/hooks.d.ts.map +0 -1
  659. package/dist/es6/tabs/lib/cursor/hooks.js +0 -108
  660. package/dist/es6/tabs/lib/hooks.d.ts +0 -10
  661. package/dist/es6/tabs/lib/hooks.d.ts.map +0 -1
  662. package/dist/es6/tabs/lib/list/hooks.d.ts +0 -11
  663. package/dist/es6/tabs/lib/list/hooks.d.ts.map +0 -1
  664. package/dist/es6/tabs/lib/list/hooks.js +0 -34
  665. package/tabs/lib/Tab.tsx +0 -176
  666. package/tabs/lib/TabList.tsx +0 -59
  667. package/tabs/lib/cursor/hooks.tsx +0 -122
  668. package/tabs/lib/hooks.tsx +0 -31
  669. package/tabs/lib/list/hooks.tsx +0 -45
  670. package/ts3.5/dist/commonjs/tabs/lib/Tab.d.ts +0 -49
  671. package/ts3.5/dist/commonjs/tabs/lib/cursor/hooks.d.ts +0 -39
  672. package/ts3.5/dist/commonjs/tabs/lib/hooks.d.ts +0 -10
  673. package/ts3.5/dist/commonjs/tabs/lib/list/hooks.d.ts +0 -11
  674. package/ts3.5/dist/es6/tabs/lib/Tab.d.ts +0 -49
  675. package/ts3.5/dist/es6/tabs/lib/cursor/hooks.d.ts +0 -39
  676. package/ts3.5/dist/es6/tabs/lib/hooks.d.ts +0 -10
  677. package/ts3.5/dist/es6/tabs/lib/list/hooks.d.ts +0 -11
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import styled from '@emotion/styled';
3
- import {colors, commonColors, space} from '@workday/canvas-kit-react/tokens';
2
+ import {styled} from '@workday/canvas-kit-react/common';
3
+ import {colors, commonColors, space, CSSProperties} from '@workday/canvas-kit-react/tokens';
4
4
 
5
5
  export interface ActionBarProps extends React.HTMLAttributes<HTMLDivElement> {
6
6
  /**
@@ -10,45 +10,58 @@ export interface ActionBarProps extends React.HTMLAttributes<HTMLDivElement> {
10
10
  fixed?: boolean;
11
11
  }
12
12
 
13
- const ActionBarContainer = styled('div')(
13
+ function getFixedStyles(fixed = false): CSSProperties {
14
+ return fixed
15
+ ? {
16
+ position: 'fixed',
17
+ left: 0,
18
+ bottom: 0,
19
+ right: 0,
20
+ }
21
+ : {};
22
+ }
23
+
24
+ const ActionBarContainer = styled('div')<ActionBarProps>(
14
25
  {
15
26
  borderTop: `solid 1px ${colors.soap400}`,
16
27
  background: commonColors.background,
17
28
  padding: space.s,
18
29
  boxShadow: '0 -2px 4px rgba(0, 0, 0, 0.08)',
19
- '@media (max-width: 575px)': {
20
- padding: space.xxs,
21
- },
22
30
  },
23
- ({fixed}: ActionBarProps) =>
24
- fixed && {
25
- position: 'fixed',
26
- left: 0,
27
- bottom: 0,
28
- right: 0,
29
- }
31
+ ({fixed, theme}) => {
32
+ return {
33
+ ...getFixedStyles(fixed),
34
+ [theme.canvas.breakpoints.down('s')]: {
35
+ padding: space.xxs,
36
+ },
37
+ };
38
+ }
30
39
  );
31
40
 
32
- const ChildrenContainer = styled('div')({
33
- display: 'inline-block',
34
- padding: `0 ${space.m}`,
35
- '*:not(:first-of-type)': {
36
- marginLeft: space.s,
41
+ const ChildrenContainer = styled('div')(
42
+ {
43
+ display: 'inline-block',
44
+ padding: `0 ${space.m}`,
45
+ '*:not(:first-of-type)': {
46
+ marginLeft: space.s,
47
+ },
37
48
  },
38
- '@media (max-width: 575px)': {
39
- display: 'flex',
40
- padding: space.xxs,
41
- justifyContent: 'center',
42
- flexDirection: 'row-reverse',
43
- '> *': {
44
- flex: 1,
45
- '&:not(:first-of-type)': {
46
- marginRight: space.s,
47
- marginLeft: 0,
49
+ ({theme}) => ({
50
+ [theme.canvas.breakpoints.down('s')]: {
51
+ display: 'flex',
52
+ padding: space.xxs,
53
+ justifyContent: 'center',
54
+ flexDirection: 'row-reverse',
55
+ '> *': {
56
+ flex: 1,
57
+ '&:not(:first-of-type)': {
58
+ marginRight: space.s,
59
+ marginLeft: 0,
60
+ },
48
61
  },
49
62
  },
50
- },
51
- });
63
+ })
64
+ );
52
65
 
53
66
  export default class ActionBar extends React.Component<ActionBarProps> {
54
67
  public render() {
@@ -6,17 +6,27 @@ import {
6
6
  Themeable,
7
7
  EmotionCanvasTheme,
8
8
  createComponent,
9
+ focusRing,
9
10
  } from '@workday/canvas-kit-react/common';
11
+ import {colors} from '@workday/canvas-kit-react/tokens';
10
12
  import {CanvasSystemIcon} from '@workday/design-assets-types';
11
- import {ButtonColors} from './types';
13
+
12
14
  import {ButtonContainer, ButtonLabel, ButtonLabelData, ButtonLabelIcon} from './parts';
15
+ import {ButtonSizes, IconPositions} from './types';
13
16
 
14
17
  export interface PrimaryButtonProps extends Themeable, GrowthBehavior {
15
18
  /**
16
- * The size of the Button.
19
+ * The variant of the PrimaryButton.
20
+ * @default undefined
21
+ */
22
+ variant?: 'inverse';
23
+ /**
24
+ * There are four button sizes: `extraSmall`, `small`, `medium`, and `large`.
25
+ * If no size is provided, it will default to `medium`.
26
+ *
17
27
  * @default 'medium'
18
28
  */
19
- size?: 'small' | 'medium' | 'large';
29
+ size?: ButtonSizes;
20
30
  /**
21
31
  * The data label of the Button.
22
32
  * Note: not displayed at `small` size
@@ -28,10 +38,11 @@ export interface PrimaryButtonProps extends Themeable, GrowthBehavior {
28
38
  */
29
39
  icon?: CanvasSystemIcon;
30
40
  /**
31
- * The position of the TertiaryButton icon.
41
+ * Button icon positions can either be `left` or `right`.
42
+ * If no value is provided, it defaults to `left`.
32
43
  * @default 'left'
33
44
  */
34
- iconPosition?: 'left' | 'right';
45
+ iconPosition?: IconPositions;
35
46
  /**
36
47
  * If set to `true`, transform the icon's x-axis to mirror the graphic
37
48
  * @default false
@@ -40,6 +51,16 @@ export interface PrimaryButtonProps extends Themeable, GrowthBehavior {
40
51
  children?: React.ReactNode;
41
52
  }
42
53
 
54
+ // Button sizes where data labels are enabled
55
+ const dataLabelSizes = ['medium', 'large'];
56
+ // All disabled buttons are set to 40% opacity.
57
+ // This will eventually live in the ButtonContainer styles, but for now we're scoping it to Primary, Secondary, and Tertiary buttons.
58
+ const disabledButtonOpacity = {
59
+ '&:disabled, &:disabled:active': {
60
+ opacity: 0.4,
61
+ },
62
+ };
63
+
43
64
  export const PrimaryButton = createComponent('button')({
44
65
  displayName: 'PrimaryButton',
45
66
  Component: (
@@ -49,6 +70,7 @@ export const PrimaryButton = createComponent('button')({
49
70
  theme = useTheme(),
50
71
  size = 'medium',
51
72
  iconPosition = 'left',
73
+ variant,
52
74
  dataLabel,
53
75
  icon,
54
76
  shouldMirrorIcon = false,
@@ -61,11 +83,12 @@ export const PrimaryButton = createComponent('button')({
61
83
  <ButtonContainer
62
84
  ref={ref}
63
85
  as={Element}
64
- colors={getPrimaryButtonColors(theme)}
86
+ colors={getPrimaryButtonColors(variant, theme)}
65
87
  size={size}
88
+ extraStyles={disabledButtonOpacity}
66
89
  {...elemProps}
67
90
  >
68
- {icon && size !== 'small' && iconPosition === 'left' && (
91
+ {icon && iconPosition === 'left' && (
69
92
  <ButtonLabelIcon
70
93
  size={size}
71
94
  iconPosition={iconPosition}
@@ -74,8 +97,8 @@ export const PrimaryButton = createComponent('button')({
74
97
  />
75
98
  )}
76
99
  <ButtonLabel>{children}</ButtonLabel>
77
- {dataLabel && size !== 'small' && <ButtonLabelData>{dataLabel}</ButtonLabelData>}
78
- {icon && size !== 'small' && iconPosition === 'right' && (
100
+ {dataLabel && dataLabelSizes.includes(size) && <ButtonLabelData>{dataLabel}</ButtonLabelData>}
101
+ {icon && iconPosition === 'right' && (
79
102
  <ButtonLabelIcon
80
103
  size={size}
81
104
  iconPosition={iconPosition}
@@ -87,26 +110,81 @@ export const PrimaryButton = createComponent('button')({
87
110
  ),
88
111
  });
89
112
 
90
- export const getPrimaryButtonColors = ({
91
- canvas: {
92
- palette: {primary: themePrimary},
93
- },
94
- }: EmotionCanvasTheme): ButtonColors => ({
95
- default: {
96
- background: themePrimary.main,
97
- icon: themePrimary.contrast,
98
- label: themePrimary.contrast,
99
- },
100
- hover: {
101
- background: themePrimary.dark,
102
- },
103
- active: {
104
- background: themePrimary.darkest,
105
- },
106
- focus: {
107
- background: themePrimary.main,
108
- },
109
- disabled: {
110
- background: themePrimary.light,
111
- },
112
- });
113
+ export const getPrimaryButtonColors = (
114
+ variant: 'inverse' | undefined,
115
+ theme: EmotionCanvasTheme
116
+ ) => {
117
+ const {
118
+ canvas: {
119
+ palette: {primary: themePrimary},
120
+ },
121
+ } = theme;
122
+
123
+ switch (variant) {
124
+ case undefined:
125
+ default:
126
+ return {
127
+ default: {
128
+ background: themePrimary.main,
129
+ icon: themePrimary.contrast,
130
+ label: themePrimary.contrast,
131
+ },
132
+ hover: {
133
+ background: themePrimary.dark,
134
+ },
135
+ active: {
136
+ background: themePrimary.darkest,
137
+ },
138
+ focus: {
139
+ background: themePrimary.main,
140
+ },
141
+ disabled: {
142
+ background: themePrimary.main,
143
+ },
144
+ };
145
+
146
+ case 'inverse':
147
+ return {
148
+ default: {
149
+ background: colors.frenchVanilla100,
150
+ icon: colors.blackPepper400,
151
+ label: colors.blackPepper400,
152
+ labelData: colors.blackPepper400,
153
+ },
154
+ hover: {
155
+ background: colors.soap300,
156
+ icon: colors.blackPepper500,
157
+ label: colors.blackPepper500,
158
+ labelData: colors.blackPepper500,
159
+ },
160
+ active: {
161
+ background: colors.soap300,
162
+ icon: colors.blackPepper500,
163
+ label: colors.blackPepper500,
164
+ labelData: colors.blackPepper500,
165
+ },
166
+ focus: {
167
+ background: colors.frenchVanilla100,
168
+ border: colors.blackPepper400,
169
+ icon: colors.blackPepper400,
170
+ label: colors.blackPepper400,
171
+ labelData: colors.blackPepper400,
172
+ focusRing: focusRing(
173
+ {
174
+ separation: 1,
175
+ innerColor: colors.blackPepper500,
176
+ outerColor: colors.frenchVanilla100,
177
+ },
178
+ theme
179
+ ),
180
+ },
181
+ // Identical to inverse 'default' styles. ButtonContainer will set opacity to 40%
182
+ disabled: {
183
+ background: colors.frenchVanilla100,
184
+ icon: colors.blackPepper400,
185
+ label: colors.blackPepper400,
186
+ labelData: colors.blackPepper400,
187
+ },
188
+ };
189
+ }
190
+ };
@@ -10,7 +10,7 @@ import {
10
10
  focusRing,
11
11
  } from '@workday/canvas-kit-react/common';
12
12
  import {CanvasSystemIcon} from '@workday/design-assets-types';
13
- import {ButtonColors} from './types';
13
+ import {ButtonColors, ButtonSizes, IconPositions} from './types';
14
14
  import {ButtonContainer, ButtonLabel, ButtonLabelData, ButtonLabelIcon} from './parts';
15
15
 
16
16
  export interface SecondaryButtonProps extends Themeable, GrowthBehavior {
@@ -20,10 +20,12 @@ export interface SecondaryButtonProps extends Themeable, GrowthBehavior {
20
20
  */
21
21
  variant?: 'inverse' | undefined;
22
22
  /**
23
- * The size of the Button.
23
+ * There are four button sizes: `extraSmall`, `small`, `medium`, and `large`.
24
+ * If no size is provided, it will default to `medium`.
25
+ *
24
26
  * @default 'medium'
25
27
  */
26
- size?: 'small' | 'medium' | 'large';
28
+ size?: ButtonSizes;
27
29
  /**
28
30
  * The data label of the Button.
29
31
  * Note: not displayed at `small` size
@@ -35,10 +37,11 @@ export interface SecondaryButtonProps extends Themeable, GrowthBehavior {
35
37
  */
36
38
  icon?: CanvasSystemIcon;
37
39
  /**
38
- * The position of the TertiaryButton icon.
40
+ * Button icon positions can either be `left` or `right`.
41
+ * If no value is provided, it defaults to `left`.
39
42
  * @default 'left'
40
43
  */
41
- iconPosition?: 'left' | 'right';
44
+ iconPosition?: IconPositions;
42
45
  /**
43
46
  * If set to `true`, transform the icon's x-axis to mirror the graphic
44
47
  * @default false
@@ -47,6 +50,16 @@ export interface SecondaryButtonProps extends Themeable, GrowthBehavior {
47
50
  children?: React.ReactNode;
48
51
  }
49
52
 
53
+ // Button sizes where data labels are enabled
54
+ const dataLabelSizes = ['medium', 'large'];
55
+ // All disabled buttons are set to 40% opacity.
56
+ // This will eventually live in the ButtonContainer styles, but for now we're scoping it to Primary, Secondary, and Tertiary buttons.
57
+ const disabledButtonOpacity = {
58
+ '&:disabled, &:disabled:active': {
59
+ opacity: 0.4,
60
+ },
61
+ };
62
+
50
63
  export const SecondaryButton = createComponent('button')({
51
64
  displayName: 'SecondaryButton',
52
65
  Component: (
@@ -71,9 +84,10 @@ export const SecondaryButton = createComponent('button')({
71
84
  as={Element}
72
85
  colors={getSecondaryButtonColors(variant, theme)}
73
86
  size={size}
87
+ extraStyles={disabledButtonOpacity}
74
88
  {...elemProps}
75
89
  >
76
- {icon && size !== 'small' && iconPosition === 'left' && (
90
+ {icon && iconPosition === 'left' && (
77
91
  <ButtonLabelIcon
78
92
  size={size}
79
93
  iconPosition={iconPosition}
@@ -82,8 +96,8 @@ export const SecondaryButton = createComponent('button')({
82
96
  />
83
97
  )}
84
98
  <ButtonLabel>{children}</ButtonLabel>
85
- {dataLabel && size !== 'small' && <ButtonLabelData>{dataLabel}</ButtonLabelData>}
86
- {icon && size !== 'small' && iconPosition === 'right' && (
99
+ {dataLabel && dataLabelSizes.includes(size) && <ButtonLabelData>{dataLabel}</ButtonLabelData>}
100
+ {icon && iconPosition === 'right' && (
87
101
  <ButtonLabelIcon
88
102
  size={size}
89
103
  iconPosition={iconPosition}
@@ -136,12 +150,13 @@ export const getSecondaryButtonColors = (
136
150
  label: colors.blackPepper400,
137
151
  labelData: colors.blackPepper400,
138
152
  },
153
+ // Identical to 'default' styles. ButtonContainer will set opacity to 40%
139
154
  disabled: {
140
155
  background: 'transparent',
141
- border: 'rgba(30, 30, 30, 0.4)', // Black Pepper 400 @ 40%
142
- icon: 'rgba(30, 30, 30, 0.4)', // Black Pepper 400 @ 40%
143
- label: 'rgba(30, 30, 30, 0.4)', // Black Pepper 400 @ 40%
144
- labelData: 'rgba(30, 30, 30, 0.4)', // Black Pepper 400 @ 40%
156
+ border: colors.blackPepper400,
157
+ icon: colors.blackPepper400,
158
+ label: colors.blackPepper400,
159
+ labelData: colors.blackPepper400,
145
160
  },
146
161
  };
147
162
  case 'inverse':
@@ -180,12 +195,12 @@ export const getSecondaryButtonColors = (
180
195
  theme
181
196
  ),
182
197
  },
198
+ // Identical to inverse 'default' styles. ButtonContainer will set opacity to 40%
183
199
  disabled: {
184
200
  background: 'transparent',
185
- border: 'rgba(255, 255, 255, 0.4)', // French Vanilla 400 @ 40%
186
- icon: 'rgba(255, 255, 255, 0.4)', // French Vanilla 400 @ 40%
187
- label: 'rgba(255, 255, 255, 0.4)', // French Vanilla 400 @ 40%
188
- labelData: 'rgba(255, 255, 255, 0.4)', // French Vanilla 400 @ 40%
201
+ border: colors.frenchVanilla100,
202
+ icon: colors.frenchVanilla100,
203
+ label: colors.frenchVanilla100,
189
204
  },
190
205
  };
191
206
  }
@@ -7,9 +7,9 @@ import {
7
7
  EmotionCanvasTheme,
8
8
  createComponent,
9
9
  } from '@workday/canvas-kit-react/common';
10
- import {colors, space, type, borderRadius} from '@workday/canvas-kit-react/tokens';
10
+ import {colors, space, borderRadius} from '@workday/canvas-kit-react/tokens';
11
11
  import {CanvasSystemIcon} from '@workday/design-assets-types';
12
- import {ButtonColors} from './types';
12
+ import {ButtonColors, TertiaryButtonSizes, IconPositions} from './types';
13
13
  import {ButtonContainer, ButtonLabelIcon, ButtonLabel} from './parts';
14
14
 
15
15
  export interface TertiaryButtonProps extends Themeable {
@@ -19,15 +19,18 @@ export interface TertiaryButtonProps extends Themeable {
19
19
  */
20
20
  variant?: 'inverse' | undefined;
21
21
  /**
22
- * The size of the TertiaryButton.
22
+ * There are three button sizes: `extraSmall`, `small`, and `medium`.
23
+ * If no size is provided, it will default to `medium`.
24
+ *
23
25
  * @default 'medium'
24
26
  */
25
- size?: 'small' | 'medium';
27
+ size?: TertiaryButtonSizes;
26
28
  /**
27
- * The position of the TertiaryButton icon.
29
+ * Button icon positions can either be `left` or `right`.
30
+ * If no value is provided, it defaults to `left`.
28
31
  * @default 'left'
29
32
  */
30
- iconPosition?: 'left' | 'right';
33
+ iconPosition?: IconPositions;
31
34
  /**
32
35
  * The icon of the TertiaryButton.
33
36
  */
@@ -87,8 +90,8 @@ const getTertiaryButtonColors = (
87
90
  },
88
91
  disabled: {
89
92
  background: 'transparent',
90
- icon: 'rgba(255, 255, 255, 0.5)',
91
- label: 'rgba(255, 255, 255, 0.5)',
93
+ icon: colors.frenchVanilla100,
94
+ label: colors.frenchVanilla100,
92
95
  },
93
96
  };
94
97
  } else {
@@ -113,26 +116,34 @@ const getTertiaryButtonColors = (
113
116
  focusRing: focusRing({}, theme),
114
117
  },
115
118
  disabled: {
116
- background: 'transparent',
117
- icon: themePrimary.light,
118
- label: themePrimary.light,
119
+ icon: themePrimary.main,
120
+ label: themePrimary.main,
119
121
  },
120
122
  };
121
123
  }
122
124
  };
123
125
 
124
- const containerStyles = {
125
- borderRadius: borderRadius.m,
126
- border: '0',
127
- padding: `0 ${space.xxs}`,
128
- minWidth: 'auto',
129
- '.wdc-text-button-label': {
130
- borderBottom: '2px solid transparent',
131
- paddingTop: '2px',
132
- transition: 'border-color 0.3s',
133
- },
134
- '&:hover:not([disabled]) .wdc-text-button-label': {
135
- borderBottomColor: 'currentColor',
126
+ const getPaddingStyles = (
127
+ icon: CanvasSystemIcon | undefined,
128
+ iconPosition: 'left' | 'right'
129
+ ): string => {
130
+ // if there is an icon on the left, add 4px extra padding to the right for visual balance
131
+ if (icon && iconPosition === 'left') {
132
+ return `0 ${space.xs} 0 ${space.xxs}`;
133
+ }
134
+ // if there is an icon on the right, add 4px extra padding to the left for visual balance
135
+ if (icon && iconPosition === 'right') {
136
+ return `0 ${space.xxs} 0 ${space.xs}`;
137
+ }
138
+ // if there is no icon, return the default padding
139
+ return `0 ${space.xxs}`;
140
+ };
141
+
142
+ // All disabled buttons are set to 40% opacity.
143
+ // This will eventually live in the ButtonContainer styles, but for now we're scoping it to Primary, Secondary, and Tertiary buttons.
144
+ const disabledButtonOpacity = {
145
+ '&:disabled, &:disabled:active': {
146
+ opacity: 0.4,
136
147
  },
137
148
  };
138
149
 
@@ -155,19 +166,17 @@ export const TertiaryButton = createComponent('button')({
155
166
  ref,
156
167
  Element
157
168
  ) => {
158
- // Note: We don't use ButtonLabel because the label styles differ from other button types
159
- const allContainerStyles: CSSObject = allCaps
160
- ? {
161
- ...containerStyles,
162
- textTransform: 'uppercase',
163
- fontWeight: type.properties.fontWeights.bold,
164
- fontSize: size === 'medium' ? type.properties.fontSizes[16] : undefined,
165
- letterSpacing: '.5px',
166
- }
167
- : {
168
- ...containerStyles,
169
- fontSize: size === 'medium' ? type.properties.fontSizes[14] : undefined,
170
- };
169
+ const allContainerStyles: CSSObject = {
170
+ borderRadius: borderRadius.m,
171
+ border: '0',
172
+ padding: getPaddingStyles(icon, iconPosition),
173
+ minWidth: 'auto',
174
+ textTransform: allCaps ? 'uppercase' : undefined,
175
+ '.wdc-text-button-label': {
176
+ textDecoration: 'underline',
177
+ },
178
+ ...disabledButtonOpacity,
179
+ };
171
180
 
172
181
  return (
173
182
  <ButtonContainer
@@ -10,7 +10,7 @@ import {
10
10
  EmotionCanvasTheme,
11
11
  StyledType,
12
12
  } from '@workday/canvas-kit-react/common';
13
- import {ButtonColors} from '../types';
13
+ import {ButtonColors, ButtonSizes} from '../types';
14
14
  import {buttonLabelDataClassName} from './ButtonLabelData';
15
15
 
16
16
  export interface ButtonContainerProps
@@ -18,10 +18,12 @@ export interface ButtonContainerProps
18
18
  GrowthBehavior {
19
19
  colors?: ButtonColors;
20
20
  /**
21
- * The size of the Button.
21
+ * There are four button sizes: `extraSmall`, `small`, `medium`, and `large`.
22
+ * If no size is provided, it will default to `medium`.
23
+ *
22
24
  * @default 'medium'
23
25
  */
24
- size?: 'small' | 'medium' | 'large';
26
+ size?: ButtonSizes;
25
27
  /**
26
28
  * The ref to the button that the styled component renders.
27
29
  */
@@ -110,12 +112,13 @@ export const ButtonContainer = styled('button', {
110
112
  switch (size) {
111
113
  case 'large':
112
114
  return {
113
- fontSize: type.properties.fontSizes[16],
115
+ ...type.levels.body.small,
116
+ fontWeight: type.properties.fontWeights.bold,
114
117
  minWidth: '112px',
115
118
  height: '48px',
116
119
  padding: `0 ${space.l}`,
117
120
  '& > * ': {
118
- margin: `0 ${spaceNumbers.xs / 2}px`,
121
+ margin: `0 ${spaceNumbers.xxs / 2}px`,
119
122
  },
120
123
  };
121
124
  case 'medium':
@@ -137,6 +140,16 @@ export const ButtonContainer = styled('button', {
137
140
  margin: `0 ${spaceNumbers.xxxs / 2}px`,
138
141
  },
139
142
  };
143
+ case 'extraSmall':
144
+ return {
145
+ ...type.levels.subtext.medium,
146
+ fontWeight: type.properties.fontWeights.bold,
147
+ height: space.m,
148
+ padding: `0 ${space.xs}`,
149
+ '& > * ': {
150
+ margin: `0 ${spaceNumbers.xxxs / 2}px`,
151
+ },
152
+ };
140
153
  }
141
154
  },
142
155
  ({grow}) => grow && {width: '100%', maxWidth: '100%'},