@workday/canvas-kit-react 5.3.17 → 5.4.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/action-bar/lib/ActionBar.tsx +42 -29
- package/avatar/lib/Avatar.tsx +4 -0
- package/button/lib/PrimaryButton.tsx +110 -32
- package/button/lib/SecondaryButton.tsx +31 -16
- package/button/lib/TertiaryButton.tsx +45 -35
- package/button/lib/parts/ButtonContainer.tsx +18 -5
- package/button/lib/parts/ButtonLabelIcon.tsx +34 -14
- package/button/lib/types.ts +11 -0
- package/checkbox/lib/Checkbox.tsx +1 -1
- package/common/README.md +78 -0
- package/common/index.ts +1 -0
- package/common/lib/EllipsisText.tsx +11 -0
- package/common/lib/parts/_brand-assets.ts +6 -6
- package/common/lib/styles/accessibleHide.ts +2 -2
- package/common/lib/theming/README.md +189 -25
- package/common/lib/theming/breakpoints.ts +296 -16
- package/common/lib/theming/types.ts +191 -1
- package/common/lib/utils/components.ts +50 -23
- package/common/lib/utils/elements.ts +5 -1
- package/common/lib/utils/index.ts +2 -0
- package/common/lib/utils/mergeProps.ts +4 -0
- package/common/lib/utils/useConstant.ts +18 -0
- package/common/lib/utils/useResizeObserver.ts +29 -0
- package/common/lib/utils/useUniqueId.ts +46 -4
- package/cookie-banner/README.md +15 -10
- package/cookie-banner/index.ts +3 -3
- package/cookie-banner/lib/CookieBanner.tsx +29 -4
- package/dist/commonjs/action-bar/lib/ActionBar.d.ts.map +1 -1
- package/dist/commonjs/action-bar/lib/ActionBar.js +33 -22
- package/dist/commonjs/avatar/lib/Avatar.d.ts.map +1 -1
- package/dist/commonjs/avatar/lib/Avatar.js +3 -0
- package/dist/commonjs/button/lib/PrimaryButton.d.ts +80 -6
- package/dist/commonjs/button/lib/PrimaryButton.d.ts.map +1 -1
- package/dist/commonjs/button/lib/PrimaryButton.js +80 -26
- package/dist/commonjs/button/lib/SecondaryButton.d.ts +8 -5
- package/dist/commonjs/button/lib/SecondaryButton.d.ts.map +1 -1
- package/dist/commonjs/button/lib/SecondaryButton.js +22 -12
- package/dist/commonjs/button/lib/TertiaryButton.d.ts +8 -4
- package/dist/commonjs/button/lib/TertiaryButton.d.ts.map +1 -1
- package/dist/commonjs/button/lib/TertiaryButton.js +24 -19
- package/dist/commonjs/button/lib/parts/ButtonContainer.d.ts +5 -3
- package/dist/commonjs/button/lib/parts/ButtonContainer.d.ts.map +1 -1
- package/dist/commonjs/button/lib/parts/ButtonContainer.js +7 -9
- package/dist/commonjs/button/lib/parts/ButtonLabel.d.ts +1 -1
- package/dist/commonjs/button/lib/parts/ButtonLabel.d.ts.map +1 -1
- package/dist/commonjs/button/lib/parts/ButtonLabelIcon.d.ts +7 -4
- package/dist/commonjs/button/lib/parts/ButtonLabelIcon.d.ts.map +1 -1
- package/dist/commonjs/button/lib/parts/ButtonLabelIcon.js +28 -13
- package/dist/commonjs/button/lib/types.d.ts +9 -0
- package/dist/commonjs/button/lib/types.d.ts.map +1 -1
- package/dist/commonjs/checkbox/lib/Checkbox.d.ts +1 -1
- package/dist/commonjs/common/index.d.ts +1 -0
- package/dist/commonjs/common/index.d.ts.map +1 -1
- package/dist/commonjs/common/index.js +1 -0
- package/dist/commonjs/common/lib/EllipsisText.d.ts +5 -0
- package/dist/commonjs/common/lib/EllipsisText.d.ts.map +1 -0
- package/dist/commonjs/common/lib/EllipsisText.js +13 -0
- package/dist/commonjs/common/lib/parts/_brand-assets.d.ts.map +1 -1
- package/dist/commonjs/common/lib/parts/_brand-assets.js +6 -6
- package/dist/commonjs/common/lib/styles/accessibleHide.d.ts +2 -2
- package/dist/commonjs/common/lib/styles/accessibleHide.d.ts.map +1 -1
- package/dist/commonjs/common/lib/theming/breakpoints.d.ts +287 -6
- package/dist/commonjs/common/lib/theming/breakpoints.d.ts.map +1 -1
- package/dist/commonjs/common/lib/theming/breakpoints.js +192 -10
- package/dist/commonjs/common/lib/theming/types.d.ts +191 -1
- package/dist/commonjs/common/lib/theming/types.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/components.d.ts +19 -9
- package/dist/commonjs/common/lib/utils/components.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/components.js +12 -2
- package/dist/commonjs/common/lib/utils/elements.d.ts +2 -2
- package/dist/commonjs/common/lib/utils/elements.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/elements.js +4 -1
- package/dist/commonjs/common/lib/utils/index.d.ts +2 -0
- package/dist/commonjs/common/lib/utils/index.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/index.js +2 -0
- package/dist/commonjs/common/lib/utils/mergeProps.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/mergeProps.js +5 -0
- package/dist/commonjs/common/lib/utils/useConstant.d.ts +9 -0
- package/dist/commonjs/common/lib/utils/useConstant.d.ts.map +1 -0
- package/dist/commonjs/common/lib/utils/useConstant.js +18 -0
- package/dist/commonjs/common/lib/utils/useResizeObserver.d.ts +3 -0
- package/dist/commonjs/common/lib/utils/useResizeObserver.d.ts.map +1 -0
- package/dist/commonjs/common/lib/utils/useResizeObserver.js +42 -0
- package/dist/commonjs/common/lib/utils/useUniqueId.d.ts +28 -0
- package/dist/commonjs/common/lib/utils/useUniqueId.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/useUniqueId.js +42 -14
- package/dist/commonjs/cookie-banner/index.d.ts +3 -3
- package/dist/commonjs/cookie-banner/index.d.ts.map +1 -1
- package/dist/commonjs/cookie-banner/index.js +1 -1
- package/dist/commonjs/cookie-banner/lib/CookieBanner.d.ts +19 -2
- package/dist/commonjs/cookie-banner/lib/CookieBanner.d.ts.map +1 -1
- package/dist/commonjs/cookie-banner/lib/CookieBanner.js +19 -8
- package/dist/commonjs/dialog/lib/hooks/useDialogCard.d.ts +4 -16
- package/dist/commonjs/dialog/lib/hooks/useDialogCard.d.ts.map +1 -1
- package/dist/commonjs/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
- package/dist/commonjs/dialog/lib/hooks/useDialogPopper.d.ts.map +1 -1
- package/dist/commonjs/form-field/lib/FormField.d.ts.map +1 -1
- package/dist/commonjs/form-field/lib/FormField.js +1 -2
- package/dist/commonjs/modal/lib/ModalOverlay.d.ts +4 -2
- package/dist/commonjs/modal/lib/ModalOverlay.d.ts.map +1 -1
- package/dist/commonjs/modal/lib/hooks/useModalCard.d.ts +4 -16
- package/dist/commonjs/modal/lib/hooks/useModalCard.d.ts.map +1 -1
- package/dist/commonjs/modal/lib/hooks/useModalHeading.d.ts +5 -17
- package/dist/commonjs/modal/lib/hooks/useModalHeading.d.ts.map +1 -1
- package/dist/commonjs/page-header/index.d.ts +3 -3
- package/dist/commonjs/page-header/index.d.ts.map +1 -1
- package/dist/commonjs/page-header/index.js +1 -1
- package/dist/commonjs/page-header/lib/PageHeader.d.ts +19 -2
- package/dist/commonjs/page-header/lib/PageHeader.d.ts.map +1 -1
- package/dist/commonjs/page-header/lib/PageHeader.js +18 -7
- package/dist/commonjs/pagination/lib/Pagination/PageList.d.ts +1 -1
- package/dist/commonjs/pagination/lib/Pagination/PageList.d.ts.map +1 -1
- package/dist/commonjs/pagination/lib/Pagination/Pagination.d.ts +5 -5
- package/dist/commonjs/pagination/lib/Pagination/common/List.d.ts +1 -1
- package/dist/commonjs/pagination/lib/Pagination/common/List.d.ts.map +1 -1
- package/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
- package/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/PopupCard.js +2 -3
- package/dist/commonjs/popup/lib/hooks/focus-trap-js.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/focus-trap-js.js +1 -0
- package/dist/commonjs/popup/lib/hooks/usePopupCard.d.ts +5 -2
- package/dist/commonjs/popup/lib/hooks/usePopupCard.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
- package/dist/commonjs/popup/lib/hooks/usePopupCloseButton.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/usePopupHeading.d.ts +5 -2
- package/dist/commonjs/popup/lib/hooks/usePopupHeading.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/usePopupPopper.d.ts +4 -2
- package/dist/commonjs/popup/lib/hooks/usePopupPopper.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/usePopupTarget.d.ts +4 -2
- package/dist/commonjs/popup/lib/hooks/usePopupTarget.d.ts.map +1 -1
- package/dist/commonjs/popup/lib/hooks/useReturnFocus.d.ts +1 -1
- package/dist/commonjs/popup/lib/hooks/useReturnFocus.js +1 -1
- package/dist/commonjs/radio/lib/Radio.d.ts +1 -1
- package/dist/commonjs/switch/lib/Switch.d.ts +1 -1
- package/dist/commonjs/table/lib/TableRow.d.ts +5 -4
- package/dist/commonjs/table/lib/TableRow.d.ts.map +1 -1
- package/dist/commonjs/table/lib/TableRow.js +12 -26
- package/dist/commonjs/tabs/index.d.ts +5 -0
- package/dist/commonjs/tabs/index.d.ts.map +1 -1
- package/dist/commonjs/tabs/index.js +11 -0
- package/dist/commonjs/tabs/lib/Tabs.d.ts +35 -7
- package/dist/commonjs/tabs/lib/Tabs.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/Tabs.js +28 -7
- package/dist/commonjs/tabs/lib/TabsItem.d.ts +107 -0
- package/dist/commonjs/tabs/lib/TabsItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsItem.js +140 -0
- package/dist/commonjs/tabs/lib/TabsList.d.ts +43 -0
- package/dist/commonjs/tabs/lib/TabsList.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsList.js +53 -0
- package/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts +21 -0
- package/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/{TabList.js → TabsMenuPopper.js} +7 -19
- package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts +31 -0
- package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsOverflowButton.js +57 -0
- package/{ts3.5/dist/commonjs/tabs/lib/TabPanel.d.ts → dist/commonjs/tabs/lib/TabsPanel.d.ts} +39 -29
- package/dist/commonjs/tabs/lib/TabsPanel.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsPanel.js +64 -0
- package/dist/{es6/tabs/lib/TabList.d.ts → commonjs/tabs/lib/TabsPanels.d.ts} +5 -5
- package/dist/commonjs/tabs/lib/TabsPanels.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/TabsPanels.js +21 -0
- package/dist/commonjs/tabs/lib/cursor/index.d.ts +1 -1
- package/dist/commonjs/tabs/lib/cursor/index.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/cursor/index.js +1 -1
- package/dist/commonjs/tabs/lib/cursor/useCursorModel.d.ts +23 -13
- package/dist/commonjs/tabs/lib/cursor/useCursorModel.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/cursor/useCursorModel.js +50 -49
- package/dist/commonjs/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
- package/dist/commonjs/tabs/lib/cursor/useRovingFocus.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/cursor/{hooks.js → useRovingFocus.js} +26 -50
- package/dist/commonjs/tabs/lib/list/index.d.ts +2 -1
- package/dist/commonjs/tabs/lib/list/index.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/list/index.js +2 -1
- package/dist/commonjs/tabs/lib/list/renderItem.d.ts +4 -0
- package/dist/commonjs/tabs/lib/list/renderItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/list/renderItem.js +18 -0
- package/dist/commonjs/tabs/lib/list/useListModel.d.ts +25 -13
- package/dist/commonjs/tabs/lib/list/useListModel.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/list/useListModel.js +20 -7
- package/dist/commonjs/tabs/lib/list/useListRegisterItem.d.ts +14 -0
- package/dist/commonjs/tabs/lib/list/useListRegisterItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/list/useListRegisterItem.js +46 -0
- package/dist/commonjs/tabs/lib/menu/Menu.d.ts +80 -0
- package/dist/commonjs/tabs/lib/menu/Menu.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/Menu.js +94 -0
- package/dist/commonjs/tabs/lib/menu/MenuCard.d.ts +17 -0
- package/dist/commonjs/tabs/lib/menu/MenuCard.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuCard.js +82 -0
- package/dist/commonjs/tabs/lib/menu/MenuItem.d.ts +62 -0
- package/dist/commonjs/tabs/lib/menu/MenuItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuItem.js +145 -0
- package/dist/commonjs/tabs/lib/menu/MenuList.d.ts +23 -0
- package/dist/commonjs/tabs/lib/menu/MenuList.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuList.js +52 -0
- package/dist/commonjs/tabs/lib/menu/MenuPopper.d.ts +21 -0
- package/dist/commonjs/tabs/lib/menu/MenuPopper.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuPopper.js +45 -0
- package/dist/commonjs/tabs/lib/menu/MenuTarget.d.ts +21 -0
- package/dist/commonjs/tabs/lib/menu/MenuTarget.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/MenuTarget.js +60 -0
- package/dist/commonjs/tabs/lib/menu/index.d.ts +8 -0
- package/dist/commonjs/tabs/lib/menu/index.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/index.js +18 -0
- package/dist/commonjs/tabs/lib/menu/useMenuModel.d.ts +35 -0
- package/dist/commonjs/tabs/lib/menu/useMenuModel.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/menu/useMenuModel.js +33 -0
- package/dist/commonjs/tabs/lib/overflow/index.d.ts +5 -0
- package/dist/commonjs/tabs/lib/overflow/index.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/index.js +9 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.js +22 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.js +32 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowModel.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowModel.js +126 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowTarget.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/overflow/useOverflowTarget.js +35 -0
- package/dist/commonjs/tabs/lib/selection/index.d.ts +4 -0
- package/dist/commonjs/tabs/lib/selection/index.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/selection/index.js +8 -0
- package/dist/commonjs/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
- package/dist/commonjs/tabs/lib/selection/useResetCursorOnBlur.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/{hooks.js → selection/useResetCursorOnBlur.js} +8 -9
- package/dist/commonjs/tabs/lib/selection/useSelectionItem.d.ts +8 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionItem.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionItem.js +16 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionModel.d.ts +62 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionModel.d.ts.map +1 -0
- package/dist/commonjs/tabs/lib/selection/useSelectionModel.js +80 -0
- package/dist/commonjs/tabs/lib/useTabsModel.d.ts +39 -38
- package/dist/commonjs/tabs/lib/useTabsModel.d.ts.map +1 -1
- package/dist/commonjs/tabs/lib/useTabsModel.js +50 -37
- package/dist/commonjs/tokens/index.d.ts +3 -20
- package/dist/commonjs/tokens/index.d.ts.map +1 -1
- package/dist/commonjs/tokens/index.js +3 -6
- package/dist/commonjs/tokens/lib/depth.d.ts +109 -3
- package/dist/commonjs/tokens/lib/depth.d.ts.map +1 -1
- package/dist/commonjs/tokens/lib/depth.js +40 -5
- package/dist/commonjs/tooltip/lib/useTooltip.d.ts +1 -1
- package/dist/commonjs/tooltip/lib/useTooltip.js +2 -5
- package/dist/es6/action-bar/lib/ActionBar.d.ts.map +1 -1
- package/dist/es6/action-bar/lib/ActionBar.js +33 -22
- package/dist/es6/avatar/lib/Avatar.d.ts.map +1 -1
- package/dist/es6/avatar/lib/Avatar.js +3 -0
- package/dist/es6/button/lib/PrimaryButton.d.ts +80 -6
- package/dist/es6/button/lib/PrimaryButton.d.ts.map +1 -1
- package/dist/es6/button/lib/PrimaryButton.js +81 -27
- package/dist/es6/button/lib/SecondaryButton.d.ts +8 -5
- package/dist/es6/button/lib/SecondaryButton.d.ts.map +1 -1
- package/dist/es6/button/lib/SecondaryButton.js +22 -12
- package/dist/es6/button/lib/TertiaryButton.d.ts +8 -4
- package/dist/es6/button/lib/TertiaryButton.d.ts.map +1 -1
- package/dist/es6/button/lib/TertiaryButton.js +25 -20
- package/dist/es6/button/lib/parts/ButtonContainer.d.ts +5 -3
- package/dist/es6/button/lib/parts/ButtonContainer.d.ts.map +1 -1
- package/dist/es6/button/lib/parts/ButtonContainer.js +7 -9
- package/dist/es6/button/lib/parts/ButtonLabel.d.ts +1 -1
- package/dist/es6/button/lib/parts/ButtonLabel.d.ts.map +1 -1
- package/dist/es6/button/lib/parts/ButtonLabelIcon.d.ts +7 -4
- package/dist/es6/button/lib/parts/ButtonLabelIcon.d.ts.map +1 -1
- package/dist/es6/button/lib/parts/ButtonLabelIcon.js +28 -13
- package/dist/es6/button/lib/types.d.ts +9 -0
- package/dist/es6/button/lib/types.d.ts.map +1 -1
- package/dist/es6/checkbox/lib/Checkbox.d.ts +1 -1
- package/dist/es6/common/index.d.ts +1 -0
- package/dist/es6/common/index.d.ts.map +1 -1
- package/dist/es6/common/index.js +1 -0
- package/dist/es6/common/lib/EllipsisText.d.ts +5 -0
- package/dist/es6/common/lib/EllipsisText.d.ts.map +1 -0
- package/dist/es6/common/lib/EllipsisText.js +8 -0
- package/dist/es6/common/lib/parts/_brand-assets.d.ts.map +1 -1
- package/dist/es6/common/lib/parts/_brand-assets.js +6 -6
- package/dist/es6/common/lib/styles/accessibleHide.d.ts +2 -2
- package/dist/es6/common/lib/styles/accessibleHide.d.ts.map +1 -1
- package/dist/es6/common/lib/theming/breakpoints.d.ts +287 -6
- package/dist/es6/common/lib/theming/breakpoints.d.ts.map +1 -1
- package/dist/es6/common/lib/theming/breakpoints.js +192 -10
- package/dist/es6/common/lib/theming/types.d.ts +191 -1
- package/dist/es6/common/lib/theming/types.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/components.d.ts +19 -9
- package/dist/es6/common/lib/utils/components.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/components.js +12 -2
- package/dist/es6/common/lib/utils/elements.d.ts +2 -2
- package/dist/es6/common/lib/utils/elements.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/elements.js +4 -1
- package/dist/es6/common/lib/utils/index.d.ts +2 -0
- package/dist/es6/common/lib/utils/index.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/index.js +2 -0
- package/dist/es6/common/lib/utils/mergeProps.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/mergeProps.js +5 -0
- package/dist/es6/common/lib/utils/useConstant.d.ts +9 -0
- package/dist/es6/common/lib/utils/useConstant.d.ts.map +1 -0
- package/dist/es6/common/lib/utils/useConstant.js +15 -0
- package/dist/es6/common/lib/utils/useResizeObserver.d.ts +3 -0
- package/dist/es6/common/lib/utils/useResizeObserver.d.ts.map +1 -0
- package/dist/es6/common/lib/utils/useResizeObserver.js +37 -0
- package/dist/es6/common/lib/utils/useUniqueId.d.ts +28 -0
- package/dist/es6/common/lib/utils/useUniqueId.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/useUniqueId.js +42 -4
- package/dist/es6/cookie-banner/index.d.ts +3 -3
- package/dist/es6/cookie-banner/index.d.ts.map +1 -1
- package/dist/es6/cookie-banner/index.js +3 -3
- package/dist/es6/cookie-banner/lib/CookieBanner.d.ts +19 -2
- package/dist/es6/cookie-banner/lib/CookieBanner.d.ts.map +1 -1
- package/dist/es6/cookie-banner/lib/CookieBanner.js +19 -8
- package/dist/es6/dialog/lib/hooks/useDialogCard.d.ts +4 -16
- package/dist/es6/dialog/lib/hooks/useDialogCard.d.ts.map +1 -1
- package/dist/es6/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
- package/dist/es6/dialog/lib/hooks/useDialogPopper.d.ts.map +1 -1
- package/dist/es6/form-field/lib/FormField.d.ts.map +1 -1
- package/dist/es6/form-field/lib/FormField.js +2 -3
- package/dist/es6/modal/lib/ModalOverlay.d.ts +4 -2
- package/dist/es6/modal/lib/ModalOverlay.d.ts.map +1 -1
- package/dist/es6/modal/lib/hooks/useModalCard.d.ts +4 -16
- package/dist/es6/modal/lib/hooks/useModalCard.d.ts.map +1 -1
- package/dist/es6/modal/lib/hooks/useModalHeading.d.ts +5 -17
- package/dist/es6/modal/lib/hooks/useModalHeading.d.ts.map +1 -1
- package/dist/es6/page-header/index.d.ts +3 -3
- package/dist/es6/page-header/index.d.ts.map +1 -1
- package/dist/es6/page-header/index.js +3 -3
- package/dist/es6/page-header/lib/PageHeader.d.ts +19 -2
- package/dist/es6/page-header/lib/PageHeader.d.ts.map +1 -1
- package/dist/es6/page-header/lib/PageHeader.js +18 -7
- package/dist/es6/pagination/lib/Pagination/PageList.d.ts +1 -1
- package/dist/es6/pagination/lib/Pagination/PageList.d.ts.map +1 -1
- package/dist/es6/pagination/lib/Pagination/Pagination.d.ts +5 -5
- package/dist/es6/pagination/lib/Pagination/common/List.d.ts +1 -1
- package/dist/es6/pagination/lib/Pagination/common/List.d.ts.map +1 -1
- package/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
- package/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.d.ts.map +1 -1
- package/dist/es6/popup/lib/PopupCard.js +3 -4
- package/dist/es6/popup/lib/hooks/focus-trap-js.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/focus-trap-js.js +1 -0
- package/dist/es6/popup/lib/hooks/usePopupCard.d.ts +5 -2
- package/dist/es6/popup/lib/hooks/usePopupCard.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
- package/dist/es6/popup/lib/hooks/usePopupCloseButton.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/usePopupHeading.d.ts +5 -2
- package/dist/es6/popup/lib/hooks/usePopupHeading.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/usePopupPopper.d.ts +4 -2
- package/dist/es6/popup/lib/hooks/usePopupPopper.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/usePopupTarget.d.ts +4 -2
- package/dist/es6/popup/lib/hooks/usePopupTarget.d.ts.map +1 -1
- package/dist/es6/popup/lib/hooks/useReturnFocus.d.ts +1 -1
- package/dist/es6/popup/lib/hooks/useReturnFocus.js +1 -1
- package/dist/es6/radio/lib/Radio.d.ts +1 -1
- package/dist/es6/switch/lib/Switch.d.ts +1 -1
- package/dist/es6/table/lib/TableRow.d.ts +5 -4
- package/dist/es6/table/lib/TableRow.d.ts.map +1 -1
- package/dist/es6/table/lib/TableRow.js +12 -26
- package/dist/es6/tabs/index.d.ts +5 -0
- package/dist/es6/tabs/index.d.ts.map +1 -1
- package/dist/es6/tabs/index.js +5 -0
- package/dist/es6/tabs/lib/Tabs.d.ts +35 -7
- package/dist/es6/tabs/lib/Tabs.d.ts.map +1 -1
- package/dist/es6/tabs/lib/Tabs.js +28 -7
- package/dist/es6/tabs/lib/TabsItem.d.ts +107 -0
- package/dist/es6/tabs/lib/TabsItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsItem.js +131 -0
- package/dist/es6/tabs/lib/TabsList.d.ts +43 -0
- package/dist/es6/tabs/lib/TabsList.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsList.js +44 -0
- package/dist/es6/tabs/lib/TabsMenuPopper.d.ts +21 -0
- package/dist/es6/tabs/lib/TabsMenuPopper.d.ts.map +1 -0
- package/dist/es6/tabs/lib/{TabList.js → TabsMenuPopper.js} +8 -20
- package/dist/es6/tabs/lib/TabsOverflowButton.d.ts +31 -0
- package/dist/es6/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsOverflowButton.js +48 -0
- package/dist/{commonjs/tabs/lib/TabPanel.d.ts → es6/tabs/lib/TabsPanel.d.ts} +15 -5
- package/dist/es6/tabs/lib/TabsPanel.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsPanel.js +59 -0
- package/{ts3.5/dist/commonjs/tabs/lib/TabList.d.ts → dist/es6/tabs/lib/TabsPanels.d.ts} +15 -15
- package/dist/es6/tabs/lib/TabsPanels.d.ts.map +1 -0
- package/dist/es6/tabs/lib/TabsPanels.js +12 -0
- package/dist/es6/tabs/lib/cursor/index.d.ts +1 -1
- package/dist/es6/tabs/lib/cursor/index.d.ts.map +1 -1
- package/dist/es6/tabs/lib/cursor/index.js +1 -1
- package/dist/es6/tabs/lib/cursor/useCursorModel.d.ts +23 -13
- package/dist/es6/tabs/lib/cursor/useCursorModel.d.ts.map +1 -1
- package/dist/es6/tabs/lib/cursor/useCursorModel.js +51 -50
- package/dist/es6/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
- package/dist/es6/tabs/lib/cursor/useRovingFocus.d.ts.map +1 -0
- package/dist/es6/tabs/lib/cursor/useRovingFocus.js +84 -0
- package/dist/es6/tabs/lib/list/index.d.ts +2 -1
- package/dist/es6/tabs/lib/list/index.d.ts.map +1 -1
- package/dist/es6/tabs/lib/list/index.js +2 -1
- package/dist/es6/tabs/lib/list/renderItem.d.ts +4 -0
- package/dist/es6/tabs/lib/list/renderItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/list/renderItem.js +12 -0
- package/dist/es6/tabs/lib/list/useListModel.d.ts +25 -13
- package/dist/es6/tabs/lib/list/useListModel.d.ts.map +1 -1
- package/dist/es6/tabs/lib/list/useListModel.js +21 -8
- package/dist/es6/tabs/lib/list/useListRegisterItem.d.ts +14 -0
- package/dist/es6/tabs/lib/list/useListRegisterItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/list/useListRegisterItem.js +41 -0
- package/dist/es6/tabs/lib/menu/Menu.d.ts +80 -0
- package/dist/es6/tabs/lib/menu/Menu.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/Menu.js +89 -0
- package/dist/es6/tabs/lib/menu/MenuCard.d.ts +17 -0
- package/dist/es6/tabs/lib/menu/MenuCard.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuCard.js +73 -0
- package/dist/es6/tabs/lib/menu/MenuItem.d.ts +62 -0
- package/dist/es6/tabs/lib/menu/MenuItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuItem.js +136 -0
- package/dist/es6/tabs/lib/menu/MenuList.d.ts +23 -0
- package/dist/es6/tabs/lib/menu/MenuList.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuList.js +43 -0
- package/dist/es6/tabs/lib/menu/MenuPopper.d.ts +21 -0
- package/dist/es6/tabs/lib/menu/MenuPopper.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuPopper.js +36 -0
- package/dist/es6/tabs/lib/menu/MenuTarget.d.ts +21 -0
- package/dist/es6/tabs/lib/menu/MenuTarget.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/MenuTarget.js +51 -0
- package/dist/es6/tabs/lib/menu/index.d.ts +8 -0
- package/dist/es6/tabs/lib/menu/index.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/index.js +7 -0
- package/dist/es6/tabs/lib/menu/useMenuModel.d.ts +35 -0
- package/dist/es6/tabs/lib/menu/useMenuModel.d.ts.map +1 -0
- package/dist/es6/tabs/lib/menu/useMenuModel.js +31 -0
- package/dist/es6/tabs/lib/overflow/index.d.ts +5 -0
- package/dist/es6/tabs/lib/overflow/index.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/index.js +4 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.js +13 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.js +30 -0
- package/dist/es6/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
- package/dist/es6/tabs/lib/overflow/useOverflowModel.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/useOverflowModel.js +120 -0
- package/dist/es6/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
- package/dist/es6/tabs/lib/overflow/useOverflowTarget.d.ts.map +1 -0
- package/dist/es6/tabs/lib/overflow/useOverflowTarget.js +30 -0
- package/dist/es6/tabs/lib/selection/index.d.ts +4 -0
- package/dist/es6/tabs/lib/selection/index.d.ts.map +1 -0
- package/dist/es6/tabs/lib/selection/index.js +3 -0
- package/dist/es6/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
- package/dist/es6/tabs/lib/selection/useResetCursorOnBlur.d.ts.map +1 -0
- package/dist/es6/tabs/lib/{hooks.js → selection/useResetCursorOnBlur.js} +8 -9
- package/dist/es6/tabs/lib/selection/useSelectionItem.d.ts +8 -0
- package/dist/es6/tabs/lib/selection/useSelectionItem.d.ts.map +1 -0
- package/dist/es6/tabs/lib/selection/useSelectionItem.js +14 -0
- package/dist/es6/tabs/lib/selection/useSelectionModel.d.ts +62 -0
- package/dist/es6/tabs/lib/selection/useSelectionModel.d.ts.map +1 -0
- package/dist/es6/tabs/lib/selection/useSelectionModel.js +75 -0
- package/dist/es6/tabs/lib/useTabsModel.d.ts +39 -38
- package/dist/es6/tabs/lib/useTabsModel.d.ts.map +1 -1
- package/dist/es6/tabs/lib/useTabsModel.js +50 -37
- package/dist/es6/tokens/index.d.ts +3 -20
- package/dist/es6/tokens/index.d.ts.map +1 -1
- package/dist/es6/tokens/index.js +1 -1
- package/dist/es6/tokens/lib/depth.d.ts +109 -3
- package/dist/es6/tokens/lib/depth.d.ts.map +1 -1
- package/dist/es6/tokens/lib/depth.js +40 -2
- package/dist/es6/tooltip/lib/useTooltip.d.ts +1 -1
- package/dist/es6/tooltip/lib/useTooltip.js +2 -2
- package/form-field/lib/FormField.tsx +8 -3
- package/package.json +7 -7
- package/page-header/README.md +11 -6
- package/page-header/index.ts +3 -3
- package/page-header/lib/PageHeader.tsx +28 -3
- package/popup/lib/PopupCard.tsx +3 -3
- package/popup/lib/hooks/focus-trap-js.ts +1 -0
- package/popup/lib/hooks/useReturnFocus.tsx +1 -1
- package/radio/lib/Radio.tsx +1 -1
- package/switch/lib/Switch.tsx +1 -1
- package/table/lib/TableRow.tsx +19 -13
- package/tabs/index.ts +6 -0
- package/tabs/lib/Tabs.tsx +34 -9
- package/tabs/lib/TabsItem.tsx +250 -0
- package/tabs/lib/TabsList.tsx +67 -0
- package/tabs/lib/TabsMenuPopper.tsx +27 -0
- package/tabs/lib/TabsOverflowButton.tsx +58 -0
- package/tabs/lib/{TabPanel.tsx → TabsPanel.tsx} +33 -31
- package/tabs/lib/TabsPanels.tsx +28 -0
- package/tabs/lib/cursor/index.ts +1 -1
- package/tabs/lib/cursor/useCursorModel.tsx +78 -65
- package/tabs/lib/cursor/useRovingFocus.tsx +94 -0
- package/tabs/lib/list/index.ts +2 -1
- package/tabs/lib/list/renderItem.tsx +19 -0
- package/tabs/lib/list/useListModel.tsx +48 -23
- package/tabs/lib/list/useListRegisterItem.tsx +53 -0
- package/tabs/lib/menu/Menu.tsx +95 -0
- package/tabs/lib/menu/MenuCard.tsx +96 -0
- package/tabs/lib/menu/MenuItem.tsx +195 -0
- package/tabs/lib/menu/MenuList.tsx +58 -0
- package/tabs/lib/menu/MenuPopper.tsx +31 -0
- package/tabs/lib/menu/MenuTarget.tsx +52 -0
- package/tabs/lib/menu/index.ts +8 -0
- package/tabs/lib/menu/useMenuModel.tsx +67 -0
- package/tabs/lib/overflow/index.ts +4 -0
- package/tabs/lib/overflow/spec/tsconfig.json +3 -0
- package/tabs/lib/overflow/spec/useOverflowModel.spec.tsx +46 -0
- package/tabs/lib/overflow/useOverflowMeasureContainer.ts +20 -0
- package/tabs/lib/overflow/useOverflowMeasureItem.tsx +40 -0
- package/tabs/lib/overflow/useOverflowModel.tsx +207 -0
- package/tabs/lib/overflow/useOverflowTarget.tsx +42 -0
- package/tabs/lib/selection/index.ts +3 -0
- package/tabs/lib/selection/useResetCursorOnBlur.tsx +29 -0
- package/tabs/lib/selection/useSelectionItem.tsx +26 -0
- package/tabs/lib/selection/useSelectionModel.tsx +133 -0
- package/tabs/lib/useTabsModel.tsx +93 -78
- package/tokens/README.md +5 -12
- package/tokens/index.ts +2 -2
- package/tokens/lib/depth.ts +125 -3
- package/tooltip/lib/useTooltip.tsx +2 -2
- package/ts3.5/dist/commonjs/button/lib/PrimaryButton.d.ts +80 -6
- package/ts3.5/dist/commonjs/button/lib/SecondaryButton.d.ts +8 -5
- package/ts3.5/dist/commonjs/button/lib/TertiaryButton.d.ts +8 -4
- package/ts3.5/dist/commonjs/button/lib/parts/ButtonContainer.d.ts +5 -3
- package/ts3.5/dist/commonjs/button/lib/parts/ButtonLabel.d.ts +1 -1
- package/ts3.5/dist/commonjs/button/lib/parts/ButtonLabelIcon.d.ts +7 -4
- package/ts3.5/dist/commonjs/button/lib/types.d.ts +9 -0
- package/ts3.5/dist/commonjs/checkbox/lib/Checkbox.d.ts +1 -1
- package/ts3.5/dist/commonjs/common/index.d.ts +1 -0
- package/ts3.5/dist/commonjs/common/lib/EllipsisText.d.ts +5 -0
- package/ts3.5/dist/commonjs/common/lib/styles/accessibleHide.d.ts +2 -2
- package/ts3.5/dist/commonjs/common/lib/theming/breakpoints.d.ts +287 -6
- package/ts3.5/dist/commonjs/common/lib/theming/types.d.ts +191 -1
- package/ts3.5/dist/commonjs/common/lib/utils/components.d.ts +19 -9
- package/ts3.5/dist/commonjs/common/lib/utils/elements.d.ts +2 -2
- package/ts3.5/dist/commonjs/common/lib/utils/index.d.ts +2 -0
- package/ts3.5/dist/commonjs/common/lib/utils/useConstant.d.ts +9 -0
- package/ts3.5/dist/commonjs/common/lib/utils/useResizeObserver.d.ts +3 -0
- package/ts3.5/dist/commonjs/common/lib/utils/useUniqueId.d.ts +28 -0
- package/ts3.5/dist/commonjs/cookie-banner/index.d.ts +3 -3
- package/ts3.5/dist/commonjs/cookie-banner/lib/CookieBanner.d.ts +19 -2
- package/ts3.5/dist/commonjs/dialog/lib/hooks/useDialogCard.d.ts +4 -16
- package/ts3.5/dist/commonjs/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
- package/ts3.5/dist/commonjs/modal/lib/ModalOverlay.d.ts +4 -2
- package/ts3.5/dist/commonjs/modal/lib/hooks/useModalCard.d.ts +4 -16
- package/ts3.5/dist/commonjs/modal/lib/hooks/useModalHeading.d.ts +5 -17
- package/ts3.5/dist/commonjs/page-header/index.d.ts +3 -3
- package/ts3.5/dist/commonjs/page-header/lib/PageHeader.d.ts +19 -2
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/PageList.d.ts +1 -1
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/Pagination.d.ts +5 -5
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/common/List.d.ts +1 -1
- package/ts3.5/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupCard.d.ts +5 -2
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupHeading.d.ts +5 -2
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupPopper.d.ts +4 -2
- package/ts3.5/dist/commonjs/popup/lib/hooks/usePopupTarget.d.ts +4 -2
- package/ts3.5/dist/commonjs/popup/lib/hooks/useReturnFocus.d.ts +1 -1
- package/ts3.5/dist/commonjs/radio/lib/Radio.d.ts +1 -1
- package/ts3.5/dist/commonjs/switch/lib/Switch.d.ts +1 -1
- package/ts3.5/dist/commonjs/table/lib/TableRow.d.ts +5 -4
- package/ts3.5/dist/commonjs/tabs/index.d.ts +5 -0
- package/ts3.5/dist/commonjs/tabs/lib/Tabs.d.ts +35 -7
- package/ts3.5/dist/commonjs/tabs/lib/TabsItem.d.ts +107 -0
- package/ts3.5/dist/commonjs/tabs/lib/TabsList.d.ts +43 -0
- package/ts3.5/dist/commonjs/tabs/lib/TabsMenuPopper.d.ts +21 -0
- package/ts3.5/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts +31 -0
- package/{dist/es6/tabs/lib/TabPanel.d.ts → ts3.5/dist/commonjs/tabs/lib/TabsPanel.d.ts} +39 -29
- package/ts3.5/dist/{es6/tabs/lib/TabList.d.ts → commonjs/tabs/lib/TabsPanels.d.ts} +5 -5
- package/ts3.5/dist/commonjs/tabs/lib/cursor/index.d.ts +1 -1
- package/ts3.5/dist/commonjs/tabs/lib/cursor/useCursorModel.d.ts +23 -13
- package/ts3.5/dist/commonjs/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
- package/ts3.5/dist/commonjs/tabs/lib/list/index.d.ts +2 -1
- package/ts3.5/dist/commonjs/tabs/lib/list/renderItem.d.ts +4 -0
- package/ts3.5/dist/commonjs/tabs/lib/list/useListModel.d.ts +25 -13
- package/ts3.5/dist/commonjs/tabs/lib/list/useListRegisterItem.d.ts +14 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/Menu.d.ts +80 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuCard.d.ts +17 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuItem.d.ts +62 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuList.d.ts +23 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuPopper.d.ts +21 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/MenuTarget.d.ts +21 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/index.d.ts +8 -0
- package/ts3.5/dist/commonjs/tabs/lib/menu/useMenuModel.d.ts +35 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/index.d.ts +5 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
- package/ts3.5/dist/commonjs/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
- package/ts3.5/dist/commonjs/tabs/lib/selection/index.d.ts +4 -0
- package/ts3.5/dist/commonjs/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
- package/ts3.5/dist/commonjs/tabs/lib/selection/useSelectionItem.d.ts +8 -0
- package/ts3.5/dist/commonjs/tabs/lib/selection/useSelectionModel.d.ts +62 -0
- package/ts3.5/dist/commonjs/tabs/lib/useTabsModel.d.ts +39 -38
- package/ts3.5/dist/commonjs/tokens/index.d.ts +3 -20
- package/ts3.5/dist/commonjs/tokens/lib/depth.d.ts +109 -3
- package/ts3.5/dist/commonjs/tooltip/lib/useTooltip.d.ts +1 -1
- package/ts3.5/dist/es6/button/lib/PrimaryButton.d.ts +80 -6
- package/ts3.5/dist/es6/button/lib/SecondaryButton.d.ts +8 -5
- package/ts3.5/dist/es6/button/lib/TertiaryButton.d.ts +8 -4
- package/ts3.5/dist/es6/button/lib/parts/ButtonContainer.d.ts +5 -3
- package/ts3.5/dist/es6/button/lib/parts/ButtonLabel.d.ts +1 -1
- package/ts3.5/dist/es6/button/lib/parts/ButtonLabelIcon.d.ts +7 -4
- package/ts3.5/dist/es6/button/lib/types.d.ts +9 -0
- package/ts3.5/dist/es6/checkbox/lib/Checkbox.d.ts +1 -1
- package/ts3.5/dist/es6/common/index.d.ts +1 -0
- package/ts3.5/dist/es6/common/lib/EllipsisText.d.ts +5 -0
- package/ts3.5/dist/es6/common/lib/styles/accessibleHide.d.ts +2 -2
- package/ts3.5/dist/es6/common/lib/theming/breakpoints.d.ts +287 -6
- package/ts3.5/dist/es6/common/lib/theming/types.d.ts +191 -1
- package/ts3.5/dist/es6/common/lib/utils/components.d.ts +19 -9
- package/ts3.5/dist/es6/common/lib/utils/elements.d.ts +2 -2
- package/ts3.5/dist/es6/common/lib/utils/index.d.ts +2 -0
- package/ts3.5/dist/es6/common/lib/utils/useConstant.d.ts +9 -0
- package/ts3.5/dist/es6/common/lib/utils/useResizeObserver.d.ts +3 -0
- package/ts3.5/dist/es6/common/lib/utils/useUniqueId.d.ts +28 -0
- package/ts3.5/dist/es6/cookie-banner/index.d.ts +3 -3
- package/ts3.5/dist/es6/cookie-banner/lib/CookieBanner.d.ts +19 -2
- package/ts3.5/dist/es6/dialog/lib/hooks/useDialogCard.d.ts +4 -16
- package/ts3.5/dist/es6/dialog/lib/hooks/useDialogPopper.d.ts +5 -2
- package/ts3.5/dist/es6/modal/lib/ModalOverlay.d.ts +4 -2
- package/ts3.5/dist/es6/modal/lib/hooks/useModalCard.d.ts +4 -16
- package/ts3.5/dist/es6/modal/lib/hooks/useModalHeading.d.ts +5 -17
- package/ts3.5/dist/es6/page-header/index.d.ts +3 -3
- package/ts3.5/dist/es6/page-header/lib/PageHeader.d.ts +19 -2
- package/ts3.5/dist/es6/pagination/lib/Pagination/PageList.d.ts +1 -1
- package/ts3.5/dist/es6/pagination/lib/Pagination/Pagination.d.ts +5 -5
- package/ts3.5/dist/es6/pagination/lib/Pagination/common/List.d.ts +1 -1
- package/ts3.5/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.d.ts +1 -1
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupCard.d.ts +5 -2
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupCloseButton.d.ts +4 -2
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupHeading.d.ts +5 -2
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupPopper.d.ts +4 -2
- package/ts3.5/dist/es6/popup/lib/hooks/usePopupTarget.d.ts +4 -2
- package/ts3.5/dist/es6/popup/lib/hooks/useReturnFocus.d.ts +1 -1
- package/ts3.5/dist/es6/radio/lib/Radio.d.ts +1 -1
- package/ts3.5/dist/es6/switch/lib/Switch.d.ts +1 -1
- package/ts3.5/dist/es6/table/lib/TableRow.d.ts +5 -4
- package/ts3.5/dist/es6/tabs/index.d.ts +5 -0
- package/ts3.5/dist/es6/tabs/lib/Tabs.d.ts +35 -7
- package/ts3.5/dist/es6/tabs/lib/TabsItem.d.ts +107 -0
- package/ts3.5/dist/es6/tabs/lib/TabsList.d.ts +43 -0
- package/ts3.5/dist/es6/tabs/lib/TabsMenuPopper.d.ts +21 -0
- package/ts3.5/dist/es6/tabs/lib/TabsOverflowButton.d.ts +31 -0
- package/ts3.5/dist/es6/tabs/lib/{TabPanel.d.ts → TabsPanel.d.ts} +15 -5
- package/{dist/commonjs/tabs/lib/TabList.d.ts → ts3.5/dist/es6/tabs/lib/TabsPanels.d.ts} +15 -15
- package/ts3.5/dist/es6/tabs/lib/cursor/index.d.ts +1 -1
- package/ts3.5/dist/es6/tabs/lib/cursor/useCursorModel.d.ts +23 -13
- package/ts3.5/dist/es6/tabs/lib/cursor/useRovingFocus.d.ts +37 -0
- package/ts3.5/dist/es6/tabs/lib/list/index.d.ts +2 -1
- package/ts3.5/dist/es6/tabs/lib/list/renderItem.d.ts +4 -0
- package/ts3.5/dist/es6/tabs/lib/list/useListModel.d.ts +25 -13
- package/ts3.5/dist/es6/tabs/lib/list/useListRegisterItem.d.ts +14 -0
- package/ts3.5/dist/es6/tabs/lib/menu/Menu.d.ts +80 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuCard.d.ts +17 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuItem.d.ts +62 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuList.d.ts +23 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuPopper.d.ts +21 -0
- package/ts3.5/dist/es6/tabs/lib/menu/MenuTarget.d.ts +21 -0
- package/ts3.5/dist/es6/tabs/lib/menu/index.d.ts +8 -0
- package/ts3.5/dist/es6/tabs/lib/menu/useMenuModel.d.ts +35 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/index.d.ts +5 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowMeasureContainer.d.ts +8 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowMeasureItem.d.ts +10 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowModel.d.ts +69 -0
- package/ts3.5/dist/es6/tabs/lib/overflow/useOverflowTarget.d.ts +11 -0
- package/ts3.5/dist/es6/tabs/lib/selection/index.d.ts +4 -0
- package/ts3.5/dist/es6/tabs/lib/selection/useResetCursorOnBlur.d.ts +13 -0
- package/ts3.5/dist/es6/tabs/lib/selection/useSelectionItem.d.ts +8 -0
- package/ts3.5/dist/es6/tabs/lib/selection/useSelectionModel.d.ts +62 -0
- package/ts3.5/dist/es6/tabs/lib/useTabsModel.d.ts +39 -38
- package/ts3.5/dist/es6/tokens/index.d.ts +3 -20
- package/ts3.5/dist/es6/tokens/lib/depth.d.ts +109 -3
- package/ts3.5/dist/es6/tooltip/lib/useTooltip.d.ts +1 -1
- package/dist/commonjs/tabs/lib/Tab.d.ts +0 -49
- package/dist/commonjs/tabs/lib/Tab.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/Tab.js +0 -95
- package/dist/commonjs/tabs/lib/TabList.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/TabPanel.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/TabPanel.js +0 -56
- package/dist/commonjs/tabs/lib/cursor/hooks.d.ts +0 -39
- package/dist/commonjs/tabs/lib/cursor/hooks.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/hooks.d.ts +0 -10
- package/dist/commonjs/tabs/lib/hooks.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/list/hooks.d.ts +0 -11
- package/dist/commonjs/tabs/lib/list/hooks.d.ts.map +0 -1
- package/dist/commonjs/tabs/lib/list/hooks.js +0 -39
- package/dist/es6/tabs/lib/Tab.d.ts +0 -49
- package/dist/es6/tabs/lib/Tab.d.ts.map +0 -1
- package/dist/es6/tabs/lib/Tab.js +0 -86
- package/dist/es6/tabs/lib/TabList.d.ts.map +0 -1
- package/dist/es6/tabs/lib/TabPanel.d.ts.map +0 -1
- package/dist/es6/tabs/lib/TabPanel.js +0 -51
- package/dist/es6/tabs/lib/cursor/hooks.d.ts +0 -39
- package/dist/es6/tabs/lib/cursor/hooks.d.ts.map +0 -1
- package/dist/es6/tabs/lib/cursor/hooks.js +0 -108
- package/dist/es6/tabs/lib/hooks.d.ts +0 -10
- package/dist/es6/tabs/lib/hooks.d.ts.map +0 -1
- package/dist/es6/tabs/lib/list/hooks.d.ts +0 -11
- package/dist/es6/tabs/lib/list/hooks.d.ts.map +0 -1
- package/dist/es6/tabs/lib/list/hooks.js +0 -34
- package/tabs/lib/Tab.tsx +0 -170
- package/tabs/lib/TabList.tsx +0 -59
- package/tabs/lib/cursor/hooks.tsx +0 -122
- package/tabs/lib/hooks.tsx +0 -31
- package/tabs/lib/list/hooks.tsx +0 -45
- package/ts3.5/dist/commonjs/tabs/lib/Tab.d.ts +0 -49
- package/ts3.5/dist/commonjs/tabs/lib/cursor/hooks.d.ts +0 -39
- package/ts3.5/dist/commonjs/tabs/lib/hooks.d.ts +0 -10
- package/ts3.5/dist/commonjs/tabs/lib/list/hooks.d.ts +0 -11
- package/ts3.5/dist/es6/tabs/lib/Tab.d.ts +0 -49
- package/ts3.5/dist/es6/tabs/lib/cursor/hooks.d.ts +0 -39
- package/ts3.5/dist/es6/tabs/lib/hooks.d.ts +0 -10
- package/ts3.5/dist/es6/tabs/lib/list/hooks.d.ts +0 -11
|
@@ -9,43 +9,278 @@ export enum BreakpointKey {
|
|
|
9
9
|
export type BreakpointFnParam = BreakpointKey | keyof typeof BreakpointKey;
|
|
10
10
|
|
|
11
11
|
export type CanvasBreakpoints = {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
/**
|
|
13
|
+
* ### Zero Breakpoint
|
|
14
|
+
*
|
|
15
|
+
* This breakpoint is useful when you need to set a media query `min-width` below small.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```ts
|
|
19
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
20
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
21
|
+
*
|
|
22
|
+
* const theme = useTheme();
|
|
23
|
+
* const { values } = theme.canvas.breakpoints;
|
|
24
|
+
* const styles = {
|
|
25
|
+
* [`@media (min-width: ${values.zero}px)`]: {
|
|
26
|
+
* padding: space.xxs,
|
|
27
|
+
* },
|
|
28
|
+
* }
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
zero: 0;
|
|
32
|
+
/**
|
|
33
|
+
* ### Small Breakpoint
|
|
34
|
+
*
|
|
35
|
+
* The small breakpoint provides the `min-width` for mobile devices, such as phones and tablets.
|
|
36
|
+
* This size ranges from a min-width of 320px to a max-width of 767px.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```ts
|
|
40
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
41
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
42
|
+
*
|
|
43
|
+
* const theme = useTheme();
|
|
44
|
+
* const { values } = theme.canvas.breakpoints;
|
|
45
|
+
* const styles = {
|
|
46
|
+
* [`@media (min-width: ${values.s}px)`]: {
|
|
47
|
+
* padding: space.xs,
|
|
48
|
+
* },
|
|
49
|
+
* }
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
s: 320;
|
|
53
|
+
/**
|
|
54
|
+
* ### Medium Breakpoint
|
|
55
|
+
*
|
|
56
|
+
* The medium breakpoint is the min-width for intended for medium screens, such as laptops.
|
|
57
|
+
* This size ranges from a min-width of 768px to a max-width of 1023px.
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```ts
|
|
61
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
62
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
63
|
+
*
|
|
64
|
+
* const theme = useTheme();
|
|
65
|
+
* const { values } = theme.canvas.breakpoints;
|
|
66
|
+
* const styles = {
|
|
67
|
+
* [`@media (min-width: ${values.m}px)`]: {
|
|
68
|
+
* padding: space.s,
|
|
69
|
+
* },
|
|
70
|
+
* }
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
m: 768;
|
|
74
|
+
/**
|
|
75
|
+
* ### Large Breakpoint
|
|
76
|
+
*
|
|
77
|
+
* The large breakpoint is the min-width for intended for large screens, such as desktops.
|
|
78
|
+
* This size ranges from a min-width of 1024px to a max-width of 1439px.
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```ts
|
|
82
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
83
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
84
|
+
*
|
|
85
|
+
* const theme = useTheme();
|
|
86
|
+
* const { values } = theme.canvas.breakpoints;
|
|
87
|
+
* const styles = {
|
|
88
|
+
* [`@media (min-width: ${values.m}px)`]: {
|
|
89
|
+
* padding: space.s,
|
|
90
|
+
* },
|
|
91
|
+
* }
|
|
92
|
+
* ```
|
|
93
|
+
*/
|
|
94
|
+
l: 1024;
|
|
95
|
+
/**
|
|
96
|
+
* ### Extra-Large Breakpoint
|
|
97
|
+
*
|
|
98
|
+
* The large breakpoint is the min-width for intended for extra-large screens, such as wide monitors and TVs.
|
|
99
|
+
* This size has a min-width of 1440px and no max-width.
|
|
100
|
+
*
|
|
101
|
+
* @example
|
|
102
|
+
* ```ts
|
|
103
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
104
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
105
|
+
*
|
|
106
|
+
* const theme = useTheme();
|
|
107
|
+
* const { values } = theme.canvas.breakpoints;
|
|
108
|
+
* const styles = {
|
|
109
|
+
* [`@media (min-width: ${values.m}px)`]: {
|
|
110
|
+
* padding: space.s
|
|
111
|
+
* },
|
|
112
|
+
* }
|
|
113
|
+
* ```
|
|
114
|
+
*/
|
|
115
|
+
xl: 1440;
|
|
17
116
|
};
|
|
18
117
|
|
|
19
118
|
export const breakpointKeys = ['zero', 's', 'm', 'l', 'xl'] as const;
|
|
20
119
|
|
|
120
|
+
/**
|
|
121
|
+
* ### Theme Breakpoint Values
|
|
122
|
+
*
|
|
123
|
+
* Breakpoints are used by media queries to conditionally apply or modify styles based on the viewport width.
|
|
124
|
+
* This allows the UI to be responsive to various screen sizes. This object provides five breakpoint values
|
|
125
|
+
* that correspond to the min-widths of our standard screen sizes.
|
|
126
|
+
*
|
|
127
|
+
* - `zero`: 0
|
|
128
|
+
* - `s`: 320
|
|
129
|
+
* - `m`: 768
|
|
130
|
+
* - `l`: 1024
|
|
131
|
+
* - `xl`: 1440
|
|
132
|
+
*
|
|
133
|
+
* And these are our standard screen size ranges:
|
|
134
|
+
*
|
|
135
|
+
* - `small` (320px - 767px) Used for mobile-sized screens
|
|
136
|
+
* - `medium` (768px - 1023px) Used for tablet-sized screens
|
|
137
|
+
* - `large` - (1024px - 1439px) Used for laptop and small desktop screens
|
|
138
|
+
* - `extra-large` (≥1440px) Used for very large screens
|
|
139
|
+
*
|
|
140
|
+
* Note: Some applications may only require a subset of screen sizes and not use all breakpoints.
|
|
141
|
+
*
|
|
142
|
+
*/
|
|
21
143
|
export const breakpoints: CanvasBreakpoints = {
|
|
22
144
|
zero: 0,
|
|
23
|
-
s:
|
|
24
|
-
m:
|
|
25
|
-
l:
|
|
26
|
-
xl:
|
|
145
|
+
s: 320,
|
|
146
|
+
m: 768,
|
|
147
|
+
l: 1024,
|
|
148
|
+
xl: 1440,
|
|
27
149
|
};
|
|
28
150
|
|
|
29
151
|
const step = 0.5;
|
|
30
152
|
|
|
153
|
+
/**
|
|
154
|
+
* ### Up
|
|
155
|
+
*
|
|
156
|
+
* _Returns a media query above the `min-width` for the range of a given breakpoint_
|
|
157
|
+
*
|
|
158
|
+
* Given a `start` breakpoint key ("zero", "s", "m", "l", "xl"),
|
|
159
|
+
* this function returns a media query (string) using a `min-width`.
|
|
160
|
+
*
|
|
161
|
+
* @example
|
|
162
|
+
* ```ts
|
|
163
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
164
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
165
|
+
*
|
|
166
|
+
* const theme = useTheme();
|
|
167
|
+
* const { up } = theme.canvas.breakpoints;
|
|
168
|
+
* const mediaQuery = up('l'); // Returns '@media (min-width: 1024px)'
|
|
169
|
+
* const styles = {
|
|
170
|
+
* [mediaQuery]: {
|
|
171
|
+
* padding: space.m,
|
|
172
|
+
* }
|
|
173
|
+
* };
|
|
174
|
+
* ```
|
|
175
|
+
*/
|
|
31
176
|
export function up(key: BreakpointFnParam) {
|
|
32
177
|
const value = typeof breakpoints[key as BreakpointKey] === 'number' ? breakpoints[key] : key;
|
|
33
|
-
return `@media (min-width
|
|
178
|
+
return `@media (min-width: ${value}px)`;
|
|
34
179
|
}
|
|
35
180
|
|
|
36
|
-
|
|
37
|
-
|
|
181
|
+
/**
|
|
182
|
+
* ### Down
|
|
183
|
+
*
|
|
184
|
+
* _Returns a media query below the `max-width` for the range of a given breakpoint_
|
|
185
|
+
*
|
|
186
|
+
* Given an `end` breakpoint key ("zero", "s", "m", "l", "xl"),
|
|
187
|
+
* this function returns a media query (string) using a `max-width`.
|
|
188
|
+
*
|
|
189
|
+
* Note: This function subtracts `0.5px` from the next breakpoint value to prevent collisions.
|
|
190
|
+
* For example, `breakpoints.values.s`, has a `min-width` of `320px`, and the `max-width` is `767.5px`).
|
|
191
|
+
*
|
|
192
|
+
* If the `xl` breakpoint is provided, this function returns a media query with only a `min-width` of `0`,
|
|
193
|
+
* as seen in the second example below.
|
|
194
|
+
*
|
|
195
|
+
* @example
|
|
196
|
+
* ```ts
|
|
197
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
198
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
199
|
+
*
|
|
200
|
+
* const theme = useTheme();
|
|
201
|
+
* const { down } = theme.canvas.breakpoints;
|
|
202
|
+
* const mediaQuery = down('m'); // Returns '@media (max-width: 1023.5px)'
|
|
203
|
+
* const styles = {
|
|
204
|
+
* [mediaQuery]: {
|
|
205
|
+
* padding: space.m,
|
|
206
|
+
* }
|
|
207
|
+
* };
|
|
208
|
+
* ```
|
|
209
|
+
*
|
|
210
|
+
* This example uses the `xl` breakpoint and only adds a `min-width` of `0` to the media query.
|
|
211
|
+
* @example
|
|
212
|
+
* ```ts
|
|
213
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
214
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
215
|
+
*
|
|
216
|
+
* const theme = useTheme();
|
|
217
|
+
* const { down } = theme.canvas.breakpoints;
|
|
218
|
+
* const mediaQuery = down('xl'); // Returns '@media (min-width: 0)'
|
|
219
|
+
* const styles = {
|
|
220
|
+
* [mediaQuery]: {
|
|
221
|
+
* padding: space.m,
|
|
222
|
+
* }
|
|
223
|
+
* };
|
|
224
|
+
* ```
|
|
225
|
+
*/
|
|
226
|
+
export function down(endKey: BreakpointFnParam) {
|
|
227
|
+
const endIndex = breakpointKeys.indexOf(endKey as BreakpointKey) + 1;
|
|
38
228
|
const upperbound = breakpoints[breakpointKeys[endIndex]];
|
|
39
|
-
|
|
40
229
|
if (endIndex === breakpointKeys.length) {
|
|
41
230
|
// xl down applies to all sizes
|
|
42
231
|
return up(BreakpointKey.zero);
|
|
43
232
|
}
|
|
44
233
|
|
|
45
234
|
const value = typeof upperbound === 'number' && endIndex > 0 ? upperbound : 0;
|
|
46
|
-
return `@media (max-width
|
|
235
|
+
return `@media (max-width: ${value - step}px)`;
|
|
47
236
|
}
|
|
48
237
|
|
|
238
|
+
/**
|
|
239
|
+
* ### Between
|
|
240
|
+
*
|
|
241
|
+
* _Returns a media query between two given breakpoints_
|
|
242
|
+
*
|
|
243
|
+
* Given `start` and `end` breakpoint keys ("zero", "s", "m", "l", "xl"),
|
|
244
|
+
* this function returns a media query (string) using a min-width and max-width.
|
|
245
|
+
*
|
|
246
|
+
* Note: This function subtracts `0.5px` from the next breakpoint value to prevent collisions.
|
|
247
|
+
* For example, `breakpoints.values.s`, has a `min-width` of `320px`, and the `max-width` is `767.5px`).
|
|
248
|
+
*
|
|
249
|
+
* If the `xl` breakpoint is provided, this function returns a media query with only a `min-width`,
|
|
250
|
+
* as seen in the second example below.
|
|
251
|
+
*
|
|
252
|
+
* @example
|
|
253
|
+
* ```ts
|
|
254
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
255
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
256
|
+
*
|
|
257
|
+
* const theme = useTheme();
|
|
258
|
+
* const { between } = theme.canvas.breakpoints;
|
|
259
|
+
* // Returns '@media (min-width: 320px) and (max-width: 1023.5px)'
|
|
260
|
+
* const mediaQuery = between('s', 'm');
|
|
261
|
+
* const styles = {
|
|
262
|
+
* [mediaQuery]: {
|
|
263
|
+
* padding: space.s,
|
|
264
|
+
* }
|
|
265
|
+
* };
|
|
266
|
+
* ```
|
|
267
|
+
*
|
|
268
|
+
* This example uses `xl` as the `end` breakpoint and only adds a min-width to the media query.
|
|
269
|
+
* @example
|
|
270
|
+
* ```ts
|
|
271
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
272
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
273
|
+
*
|
|
274
|
+
* const theme = useTheme();
|
|
275
|
+
* const { between } = theme.canvas.breakpoints;
|
|
276
|
+
* const mediaQuery = between('m', 'xl'); // Returns '@media (min-width: 768px)'
|
|
277
|
+
* const styles = {
|
|
278
|
+
* [mediaQuery]: {
|
|
279
|
+
* padding: space.s,
|
|
280
|
+
* }
|
|
281
|
+
* };
|
|
282
|
+
* ```
|
|
283
|
+
*/
|
|
49
284
|
export function between(start: BreakpointFnParam, end: BreakpointFnParam) {
|
|
50
285
|
const endIndex = breakpointKeys.indexOf(end) + 1;
|
|
51
286
|
|
|
@@ -54,11 +289,56 @@ export function between(start: BreakpointFnParam, end: BreakpointFnParam) {
|
|
|
54
289
|
}
|
|
55
290
|
|
|
56
291
|
return (
|
|
57
|
-
`@media (min-width
|
|
58
|
-
`(max-width
|
|
292
|
+
`@media (min-width: ${breakpoints[start]}px) and ` +
|
|
293
|
+
`(max-width: ${breakpoints[breakpointKeys[endIndex]] - step}px)`
|
|
59
294
|
);
|
|
60
295
|
}
|
|
61
296
|
|
|
297
|
+
/**
|
|
298
|
+
* ### Only
|
|
299
|
+
*
|
|
300
|
+
* _Returns a media query with a `min-width` and `max-width` for a given breakpoint_
|
|
301
|
+
*
|
|
302
|
+
* Given a breakpoint key ("zero", "s", "m", "l", "xl"),
|
|
303
|
+
* this function returns a media query (string) using a `min-width` and `max-width`.
|
|
304
|
+
*
|
|
305
|
+
* Note: This function subtracts `0.5px` from the next breakpoint value to prevent collisions.
|
|
306
|
+
* For example, `breakpoints.values.s`, has a `min-width` of `320px`, and the `max-width` is `767.5px`).
|
|
307
|
+
*
|
|
308
|
+
* If the `xl` breakpoint is provided, this function returns a media query with only a `min-width` of `1440px`,
|
|
309
|
+
* as seen in the second example below.
|
|
310
|
+
*
|
|
311
|
+
* @example
|
|
312
|
+
* ```ts
|
|
313
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
314
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
315
|
+
*
|
|
316
|
+
* const theme = useTheme();
|
|
317
|
+
* const { only } = theme.canvas.breakpoints;
|
|
318
|
+
* const mediaQuery = only('s'); // Returns '@media (min-width: 320px) and (max-width: 767.5px)'
|
|
319
|
+
* const styles = {
|
|
320
|
+
* [mediaQuery]: {
|
|
321
|
+
* padding: space.s,
|
|
322
|
+
* }
|
|
323
|
+
* };
|
|
324
|
+
* ```
|
|
325
|
+
*
|
|
326
|
+
* This example uses the `xl` breakpoint and only adds a `min-width` of `1440px` to the media query.
|
|
327
|
+
* @example
|
|
328
|
+
* ```ts
|
|
329
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
330
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
331
|
+
*
|
|
332
|
+
* const theme = useTheme();
|
|
333
|
+
* const { only } = theme.canvas.breakpoints;
|
|
334
|
+
* const mediaQuery = only('xl'); // Returns '@media (min-width: 1440px)'
|
|
335
|
+
* const styles = {
|
|
336
|
+
* [mediaQuery]: {
|
|
337
|
+
* padding: space.s,
|
|
338
|
+
* }
|
|
339
|
+
* };
|
|
340
|
+
* ```
|
|
341
|
+
*/
|
|
62
342
|
export function only(key: BreakpointFnParam) {
|
|
63
343
|
return between(key, key);
|
|
64
344
|
}
|
|
@@ -36,12 +36,202 @@ export interface CanvasTheme {
|
|
|
36
36
|
success: CanvasThemePalette;
|
|
37
37
|
neutral: CanvasThemePalette;
|
|
38
38
|
};
|
|
39
|
+
/**
|
|
40
|
+
* ### Theme Breakpoints
|
|
41
|
+
*
|
|
42
|
+
* Breakpoints are used by media queries to conditionally apply or modify styles based on the viewport width.
|
|
43
|
+
* This allows the UI to be responsive to various screen sizes.
|
|
44
|
+
*
|
|
45
|
+
* This breakpoints object contains `values` and several helper functions: `up`, `down`, `between`, and `only`.
|
|
46
|
+
* You can find more detailed information by inspecting individual values and functions.
|
|
47
|
+
*/
|
|
39
48
|
breakpoints: {
|
|
49
|
+
/**
|
|
50
|
+
* ### Breakpoint Values
|
|
51
|
+
*
|
|
52
|
+
* This object provides five breakpoint values
|
|
53
|
+
* that correspond to the min-widths of our standard screen sizes.
|
|
54
|
+
*
|
|
55
|
+
* - `zero`: 0
|
|
56
|
+
* - `s`: 320
|
|
57
|
+
* - `m`: 768
|
|
58
|
+
* - `l`: 1024
|
|
59
|
+
* - `xl`: 1440
|
|
60
|
+
*
|
|
61
|
+
* And these are our standard screen size ranges:
|
|
62
|
+
*
|
|
63
|
+
* - `small` (320px - 767px) Used for mobile-sized screens
|
|
64
|
+
* - `medium` (768px - 1023px) Used for tablet-sized screens
|
|
65
|
+
* - `large` - (1024px - 1439px) Used for laptop and small desktop screens
|
|
66
|
+
* - `extra-large` (≥1440px) Used for very large screens
|
|
67
|
+
*
|
|
68
|
+
* Note: Some applications may only require a subset of screen sizes and not use all breakpoints.
|
|
69
|
+
*
|
|
70
|
+
*/
|
|
40
71
|
values: CanvasBreakpoints;
|
|
72
|
+
/**
|
|
73
|
+
* ### Up
|
|
74
|
+
*
|
|
75
|
+
* _Returns a media query above the `min-width` for the range of a given breakpoint_
|
|
76
|
+
*
|
|
77
|
+
* Given a `start` breakpoint key ("zero", "s", "m", "l", "xl"),
|
|
78
|
+
* this function returns a media query (string) using a `min-width`.
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```ts
|
|
82
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
83
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
84
|
+
*
|
|
85
|
+
* const theme = useTheme();
|
|
86
|
+
* const { up } = theme.canvas.breakpoints;
|
|
87
|
+
* const mediaQuery = up('l'); // Returns '@media (min-width: 1024px)'
|
|
88
|
+
* const styles = {
|
|
89
|
+
* [mediaQuery]: {
|
|
90
|
+
* padding: space.m,
|
|
91
|
+
* }
|
|
92
|
+
* };
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
41
95
|
up: (key: BreakpointFnParam) => string;
|
|
96
|
+
/**
|
|
97
|
+
* ### Down
|
|
98
|
+
*
|
|
99
|
+
* _Returns a media query below the `max-width` for the range of a given breakpoint_
|
|
100
|
+
*
|
|
101
|
+
* Given an `end` breakpoint key ("zero", "s", "m", "l", "xl"),
|
|
102
|
+
* this function returns a media query (string) using a `max-width`.
|
|
103
|
+
*
|
|
104
|
+
* Note: This function subtracts `0.5px` from the next breakpoint value to prevent collisions.
|
|
105
|
+
* For example, `breakpoints.values.s`, has a `min-width` of `320px`, and the `max-width` is `767.5px`).
|
|
106
|
+
*
|
|
107
|
+
* If the `xl` breakpoint is provided, this function returns a media query with only a `min-width` of `0`,
|
|
108
|
+
* as seen in the second example below.
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* ```ts
|
|
112
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
113
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
114
|
+
*
|
|
115
|
+
* const theme = useTheme();
|
|
116
|
+
* const { down } = theme.canvas.breakpoints;
|
|
117
|
+
* const mediaQuery = down('m'); // Returns '@media (max-width: 1023.5px)'
|
|
118
|
+
* const styles = {
|
|
119
|
+
* [mediaQuery]: {
|
|
120
|
+
* padding: space.m,
|
|
121
|
+
* }
|
|
122
|
+
* };
|
|
123
|
+
* ```
|
|
124
|
+
*
|
|
125
|
+
* This example uses the `xl` breakpoint and only adds a `min-width` of `0` to the media query.
|
|
126
|
+
* @example
|
|
127
|
+
* ```ts
|
|
128
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
129
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
130
|
+
*
|
|
131
|
+
* const theme = useTheme();
|
|
132
|
+
* const { down } = theme.canvas.breakpoints;
|
|
133
|
+
* const mediaQuery = down('xl'); // Returns '@media (min-width: 0)'
|
|
134
|
+
* const styles = {
|
|
135
|
+
* [mediaQuery]: {
|
|
136
|
+
* padding: space.m,
|
|
137
|
+
* }
|
|
138
|
+
* };
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
42
141
|
down: (key: BreakpointFnParam) => string;
|
|
43
|
-
|
|
142
|
+
/**
|
|
143
|
+
* ### Between
|
|
144
|
+
*
|
|
145
|
+
* _Returns a media query between two given breakpoints_
|
|
146
|
+
*
|
|
147
|
+
* Given `start` and `end` breakpoint keys ("zero", "s", "m", "l", "xl"),
|
|
148
|
+
* this function returns a media query (string) using a min-width and max-width.
|
|
149
|
+
*
|
|
150
|
+
* Note: This function subtracts `0.5px` from the next breakpoint value to prevent collisions.
|
|
151
|
+
* For example, `breakpoints.values.s`, has a `min-width` of `320px`, and the `max-width` is `767.5px`).
|
|
152
|
+
*
|
|
153
|
+
* If the `xl` breakpoint is provided, this function returns a media query with only a `min-width`,
|
|
154
|
+
* as seen in the second example below.
|
|
155
|
+
*
|
|
156
|
+
* @example
|
|
157
|
+
* ```ts
|
|
158
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
159
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
160
|
+
*
|
|
161
|
+
* const theme = useTheme();
|
|
162
|
+
* const { between } = theme.canvas.breakpoints;
|
|
163
|
+
* // Returns '@media (min-width: 320px) and (max-width: 1023.5px)'
|
|
164
|
+
* const mediaQuery = between('s', 'm');
|
|
165
|
+
* const styles = {
|
|
166
|
+
* [mediaQuery]: {
|
|
167
|
+
* padding: space.s,
|
|
168
|
+
* }
|
|
169
|
+
* };
|
|
170
|
+
* ```
|
|
171
|
+
*
|
|
172
|
+
* This example uses `xl` as the `end` breakpoint and only adds a min-width to the media query.
|
|
173
|
+
* @example
|
|
174
|
+
* ```ts
|
|
175
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
176
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
177
|
+
*
|
|
178
|
+
* const theme = useTheme();
|
|
179
|
+
* const { between } = theme.canvas.breakpoints;
|
|
180
|
+
* const mediaQuery = between('m', 'xl'); // Returns '@media (min-width: 768px)'
|
|
181
|
+
* const styles = {
|
|
182
|
+
* [mediaQuery]: {
|
|
183
|
+
* padding: space.s,
|
|
184
|
+
* }
|
|
185
|
+
* };
|
|
186
|
+
* ```
|
|
187
|
+
*/
|
|
44
188
|
between: (start: BreakpointFnParam, end: BreakpointFnParam) => string;
|
|
189
|
+
/**
|
|
190
|
+
* ### Only
|
|
191
|
+
*
|
|
192
|
+
* _Returns a media query with a `min-width` and `max-width` for a given breakpoint_
|
|
193
|
+
*
|
|
194
|
+
* Given a breakpoint key ("zero", "s", "m", "l", "xl"),
|
|
195
|
+
* this function returns a media query (string) using a `min-width` and `max-width`.
|
|
196
|
+
*
|
|
197
|
+
* Note: This function subtracts `0.5px` from the next breakpoint value to prevent collisions.
|
|
198
|
+
* For example, `breakpoints.values.s`, has a `min-width` of `320px`, and the `max-width` is `767.5px`).
|
|
199
|
+
*
|
|
200
|
+
* If the `xl` breakpoint is provided, this function returns a media query with only a `min-width` of `1440px`,
|
|
201
|
+
* as seen in the second example below.
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* ```ts
|
|
205
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
206
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
207
|
+
*
|
|
208
|
+
* const theme = useTheme();
|
|
209
|
+
* const { only } = theme.canvas.breakpoints;
|
|
210
|
+
* const mediaQuery = only('s'); // Returns '@media (min-width: 320px) and (max-width: 767.5px)'
|
|
211
|
+
* const styles = {
|
|
212
|
+
* [mediaQuery]: {
|
|
213
|
+
* padding: space.s,
|
|
214
|
+
* }
|
|
215
|
+
* };
|
|
216
|
+
* ```
|
|
217
|
+
*
|
|
218
|
+
* This example uses the `xl` breakpoint and only adds a `min-width` of `1440px` to the media query.
|
|
219
|
+
* @example
|
|
220
|
+
* ```ts
|
|
221
|
+
* import { useTheme } from '@workday/canvas-kit-react/common';
|
|
222
|
+
* import { space } from '@workday/canvas-kit-react/tokens';
|
|
223
|
+
*
|
|
224
|
+
* const theme = useTheme();
|
|
225
|
+
* const { only } = theme.canvas.breakpoints;
|
|
226
|
+
* const mediaQuery = only('xl'); // Returns '@media (min-width: 1440px)'
|
|
227
|
+
* const styles = {
|
|
228
|
+
* [mediaQuery]: {
|
|
229
|
+
* padding: space.s,
|
|
230
|
+
* }
|
|
231
|
+
* };
|
|
232
|
+
* ```
|
|
233
|
+
*/
|
|
234
|
+
only: (key: BreakpointFnParam) => string;
|
|
45
235
|
};
|
|
46
236
|
direction: ContentDirection;
|
|
47
237
|
}
|
|
@@ -132,6 +132,7 @@ export type ElementComponent<T extends React.ElementType, P> = {
|
|
|
132
132
|
): JSX.Element;
|
|
133
133
|
(props: PropsWithAs<P, T>): JSX.Element;
|
|
134
134
|
displayName?: string;
|
|
135
|
+
as<E extends React.ElementType>(as: E): ElementComponent<E, P>;
|
|
135
136
|
};
|
|
136
137
|
|
|
137
138
|
export type Component<P> = {
|
|
@@ -233,6 +234,11 @@ export const createComponent = <
|
|
|
233
234
|
});
|
|
234
235
|
ReturnedComponent.displayName = displayName;
|
|
235
236
|
|
|
237
|
+
// The `any`s are here because `ElementComponent` takes care of the `as` type and the
|
|
238
|
+
// `ReturnComponent` type is overridden
|
|
239
|
+
(ReturnedComponent as any).as = (as: any) =>
|
|
240
|
+
createComponent(as)({displayName, Component, subComponents});
|
|
241
|
+
|
|
236
242
|
// Cast as `any`. We have already specified the return type. Be careful making changes to this
|
|
237
243
|
// file due to this `any` `ReturnedComponent` is a `React.ForwardRefExoticComponent`, but we want
|
|
238
244
|
// it to be either an `Component` or `ElementComponent`
|
|
@@ -278,7 +284,7 @@ export const createHook = <M extends Model<any, any>, PO extends {}, PI extends
|
|
|
278
284
|
): BehaviorHook<M, PO> => {
|
|
279
285
|
return (model, elemProps, ref) => {
|
|
280
286
|
const props = mergeProps(fn(model, ref, elemProps || ({} as any)), elemProps || ({} as any));
|
|
281
|
-
if (!props.hasOwnProperty('ref')) {
|
|
287
|
+
if (!props.hasOwnProperty('ref') && ref) {
|
|
282
288
|
// This is the weird "incoming ref isn't in props, but outgoing ref is in props" thing
|
|
283
289
|
props.ref = ref;
|
|
284
290
|
}
|
|
@@ -286,11 +292,32 @@ export const createHook = <M extends Model<any, any>, PO extends {}, PI extends
|
|
|
286
292
|
};
|
|
287
293
|
};
|
|
288
294
|
|
|
289
|
-
export
|
|
290
|
-
model: M,
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
295
|
+
export const subModelHook = <M extends Model<any, any>, SM extends Model<any, any>, O extends {}>(
|
|
296
|
+
fn: (model: M) => SM,
|
|
297
|
+
hook: BehaviorHook<SM, O>
|
|
298
|
+
): BehaviorHook<M, O> => {
|
|
299
|
+
return (model: M, props: any, ref: React.Ref<any>) => {
|
|
300
|
+
return hook(fn(model), props, ref);
|
|
301
|
+
};
|
|
302
|
+
};
|
|
303
|
+
|
|
304
|
+
// Typescript function parameters are contravariant while return types are covariant. This is a
|
|
305
|
+
// problem when someone hands us a model that correctly extends `Model<any, any>`, but adds extra
|
|
306
|
+
// properties to the model. So `M extends Model<any, any>`. But the `BehaviorHook` is the return
|
|
307
|
+
// type which will reverse the direction which is no longer true: `Model<any, any> extends M`. In
|
|
308
|
+
// order to avoid this issue, we use the `bivarianceHack` found in ReactJS type definitions. This
|
|
309
|
+
// hack forces Typescript to treat `M` as a bivariant allowing extension to go either direction.
|
|
310
|
+
// Normally this would be less type safe, but we're using a generic `M` as a placeholder so there
|
|
311
|
+
// isn't a real issue. Not 100% this is a bug, but the "hack" is a bit messy.
|
|
312
|
+
// https://www.stephanboyer.com/post/132/what-are-covariance-and-contravariance
|
|
313
|
+
// https://stackoverflow.com/questions/52667959/what-is-the-purpose-of-bivariancehack-in-typescript-types/52668133
|
|
314
|
+
export type BehaviorHook<M extends Model<any, any>, O extends {}> = {
|
|
315
|
+
bivarianceHack<P extends {}, R>(
|
|
316
|
+
model: M,
|
|
317
|
+
elemProps?: P,
|
|
318
|
+
ref?: React.Ref<R>
|
|
319
|
+
): O & P & (R extends HTMLOrSVGElement ? {ref: React.Ref<R>} : {});
|
|
320
|
+
}['bivarianceHack'];
|
|
294
321
|
|
|
295
322
|
function setRef<T>(ref: React.Ref<T> | undefined, value: T): void {
|
|
296
323
|
if (ref) {
|
|
@@ -327,7 +354,7 @@ function setRef<T>(ref: React.Ref<T> | undefined, value: T): void {
|
|
|
327
354
|
* return <div ref={elementRef}/>
|
|
328
355
|
* })
|
|
329
356
|
*/
|
|
330
|
-
export function useForkRef<T>(ref1?: React.Ref<T>, ref2?: React.Ref<T>):
|
|
357
|
+
export function useForkRef<T>(ref1?: React.Ref<T>, ref2?: React.Ref<T>): React.RefCallback<T> {
|
|
331
358
|
return (value: T) => {
|
|
332
359
|
setRef(ref1, value);
|
|
333
360
|
setRef(ref2, value);
|
|
@@ -410,9 +437,9 @@ export function useModelContext<T>(context: React.Context<T>, model?: T): T {
|
|
|
410
437
|
* return <div id="foo" {...props}>{children}</div>
|
|
411
438
|
* })
|
|
412
439
|
*/
|
|
413
|
-
export function composeHooks<M extends Model<any, any>, O1 extends {},
|
|
414
|
-
hook1:
|
|
415
|
-
hook2:
|
|
440
|
+
export function composeHooks<M extends Model<any, any>, O1 extends {}, O2 extends {}>(
|
|
441
|
+
hook1: BehaviorHook<M, O1>,
|
|
442
|
+
hook2: BehaviorHook<M, O2>
|
|
416
443
|
): BehaviorHook<M, O1 & O2>;
|
|
417
444
|
|
|
418
445
|
export function composeHooks<
|
|
@@ -423,9 +450,9 @@ export function composeHooks<
|
|
|
423
450
|
O2 extends {},
|
|
424
451
|
O3 extends {}
|
|
425
452
|
>(
|
|
426
|
-
hook1:
|
|
427
|
-
hook2:
|
|
428
|
-
hook3:
|
|
453
|
+
hook1: BehaviorHook<M, O1>,
|
|
454
|
+
hook2: BehaviorHook<M, O2>,
|
|
455
|
+
hook3: BehaviorHook<M, O3>
|
|
429
456
|
): BehaviorHook<M, O1 & O2 & O3>;
|
|
430
457
|
export function composeHooks<
|
|
431
458
|
M extends Model<any, any>,
|
|
@@ -436,10 +463,10 @@ export function composeHooks<
|
|
|
436
463
|
O3 extends {},
|
|
437
464
|
O4 extends {}
|
|
438
465
|
>(
|
|
439
|
-
hook1:
|
|
440
|
-
hook2:
|
|
441
|
-
hook3:
|
|
442
|
-
hook4:
|
|
466
|
+
hook1: BehaviorHook<M, O1>,
|
|
467
|
+
hook2: BehaviorHook<M, O2>,
|
|
468
|
+
hook3: BehaviorHook<M, O3>,
|
|
469
|
+
hook4: BehaviorHook<M, O4>
|
|
443
470
|
): BehaviorHook<M, O1 & O2 & O3 & O4>;
|
|
444
471
|
export function composeHooks<
|
|
445
472
|
M extends Model<any, any>,
|
|
@@ -451,11 +478,11 @@ export function composeHooks<
|
|
|
451
478
|
O4 extends {},
|
|
452
479
|
O5 extends {}
|
|
453
480
|
>(
|
|
454
|
-
hook1:
|
|
455
|
-
hook2:
|
|
456
|
-
hook3:
|
|
457
|
-
hook4:
|
|
458
|
-
hook5:
|
|
481
|
+
hook1: BehaviorHook<M, O1>,
|
|
482
|
+
hook2: BehaviorHook<M, O2>,
|
|
483
|
+
hook3: BehaviorHook<M, O3>,
|
|
484
|
+
hook4: BehaviorHook<M, O4>,
|
|
485
|
+
hook5: BehaviorHook<M, O5>
|
|
459
486
|
): BehaviorHook<M, O1 & O2 & O3 & O4 & O5>;
|
|
460
487
|
export function composeHooks<M extends Model<any, any>, R, P extends {}, O extends {}>(
|
|
461
488
|
...hooks: ((model: M, props: P, ref: React.Ref<R>) => O)[]
|
|
@@ -465,7 +492,7 @@ export function composeHooks<M extends Model<any, any>, R, P extends {}, O exten
|
|
|
465
492
|
return hook(model, props, props.ref || ref);
|
|
466
493
|
}, props);
|
|
467
494
|
|
|
468
|
-
if (!returnProps.hasOwnProperty('ref')) {
|
|
495
|
+
if (!returnProps.hasOwnProperty('ref') && ref) {
|
|
469
496
|
// This is the weird "incoming ref isn't in props, but outgoing ref is in props" thing
|
|
470
497
|
returnProps.ref = ref;
|
|
471
498
|
}
|