@workday/canvas-kit-react 9.0.0-alpha.368-next.6 → 9.0.0-alpha.382-next.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 (602) hide show
  1. package/action-bar/lib/ActionBarList.tsx +2 -2
  2. package/banner/lib/hooks/index.ts +2 -0
  3. package/banner/lib/hooks/useThemedPalette.ts +3 -3
  4. package/common/lib/theming/README.md +97 -0
  5. package/common/lib/theming/index.ts +1 -1
  6. package/common/lib/theming/useTheme.ts +79 -22
  7. package/common/lib/theming/useThemedRing.ts +114 -0
  8. package/common/lib/utils/colorUtils.ts +20 -7
  9. package/common/lib/utils/components.ts +4 -0
  10. package/common/lib/utils/memoize.ts +1 -1
  11. package/dist/commonjs/action-bar/lib/ActionBar.js +8 -9
  12. package/dist/commonjs/action-bar/lib/ActionBarItem.js +7 -18
  13. package/dist/commonjs/action-bar/lib/ActionBarList.js +13 -38
  14. package/dist/commonjs/action-bar/lib/ActionBarOverflowButton.js +13 -24
  15. package/dist/commonjs/action-bar/lib/useActionBarModel.js +39 -38
  16. package/dist/commonjs/avatar/lib/Avatar.js +52 -74
  17. package/dist/commonjs/badge/lib/CountBadge.js +23 -43
  18. package/dist/commonjs/banner/lib/Banner.js +32 -48
  19. package/dist/commonjs/banner/lib/BannerActionText.js +7 -30
  20. package/dist/commonjs/banner/lib/BannerIcon.js +9 -31
  21. package/dist/commonjs/banner/lib/BannerLabel.js +6 -29
  22. package/dist/commonjs/banner/lib/hooks/index.d.ts +2 -0
  23. package/dist/commonjs/banner/lib/hooks/index.d.ts.map +1 -1
  24. package/dist/commonjs/banner/lib/hooks/index.js +3 -0
  25. package/dist/commonjs/banner/lib/hooks/useBanner.js +5 -6
  26. package/dist/commonjs/banner/lib/hooks/useBannerActionText.js +4 -5
  27. package/dist/commonjs/banner/lib/hooks/useBannerIcon.js +6 -7
  28. package/dist/commonjs/banner/lib/hooks/useBannerLabel.js +4 -5
  29. package/dist/commonjs/banner/lib/hooks/useBannerModel.js +8 -16
  30. package/dist/commonjs/banner/lib/hooks/useThemedPalette.d.ts +1 -1
  31. package/dist/commonjs/banner/lib/hooks/useThemedPalette.d.ts.map +1 -1
  32. package/dist/commonjs/banner/lib/hooks/useThemedPalette.js +11 -11
  33. package/dist/commonjs/breadcrumbs/lib/Breadcrumbs.js +12 -35
  34. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsCurrentItem.js +14 -37
  35. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsItem.js +14 -39
  36. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsLink.js +15 -36
  37. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsList.js +10 -33
  38. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsMenu.js +7 -19
  39. package/dist/commonjs/breadcrumbs/lib/BreadcrumbsOverflowButton.js +15 -38
  40. package/dist/commonjs/breadcrumbs/lib/hooks/useBreadcrumbsModel.js +38 -37
  41. package/dist/commonjs/breadcrumbs/lib/hooks/utils/index.js +4 -4
  42. package/dist/commonjs/button/lib/BaseButton.js +128 -78
  43. package/dist/commonjs/button/lib/DeleteButton.js +27 -58
  44. package/dist/commonjs/button/lib/ExternalHyperlink.js +25 -39
  45. package/dist/commonjs/button/lib/Hyperlink.js +9 -34
  46. package/dist/commonjs/button/lib/PrimaryButton.js +9 -32
  47. package/dist/commonjs/button/lib/SecondaryButton.js +9 -32
  48. package/dist/commonjs/button/lib/TertiaryButton.js +23 -49
  49. package/dist/commonjs/button/lib/ToolbarDropdownButton.js +13 -39
  50. package/dist/commonjs/button/lib/ToolbarIconButton.js +16 -43
  51. package/dist/commonjs/button/lib/deprecated_Button.js +51 -54
  52. package/dist/commonjs/button/lib/parts/ButtonLabel.js +6 -29
  53. package/dist/commonjs/button/lib/parts/ButtonLabelIcon.js +7 -30
  54. package/dist/commonjs/card/lib/Card.js +8 -31
  55. package/dist/commonjs/card/lib/CardBody.js +6 -29
  56. package/dist/commonjs/card/lib/CardHeading.js +5 -28
  57. package/dist/commonjs/checkbox/lib/Checkbox.js +120 -129
  58. package/dist/commonjs/collection/lib/ListBox.js +11 -34
  59. package/dist/commonjs/collection/lib/react-virtual.js +2 -2
  60. package/dist/commonjs/collection/lib/useBaseListModel.js +57 -61
  61. package/dist/commonjs/collection/lib/useCursorListModel.js +98 -130
  62. package/dist/commonjs/collection/lib/useGridModel.js +14 -32
  63. package/dist/commonjs/collection/lib/useListItemRegister.js +16 -18
  64. package/dist/commonjs/collection/lib/useListItemRovingFocus.js +35 -40
  65. package/dist/commonjs/collection/lib/useListItemSelect.js +6 -8
  66. package/dist/commonjs/collection/lib/useListModel.js +2 -2
  67. package/dist/commonjs/collection/lib/useListRenderItem.js +9 -9
  68. package/dist/commonjs/collection/lib/useListResetCursorOnBlur.js +9 -10
  69. package/dist/commonjs/collection/lib/useOverflowListItemMeasure.js +10 -11
  70. package/dist/commonjs/collection/lib/useOverflowListMeasure.js +8 -8
  71. package/dist/commonjs/collection/lib/useOverflowListModel.js +61 -56
  72. package/dist/commonjs/collection/lib/useOverflowListTarget.js +10 -10
  73. package/dist/commonjs/collection/lib/useSelectionListModel.js +31 -37
  74. package/dist/commonjs/color-picker/lib/ColorInput.js +45 -81
  75. package/dist/commonjs/color-picker/lib/ColorPreview.js +7 -32
  76. package/dist/commonjs/color-picker/lib/parts/ColorSwatch.js +15 -43
  77. package/dist/commonjs/common/lib/CanvasProvider.js +15 -57
  78. package/dist/commonjs/common/lib/EllipsisText.js +6 -18
  79. package/dist/commonjs/common/lib/InputProvider.js +73 -93
  80. package/dist/commonjs/common/lib/parts/_brand-assets.js +6 -6
  81. package/dist/commonjs/common/lib/responsive/useResponsiveContainerStyles.js +22 -49
  82. package/dist/commonjs/common/lib/styles/errorRing.js +11 -10
  83. package/dist/commonjs/common/lib/styles/focusRing.js +19 -21
  84. package/dist/commonjs/common/lib/styles/hideMouseFocus.js +13 -9
  85. package/dist/commonjs/common/lib/theming/breakpoints.js +10 -10
  86. package/dist/commonjs/common/lib/theming/createCanvasTheme.js +36 -65
  87. package/dist/commonjs/common/lib/theming/getObjectProxy.js +3 -3
  88. package/dist/commonjs/common/lib/theming/index.d.ts +1 -1
  89. package/dist/commonjs/common/lib/theming/index.d.ts.map +1 -1
  90. package/dist/commonjs/common/lib/theming/index.js +1 -1
  91. package/dist/commonjs/common/lib/theming/styled.js +10 -14
  92. package/dist/commonjs/common/lib/theming/theme.js +3 -3
  93. package/dist/commonjs/common/lib/theming/useIsRTL.js +5 -5
  94. package/dist/commonjs/common/lib/theming/useTheme.d.ts +49 -5
  95. package/dist/commonjs/common/lib/theming/useTheme.d.ts.map +1 -1
  96. package/dist/commonjs/common/lib/theming/useTheme.js +82 -37
  97. package/dist/commonjs/common/lib/theming/useThemedRing.d.ts +43 -0
  98. package/dist/commonjs/common/lib/theming/useThemedRing.d.ts.map +1 -0
  99. package/dist/commonjs/common/lib/theming/useThemedRing.js +100 -0
  100. package/dist/commonjs/common/lib/utils/changeFocus.js +3 -3
  101. package/dist/commonjs/common/lib/utils/colorUtils.d.ts +7 -0
  102. package/dist/commonjs/common/lib/utils/colorUtils.d.ts.map +1 -1
  103. package/dist/commonjs/common/lib/utils/colorUtils.js +28 -15
  104. package/dist/commonjs/common/lib/utils/components.d.ts +3 -1
  105. package/dist/commonjs/common/lib/utils/components.d.ts.map +1 -1
  106. package/dist/commonjs/common/lib/utils/components.js +46 -89
  107. package/dist/commonjs/common/lib/utils/deepMerge.js +4 -4
  108. package/dist/commonjs/common/lib/utils/elements.js +16 -16
  109. package/dist/commonjs/common/lib/utils/getTranslateFromOrigin.js +2 -2
  110. package/dist/commonjs/common/lib/utils/isWithinBreakpoint.js +1 -1
  111. package/dist/commonjs/common/lib/utils/makeMq.js +4 -4
  112. package/dist/commonjs/common/lib/utils/memoize.d.ts +1 -1
  113. package/dist/commonjs/common/lib/utils/memoize.d.ts.map +1 -1
  114. package/dist/commonjs/common/lib/utils/memoize.js +4 -8
  115. package/dist/commonjs/common/lib/utils/mergeCallback.js +1 -5
  116. package/dist/commonjs/common/lib/utils/mergeProps.js +5 -16
  117. package/dist/commonjs/common/lib/utils/models.js +48 -70
  118. package/dist/commonjs/common/lib/utils/useConstant.js +2 -2
  119. package/dist/commonjs/common/lib/utils/useIsFullscreen.js +7 -7
  120. package/dist/commonjs/common/lib/utils/useModalityType.js +9 -9
  121. package/dist/commonjs/common/lib/utils/useMount.js +3 -3
  122. package/dist/commonjs/common/lib/utils/useResizeObserver.js +9 -21
  123. package/dist/commonjs/common/lib/utils/useUniqueId.js +8 -8
  124. package/dist/commonjs/common/lib/utils/useWindowSize.js +10 -10
  125. package/dist/commonjs/dialog/lib/Dialog.js +7 -8
  126. package/dist/commonjs/dialog/lib/DialogCard.js +6 -17
  127. package/dist/commonjs/dialog/lib/DialogPopper.js +9 -32
  128. package/dist/commonjs/dialog/lib/hooks/useDialogCard.js +4 -5
  129. package/dist/commonjs/dialog/lib/hooks/useDialogModel.js +4 -4
  130. package/dist/commonjs/dialog/lib/hooks/useDialogPopper.js +4 -5
  131. package/dist/commonjs/disclosure/lib/useDisclosureModel.js +12 -12
  132. package/dist/commonjs/form-field/lib/FormField.js +41 -84
  133. package/dist/commonjs/form-field/lib/Hint.js +13 -47
  134. package/dist/commonjs/form-field/lib/Label.js +43 -86
  135. package/dist/commonjs/icon/lib/AccentIcon.d.ts +3 -2
  136. package/dist/commonjs/icon/lib/AccentIcon.d.ts.map +1 -1
  137. package/dist/commonjs/icon/lib/AccentIcon.js +15 -41
  138. package/dist/commonjs/icon/lib/AppletIcon.js +16 -40
  139. package/dist/commonjs/icon/lib/Graphic.js +9 -33
  140. package/dist/commonjs/icon/lib/Icon.js +12 -31
  141. package/dist/commonjs/icon/lib/Svg.js +11 -34
  142. package/dist/commonjs/icon/lib/SystemIcon.d.ts.map +1 -1
  143. package/dist/commonjs/icon/lib/SystemIcon.js +36 -63
  144. package/dist/commonjs/icon/lib/SystemIconCircle.d.ts +2 -1
  145. package/dist/commonjs/icon/lib/SystemIconCircle.d.ts.map +1 -1
  146. package/dist/commonjs/icon/lib/SystemIconCircle.js +18 -47
  147. package/dist/commonjs/icon/lib/utils.d.ts +0 -2
  148. package/dist/commonjs/icon/lib/utils.d.ts.map +1 -1
  149. package/dist/commonjs/icon/lib/utils.js +2 -10
  150. package/dist/commonjs/layout/lib/Box.js +26 -51
  151. package/dist/commonjs/layout/lib/Flex.js +8 -31
  152. package/dist/commonjs/layout/lib/Grid.js +11 -35
  153. package/dist/commonjs/layout/lib/utils/background.js +1 -1
  154. package/dist/commonjs/layout/lib/utils/border/color.js +1 -1
  155. package/dist/commonjs/layout/lib/utils/border/index.js +20 -24
  156. package/dist/commonjs/layout/lib/utils/border/lineStyle.js +1 -1
  157. package/dist/commonjs/layout/lib/utils/border/radius.js +1 -1
  158. package/dist/commonjs/layout/lib/utils/border/shorthand.js +1 -1
  159. package/dist/commonjs/layout/lib/utils/border/width.js +1 -1
  160. package/dist/commonjs/layout/lib/utils/buildStyleFns.js +40 -43
  161. package/dist/commonjs/layout/lib/utils/color.js +1 -1
  162. package/dist/commonjs/layout/lib/utils/depth.js +1 -1
  163. package/dist/commonjs/layout/lib/utils/flex.js +1 -1
  164. package/dist/commonjs/layout/lib/utils/flexItem.js +1 -1
  165. package/dist/commonjs/layout/lib/utils/getValidChildren.js +2 -4
  166. package/dist/commonjs/layout/lib/utils/grid.js +1 -1
  167. package/dist/commonjs/layout/lib/utils/gridItem.js +1 -1
  168. package/dist/commonjs/layout/lib/utils/layout.js +1 -1
  169. package/dist/commonjs/layout/lib/utils/other.js +1 -1
  170. package/dist/commonjs/layout/lib/utils/position.d.ts +4 -0
  171. package/dist/commonjs/layout/lib/utils/position.d.ts.map +1 -1
  172. package/dist/commonjs/layout/lib/utils/position.js +6 -1
  173. package/dist/commonjs/layout/lib/utils/space.js +1 -1
  174. package/dist/commonjs/layout/lib/utils/text.js +1 -1
  175. package/dist/commonjs/loading-dots/lib/LoadingDots.js +20 -42
  176. package/dist/commonjs/menu/lib/Menu.js +10 -11
  177. package/dist/commonjs/menu/lib/MenuCard.js +14 -26
  178. package/dist/commonjs/menu/lib/MenuContextTarget.js +9 -32
  179. package/dist/commonjs/menu/lib/MenuDivider.js +9 -20
  180. package/dist/commonjs/menu/lib/MenuItem.js +77 -86
  181. package/dist/commonjs/menu/lib/MenuList.js +8 -31
  182. package/dist/commonjs/menu/lib/MenuPopper.js +6 -29
  183. package/dist/commonjs/menu/lib/MenuTarget.js +11 -35
  184. package/dist/commonjs/menu/lib/useMenuModel.js +22 -24
  185. package/dist/commonjs/modal/lib/Modal.js +10 -10
  186. package/dist/commonjs/modal/lib/ModalBody.js +13 -26
  187. package/dist/commonjs/modal/lib/ModalCard.js +13 -27
  188. package/dist/commonjs/modal/lib/ModalHeading.js +13 -26
  189. package/dist/commonjs/modal/lib/ModalOverflowOverlay.js +8 -19
  190. package/dist/commonjs/modal/lib/ModalOverlay.js +39 -52
  191. package/dist/commonjs/modal/lib/hooks/useCloseOnOverlayClick.js +17 -17
  192. package/dist/commonjs/modal/lib/hooks/useModalCard.js +3 -3
  193. package/dist/commonjs/modal/lib/hooks/useModalHeading.js +7 -7
  194. package/dist/commonjs/modal/lib/hooks/useModalModel.js +5 -5
  195. package/dist/commonjs/pagination/lib/Pagination/AdditionalDetails.js +15 -36
  196. package/dist/commonjs/pagination/lib/Pagination/Controls.js +37 -63
  197. package/dist/commonjs/pagination/lib/Pagination/GoTo/Form.js +11 -34
  198. package/dist/commonjs/pagination/lib/Pagination/GoTo/Label.js +7 -30
  199. package/dist/commonjs/pagination/lib/Pagination/GoTo/TextInput.js +7 -18
  200. package/dist/commonjs/pagination/lib/Pagination/GoTo/useGoToForm.js +12 -13
  201. package/dist/commonjs/pagination/lib/Pagination/Nav.js +4 -15
  202. package/dist/commonjs/pagination/lib/Pagination/PageButton.js +15 -39
  203. package/dist/commonjs/pagination/lib/Pagination/PageList.js +10 -34
  204. package/dist/commonjs/pagination/lib/Pagination/Pagination.js +15 -37
  205. package/dist/commonjs/pagination/lib/Pagination/buildPageRange.js +9 -15
  206. package/dist/commonjs/pagination/lib/Pagination/common/List.js +8 -32
  207. package/dist/commonjs/pagination/lib/Pagination/common/useLiveRegion.js +8 -26
  208. package/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.js +2 -4
  209. package/dist/commonjs/pagination/lib/Pagination/common/utils/useRTL.js +5 -5
  210. package/dist/commonjs/pagination/lib/Pagination/usePaginationModel.js +31 -31
  211. package/dist/commonjs/popup/lib/Popper.js +34 -56
  212. package/dist/commonjs/popup/lib/Popup.js +11 -12
  213. package/dist/commonjs/popup/lib/PopupBody.js +6 -17
  214. package/dist/commonjs/popup/lib/PopupCard.js +33 -55
  215. package/dist/commonjs/popup/lib/PopupCloseButton.js +6 -29
  216. package/dist/commonjs/popup/lib/PopupCloseIcon.js +8 -31
  217. package/dist/commonjs/popup/lib/PopupHeading.js +6 -29
  218. package/dist/commonjs/popup/lib/PopupPopper.js +6 -29
  219. package/dist/commonjs/popup/lib/PopupTarget.js +6 -17
  220. package/dist/commonjs/popup/lib/getTransformFromPlacement.js +6 -6
  221. package/dist/commonjs/popup/lib/hooks/focus-trap-js.js +23 -27
  222. package/dist/commonjs/popup/lib/hooks/useAlwaysCloseOnOutsideClick.js +9 -9
  223. package/dist/commonjs/popup/lib/hooks/useAssistiveHideSiblings.js +14 -17
  224. package/dist/commonjs/popup/lib/hooks/useBringToTopOnClick.js +11 -11
  225. package/dist/commonjs/popup/lib/hooks/useCloseOnEscape.js +9 -9
  226. package/dist/commonjs/popup/lib/hooks/useCloseOnFullscreenExit.js +9 -9
  227. package/dist/commonjs/popup/lib/hooks/useCloseOnOutsideClick.js +12 -12
  228. package/dist/commonjs/popup/lib/hooks/useCloseOnTargetHidden.js +12 -12
  229. package/dist/commonjs/popup/lib/hooks/useDisableBodyScroll.js +10 -10
  230. package/dist/commonjs/popup/lib/hooks/useFocusRedirect.js +10 -10
  231. package/dist/commonjs/popup/lib/hooks/useFocusTrap.js +9 -9
  232. package/dist/commonjs/popup/lib/hooks/useInitialFocus.js +10 -10
  233. package/dist/commonjs/popup/lib/hooks/usePopupCard.js +3 -4
  234. package/dist/commonjs/popup/lib/hooks/usePopupCloseButton.js +3 -4
  235. package/dist/commonjs/popup/lib/hooks/usePopupHeading.js +3 -4
  236. package/dist/commonjs/popup/lib/hooks/usePopupModel.js +29 -34
  237. package/dist/commonjs/popup/lib/hooks/usePopupPopper.js +8 -9
  238. package/dist/commonjs/popup/lib/hooks/usePopupStack.js +15 -15
  239. package/dist/commonjs/popup/lib/hooks/usePopupTarget.js +5 -6
  240. package/dist/commonjs/popup/lib/hooks/usePopupTargetContext.js +5 -6
  241. package/dist/commonjs/popup/lib/hooks/useReturnFocus.js +19 -19
  242. package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenEnter.js +10 -10
  243. package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenExit.js +10 -10
  244. package/dist/commonjs/radio/lib/Radio.js +113 -133
  245. package/dist/commonjs/radio/lib/RadioGroup.js +33 -78
  246. package/dist/commonjs/segmented-control/lib/SegmentedControl.js +7 -30
  247. package/dist/commonjs/segmented-control/lib/SegmentedControlButton.js +40 -61
  248. package/dist/commonjs/select/lib/Select.js +47 -64
  249. package/dist/commonjs/select/lib/SelectOption.js +6 -48
  250. package/dist/commonjs/side-panel/lib/SidePanel.js +60 -122
  251. package/dist/commonjs/skeleton/lib/parts/skeletonHeader.js +5 -30
  252. package/dist/commonjs/skeleton/lib/parts/skeletonShape.js +12 -40
  253. package/dist/commonjs/skeleton/lib/parts/skeletonText.js +12 -38
  254. package/dist/commonjs/skeleton/lib/skeleton.js +15 -40
  255. package/dist/commonjs/status-indicator/lib/StatusIndicator.js +28 -61
  256. package/dist/commonjs/switch/lib/Switch.js +55 -65
  257. package/dist/commonjs/table/lib/Table.js +10 -52
  258. package/dist/commonjs/table/lib/TableRow.js +40 -67
  259. package/dist/commonjs/tabs/lib/Tabs.js +11 -12
  260. package/dist/commonjs/tabs/lib/TabsItem.d.ts +1 -1
  261. package/dist/commonjs/tabs/lib/TabsItem.js +81 -86
  262. package/dist/commonjs/tabs/lib/TabsList.js +25 -51
  263. package/dist/commonjs/tabs/lib/TabsMenuPopper.js +6 -29
  264. package/dist/commonjs/tabs/lib/TabsOverflowButton.js +12 -35
  265. package/dist/commonjs/tabs/lib/TabsPanel.js +17 -42
  266. package/dist/commonjs/tabs/lib/TabsPanels.js +5 -6
  267. package/dist/commonjs/tabs/lib/useTabsModel.js +44 -43
  268. package/dist/commonjs/testing/lib/ComponentStatesTable.js +11 -20
  269. package/dist/commonjs/testing/lib/StaticStates.js +10 -34
  270. package/dist/commonjs/testing/lib/permutateProps.js +13 -26
  271. package/dist/commonjs/text/lib/LabelText.js +6 -29
  272. package/dist/commonjs/text/lib/Text.js +13 -39
  273. package/dist/commonjs/text/lib/TypeLevelComponents.js +15 -41
  274. package/dist/commonjs/text-area/lib/TextArea.js +42 -55
  275. package/dist/commonjs/text-input/lib/InputIconContainer.js +11 -17
  276. package/dist/commonjs/text-input/lib/TextInput.js +38 -51
  277. package/dist/commonjs/toast/lib/Toast.js +13 -36
  278. package/dist/commonjs/toast/lib/ToastBody.js +5 -28
  279. package/dist/commonjs/toast/lib/ToastCloseIcon.js +5 -16
  280. package/dist/commonjs/toast/lib/ToastIcon.js +5 -16
  281. package/dist/commonjs/toast/lib/ToastLink.js +5 -28
  282. package/dist/commonjs/toast/lib/ToastMessage.js +6 -29
  283. package/dist/commonjs/toast/lib/hooks/useToastModel.js +8 -16
  284. package/dist/commonjs/tokens/index.d.ts +2 -2
  285. package/dist/commonjs/tokens/index.d.ts.map +1 -1
  286. package/dist/commonjs/tokens/index.js +6 -6
  287. package/dist/commonjs/tokens/lib/type/fontFamilies.js +3 -3
  288. package/dist/commonjs/tokens/lib/type/index.js +7 -7
  289. package/dist/commonjs/tokens/lib/type/levels.js +4 -4
  290. package/dist/commonjs/tokens/lib/type/variants.js +1 -1
  291. package/dist/commonjs/tooltip/lib/OverflowTooltip.js +34 -54
  292. package/dist/commonjs/tooltip/lib/Tooltip.js +26 -47
  293. package/dist/commonjs/tooltip/lib/TooltipContainer.js +37 -35
  294. package/dist/commonjs/tooltip/lib/useTooltip.js +32 -34
  295. package/dist/es6/action-bar/lib/ActionBar.js +3 -4
  296. package/dist/es6/action-bar/lib/ActionBarItem.js +4 -15
  297. package/dist/es6/action-bar/lib/ActionBarList.js +10 -35
  298. package/dist/es6/action-bar/lib/ActionBarOverflowButton.js +6 -17
  299. package/dist/es6/action-bar/lib/useActionBarModel.js +36 -35
  300. package/dist/es6/avatar/lib/Avatar.js +46 -68
  301. package/dist/es6/badge/lib/CountBadge.js +20 -40
  302. package/dist/es6/banner/lib/Banner.js +25 -41
  303. package/dist/es6/banner/lib/BannerActionText.js +4 -27
  304. package/dist/es6/banner/lib/BannerIcon.js +5 -27
  305. package/dist/es6/banner/lib/BannerLabel.js +3 -26
  306. package/dist/es6/banner/lib/hooks/index.d.ts +2 -0
  307. package/dist/es6/banner/lib/hooks/index.d.ts.map +1 -1
  308. package/dist/es6/banner/lib/hooks/index.js +2 -0
  309. package/dist/es6/banner/lib/hooks/useBanner.js +3 -4
  310. package/dist/es6/banner/lib/hooks/useBannerActionText.js +2 -3
  311. package/dist/es6/banner/lib/hooks/useBannerIcon.js +2 -3
  312. package/dist/es6/banner/lib/hooks/useBannerLabel.js +2 -3
  313. package/dist/es6/banner/lib/hooks/useBannerModel.js +8 -16
  314. package/dist/es6/banner/lib/hooks/useThemedPalette.d.ts +1 -1
  315. package/dist/es6/banner/lib/hooks/useThemedPalette.d.ts.map +1 -1
  316. package/dist/es6/banner/lib/hooks/useThemedPalette.js +7 -7
  317. package/dist/es6/breadcrumbs/lib/Breadcrumbs.js +3 -26
  318. package/dist/es6/breadcrumbs/lib/BreadcrumbsCurrentItem.js +9 -32
  319. package/dist/es6/breadcrumbs/lib/BreadcrumbsItem.js +6 -31
  320. package/dist/es6/breadcrumbs/lib/BreadcrumbsLink.js +11 -32
  321. package/dist/es6/breadcrumbs/lib/BreadcrumbsList.js +5 -28
  322. package/dist/es6/breadcrumbs/lib/BreadcrumbsMenu.js +6 -18
  323. package/dist/es6/breadcrumbs/lib/BreadcrumbsOverflowButton.js +6 -29
  324. package/dist/es6/breadcrumbs/lib/hooks/useBreadcrumbsModel.js +34 -33
  325. package/dist/es6/breadcrumbs/lib/hooks/utils/index.js +4 -4
  326. package/dist/es6/button/lib/BaseButton.js +123 -73
  327. package/dist/es6/button/lib/DeleteButton.js +25 -56
  328. package/dist/es6/button/lib/ExternalHyperlink.js +21 -35
  329. package/dist/es6/button/lib/Hyperlink.js +7 -32
  330. package/dist/es6/button/lib/PrimaryButton.js +6 -29
  331. package/dist/es6/button/lib/SecondaryButton.js +6 -29
  332. package/dist/es6/button/lib/TertiaryButton.js +20 -46
  333. package/dist/es6/button/lib/ToolbarDropdownButton.js +9 -35
  334. package/dist/es6/button/lib/ToolbarIconButton.js +13 -40
  335. package/dist/es6/button/lib/deprecated_Button.js +48 -51
  336. package/dist/es6/button/lib/parts/ButtonLabel.js +4 -27
  337. package/dist/es6/button/lib/parts/ButtonLabelIcon.js +5 -28
  338. package/dist/es6/card/lib/Card.js +3 -26
  339. package/dist/es6/card/lib/CardBody.js +3 -26
  340. package/dist/es6/card/lib/CardHeading.js +3 -26
  341. package/dist/es6/checkbox/lib/Checkbox.js +116 -125
  342. package/dist/es6/collection/lib/ListBox.js +7 -30
  343. package/dist/es6/collection/lib/react-virtual.js +1 -1
  344. package/dist/es6/collection/lib/useBaseListModel.js +55 -59
  345. package/dist/es6/collection/lib/useCursorListModel.js +110 -142
  346. package/dist/es6/collection/lib/useGridModel.js +12 -30
  347. package/dist/es6/collection/lib/useListItemRegister.js +13 -15
  348. package/dist/es6/collection/lib/useListItemRovingFocus.js +33 -38
  349. package/dist/es6/collection/lib/useListItemSelect.js +4 -6
  350. package/dist/es6/collection/lib/useListModel.js +1 -1
  351. package/dist/es6/collection/lib/useListRenderItem.js +8 -8
  352. package/dist/es6/collection/lib/useListResetCursorOnBlur.js +5 -6
  353. package/dist/es6/collection/lib/useOverflowListItemMeasure.js +8 -9
  354. package/dist/es6/collection/lib/useOverflowListMeasure.js +5 -5
  355. package/dist/es6/collection/lib/useOverflowListModel.js +59 -54
  356. package/dist/es6/collection/lib/useOverflowListTarget.js +7 -7
  357. package/dist/es6/collection/lib/useSelectionListModel.js +31 -37
  358. package/dist/es6/color-picker/lib/ColorInput.js +41 -77
  359. package/dist/es6/color-picker/lib/ColorPreview.js +3 -28
  360. package/dist/es6/color-picker/lib/parts/ColorSwatch.js +8 -36
  361. package/dist/es6/common/lib/CanvasProvider.js +11 -54
  362. package/dist/es6/common/lib/EllipsisText.js +5 -17
  363. package/dist/es6/common/lib/InputProvider.js +72 -93
  364. package/dist/es6/common/lib/parts/_brand-assets.js +6 -6
  365. package/dist/es6/common/lib/responsive/useResponsiveContainerStyles.js +20 -47
  366. package/dist/es6/common/lib/styles/accessibleHide.js +1 -1
  367. package/dist/es6/common/lib/styles/errorRing.js +8 -7
  368. package/dist/es6/common/lib/styles/focusRing.js +16 -18
  369. package/dist/es6/common/lib/styles/hideMouseFocus.js +13 -9
  370. package/dist/es6/common/lib/theming/breakpoints.js +12 -12
  371. package/dist/es6/common/lib/theming/createCanvasTheme.js +29 -58
  372. package/dist/es6/common/lib/theming/getObjectProxy.js +3 -3
  373. package/dist/es6/common/lib/theming/index.d.ts +1 -1
  374. package/dist/es6/common/lib/theming/index.d.ts.map +1 -1
  375. package/dist/es6/common/lib/theming/index.js +1 -1
  376. package/dist/es6/common/lib/theming/styled.js +7 -11
  377. package/dist/es6/common/lib/theming/theme.js +5 -5
  378. package/dist/es6/common/lib/theming/useIsRTL.js +2 -2
  379. package/dist/es6/common/lib/theming/useTheme.d.ts +49 -5
  380. package/dist/es6/common/lib/theming/useTheme.d.ts.map +1 -1
  381. package/dist/es6/common/lib/theming/useTheme.js +78 -34
  382. package/dist/es6/common/lib/theming/useThemedRing.d.ts +43 -0
  383. package/dist/es6/common/lib/theming/useThemedRing.d.ts.map +1 -0
  384. package/dist/es6/common/lib/theming/useThemedRing.js +92 -0
  385. package/dist/es6/common/lib/utils/changeFocus.js +3 -3
  386. package/dist/es6/common/lib/utils/colorUtils.d.ts +7 -0
  387. package/dist/es6/common/lib/utils/colorUtils.d.ts.map +1 -1
  388. package/dist/es6/common/lib/utils/colorUtils.js +24 -12
  389. package/dist/es6/common/lib/utils/components.d.ts +3 -1
  390. package/dist/es6/common/lib/utils/components.d.ts.map +1 -1
  391. package/dist/es6/common/lib/utils/components.js +43 -86
  392. package/dist/es6/common/lib/utils/deepMerge.js +4 -4
  393. package/dist/es6/common/lib/utils/elements.js +16 -16
  394. package/dist/es6/common/lib/utils/getTranslateFromOrigin.js +2 -2
  395. package/dist/es6/common/lib/utils/isWithinBreakpoint.js +1 -1
  396. package/dist/es6/common/lib/utils/makeMq.js +4 -4
  397. package/dist/es6/common/lib/utils/memoize.d.ts +1 -1
  398. package/dist/es6/common/lib/utils/memoize.d.ts.map +1 -1
  399. package/dist/es6/common/lib/utils/memoize.js +4 -8
  400. package/dist/es6/common/lib/utils/mergeCallback.js +1 -5
  401. package/dist/es6/common/lib/utils/mergeProps.js +4 -15
  402. package/dist/es6/common/lib/utils/models.js +47 -69
  403. package/dist/es6/common/lib/utils/useConstant.js +1 -1
  404. package/dist/es6/common/lib/utils/useIsFullscreen.js +5 -5
  405. package/dist/es6/common/lib/utils/useModalityType.js +8 -8
  406. package/dist/es6/common/lib/utils/useMount.js +2 -2
  407. package/dist/es6/common/lib/utils/useResizeObserver.js +6 -18
  408. package/dist/es6/common/lib/utils/useUniqueId.js +8 -8
  409. package/dist/es6/common/lib/utils/useWindowSize.js +8 -8
  410. package/dist/es6/dialog/lib/Dialog.js +2 -3
  411. package/dist/es6/dialog/lib/DialogCard.js +3 -14
  412. package/dist/es6/dialog/lib/DialogPopper.js +6 -29
  413. package/dist/es6/dialog/lib/hooks/useDialogCard.js +2 -3
  414. package/dist/es6/dialog/lib/hooks/useDialogModel.js +3 -3
  415. package/dist/es6/dialog/lib/hooks/useDialogPopper.js +2 -3
  416. package/dist/es6/disclosure/lib/useDisclosureModel.js +11 -11
  417. package/dist/es6/form-field/lib/FormField.js +35 -79
  418. package/dist/es6/form-field/lib/Hint.js +9 -43
  419. package/dist/es6/form-field/lib/Label.js +39 -82
  420. package/dist/es6/icon/lib/AccentIcon.d.ts +3 -2
  421. package/dist/es6/icon/lib/AccentIcon.d.ts.map +1 -1
  422. package/dist/es6/icon/lib/AccentIcon.js +12 -38
  423. package/dist/es6/icon/lib/AppletIcon.js +12 -36
  424. package/dist/es6/icon/lib/Graphic.js +6 -30
  425. package/dist/es6/icon/lib/Icon.js +10 -29
  426. package/dist/es6/icon/lib/Svg.js +8 -31
  427. package/dist/es6/icon/lib/SystemIcon.d.ts.map +1 -1
  428. package/dist/es6/icon/lib/SystemIcon.js +33 -60
  429. package/dist/es6/icon/lib/SystemIconCircle.d.ts +2 -1
  430. package/dist/es6/icon/lib/SystemIconCircle.d.ts.map +1 -1
  431. package/dist/es6/icon/lib/SystemIconCircle.js +14 -43
  432. package/dist/es6/icon/lib/utils.d.ts +0 -2
  433. package/dist/es6/icon/lib/utils.d.ts.map +1 -1
  434. package/dist/es6/icon/lib/utils.js +1 -8
  435. package/dist/es6/layout/lib/Box.js +12 -37
  436. package/dist/es6/layout/lib/Flex.js +4 -27
  437. package/dist/es6/layout/lib/Grid.js +7 -31
  438. package/dist/es6/layout/lib/utils/background.js +3 -3
  439. package/dist/es6/layout/lib/utils/border/color.js +2 -2
  440. package/dist/es6/layout/lib/utils/border/index.js +14 -18
  441. package/dist/es6/layout/lib/utils/border/lineStyle.js +2 -2
  442. package/dist/es6/layout/lib/utils/border/radius.js +2 -2
  443. package/dist/es6/layout/lib/utils/border/shorthand.js +2 -2
  444. package/dist/es6/layout/lib/utils/border/width.js +2 -2
  445. package/dist/es6/layout/lib/utils/buildStyleFns.js +39 -42
  446. package/dist/es6/layout/lib/utils/color.js +3 -3
  447. package/dist/es6/layout/lib/utils/depth.js +3 -3
  448. package/dist/es6/layout/lib/utils/flex.js +3 -3
  449. package/dist/es6/layout/lib/utils/flexItem.js +3 -3
  450. package/dist/es6/layout/lib/utils/getValidChildren.js +1 -3
  451. package/dist/es6/layout/lib/utils/grid.js +3 -3
  452. package/dist/es6/layout/lib/utils/gridItem.js +3 -3
  453. package/dist/es6/layout/lib/utils/layout.js +3 -3
  454. package/dist/es6/layout/lib/utils/other.js +3 -3
  455. package/dist/es6/layout/lib/utils/position.d.ts +4 -0
  456. package/dist/es6/layout/lib/utils/position.d.ts.map +1 -1
  457. package/dist/es6/layout/lib/utils/position.js +8 -3
  458. package/dist/es6/layout/lib/utils/space.js +3 -3
  459. package/dist/es6/layout/lib/utils/text.js +3 -3
  460. package/dist/es6/loading-dots/lib/LoadingDots.js +16 -38
  461. package/dist/es6/menu/lib/Menu.js +2 -3
  462. package/dist/es6/menu/lib/MenuCard.js +9 -21
  463. package/dist/es6/menu/lib/MenuContextTarget.js +7 -30
  464. package/dist/es6/menu/lib/MenuDivider.js +6 -17
  465. package/dist/es6/menu/lib/MenuItem.js +70 -79
  466. package/dist/es6/menu/lib/MenuList.js +4 -27
  467. package/dist/es6/menu/lib/MenuPopper.js +4 -27
  468. package/dist/es6/menu/lib/MenuTarget.js +10 -34
  469. package/dist/es6/menu/lib/useMenuModel.js +20 -22
  470. package/dist/es6/modal/lib/Modal.js +2 -2
  471. package/dist/es6/modal/lib/ModalBody.js +10 -23
  472. package/dist/es6/modal/lib/ModalCard.js +10 -24
  473. package/dist/es6/modal/lib/ModalHeading.js +10 -23
  474. package/dist/es6/modal/lib/ModalOverflowOverlay.js +4 -15
  475. package/dist/es6/modal/lib/ModalOverlay.js +33 -46
  476. package/dist/es6/modal/lib/hooks/useCloseOnOverlayClick.js +13 -13
  477. package/dist/es6/modal/lib/hooks/useModalCard.js +1 -1
  478. package/dist/es6/modal/lib/hooks/useModalHeading.js +5 -5
  479. package/dist/es6/modal/lib/hooks/useModalModel.js +3 -3
  480. package/dist/es6/pagination/lib/Pagination/AdditionalDetails.js +10 -31
  481. package/dist/es6/pagination/lib/Pagination/Controls.js +35 -61
  482. package/dist/es6/pagination/lib/Pagination/GoTo/Form.js +7 -30
  483. package/dist/es6/pagination/lib/Pagination/GoTo/Label.js +4 -27
  484. package/dist/es6/pagination/lib/Pagination/GoTo/TextInput.js +4 -15
  485. package/dist/es6/pagination/lib/Pagination/GoTo/useGoToForm.js +12 -13
  486. package/dist/es6/pagination/lib/Pagination/Nav.js +2 -13
  487. package/dist/es6/pagination/lib/Pagination/PageButton.js +11 -35
  488. package/dist/es6/pagination/lib/Pagination/PageList.js +7 -31
  489. package/dist/es6/pagination/lib/Pagination/Pagination.js +16 -38
  490. package/dist/es6/pagination/lib/Pagination/buildPageRange.js +9 -15
  491. package/dist/es6/pagination/lib/Pagination/common/List.js +7 -31
  492. package/dist/es6/pagination/lib/Pagination/common/useLiveRegion.js +8 -26
  493. package/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.js +1 -3
  494. package/dist/es6/pagination/lib/Pagination/common/utils/useRTL.js +4 -4
  495. package/dist/es6/pagination/lib/Pagination/usePaginationModel.js +29 -29
  496. package/dist/es6/popup/lib/Popper.js +29 -51
  497. package/dist/es6/popup/lib/Popup.js +2 -3
  498. package/dist/es6/popup/lib/PopupBody.js +3 -14
  499. package/dist/es6/popup/lib/PopupCard.js +26 -48
  500. package/dist/es6/popup/lib/PopupCloseButton.js +3 -26
  501. package/dist/es6/popup/lib/PopupCloseIcon.js +3 -26
  502. package/dist/es6/popup/lib/PopupHeading.js +3 -26
  503. package/dist/es6/popup/lib/PopupPopper.js +3 -26
  504. package/dist/es6/popup/lib/PopupTarget.js +3 -14
  505. package/dist/es6/popup/lib/getTransformFromPlacement.js +6 -6
  506. package/dist/es6/popup/lib/hooks/focus-trap-js.js +23 -27
  507. package/dist/es6/popup/lib/hooks/useAlwaysCloseOnOutsideClick.js +5 -5
  508. package/dist/es6/popup/lib/hooks/useAssistiveHideSiblings.js +11 -14
  509. package/dist/es6/popup/lib/hooks/useBringToTopOnClick.js +7 -7
  510. package/dist/es6/popup/lib/hooks/useCloseOnEscape.js +5 -5
  511. package/dist/es6/popup/lib/hooks/useCloseOnFullscreenExit.js +5 -5
  512. package/dist/es6/popup/lib/hooks/useCloseOnOutsideClick.js +8 -8
  513. package/dist/es6/popup/lib/hooks/useCloseOnTargetHidden.js +9 -9
  514. package/dist/es6/popup/lib/hooks/useDisableBodyScroll.js +7 -7
  515. package/dist/es6/popup/lib/hooks/useFocusRedirect.js +7 -7
  516. package/dist/es6/popup/lib/hooks/useFocusTrap.js +5 -5
  517. package/dist/es6/popup/lib/hooks/useInitialFocus.js +7 -7
  518. package/dist/es6/popup/lib/hooks/usePopupCard.js +1 -2
  519. package/dist/es6/popup/lib/hooks/usePopupCloseButton.js +1 -2
  520. package/dist/es6/popup/lib/hooks/usePopupHeading.js +1 -2
  521. package/dist/es6/popup/lib/hooks/usePopupModel.js +28 -33
  522. package/dist/es6/popup/lib/hooks/usePopupPopper.js +5 -6
  523. package/dist/es6/popup/lib/hooks/usePopupStack.js +12 -12
  524. package/dist/es6/popup/lib/hooks/usePopupTarget.js +3 -4
  525. package/dist/es6/popup/lib/hooks/usePopupTargetContext.js +3 -4
  526. package/dist/es6/popup/lib/hooks/useReturnFocus.js +15 -15
  527. package/dist/es6/popup/lib/hooks/useTransferOnFullscreenEnter.js +5 -5
  528. package/dist/es6/popup/lib/hooks/useTransferOnFullscreenExit.js +5 -5
  529. package/dist/es6/radio/lib/Radio.js +110 -130
  530. package/dist/es6/radio/lib/RadioGroup.js +29 -75
  531. package/dist/es6/segmented-control/lib/SegmentedControl.js +5 -28
  532. package/dist/es6/segmented-control/lib/SegmentedControlButton.js +37 -58
  533. package/dist/es6/select/lib/Select.js +44 -61
  534. package/dist/es6/select/lib/SelectOption.js +5 -48
  535. package/dist/es6/side-panel/lib/SidePanel.js +54 -117
  536. package/dist/es6/skeleton/lib/parts/skeletonHeader.js +2 -27
  537. package/dist/es6/skeleton/lib/parts/skeletonShape.js +9 -37
  538. package/dist/es6/skeleton/lib/parts/skeletonText.js +9 -35
  539. package/dist/es6/skeleton/lib/skeleton.js +9 -34
  540. package/dist/es6/status-indicator/lib/StatusIndicator.js +25 -59
  541. package/dist/es6/switch/lib/Switch.js +54 -64
  542. package/dist/es6/table/lib/Table.js +9 -52
  543. package/dist/es6/table/lib/TableRow.js +35 -62
  544. package/dist/es6/tabs/lib/Tabs.js +2 -3
  545. package/dist/es6/tabs/lib/TabsItem.d.ts +1 -1
  546. package/dist/es6/tabs/lib/TabsItem.js +74 -79
  547. package/dist/es6/tabs/lib/TabsList.js +20 -46
  548. package/dist/es6/tabs/lib/TabsMenuPopper.js +4 -27
  549. package/dist/es6/tabs/lib/TabsOverflowButton.js +5 -28
  550. package/dist/es6/tabs/lib/TabsPanel.js +13 -38
  551. package/dist/es6/tabs/lib/TabsPanels.js +2 -3
  552. package/dist/es6/tabs/lib/useTabsModel.js +41 -40
  553. package/dist/es6/testing/lib/ComponentStatesTable.js +9 -18
  554. package/dist/es6/testing/lib/StaticStates.js +8 -32
  555. package/dist/es6/testing/lib/permutateProps.js +13 -26
  556. package/dist/es6/text/lib/LabelText.js +3 -26
  557. package/dist/es6/text/lib/Text.js +10 -36
  558. package/dist/es6/text/lib/TypeLevelComponents.js +16 -42
  559. package/dist/es6/text-area/lib/TextArea.js +41 -54
  560. package/dist/es6/text-input/lib/InputIconContainer.js +8 -14
  561. package/dist/es6/text-input/lib/TextInput.js +37 -50
  562. package/dist/es6/toast/lib/Toast.js +4 -27
  563. package/dist/es6/toast/lib/ToastBody.js +3 -26
  564. package/dist/es6/toast/lib/ToastCloseIcon.js +3 -14
  565. package/dist/es6/toast/lib/ToastIcon.js +3 -14
  566. package/dist/es6/toast/lib/ToastLink.js +3 -26
  567. package/dist/es6/toast/lib/ToastMessage.js +3 -26
  568. package/dist/es6/toast/lib/hooks/useToastModel.js +8 -16
  569. package/dist/es6/tokens/index.d.ts +2 -2
  570. package/dist/es6/tokens/index.d.ts.map +1 -1
  571. package/dist/es6/tokens/index.js +16 -16
  572. package/dist/es6/tokens/lib/depth.js +1 -1
  573. package/dist/es6/tokens/lib/radius.js +1 -1
  574. package/dist/es6/tokens/lib/space.js +2 -2
  575. package/dist/es6/tokens/lib/type/fontFamilies.js +6 -6
  576. package/dist/es6/tokens/lib/type/fontSizes.js +1 -1
  577. package/dist/es6/tokens/lib/type/fontWeights.js +1 -1
  578. package/dist/es6/tokens/lib/type/index.js +8 -8
  579. package/dist/es6/tokens/lib/type/levels.js +1 -1
  580. package/dist/es6/tokens/lib/type/variants.js +1 -1
  581. package/dist/es6/tooltip/lib/OverflowTooltip.js +29 -49
  582. package/dist/es6/tooltip/lib/Tooltip.js +21 -42
  583. package/dist/es6/tooltip/lib/TooltipContainer.js +33 -31
  584. package/dist/es6/tooltip/lib/useTooltip.js +29 -31
  585. package/icon/lib/AccentIcon.tsx +5 -6
  586. package/icon/lib/SystemIcon.tsx +1 -2
  587. package/icon/lib/SystemIconCircle.tsx +4 -3
  588. package/icon/lib/utils.ts +0 -8
  589. package/layout/lib/utils/position.ts +9 -0
  590. package/modal/lib/ModalBody.tsx +2 -2
  591. package/modal/lib/ModalCard.tsx +2 -2
  592. package/modal/lib/ModalHeading.tsx +2 -2
  593. package/modal/lib/ModalOverlay.tsx +2 -2
  594. package/package.json +3 -3
  595. package/tokens/index.ts +3 -3
  596. package/common/lib/theming/getCanvasTheme.ts +0 -40
  597. package/dist/commonjs/common/lib/theming/getCanvasTheme.d.ts +0 -28
  598. package/dist/commonjs/common/lib/theming/getCanvasTheme.d.ts.map +0 -1
  599. package/dist/commonjs/common/lib/theming/getCanvasTheme.js +0 -42
  600. package/dist/es6/common/lib/theming/getCanvasTheme.d.ts +0 -28
  601. package/dist/es6/common/lib/theming/getCanvasTheme.d.ts.map +0 -1
  602. package/dist/es6/common/lib/theming/getCanvasTheme.js +0 -37
@@ -1,8 +1,3 @@
1
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
2
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
3
- to[j] = from[i];
4
- return to;
5
- };
6
1
  import React from 'react';
7
2
  import { createElemPropsHook } from '@workday/canvas-kit-react/common';
8
3
  import { usePopupModel } from './usePopupModel';
@@ -17,21 +12,23 @@ import { usePopupModel } from './usePopupModel';
17
12
  *
18
13
  * This should be used on popup elements that need to hide content (i.e. Modals).
19
14
  */
20
- export var useAssistiveHideSiblings = createElemPropsHook(usePopupModel)(function (model) {
21
- var visible = model.state.visibility !== 'hidden';
22
- React.useEffect(function () {
15
+ export const useAssistiveHideSiblings = createElemPropsHook(usePopupModel)(model => {
16
+ const visible = model.state.visibility !== 'hidden';
17
+ React.useEffect(() => {
23
18
  var _a, _b;
24
19
  if (!visible) {
25
20
  return;
26
21
  }
27
- var siblings = __spreadArray([], (_b = (_a = model.state.stackRef.current) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.children).filter(function (el) { return el !== model.state.stackRef.current; });
28
- var prevAriaHidden = siblings.map(function (el) { return el.getAttribute('aria-hidden'); });
29
- siblings.forEach(function (el) {
22
+ const siblings = [
23
+ ...(_b = (_a = model.state.stackRef.current) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.children,
24
+ ].filter(el => el !== model.state.stackRef.current);
25
+ const prevAriaHidden = siblings.map(el => el.getAttribute('aria-hidden'));
26
+ siblings.forEach(el => {
30
27
  el.setAttribute('aria-hidden', 'true');
31
28
  });
32
- return function () {
33
- siblings.forEach(function (el, index) {
34
- var prev = prevAriaHidden[index];
29
+ return () => {
30
+ siblings.forEach((el, index) => {
31
+ const prev = prevAriaHidden[index];
35
32
  if (prev) {
36
33
  el.setAttribute('aria-hidden', prev);
37
34
  }
@@ -11,25 +11,25 @@ import { usePopupModel } from './usePopupModel';
11
11
  *
12
12
  * This should be used on popup elements that are meant to persist (i.e. Windows).
13
13
  */
14
- export var useBringToTopOnClick = createElemPropsHook(usePopupModel)(function (model) {
15
- var timer = React.useRef(-1);
16
- var onClick = React.useCallback(function (event) {
14
+ export const useBringToTopOnClick = createElemPropsHook(usePopupModel)(model => {
15
+ const timer = React.useRef(-1);
16
+ const onClick = React.useCallback((event) => {
17
17
  // requestAnimationFrame is used to control timing of when `bringToTop` is called.
18
18
  // https://github.com/Workday/canvas-kit/pull/670#discussion_r436158184
19
- timer.current = requestAnimationFrame(function () {
19
+ timer.current = requestAnimationFrame(() => {
20
20
  var _a;
21
21
  if ((_a = model.state.stackRef.current) === null || _a === void 0 ? void 0 : _a.contains(event.target)) {
22
22
  PopupStack.bringToTop(model.state.stackRef.current);
23
23
  }
24
24
  });
25
25
  }, [model.state.stackRef]);
26
- var visible = model.state.visibility !== 'hidden';
27
- React.useLayoutEffect(function () {
26
+ const visible = model.state.visibility !== 'hidden';
27
+ React.useLayoutEffect(() => {
28
28
  if (!visible) {
29
29
  return;
30
30
  }
31
31
  document.addEventListener('click', onClick);
32
- return function () {
32
+ return () => {
33
33
  cancelAnimationFrame(timer.current);
34
34
  document.removeEventListener('click', onClick);
35
35
  };
@@ -9,21 +9,21 @@ import { usePopupModel } from './usePopupModel';
9
9
  * This should be used with popup elements that are dismissible like Tooltips, Modals, non-modal
10
10
  * dialogs, dropdown menus, etc.
11
11
  */
12
- export var useCloseOnEscape = createElemPropsHook(usePopupModel)(function (model) {
13
- var onKeyDown = React.useCallback(function (event) {
12
+ export const useCloseOnEscape = createElemPropsHook(usePopupModel)(model => {
13
+ const onKeyDown = React.useCallback((event) => {
14
14
  if ((event.key === 'Esc' || event.key === 'Escape') &&
15
15
  PopupStack.isTopmost(model.state.stackRef.current)) {
16
16
  model.events.hide(event);
17
17
  }
18
18
  }, [model.state.stackRef, model.events]);
19
- var visible = model.state.visibility !== 'hidden';
19
+ const visible = model.state.visibility !== 'hidden';
20
20
  // `useLayoutEffect` for automation
21
- React.useLayoutEffect(function () {
21
+ React.useLayoutEffect(() => {
22
22
  if (!visible) {
23
23
  return;
24
24
  }
25
25
  document.addEventListener('keydown', onKeyDown);
26
- return function () {
26
+ return () => {
27
27
  document.removeEventListener('keydown', onKeyDown);
28
28
  };
29
29
  }, [onKeyDown, visible]);
@@ -7,20 +7,20 @@ import { usePopupModel } from './usePopupModel';
7
7
  * the entire screen. This should be added to popup types that are very context sensitive like
8
8
  * Tooltips.
9
9
  */
10
- export var useCloseOnFullscreenExit = createElemPropsHook(usePopupModel)(function (model) {
11
- var handler = React.useCallback(function (event) {
10
+ export const useCloseOnFullscreenExit = createElemPropsHook(usePopupModel)(model => {
11
+ const handler = React.useCallback((event) => {
12
12
  if (!screenfull.isFullscreen) {
13
13
  model.events.hide(event);
14
14
  }
15
15
  }, [model.events]);
16
- var visible = model.state.visibility !== 'hidden';
17
- React.useEffect(function () {
16
+ const visible = model.state.visibility !== 'hidden';
17
+ React.useEffect(() => {
18
18
  if (!visible) {
19
19
  return;
20
20
  }
21
21
  if (screenfull.isEnabled) {
22
22
  screenfull.on('change', handler);
23
- return function () {
23
+ return () => {
24
24
  screenfull.off('change', handler);
25
25
  };
26
26
  }
@@ -12,14 +12,14 @@ import { usePopupModel } from './usePopupModel';
12
12
  * dropdown menus, etc. Tooltips and hierarchical menus should use
13
13
  * {@link useAlwaysCloseOnClickOutside} instead.
14
14
  */
15
- export var useCloseOnOutsideClick = createElemPropsHook(usePopupModel)(function (model) {
16
- var onClick = React.useCallback(function (event) {
15
+ export const useCloseOnOutsideClick = createElemPropsHook(usePopupModel)(model => {
16
+ const onClick = React.useCallback((event) => {
17
17
  if (!model.state.stackRef.current) {
18
18
  return;
19
19
  }
20
- var elements = PopupStack.getElements()
21
- .filter(function (e) { return e.getAttribute('data-behavior-click-outside-close') === 'topmost'; })
22
- .sort(function (a, b) { return Number(a.style.zIndex) - Number(b.style.zIndex); });
20
+ const elements = PopupStack.getElements()
21
+ .filter(e => e.getAttribute('data-behavior-click-outside-close') === 'topmost')
22
+ .sort((a, b) => Number(a.style.zIndex) - Number(b.style.zIndex));
23
23
  if (elements.length &&
24
24
  elements[elements.length - 1] === model.state.stackRef.current &&
25
25
  // Use `PopupStack.contains` instead of `ref.current.contains` so that the application can
@@ -29,15 +29,15 @@ export var useCloseOnOutsideClick = createElemPropsHook(usePopupModel)(function
29
29
  model.events.hide(event);
30
30
  }
31
31
  }, [model.state.stackRef, model.events]);
32
- var visible = model.state.visibility !== 'hidden';
33
- React.useLayoutEffect(function () {
32
+ const visible = model.state.visibility !== 'hidden';
33
+ React.useLayoutEffect(() => {
34
34
  var _a;
35
35
  if (!visible) {
36
36
  return;
37
37
  }
38
38
  document.addEventListener('mousedown', onClick);
39
39
  (_a = model.state.stackRef.current) === null || _a === void 0 ? void 0 : _a.setAttribute('data-behavior-click-outside-close', 'topmost');
40
- return function () {
40
+ return () => {
41
41
  document.removeEventListener('mousedown', onClick);
42
42
  };
43
43
  }, [model.state.stackRef, visible, onClick]);
@@ -5,7 +5,7 @@ function getScrollParent(element) {
5
5
  if (element === document.body || !element.parentElement) {
6
6
  return element;
7
7
  }
8
- var styles = getComputedStyle(element);
8
+ const styles = getComputedStyle(element);
9
9
  if (styles.overflowY === 'scroll' ||
10
10
  styles.overflowY === 'auto' ||
11
11
  styles.overflowX === 'scroll' ||
@@ -23,26 +23,26 @@ function getScrollParent(element) {
23
23
  *
24
24
  * This should be used with popup elements that are transitory like Tooltips and dropdown menus.
25
25
  */
26
- export var useCloseOnTargetHidden = createElemPropsHook(usePopupModel)(function (model) {
27
- var visible = model.state.visibility !== 'hidden';
28
- var callback = React.useCallback(function (entries) {
26
+ export const useCloseOnTargetHidden = createElemPropsHook(usePopupModel)(model => {
27
+ const visible = model.state.visibility !== 'hidden';
28
+ const callback = React.useCallback(entries => {
29
29
  if (entries[0].intersectionRatio < 0.5) {
30
30
  model.events.hide();
31
31
  }
32
32
  }, [model.events]);
33
- React.useLayoutEffect(function () {
33
+ React.useLayoutEffect(() => {
34
34
  if (!visible || !model.state.targetRef.current) {
35
35
  return;
36
36
  }
37
- var target = model.state.targetRef.current;
38
- var scrollParent = getScrollParent(target);
37
+ const target = model.state.targetRef.current;
38
+ const scrollParent = getScrollParent(target);
39
39
  // eslint-disable-next-line compat/compat
40
- var observer = new IntersectionObserver(callback, {
40
+ const observer = new IntersectionObserver(callback, {
41
41
  root: scrollParent,
42
42
  threshold: 0.5,
43
43
  });
44
44
  observer.observe(model.state.targetRef.current);
45
- return function () {
45
+ return () => {
46
46
  observer.disconnect();
47
47
  };
48
48
  }, [callback, model.state.targetRef, visible]);
@@ -8,19 +8,19 @@ import { usePopupModel } from './usePopupModel';
8
8
  * This should be used with popup elements that hide all other content and force the user to accept
9
9
  * or dismiss the popup before continuing (i.e. Modals).
10
10
  */
11
- export var useDisableBodyScroll = createElemPropsHook(usePopupModel)(function (model) {
12
- var visible = model.state.visibility !== 'hidden';
13
- React.useLayoutEffect(function () {
11
+ export const useDisableBodyScroll = createElemPropsHook(usePopupModel)(model => {
12
+ const visible = model.state.visibility !== 'hidden';
13
+ React.useLayoutEffect(() => {
14
14
  if (!visible) {
15
15
  return;
16
16
  }
17
- var overflowY = document.body.style.overflowY;
18
- var overflowX = document.body.style.overflowX;
19
- var overflow = document.body.style.overflow;
17
+ const overflowY = document.body.style.overflowY;
18
+ const overflowX = document.body.style.overflowX;
19
+ const overflow = document.body.style.overflow;
20
20
  document.body.style.overflow = 'hidden';
21
21
  document.body.style.overflowY = 'hidden';
22
22
  document.body.style.overflowX = 'hidden';
23
- return function () {
23
+ return () => {
24
24
  document.body.style.overflow = overflow;
25
25
  document.body.style.overflowY = overflowY;
26
26
  document.body.style.overflowX = overflowX;
@@ -13,11 +13,11 @@ import { usePopupModel } from './usePopupModel';
13
13
  *
14
14
  * This should be used with non-modal dialogs.
15
15
  */
16
- export var useFocusRedirect = createElemPropsHook(usePopupModel)(function (model) {
17
- var onKeyDown = React.useCallback(function (event) {
16
+ export const useFocusRedirect = createElemPropsHook(usePopupModel)(model => {
17
+ const onKeyDown = React.useCallback((event) => {
18
18
  if (model.state.stackRef.current && event.key === 'Tab') {
19
- var firstFocusableElement = getFirstFocusableElement(model.state.stackRef.current);
20
- var lastFocusableElement = getLastFocusableElement(model.state.stackRef.current);
19
+ const firstFocusableElement = getFirstFocusableElement(model.state.stackRef.current);
20
+ const lastFocusableElement = getLastFocusableElement(model.state.stackRef.current);
21
21
  if (event.getModifierState('Shift') && document.activeElement === firstFocusableElement) {
22
22
  event.preventDefault();
23
23
  model.events.hide(event);
@@ -28,14 +28,14 @@ export var useFocusRedirect = createElemPropsHook(usePopupModel)(function (model
28
28
  }
29
29
  }
30
30
  }, [model.events, model.state.stackRef]);
31
- var visible = model.state.visibility !== 'hidden';
31
+ const visible = model.state.visibility !== 'hidden';
32
32
  // `useLayoutEffect` for automation
33
- React.useLayoutEffect(function () {
33
+ React.useLayoutEffect(() => {
34
34
  if (!visible) {
35
35
  return;
36
36
  }
37
37
  document.addEventListener('keydown', onKeyDown);
38
- return function () {
38
+ return () => {
39
39
  document.removeEventListener('keydown', onKeyDown);
40
40
  };
41
41
  }, [visible, onKeyDown]);
@@ -11,20 +11,20 @@ import { usePopupModel } from './usePopupModel';
11
11
  *
12
12
  * This should be used on popup elements that need to hide content (i.e. Modals).
13
13
  */
14
- export var useFocusTrap = createElemPropsHook(usePopupModel)(function (model) {
15
- var onKeyDown = React.useCallback(function (event) {
14
+ export const useFocusTrap = createElemPropsHook(usePopupModel)(model => {
15
+ const onKeyDown = React.useCallback((event) => {
16
16
  if (model.state.stackRef.current) {
17
17
  tabTrappingKey(event, model.state.stackRef.current);
18
18
  }
19
19
  }, [model.state.stackRef]);
20
- var visible = model.state.visibility !== 'hidden';
20
+ const visible = model.state.visibility !== 'hidden';
21
21
  // `useLayoutEffect` for automation
22
- React.useLayoutEffect(function () {
22
+ React.useLayoutEffect(() => {
23
23
  if (!visible) {
24
24
  return;
25
25
  }
26
26
  document.addEventListener('keydown', onKeyDown);
27
- return function () {
27
+ return () => {
28
28
  document.removeEventListener('keydown', onKeyDown);
29
29
  };
30
30
  }, [visible, onKeyDown]);
@@ -9,19 +9,19 @@ import { usePopupModel } from './usePopupModel';
9
9
  * This should be used for popups that have focusable elements inside, like Modals, non-modal
10
10
  * dialogs, menus, etc.
11
11
  */
12
- export var useInitialFocus = createElemPropsHook(usePopupModel)(function (model) {
13
- var visible = model.state.visibility !== 'hidden';
12
+ export const useInitialFocus = createElemPropsHook(usePopupModel)(model => {
13
+ const visible = model.state.visibility !== 'hidden';
14
14
  // Using `useEffect` instead of `useLayoutEffect` so that focus doesn't change _before_ PopperJS
15
15
  // has positioned the Popup. If we change focus before positioning, the browser will scroll to the
16
16
  // top of the page.
17
- React.useEffect(function () {
17
+ React.useEffect(() => {
18
18
  var _a;
19
19
  if (visible && model.state.stackRef.current) {
20
- var element_1 = ((_a = model.state.initialFocusRef) === null || _a === void 0 ? void 0 : _a.current) ||
20
+ const element = ((_a = model.state.initialFocusRef) === null || _a === void 0 ? void 0 : _a.current) ||
21
21
  getFirstFocusableElement(model.state.stackRef.current);
22
- assert(element_1, 'No focusable element was found. Please ensure popup has at least one focusable element');
23
- requestAnimationFrame(function () {
24
- changeFocus(element_1);
22
+ assert(element, 'No focusable element was found. Please ensure popup has at least one focusable element');
23
+ requestAnimationFrame(() => {
24
+ changeFocus(element);
25
25
  });
26
26
  }
27
27
  }, [model.state.initialFocusRef, model.state.stackRef, visible]);
@@ -3,8 +3,7 @@ import { usePopupModel } from './usePopupModel';
3
3
  /**
4
4
  * Adds the necessary props to a {@link PopupCard Popup.Card} subcomponent.
5
5
  */
6
- export var usePopupCard = createElemPropsHook(usePopupModel)(function (_a) {
7
- var state = _a.state;
6
+ export const usePopupCard = createElemPropsHook(usePopupModel)(({ state }) => {
8
7
  return {
9
8
  role: 'dialog',
10
9
  'aria-labelledby': state.id,
@@ -5,8 +5,7 @@ import { usePopupModel } from './usePopupModel';
5
5
  * {@link PopupCloseButton Popup.CloseButton} subcomponent and
6
6
  * {@link PopupCloseIcon Popup.CloseIcon} subcomponent.
7
7
  */
8
- export var usePopupCloseButton = createElemPropsHook(usePopupModel)(function (_a) {
9
- var events = _a.events;
8
+ export const usePopupCloseButton = createElemPropsHook(usePopupModel)(({ events }) => {
10
9
  return {
11
10
  onClick: events.hide,
12
11
  };
@@ -3,8 +3,7 @@ import { usePopupModel } from './usePopupModel';
3
3
  /**
4
4
  * Adds the necessary props to the {@link PopupHeading Popup.Heading} subcomponent.
5
5
  */
6
- export var usePopupHeading = createElemPropsHook(usePopupModel)(function (_a) {
7
- var state = _a.state;
6
+ export const usePopupHeading = createElemPropsHook(usePopupModel)(({ state }) => {
8
7
  return {
9
8
  id: state.id,
10
9
  };
@@ -1,78 +1,73 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
1
  import * as React from 'react';
13
2
  import { createModelHook } from '@workday/canvas-kit-react/common';
14
3
  import { useDisclosureModel } from '@workday/canvas-kit-react/disclosure';
15
4
  // eslint-disable-next-line no-empty-function
16
- var noop = function () { };
17
- export var usePopupModel = createModelHook({
5
+ const noop = () => { };
6
+ export const usePopupModel = createModelHook({
18
7
  // create enough of a model to use `Popup.Card` without a `Popup` container component.
19
8
  defaultContext: { state: {}, events: { show: noop, hide: noop } },
20
- defaultConfig: __assign(__assign({}, useDisclosureModel.defaultConfig), {
9
+ defaultConfig: {
10
+ ...useDisclosureModel.defaultConfig,
21
11
  /**
22
12
  * Optional reference to an element that should receive focus when a popup is hidden. If left
23
13
  * blank, focus will return to the `targetRef`
24
14
  */
25
- returnFocusRef: undefined,
15
+ returnFocusRef: undefined,
26
16
  /**
27
17
  * Optional reference to an element that should receive focus when a popup is shown. If left blank,
28
18
  * focus will be moved to the first focusable element inside the popup.
29
19
  */
30
- initialFocusRef: undefined }),
20
+ initialFocusRef: undefined,
21
+ },
31
22
  requiredConfig: useDisclosureModel.requiredConfig,
32
- })(function (config) {
33
- var stackRef = React.useRef(null);
34
- var targetRef = React.useRef(null);
35
- var _a = React.useState('bottom'), placement = _a[0], setPlacement = _a[1];
36
- var disclosure = useDisclosureModel(config);
37
- var state = __assign(__assign({}, disclosure.state), {
23
+ })(config => {
24
+ const stackRef = React.useRef(null);
25
+ const targetRef = React.useRef(null);
26
+ const [placement, setPlacement] = React.useState('bottom');
27
+ const disclosure = useDisclosureModel(config);
28
+ const state = {
29
+ ...disclosure.state,
38
30
  /**
39
31
  * Reference of the stack item used in the PopupStack. This value will be used in all
40
32
  * Popup-related behaviors.
41
33
  */
42
- stackRef: stackRef,
34
+ stackRef,
43
35
  /**
44
36
  * Reference of the target element. This will point to the element that triggered the showing of a
45
37
  * Popup and is used in Popup-related behaviors.
46
38
  */
47
- targetRef: targetRef,
39
+ targetRef,
48
40
  /**
49
41
  * Optional reference to an element that should receive focus when a popup is shown. If left blank,
50
42
  * focus will be moved to the first focusable element inside the popup.
51
43
  */
52
- initialFocusRef: config.initialFocusRef,
44
+ initialFocusRef: config.initialFocusRef,
53
45
  /**
54
46
  * Optional reference to an element that should receive focus when a popup is hidden. If left
55
47
  * blank, focus will return to the `targetRef`
56
48
  */
57
- returnFocusRef: config.returnFocusRef,
49
+ returnFocusRef: config.returnFocusRef,
58
50
  /**
59
51
  * The placement chosen by the positioning Popper. This should get set prior to showing the popup
60
52
  * content.
61
53
  * @default 'bottom'
62
54
  */
63
- placement: placement });
64
- var events = __assign(__assign({}, disclosure.events), {
55
+ placement,
56
+ };
57
+ const events = {
58
+ ...disclosure.events,
65
59
  /**
66
60
  * Called whenever a popup placement changes around a target. This is useful for animations that
67
61
  * depend on the placement chosen.
68
62
  */
69
- updatePlacement: function (data) {
63
+ updatePlacement(data) {
70
64
  setPlacement(data.placement);
71
- } });
65
+ },
66
+ };
72
67
  return {
73
- state: state,
74
- events: events,
68
+ state,
69
+ events,
75
70
  };
76
71
  });
77
72
  // create enough of a model to use `Popup.Card` without a `Popup` container component.
78
- export var PopupModelContext = usePopupModel.Context;
73
+ export const PopupModelContext = usePopupModel.Context;
@@ -5,19 +5,18 @@ import React from 'react';
5
5
  * Adds the necessary props to a {@link Popper} component. Used by the
6
6
  * {@link PopupPopper Popup.Popper} subcomponent.
7
7
  */
8
- export var usePopupPopper = createElemPropsHook(usePopupModel)(function (_a, ref) {
9
- var state = _a.state, events = _a.events;
10
- var elementRef = useForkRef(ref, state.stackRef);
11
- var onPlacementChange = React.useCallback(function (placement) {
8
+ export const usePopupPopper = createElemPropsHook(usePopupModel)(({ state, events }, ref) => {
9
+ const elementRef = useForkRef(ref, state.stackRef);
10
+ const onPlacementChange = React.useCallback((placement) => {
12
11
  if (placement !== state.placement) {
13
12
  // only update if the placement has changed
14
- events.updatePlacement({ placement: placement });
13
+ events.updatePlacement({ placement });
15
14
  }
16
15
  }, [events, state.placement]);
17
16
  return {
18
17
  open: state.visibility !== 'hidden',
19
18
  anchorElement: state.targetRef,
20
19
  ref: elementRef,
21
- onPlacementChange: onPlacementChange,
20
+ onPlacementChange,
22
21
  };
23
22
  });
@@ -43,36 +43,36 @@ import { useLocalRef, useIsRTL } from '@workday/canvas-kit-react/common';
43
43
  * by all ephemeral-type popups (like Tooltips, Select menus, etc). It will also add in clickOutside
44
44
  * detection.
45
45
  */
46
- export var usePopupStack = function (ref, target) {
47
- var _a = useLocalRef(ref), elementRef = _a.elementRef, localRef = _a.localRef;
48
- var isRTL = useIsRTL();
46
+ export const usePopupStack = (ref, target) => {
47
+ const { elementRef, localRef } = useLocalRef(ref);
48
+ const isRTL = useIsRTL();
49
49
  // useState function input ensures we only create a container once.
50
- var popupRef = React.useState(function () {
51
- var container = PopupStack.createContainer();
50
+ const [popupRef] = React.useState(() => {
51
+ const container = PopupStack.createContainer();
52
52
  elementRef(container);
53
53
  return container;
54
- })[0];
54
+ });
55
55
  // We useLayoutEffect to ensure proper timing of registration of the element to the popup stack.
56
56
  // Without this, the timing is unpredictable when mixed with other frameworks. Other frameworks
57
57
  // should also register as soon as the element is available
58
- React.useLayoutEffect(function () {
58
+ React.useLayoutEffect(() => {
59
59
  if (popupRef !== localRef.current) {
60
- throw Error("The 'ref' passed to usePopupStack should not be applied to a React element. This will cause a runtime error where the PopupStack and React compete for the element. Instead use ReactDOM.createPortal(<YourComponent />, ref.current)");
60
+ throw Error(`The 'ref' passed to usePopupStack should not be applied to a React element. This will cause a runtime error where the PopupStack and React compete for the element. Instead use ReactDOM.createPortal(<YourComponent />, ref.current)`);
61
61
  }
62
- var targetEl = target
62
+ const targetEl = target
63
63
  ? 'current' in target
64
64
  ? target.current || undefined
65
65
  : target
66
66
  : undefined;
67
- var element = localRef.current;
67
+ const element = localRef.current;
68
68
  PopupStack.add({ element: element, owner: targetEl });
69
- return function () {
69
+ return () => {
70
70
  PopupStack.remove(element);
71
71
  };
72
72
  }, [localRef, target, popupRef]);
73
73
  // The direction will properly follow the theme via React context, but portals lose the `dir`
74
74
  // hierarchy, so we'll add it back here.
75
- React.useLayoutEffect(function () {
75
+ React.useLayoutEffect(() => {
76
76
  var _a, _b;
77
77
  if (isRTL) {
78
78
  (_a = localRef.current) === null || _a === void 0 ? void 0 : _a.setAttribute('dir', 'rtl');
@@ -3,12 +3,11 @@ import { usePopupModel } from './usePopupModel';
3
3
  /**
4
4
  * Adds the necessary props to a {@link PopupTarget Popup.Target} subcomponent.
5
5
  */
6
- export var usePopupTarget = createElemPropsHook(usePopupModel)(function (_a, ref) {
7
- var events = _a.events, state = _a.state;
8
- var elementRef = useForkRef(ref, state.targetRef);
6
+ export const usePopupTarget = createElemPropsHook(usePopupModel)(({ events, state }, ref) => {
7
+ const elementRef = useForkRef(ref, state.targetRef);
9
8
  return {
10
9
  ref: elementRef,
11
- onClick: function (event) {
10
+ onClick: (event) => {
12
11
  // If we're wrapping a target component that doesn't handle ref forwarding, update the
13
12
  // `state.targetRef` manually. This ensures that custom target components don't need to handle
14
13
  // ref forwarding since ref forwarding is only really needed to programmatically open popups
@@ -3,12 +3,11 @@ import { usePopupModel } from './usePopupModel';
3
3
  /**
4
4
  * Adds the necessary props to a `Target` component. Used by the Popup.Target subcomponent.
5
5
  */
6
- export var usePopupTargetContext = createElemPropsHook(usePopupModel)(function (_a, ref) {
7
- var events = _a.events, state = _a.state;
8
- var elementRef = useForkRef(ref, state.targetRef);
6
+ export const usePopupTargetContext = createElemPropsHook(usePopupModel)(({ events, state }, ref) => {
7
+ const elementRef = useForkRef(ref, state.targetRef);
9
8
  return {
10
9
  ref: elementRef,
11
- onContextMenu: function (event) {
10
+ onContextMenu: (event) => {
12
11
  // If we're wrapping a target component that doesn't handle ref forwarding, update the
13
12
  // `state.targetRef` manually. This ensures that custom target components don't need to handle
14
13
  // ref forwarding since ref forwarding is only really needed to programmatically open popups