@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.
- package/action-bar/lib/ActionBarList.tsx +2 -2
- package/banner/lib/hooks/index.ts +2 -0
- package/banner/lib/hooks/useThemedPalette.ts +3 -3
- package/common/lib/theming/README.md +97 -0
- package/common/lib/theming/index.ts +1 -1
- package/common/lib/theming/useTheme.ts +79 -22
- package/common/lib/theming/useThemedRing.ts +114 -0
- package/common/lib/utils/colorUtils.ts +20 -7
- package/common/lib/utils/components.ts +4 -0
- package/common/lib/utils/memoize.ts +1 -1
- package/dist/commonjs/action-bar/lib/ActionBar.js +8 -9
- package/dist/commonjs/action-bar/lib/ActionBarItem.js +7 -18
- package/dist/commonjs/action-bar/lib/ActionBarList.js +13 -38
- package/dist/commonjs/action-bar/lib/ActionBarOverflowButton.js +13 -24
- package/dist/commonjs/action-bar/lib/useActionBarModel.js +39 -38
- package/dist/commonjs/avatar/lib/Avatar.js +52 -74
- package/dist/commonjs/badge/lib/CountBadge.js +23 -43
- package/dist/commonjs/banner/lib/Banner.js +32 -48
- package/dist/commonjs/banner/lib/BannerActionText.js +7 -30
- package/dist/commonjs/banner/lib/BannerIcon.js +9 -31
- package/dist/commonjs/banner/lib/BannerLabel.js +6 -29
- package/dist/commonjs/banner/lib/hooks/index.d.ts +2 -0
- package/dist/commonjs/banner/lib/hooks/index.d.ts.map +1 -1
- package/dist/commonjs/banner/lib/hooks/index.js +3 -0
- package/dist/commonjs/banner/lib/hooks/useBanner.js +5 -6
- package/dist/commonjs/banner/lib/hooks/useBannerActionText.js +4 -5
- package/dist/commonjs/banner/lib/hooks/useBannerIcon.js +6 -7
- package/dist/commonjs/banner/lib/hooks/useBannerLabel.js +4 -5
- package/dist/commonjs/banner/lib/hooks/useBannerModel.js +8 -16
- package/dist/commonjs/banner/lib/hooks/useThemedPalette.d.ts +1 -1
- package/dist/commonjs/banner/lib/hooks/useThemedPalette.d.ts.map +1 -1
- package/dist/commonjs/banner/lib/hooks/useThemedPalette.js +11 -11
- package/dist/commonjs/breadcrumbs/lib/Breadcrumbs.js +12 -35
- package/dist/commonjs/breadcrumbs/lib/BreadcrumbsCurrentItem.js +14 -37
- package/dist/commonjs/breadcrumbs/lib/BreadcrumbsItem.js +14 -39
- package/dist/commonjs/breadcrumbs/lib/BreadcrumbsLink.js +15 -36
- package/dist/commonjs/breadcrumbs/lib/BreadcrumbsList.js +10 -33
- package/dist/commonjs/breadcrumbs/lib/BreadcrumbsMenu.js +7 -19
- package/dist/commonjs/breadcrumbs/lib/BreadcrumbsOverflowButton.js +15 -38
- package/dist/commonjs/breadcrumbs/lib/hooks/useBreadcrumbsModel.js +38 -37
- package/dist/commonjs/breadcrumbs/lib/hooks/utils/index.js +4 -4
- package/dist/commonjs/button/lib/BaseButton.js +128 -78
- package/dist/commonjs/button/lib/DeleteButton.js +27 -58
- package/dist/commonjs/button/lib/ExternalHyperlink.js +25 -39
- package/dist/commonjs/button/lib/Hyperlink.js +9 -34
- package/dist/commonjs/button/lib/PrimaryButton.js +9 -32
- package/dist/commonjs/button/lib/SecondaryButton.js +9 -32
- package/dist/commonjs/button/lib/TertiaryButton.js +23 -49
- package/dist/commonjs/button/lib/ToolbarDropdownButton.js +13 -39
- package/dist/commonjs/button/lib/ToolbarIconButton.js +16 -43
- package/dist/commonjs/button/lib/deprecated_Button.js +51 -54
- package/dist/commonjs/button/lib/parts/ButtonLabel.js +6 -29
- package/dist/commonjs/button/lib/parts/ButtonLabelIcon.js +7 -30
- package/dist/commonjs/card/lib/Card.js +8 -31
- package/dist/commonjs/card/lib/CardBody.js +6 -29
- package/dist/commonjs/card/lib/CardHeading.js +5 -28
- package/dist/commonjs/checkbox/lib/Checkbox.js +120 -129
- package/dist/commonjs/collection/lib/ListBox.js +11 -34
- package/dist/commonjs/collection/lib/react-virtual.js +2 -2
- package/dist/commonjs/collection/lib/useBaseListModel.js +57 -61
- package/dist/commonjs/collection/lib/useCursorListModel.js +98 -130
- package/dist/commonjs/collection/lib/useGridModel.js +14 -32
- package/dist/commonjs/collection/lib/useListItemRegister.js +16 -18
- package/dist/commonjs/collection/lib/useListItemRovingFocus.js +35 -40
- package/dist/commonjs/collection/lib/useListItemSelect.js +6 -8
- package/dist/commonjs/collection/lib/useListModel.js +2 -2
- package/dist/commonjs/collection/lib/useListRenderItem.js +9 -9
- package/dist/commonjs/collection/lib/useListResetCursorOnBlur.js +9 -10
- package/dist/commonjs/collection/lib/useOverflowListItemMeasure.js +10 -11
- package/dist/commonjs/collection/lib/useOverflowListMeasure.js +8 -8
- package/dist/commonjs/collection/lib/useOverflowListModel.js +61 -56
- package/dist/commonjs/collection/lib/useOverflowListTarget.js +10 -10
- package/dist/commonjs/collection/lib/useSelectionListModel.js +31 -37
- package/dist/commonjs/color-picker/lib/ColorInput.js +45 -81
- package/dist/commonjs/color-picker/lib/ColorPreview.js +7 -32
- package/dist/commonjs/color-picker/lib/parts/ColorSwatch.js +15 -43
- package/dist/commonjs/common/lib/CanvasProvider.js +15 -57
- package/dist/commonjs/common/lib/EllipsisText.js +6 -18
- package/dist/commonjs/common/lib/InputProvider.js +73 -93
- package/dist/commonjs/common/lib/parts/_brand-assets.js +6 -6
- package/dist/commonjs/common/lib/responsive/useResponsiveContainerStyles.js +22 -49
- package/dist/commonjs/common/lib/styles/errorRing.js +11 -10
- package/dist/commonjs/common/lib/styles/focusRing.js +19 -21
- package/dist/commonjs/common/lib/styles/hideMouseFocus.js +13 -9
- package/dist/commonjs/common/lib/theming/breakpoints.js +10 -10
- package/dist/commonjs/common/lib/theming/createCanvasTheme.js +36 -65
- package/dist/commonjs/common/lib/theming/getObjectProxy.js +3 -3
- package/dist/commonjs/common/lib/theming/index.d.ts +1 -1
- package/dist/commonjs/common/lib/theming/index.d.ts.map +1 -1
- package/dist/commonjs/common/lib/theming/index.js +1 -1
- package/dist/commonjs/common/lib/theming/styled.js +10 -14
- package/dist/commonjs/common/lib/theming/theme.js +3 -3
- package/dist/commonjs/common/lib/theming/useIsRTL.js +5 -5
- package/dist/commonjs/common/lib/theming/useTheme.d.ts +49 -5
- package/dist/commonjs/common/lib/theming/useTheme.d.ts.map +1 -1
- package/dist/commonjs/common/lib/theming/useTheme.js +82 -37
- package/dist/commonjs/common/lib/theming/useThemedRing.d.ts +43 -0
- package/dist/commonjs/common/lib/theming/useThemedRing.d.ts.map +1 -0
- package/dist/commonjs/common/lib/theming/useThemedRing.js +100 -0
- package/dist/commonjs/common/lib/utils/changeFocus.js +3 -3
- package/dist/commonjs/common/lib/utils/colorUtils.d.ts +7 -0
- package/dist/commonjs/common/lib/utils/colorUtils.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/colorUtils.js +28 -15
- package/dist/commonjs/common/lib/utils/components.d.ts +3 -1
- package/dist/commonjs/common/lib/utils/components.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/components.js +46 -89
- package/dist/commonjs/common/lib/utils/deepMerge.js +4 -4
- package/dist/commonjs/common/lib/utils/elements.js +16 -16
- package/dist/commonjs/common/lib/utils/getTranslateFromOrigin.js +2 -2
- package/dist/commonjs/common/lib/utils/isWithinBreakpoint.js +1 -1
- package/dist/commonjs/common/lib/utils/makeMq.js +4 -4
- package/dist/commonjs/common/lib/utils/memoize.d.ts +1 -1
- package/dist/commonjs/common/lib/utils/memoize.d.ts.map +1 -1
- package/dist/commonjs/common/lib/utils/memoize.js +4 -8
- package/dist/commonjs/common/lib/utils/mergeCallback.js +1 -5
- package/dist/commonjs/common/lib/utils/mergeProps.js +5 -16
- package/dist/commonjs/common/lib/utils/models.js +48 -70
- package/dist/commonjs/common/lib/utils/useConstant.js +2 -2
- package/dist/commonjs/common/lib/utils/useIsFullscreen.js +7 -7
- package/dist/commonjs/common/lib/utils/useModalityType.js +9 -9
- package/dist/commonjs/common/lib/utils/useMount.js +3 -3
- package/dist/commonjs/common/lib/utils/useResizeObserver.js +9 -21
- package/dist/commonjs/common/lib/utils/useUniqueId.js +8 -8
- package/dist/commonjs/common/lib/utils/useWindowSize.js +10 -10
- package/dist/commonjs/dialog/lib/Dialog.js +7 -8
- package/dist/commonjs/dialog/lib/DialogCard.js +6 -17
- package/dist/commonjs/dialog/lib/DialogPopper.js +9 -32
- package/dist/commonjs/dialog/lib/hooks/useDialogCard.js +4 -5
- package/dist/commonjs/dialog/lib/hooks/useDialogModel.js +4 -4
- package/dist/commonjs/dialog/lib/hooks/useDialogPopper.js +4 -5
- package/dist/commonjs/disclosure/lib/useDisclosureModel.js +12 -12
- package/dist/commonjs/form-field/lib/FormField.js +41 -84
- package/dist/commonjs/form-field/lib/Hint.js +13 -47
- package/dist/commonjs/form-field/lib/Label.js +43 -86
- package/dist/commonjs/icon/lib/AccentIcon.d.ts +3 -2
- package/dist/commonjs/icon/lib/AccentIcon.d.ts.map +1 -1
- package/dist/commonjs/icon/lib/AccentIcon.js +15 -41
- package/dist/commonjs/icon/lib/AppletIcon.js +16 -40
- package/dist/commonjs/icon/lib/Graphic.js +9 -33
- package/dist/commonjs/icon/lib/Icon.js +12 -31
- package/dist/commonjs/icon/lib/Svg.js +11 -34
- package/dist/commonjs/icon/lib/SystemIcon.d.ts.map +1 -1
- package/dist/commonjs/icon/lib/SystemIcon.js +36 -63
- package/dist/commonjs/icon/lib/SystemIconCircle.d.ts +2 -1
- package/dist/commonjs/icon/lib/SystemIconCircle.d.ts.map +1 -1
- package/dist/commonjs/icon/lib/SystemIconCircle.js +18 -47
- package/dist/commonjs/icon/lib/utils.d.ts +0 -2
- package/dist/commonjs/icon/lib/utils.d.ts.map +1 -1
- package/dist/commonjs/icon/lib/utils.js +2 -10
- package/dist/commonjs/layout/lib/Box.js +26 -51
- package/dist/commonjs/layout/lib/Flex.js +8 -31
- package/dist/commonjs/layout/lib/Grid.js +11 -35
- package/dist/commonjs/layout/lib/utils/background.js +1 -1
- package/dist/commonjs/layout/lib/utils/border/color.js +1 -1
- package/dist/commonjs/layout/lib/utils/border/index.js +20 -24
- package/dist/commonjs/layout/lib/utils/border/lineStyle.js +1 -1
- package/dist/commonjs/layout/lib/utils/border/radius.js +1 -1
- package/dist/commonjs/layout/lib/utils/border/shorthand.js +1 -1
- package/dist/commonjs/layout/lib/utils/border/width.js +1 -1
- package/dist/commonjs/layout/lib/utils/buildStyleFns.js +40 -43
- package/dist/commonjs/layout/lib/utils/color.js +1 -1
- package/dist/commonjs/layout/lib/utils/depth.js +1 -1
- package/dist/commonjs/layout/lib/utils/flex.js +1 -1
- package/dist/commonjs/layout/lib/utils/flexItem.js +1 -1
- package/dist/commonjs/layout/lib/utils/getValidChildren.js +2 -4
- package/dist/commonjs/layout/lib/utils/grid.js +1 -1
- package/dist/commonjs/layout/lib/utils/gridItem.js +1 -1
- package/dist/commonjs/layout/lib/utils/layout.js +1 -1
- package/dist/commonjs/layout/lib/utils/other.js +1 -1
- package/dist/commonjs/layout/lib/utils/position.d.ts +4 -0
- package/dist/commonjs/layout/lib/utils/position.d.ts.map +1 -1
- package/dist/commonjs/layout/lib/utils/position.js +6 -1
- package/dist/commonjs/layout/lib/utils/space.js +1 -1
- package/dist/commonjs/layout/lib/utils/text.js +1 -1
- package/dist/commonjs/loading-dots/lib/LoadingDots.js +20 -42
- package/dist/commonjs/menu/lib/Menu.js +10 -11
- package/dist/commonjs/menu/lib/MenuCard.js +14 -26
- package/dist/commonjs/menu/lib/MenuContextTarget.js +9 -32
- package/dist/commonjs/menu/lib/MenuDivider.js +9 -20
- package/dist/commonjs/menu/lib/MenuItem.js +77 -86
- package/dist/commonjs/menu/lib/MenuList.js +8 -31
- package/dist/commonjs/menu/lib/MenuPopper.js +6 -29
- package/dist/commonjs/menu/lib/MenuTarget.js +11 -35
- package/dist/commonjs/menu/lib/useMenuModel.js +22 -24
- package/dist/commonjs/modal/lib/Modal.js +10 -10
- package/dist/commonjs/modal/lib/ModalBody.js +13 -26
- package/dist/commonjs/modal/lib/ModalCard.js +13 -27
- package/dist/commonjs/modal/lib/ModalHeading.js +13 -26
- package/dist/commonjs/modal/lib/ModalOverflowOverlay.js +8 -19
- package/dist/commonjs/modal/lib/ModalOverlay.js +39 -52
- package/dist/commonjs/modal/lib/hooks/useCloseOnOverlayClick.js +17 -17
- package/dist/commonjs/modal/lib/hooks/useModalCard.js +3 -3
- package/dist/commonjs/modal/lib/hooks/useModalHeading.js +7 -7
- package/dist/commonjs/modal/lib/hooks/useModalModel.js +5 -5
- package/dist/commonjs/pagination/lib/Pagination/AdditionalDetails.js +15 -36
- package/dist/commonjs/pagination/lib/Pagination/Controls.js +37 -63
- package/dist/commonjs/pagination/lib/Pagination/GoTo/Form.js +11 -34
- package/dist/commonjs/pagination/lib/Pagination/GoTo/Label.js +7 -30
- package/dist/commonjs/pagination/lib/Pagination/GoTo/TextInput.js +7 -18
- package/dist/commonjs/pagination/lib/Pagination/GoTo/useGoToForm.js +12 -13
- package/dist/commonjs/pagination/lib/Pagination/Nav.js +4 -15
- package/dist/commonjs/pagination/lib/Pagination/PageButton.js +15 -39
- package/dist/commonjs/pagination/lib/Pagination/PageList.js +10 -34
- package/dist/commonjs/pagination/lib/Pagination/Pagination.js +15 -37
- package/dist/commonjs/pagination/lib/Pagination/buildPageRange.js +9 -15
- package/dist/commonjs/pagination/lib/Pagination/common/List.js +8 -32
- package/dist/commonjs/pagination/lib/Pagination/common/useLiveRegion.js +8 -26
- package/dist/commonjs/pagination/lib/Pagination/common/utils/getValidChildren.js +2 -4
- package/dist/commonjs/pagination/lib/Pagination/common/utils/useRTL.js +5 -5
- package/dist/commonjs/pagination/lib/Pagination/usePaginationModel.js +31 -31
- package/dist/commonjs/popup/lib/Popper.js +34 -56
- package/dist/commonjs/popup/lib/Popup.js +11 -12
- package/dist/commonjs/popup/lib/PopupBody.js +6 -17
- package/dist/commonjs/popup/lib/PopupCard.js +33 -55
- package/dist/commonjs/popup/lib/PopupCloseButton.js +6 -29
- package/dist/commonjs/popup/lib/PopupCloseIcon.js +8 -31
- package/dist/commonjs/popup/lib/PopupHeading.js +6 -29
- package/dist/commonjs/popup/lib/PopupPopper.js +6 -29
- package/dist/commonjs/popup/lib/PopupTarget.js +6 -17
- package/dist/commonjs/popup/lib/getTransformFromPlacement.js +6 -6
- package/dist/commonjs/popup/lib/hooks/focus-trap-js.js +23 -27
- package/dist/commonjs/popup/lib/hooks/useAlwaysCloseOnOutsideClick.js +9 -9
- package/dist/commonjs/popup/lib/hooks/useAssistiveHideSiblings.js +14 -17
- package/dist/commonjs/popup/lib/hooks/useBringToTopOnClick.js +11 -11
- package/dist/commonjs/popup/lib/hooks/useCloseOnEscape.js +9 -9
- package/dist/commonjs/popup/lib/hooks/useCloseOnFullscreenExit.js +9 -9
- package/dist/commonjs/popup/lib/hooks/useCloseOnOutsideClick.js +12 -12
- package/dist/commonjs/popup/lib/hooks/useCloseOnTargetHidden.js +12 -12
- package/dist/commonjs/popup/lib/hooks/useDisableBodyScroll.js +10 -10
- package/dist/commonjs/popup/lib/hooks/useFocusRedirect.js +10 -10
- package/dist/commonjs/popup/lib/hooks/useFocusTrap.js +9 -9
- package/dist/commonjs/popup/lib/hooks/useInitialFocus.js +10 -10
- package/dist/commonjs/popup/lib/hooks/usePopupCard.js +3 -4
- package/dist/commonjs/popup/lib/hooks/usePopupCloseButton.js +3 -4
- package/dist/commonjs/popup/lib/hooks/usePopupHeading.js +3 -4
- package/dist/commonjs/popup/lib/hooks/usePopupModel.js +29 -34
- package/dist/commonjs/popup/lib/hooks/usePopupPopper.js +8 -9
- package/dist/commonjs/popup/lib/hooks/usePopupStack.js +15 -15
- package/dist/commonjs/popup/lib/hooks/usePopupTarget.js +5 -6
- package/dist/commonjs/popup/lib/hooks/usePopupTargetContext.js +5 -6
- package/dist/commonjs/popup/lib/hooks/useReturnFocus.js +19 -19
- package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenEnter.js +10 -10
- package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenExit.js +10 -10
- package/dist/commonjs/radio/lib/Radio.js +113 -133
- package/dist/commonjs/radio/lib/RadioGroup.js +33 -78
- package/dist/commonjs/segmented-control/lib/SegmentedControl.js +7 -30
- package/dist/commonjs/segmented-control/lib/SegmentedControlButton.js +40 -61
- package/dist/commonjs/select/lib/Select.js +47 -64
- package/dist/commonjs/select/lib/SelectOption.js +6 -48
- package/dist/commonjs/side-panel/lib/SidePanel.js +60 -122
- package/dist/commonjs/skeleton/lib/parts/skeletonHeader.js +5 -30
- package/dist/commonjs/skeleton/lib/parts/skeletonShape.js +12 -40
- package/dist/commonjs/skeleton/lib/parts/skeletonText.js +12 -38
- package/dist/commonjs/skeleton/lib/skeleton.js +15 -40
- package/dist/commonjs/status-indicator/lib/StatusIndicator.js +28 -61
- package/dist/commonjs/switch/lib/Switch.js +55 -65
- package/dist/commonjs/table/lib/Table.js +10 -52
- package/dist/commonjs/table/lib/TableRow.js +40 -67
- package/dist/commonjs/tabs/lib/Tabs.js +11 -12
- package/dist/commonjs/tabs/lib/TabsItem.d.ts +1 -1
- package/dist/commonjs/tabs/lib/TabsItem.js +81 -86
- package/dist/commonjs/tabs/lib/TabsList.js +25 -51
- package/dist/commonjs/tabs/lib/TabsMenuPopper.js +6 -29
- package/dist/commonjs/tabs/lib/TabsOverflowButton.js +12 -35
- package/dist/commonjs/tabs/lib/TabsPanel.js +17 -42
- package/dist/commonjs/tabs/lib/TabsPanels.js +5 -6
- package/dist/commonjs/tabs/lib/useTabsModel.js +44 -43
- package/dist/commonjs/testing/lib/ComponentStatesTable.js +11 -20
- package/dist/commonjs/testing/lib/StaticStates.js +10 -34
- package/dist/commonjs/testing/lib/permutateProps.js +13 -26
- package/dist/commonjs/text/lib/LabelText.js +6 -29
- package/dist/commonjs/text/lib/Text.js +13 -39
- package/dist/commonjs/text/lib/TypeLevelComponents.js +15 -41
- package/dist/commonjs/text-area/lib/TextArea.js +42 -55
- package/dist/commonjs/text-input/lib/InputIconContainer.js +11 -17
- package/dist/commonjs/text-input/lib/TextInput.js +38 -51
- package/dist/commonjs/toast/lib/Toast.js +13 -36
- package/dist/commonjs/toast/lib/ToastBody.js +5 -28
- package/dist/commonjs/toast/lib/ToastCloseIcon.js +5 -16
- package/dist/commonjs/toast/lib/ToastIcon.js +5 -16
- package/dist/commonjs/toast/lib/ToastLink.js +5 -28
- package/dist/commonjs/toast/lib/ToastMessage.js +6 -29
- package/dist/commonjs/toast/lib/hooks/useToastModel.js +8 -16
- package/dist/commonjs/tokens/index.d.ts +2 -2
- package/dist/commonjs/tokens/index.d.ts.map +1 -1
- package/dist/commonjs/tokens/index.js +6 -6
- package/dist/commonjs/tokens/lib/type/fontFamilies.js +3 -3
- package/dist/commonjs/tokens/lib/type/index.js +7 -7
- package/dist/commonjs/tokens/lib/type/levels.js +4 -4
- package/dist/commonjs/tokens/lib/type/variants.js +1 -1
- package/dist/commonjs/tooltip/lib/OverflowTooltip.js +34 -54
- package/dist/commonjs/tooltip/lib/Tooltip.js +26 -47
- package/dist/commonjs/tooltip/lib/TooltipContainer.js +37 -35
- package/dist/commonjs/tooltip/lib/useTooltip.js +32 -34
- package/dist/es6/action-bar/lib/ActionBar.js +3 -4
- package/dist/es6/action-bar/lib/ActionBarItem.js +4 -15
- package/dist/es6/action-bar/lib/ActionBarList.js +10 -35
- package/dist/es6/action-bar/lib/ActionBarOverflowButton.js +6 -17
- package/dist/es6/action-bar/lib/useActionBarModel.js +36 -35
- package/dist/es6/avatar/lib/Avatar.js +46 -68
- package/dist/es6/badge/lib/CountBadge.js +20 -40
- package/dist/es6/banner/lib/Banner.js +25 -41
- package/dist/es6/banner/lib/BannerActionText.js +4 -27
- package/dist/es6/banner/lib/BannerIcon.js +5 -27
- package/dist/es6/banner/lib/BannerLabel.js +3 -26
- package/dist/es6/banner/lib/hooks/index.d.ts +2 -0
- package/dist/es6/banner/lib/hooks/index.d.ts.map +1 -1
- package/dist/es6/banner/lib/hooks/index.js +2 -0
- package/dist/es6/banner/lib/hooks/useBanner.js +3 -4
- package/dist/es6/banner/lib/hooks/useBannerActionText.js +2 -3
- package/dist/es6/banner/lib/hooks/useBannerIcon.js +2 -3
- package/dist/es6/banner/lib/hooks/useBannerLabel.js +2 -3
- package/dist/es6/banner/lib/hooks/useBannerModel.js +8 -16
- package/dist/es6/banner/lib/hooks/useThemedPalette.d.ts +1 -1
- package/dist/es6/banner/lib/hooks/useThemedPalette.d.ts.map +1 -1
- package/dist/es6/banner/lib/hooks/useThemedPalette.js +7 -7
- package/dist/es6/breadcrumbs/lib/Breadcrumbs.js +3 -26
- package/dist/es6/breadcrumbs/lib/BreadcrumbsCurrentItem.js +9 -32
- package/dist/es6/breadcrumbs/lib/BreadcrumbsItem.js +6 -31
- package/dist/es6/breadcrumbs/lib/BreadcrumbsLink.js +11 -32
- package/dist/es6/breadcrumbs/lib/BreadcrumbsList.js +5 -28
- package/dist/es6/breadcrumbs/lib/BreadcrumbsMenu.js +6 -18
- package/dist/es6/breadcrumbs/lib/BreadcrumbsOverflowButton.js +6 -29
- package/dist/es6/breadcrumbs/lib/hooks/useBreadcrumbsModel.js +34 -33
- package/dist/es6/breadcrumbs/lib/hooks/utils/index.js +4 -4
- package/dist/es6/button/lib/BaseButton.js +123 -73
- package/dist/es6/button/lib/DeleteButton.js +25 -56
- package/dist/es6/button/lib/ExternalHyperlink.js +21 -35
- package/dist/es6/button/lib/Hyperlink.js +7 -32
- package/dist/es6/button/lib/PrimaryButton.js +6 -29
- package/dist/es6/button/lib/SecondaryButton.js +6 -29
- package/dist/es6/button/lib/TertiaryButton.js +20 -46
- package/dist/es6/button/lib/ToolbarDropdownButton.js +9 -35
- package/dist/es6/button/lib/ToolbarIconButton.js +13 -40
- package/dist/es6/button/lib/deprecated_Button.js +48 -51
- package/dist/es6/button/lib/parts/ButtonLabel.js +4 -27
- package/dist/es6/button/lib/parts/ButtonLabelIcon.js +5 -28
- package/dist/es6/card/lib/Card.js +3 -26
- package/dist/es6/card/lib/CardBody.js +3 -26
- package/dist/es6/card/lib/CardHeading.js +3 -26
- package/dist/es6/checkbox/lib/Checkbox.js +116 -125
- package/dist/es6/collection/lib/ListBox.js +7 -30
- package/dist/es6/collection/lib/react-virtual.js +1 -1
- package/dist/es6/collection/lib/useBaseListModel.js +55 -59
- package/dist/es6/collection/lib/useCursorListModel.js +110 -142
- package/dist/es6/collection/lib/useGridModel.js +12 -30
- package/dist/es6/collection/lib/useListItemRegister.js +13 -15
- package/dist/es6/collection/lib/useListItemRovingFocus.js +33 -38
- package/dist/es6/collection/lib/useListItemSelect.js +4 -6
- package/dist/es6/collection/lib/useListModel.js +1 -1
- package/dist/es6/collection/lib/useListRenderItem.js +8 -8
- package/dist/es6/collection/lib/useListResetCursorOnBlur.js +5 -6
- package/dist/es6/collection/lib/useOverflowListItemMeasure.js +8 -9
- package/dist/es6/collection/lib/useOverflowListMeasure.js +5 -5
- package/dist/es6/collection/lib/useOverflowListModel.js +59 -54
- package/dist/es6/collection/lib/useOverflowListTarget.js +7 -7
- package/dist/es6/collection/lib/useSelectionListModel.js +31 -37
- package/dist/es6/color-picker/lib/ColorInput.js +41 -77
- package/dist/es6/color-picker/lib/ColorPreview.js +3 -28
- package/dist/es6/color-picker/lib/parts/ColorSwatch.js +8 -36
- package/dist/es6/common/lib/CanvasProvider.js +11 -54
- package/dist/es6/common/lib/EllipsisText.js +5 -17
- package/dist/es6/common/lib/InputProvider.js +72 -93
- package/dist/es6/common/lib/parts/_brand-assets.js +6 -6
- package/dist/es6/common/lib/responsive/useResponsiveContainerStyles.js +20 -47
- package/dist/es6/common/lib/styles/accessibleHide.js +1 -1
- package/dist/es6/common/lib/styles/errorRing.js +8 -7
- package/dist/es6/common/lib/styles/focusRing.js +16 -18
- package/dist/es6/common/lib/styles/hideMouseFocus.js +13 -9
- package/dist/es6/common/lib/theming/breakpoints.js +12 -12
- package/dist/es6/common/lib/theming/createCanvasTheme.js +29 -58
- package/dist/es6/common/lib/theming/getObjectProxy.js +3 -3
- package/dist/es6/common/lib/theming/index.d.ts +1 -1
- package/dist/es6/common/lib/theming/index.d.ts.map +1 -1
- package/dist/es6/common/lib/theming/index.js +1 -1
- package/dist/es6/common/lib/theming/styled.js +7 -11
- package/dist/es6/common/lib/theming/theme.js +5 -5
- package/dist/es6/common/lib/theming/useIsRTL.js +2 -2
- package/dist/es6/common/lib/theming/useTheme.d.ts +49 -5
- package/dist/es6/common/lib/theming/useTheme.d.ts.map +1 -1
- package/dist/es6/common/lib/theming/useTheme.js +78 -34
- package/dist/es6/common/lib/theming/useThemedRing.d.ts +43 -0
- package/dist/es6/common/lib/theming/useThemedRing.d.ts.map +1 -0
- package/dist/es6/common/lib/theming/useThemedRing.js +92 -0
- package/dist/es6/common/lib/utils/changeFocus.js +3 -3
- package/dist/es6/common/lib/utils/colorUtils.d.ts +7 -0
- package/dist/es6/common/lib/utils/colorUtils.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/colorUtils.js +24 -12
- package/dist/es6/common/lib/utils/components.d.ts +3 -1
- package/dist/es6/common/lib/utils/components.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/components.js +43 -86
- package/dist/es6/common/lib/utils/deepMerge.js +4 -4
- package/dist/es6/common/lib/utils/elements.js +16 -16
- package/dist/es6/common/lib/utils/getTranslateFromOrigin.js +2 -2
- package/dist/es6/common/lib/utils/isWithinBreakpoint.js +1 -1
- package/dist/es6/common/lib/utils/makeMq.js +4 -4
- package/dist/es6/common/lib/utils/memoize.d.ts +1 -1
- package/dist/es6/common/lib/utils/memoize.d.ts.map +1 -1
- package/dist/es6/common/lib/utils/memoize.js +4 -8
- package/dist/es6/common/lib/utils/mergeCallback.js +1 -5
- package/dist/es6/common/lib/utils/mergeProps.js +4 -15
- package/dist/es6/common/lib/utils/models.js +47 -69
- package/dist/es6/common/lib/utils/useConstant.js +1 -1
- package/dist/es6/common/lib/utils/useIsFullscreen.js +5 -5
- package/dist/es6/common/lib/utils/useModalityType.js +8 -8
- package/dist/es6/common/lib/utils/useMount.js +2 -2
- package/dist/es6/common/lib/utils/useResizeObserver.js +6 -18
- package/dist/es6/common/lib/utils/useUniqueId.js +8 -8
- package/dist/es6/common/lib/utils/useWindowSize.js +8 -8
- package/dist/es6/dialog/lib/Dialog.js +2 -3
- package/dist/es6/dialog/lib/DialogCard.js +3 -14
- package/dist/es6/dialog/lib/DialogPopper.js +6 -29
- package/dist/es6/dialog/lib/hooks/useDialogCard.js +2 -3
- package/dist/es6/dialog/lib/hooks/useDialogModel.js +3 -3
- package/dist/es6/dialog/lib/hooks/useDialogPopper.js +2 -3
- package/dist/es6/disclosure/lib/useDisclosureModel.js +11 -11
- package/dist/es6/form-field/lib/FormField.js +35 -79
- package/dist/es6/form-field/lib/Hint.js +9 -43
- package/dist/es6/form-field/lib/Label.js +39 -82
- package/dist/es6/icon/lib/AccentIcon.d.ts +3 -2
- package/dist/es6/icon/lib/AccentIcon.d.ts.map +1 -1
- package/dist/es6/icon/lib/AccentIcon.js +12 -38
- package/dist/es6/icon/lib/AppletIcon.js +12 -36
- package/dist/es6/icon/lib/Graphic.js +6 -30
- package/dist/es6/icon/lib/Icon.js +10 -29
- package/dist/es6/icon/lib/Svg.js +8 -31
- package/dist/es6/icon/lib/SystemIcon.d.ts.map +1 -1
- package/dist/es6/icon/lib/SystemIcon.js +33 -60
- package/dist/es6/icon/lib/SystemIconCircle.d.ts +2 -1
- package/dist/es6/icon/lib/SystemIconCircle.d.ts.map +1 -1
- package/dist/es6/icon/lib/SystemIconCircle.js +14 -43
- package/dist/es6/icon/lib/utils.d.ts +0 -2
- package/dist/es6/icon/lib/utils.d.ts.map +1 -1
- package/dist/es6/icon/lib/utils.js +1 -8
- package/dist/es6/layout/lib/Box.js +12 -37
- package/dist/es6/layout/lib/Flex.js +4 -27
- package/dist/es6/layout/lib/Grid.js +7 -31
- package/dist/es6/layout/lib/utils/background.js +3 -3
- package/dist/es6/layout/lib/utils/border/color.js +2 -2
- package/dist/es6/layout/lib/utils/border/index.js +14 -18
- package/dist/es6/layout/lib/utils/border/lineStyle.js +2 -2
- package/dist/es6/layout/lib/utils/border/radius.js +2 -2
- package/dist/es6/layout/lib/utils/border/shorthand.js +2 -2
- package/dist/es6/layout/lib/utils/border/width.js +2 -2
- package/dist/es6/layout/lib/utils/buildStyleFns.js +39 -42
- package/dist/es6/layout/lib/utils/color.js +3 -3
- package/dist/es6/layout/lib/utils/depth.js +3 -3
- package/dist/es6/layout/lib/utils/flex.js +3 -3
- package/dist/es6/layout/lib/utils/flexItem.js +3 -3
- package/dist/es6/layout/lib/utils/getValidChildren.js +1 -3
- package/dist/es6/layout/lib/utils/grid.js +3 -3
- package/dist/es6/layout/lib/utils/gridItem.js +3 -3
- package/dist/es6/layout/lib/utils/layout.js +3 -3
- package/dist/es6/layout/lib/utils/other.js +3 -3
- package/dist/es6/layout/lib/utils/position.d.ts +4 -0
- package/dist/es6/layout/lib/utils/position.d.ts.map +1 -1
- package/dist/es6/layout/lib/utils/position.js +8 -3
- package/dist/es6/layout/lib/utils/space.js +3 -3
- package/dist/es6/layout/lib/utils/text.js +3 -3
- package/dist/es6/loading-dots/lib/LoadingDots.js +16 -38
- package/dist/es6/menu/lib/Menu.js +2 -3
- package/dist/es6/menu/lib/MenuCard.js +9 -21
- package/dist/es6/menu/lib/MenuContextTarget.js +7 -30
- package/dist/es6/menu/lib/MenuDivider.js +6 -17
- package/dist/es6/menu/lib/MenuItem.js +70 -79
- package/dist/es6/menu/lib/MenuList.js +4 -27
- package/dist/es6/menu/lib/MenuPopper.js +4 -27
- package/dist/es6/menu/lib/MenuTarget.js +10 -34
- package/dist/es6/menu/lib/useMenuModel.js +20 -22
- package/dist/es6/modal/lib/Modal.js +2 -2
- package/dist/es6/modal/lib/ModalBody.js +10 -23
- package/dist/es6/modal/lib/ModalCard.js +10 -24
- package/dist/es6/modal/lib/ModalHeading.js +10 -23
- package/dist/es6/modal/lib/ModalOverflowOverlay.js +4 -15
- package/dist/es6/modal/lib/ModalOverlay.js +33 -46
- package/dist/es6/modal/lib/hooks/useCloseOnOverlayClick.js +13 -13
- package/dist/es6/modal/lib/hooks/useModalCard.js +1 -1
- package/dist/es6/modal/lib/hooks/useModalHeading.js +5 -5
- package/dist/es6/modal/lib/hooks/useModalModel.js +3 -3
- package/dist/es6/pagination/lib/Pagination/AdditionalDetails.js +10 -31
- package/dist/es6/pagination/lib/Pagination/Controls.js +35 -61
- package/dist/es6/pagination/lib/Pagination/GoTo/Form.js +7 -30
- package/dist/es6/pagination/lib/Pagination/GoTo/Label.js +4 -27
- package/dist/es6/pagination/lib/Pagination/GoTo/TextInput.js +4 -15
- package/dist/es6/pagination/lib/Pagination/GoTo/useGoToForm.js +12 -13
- package/dist/es6/pagination/lib/Pagination/Nav.js +2 -13
- package/dist/es6/pagination/lib/Pagination/PageButton.js +11 -35
- package/dist/es6/pagination/lib/Pagination/PageList.js +7 -31
- package/dist/es6/pagination/lib/Pagination/Pagination.js +16 -38
- package/dist/es6/pagination/lib/Pagination/buildPageRange.js +9 -15
- package/dist/es6/pagination/lib/Pagination/common/List.js +7 -31
- package/dist/es6/pagination/lib/Pagination/common/useLiveRegion.js +8 -26
- package/dist/es6/pagination/lib/Pagination/common/utils/getValidChildren.js +1 -3
- package/dist/es6/pagination/lib/Pagination/common/utils/useRTL.js +4 -4
- package/dist/es6/pagination/lib/Pagination/usePaginationModel.js +29 -29
- package/dist/es6/popup/lib/Popper.js +29 -51
- package/dist/es6/popup/lib/Popup.js +2 -3
- package/dist/es6/popup/lib/PopupBody.js +3 -14
- package/dist/es6/popup/lib/PopupCard.js +26 -48
- package/dist/es6/popup/lib/PopupCloseButton.js +3 -26
- package/dist/es6/popup/lib/PopupCloseIcon.js +3 -26
- package/dist/es6/popup/lib/PopupHeading.js +3 -26
- package/dist/es6/popup/lib/PopupPopper.js +3 -26
- package/dist/es6/popup/lib/PopupTarget.js +3 -14
- package/dist/es6/popup/lib/getTransformFromPlacement.js +6 -6
- package/dist/es6/popup/lib/hooks/focus-trap-js.js +23 -27
- package/dist/es6/popup/lib/hooks/useAlwaysCloseOnOutsideClick.js +5 -5
- package/dist/es6/popup/lib/hooks/useAssistiveHideSiblings.js +11 -14
- package/dist/es6/popup/lib/hooks/useBringToTopOnClick.js +7 -7
- package/dist/es6/popup/lib/hooks/useCloseOnEscape.js +5 -5
- package/dist/es6/popup/lib/hooks/useCloseOnFullscreenExit.js +5 -5
- package/dist/es6/popup/lib/hooks/useCloseOnOutsideClick.js +8 -8
- package/dist/es6/popup/lib/hooks/useCloseOnTargetHidden.js +9 -9
- package/dist/es6/popup/lib/hooks/useDisableBodyScroll.js +7 -7
- package/dist/es6/popup/lib/hooks/useFocusRedirect.js +7 -7
- package/dist/es6/popup/lib/hooks/useFocusTrap.js +5 -5
- package/dist/es6/popup/lib/hooks/useInitialFocus.js +7 -7
- package/dist/es6/popup/lib/hooks/usePopupCard.js +1 -2
- package/dist/es6/popup/lib/hooks/usePopupCloseButton.js +1 -2
- package/dist/es6/popup/lib/hooks/usePopupHeading.js +1 -2
- package/dist/es6/popup/lib/hooks/usePopupModel.js +28 -33
- package/dist/es6/popup/lib/hooks/usePopupPopper.js +5 -6
- package/dist/es6/popup/lib/hooks/usePopupStack.js +12 -12
- package/dist/es6/popup/lib/hooks/usePopupTarget.js +3 -4
- package/dist/es6/popup/lib/hooks/usePopupTargetContext.js +3 -4
- package/dist/es6/popup/lib/hooks/useReturnFocus.js +15 -15
- package/dist/es6/popup/lib/hooks/useTransferOnFullscreenEnter.js +5 -5
- package/dist/es6/popup/lib/hooks/useTransferOnFullscreenExit.js +5 -5
- package/dist/es6/radio/lib/Radio.js +110 -130
- package/dist/es6/radio/lib/RadioGroup.js +29 -75
- package/dist/es6/segmented-control/lib/SegmentedControl.js +5 -28
- package/dist/es6/segmented-control/lib/SegmentedControlButton.js +37 -58
- package/dist/es6/select/lib/Select.js +44 -61
- package/dist/es6/select/lib/SelectOption.js +5 -48
- package/dist/es6/side-panel/lib/SidePanel.js +54 -117
- package/dist/es6/skeleton/lib/parts/skeletonHeader.js +2 -27
- package/dist/es6/skeleton/lib/parts/skeletonShape.js +9 -37
- package/dist/es6/skeleton/lib/parts/skeletonText.js +9 -35
- package/dist/es6/skeleton/lib/skeleton.js +9 -34
- package/dist/es6/status-indicator/lib/StatusIndicator.js +25 -59
- package/dist/es6/switch/lib/Switch.js +54 -64
- package/dist/es6/table/lib/Table.js +9 -52
- package/dist/es6/table/lib/TableRow.js +35 -62
- package/dist/es6/tabs/lib/Tabs.js +2 -3
- package/dist/es6/tabs/lib/TabsItem.d.ts +1 -1
- package/dist/es6/tabs/lib/TabsItem.js +74 -79
- package/dist/es6/tabs/lib/TabsList.js +20 -46
- package/dist/es6/tabs/lib/TabsMenuPopper.js +4 -27
- package/dist/es6/tabs/lib/TabsOverflowButton.js +5 -28
- package/dist/es6/tabs/lib/TabsPanel.js +13 -38
- package/dist/es6/tabs/lib/TabsPanels.js +2 -3
- package/dist/es6/tabs/lib/useTabsModel.js +41 -40
- package/dist/es6/testing/lib/ComponentStatesTable.js +9 -18
- package/dist/es6/testing/lib/StaticStates.js +8 -32
- package/dist/es6/testing/lib/permutateProps.js +13 -26
- package/dist/es6/text/lib/LabelText.js +3 -26
- package/dist/es6/text/lib/Text.js +10 -36
- package/dist/es6/text/lib/TypeLevelComponents.js +16 -42
- package/dist/es6/text-area/lib/TextArea.js +41 -54
- package/dist/es6/text-input/lib/InputIconContainer.js +8 -14
- package/dist/es6/text-input/lib/TextInput.js +37 -50
- package/dist/es6/toast/lib/Toast.js +4 -27
- package/dist/es6/toast/lib/ToastBody.js +3 -26
- package/dist/es6/toast/lib/ToastCloseIcon.js +3 -14
- package/dist/es6/toast/lib/ToastIcon.js +3 -14
- package/dist/es6/toast/lib/ToastLink.js +3 -26
- package/dist/es6/toast/lib/ToastMessage.js +3 -26
- package/dist/es6/toast/lib/hooks/useToastModel.js +8 -16
- package/dist/es6/tokens/index.d.ts +2 -2
- package/dist/es6/tokens/index.d.ts.map +1 -1
- package/dist/es6/tokens/index.js +16 -16
- package/dist/es6/tokens/lib/depth.js +1 -1
- package/dist/es6/tokens/lib/radius.js +1 -1
- package/dist/es6/tokens/lib/space.js +2 -2
- package/dist/es6/tokens/lib/type/fontFamilies.js +6 -6
- package/dist/es6/tokens/lib/type/fontSizes.js +1 -1
- package/dist/es6/tokens/lib/type/fontWeights.js +1 -1
- package/dist/es6/tokens/lib/type/index.js +8 -8
- package/dist/es6/tokens/lib/type/levels.js +1 -1
- package/dist/es6/tokens/lib/type/variants.js +1 -1
- package/dist/es6/tooltip/lib/OverflowTooltip.js +29 -49
- package/dist/es6/tooltip/lib/Tooltip.js +21 -42
- package/dist/es6/tooltip/lib/TooltipContainer.js +33 -31
- package/dist/es6/tooltip/lib/useTooltip.js +29 -31
- package/icon/lib/AccentIcon.tsx +5 -6
- package/icon/lib/SystemIcon.tsx +1 -2
- package/icon/lib/SystemIconCircle.tsx +4 -3
- package/icon/lib/utils.ts +0 -8
- package/layout/lib/utils/position.ts +9 -0
- package/modal/lib/ModalBody.tsx +2 -2
- package/modal/lib/ModalCard.tsx +2 -2
- package/modal/lib/ModalHeading.tsx +2 -2
- package/modal/lib/ModalOverlay.tsx +2 -2
- package/package.json +3 -3
- package/tokens/index.ts +3 -3
- package/common/lib/theming/getCanvasTheme.ts +0 -40
- package/dist/commonjs/common/lib/theming/getCanvasTheme.d.ts +0 -28
- package/dist/commonjs/common/lib/theming/getCanvasTheme.d.ts.map +0 -1
- package/dist/commonjs/common/lib/theming/getCanvasTheme.js +0 -42
- package/dist/es6/common/lib/theming/getCanvasTheme.d.ts +0 -28
- package/dist/es6/common/lib/theming/getCanvasTheme.d.ts.map +0 -1
- package/dist/es6/common/lib/theming/getCanvasTheme.js +0 -37
|
@@ -7,10 +7,10 @@ exports.makeMq = void 0;
|
|
|
7
7
|
* the breakpoint size and the value is the min-width of that breakpoint
|
|
8
8
|
* @returns {Object} A set of CSS media queries for each breakpoint size
|
|
9
9
|
*/
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
Object.keys(breakpoints).forEach(
|
|
13
|
-
mq[key] =
|
|
10
|
+
const makeMq = (breakpoints) => {
|
|
11
|
+
const mq = {};
|
|
12
|
+
Object.keys(breakpoints).forEach(key => {
|
|
13
|
+
mq[key] = `@media (min-width: ${breakpoints[key]}px)`;
|
|
14
14
|
});
|
|
15
15
|
return mq;
|
|
16
16
|
};
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Simple memoize function. It takes a function and a resolver function to generate a
|
|
3
3
|
* cache key
|
|
4
4
|
*/
|
|
5
|
-
export declare function memoize<T extends (...args: any) => any>(func: T, resolver: (...args: Parameters<T>) => string): T;
|
|
5
|
+
export declare function memoize<T extends (...args: any[]) => any>(func: T, resolver: (...args: Parameters<T>) => string): T;
|
|
6
6
|
//# sourceMappingURL=memoize.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoize.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/memoize.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"memoize.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/memoize.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACvD,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,MAAM,GAC3C,CAAC,CAeH"}
|
|
@@ -6,17 +6,13 @@ exports.memoize = void 0;
|
|
|
6
6
|
* cache key
|
|
7
7
|
*/
|
|
8
8
|
function memoize(func, resolver) {
|
|
9
|
-
|
|
10
|
-
return function () {
|
|
11
|
-
|
|
12
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
13
|
-
args[_i] = arguments[_i];
|
|
14
|
-
}
|
|
15
|
-
var key = resolver.apply(void 0, args);
|
|
9
|
+
const cache = new Map();
|
|
10
|
+
return function (...args) {
|
|
11
|
+
const key = resolver(...args);
|
|
16
12
|
if (cache.has(key)) {
|
|
17
13
|
return cache.get(key);
|
|
18
14
|
}
|
|
19
|
-
|
|
15
|
+
const result = func(...args);
|
|
20
16
|
cache.set(key, result);
|
|
21
17
|
return result;
|
|
22
18
|
};
|
|
@@ -16,11 +16,7 @@ exports.mergeCallback = void 0;
|
|
|
16
16
|
*/
|
|
17
17
|
function mergeCallback(callback1, callback2) {
|
|
18
18
|
if (callback2) {
|
|
19
|
-
return (
|
|
20
|
-
var args = [];
|
|
21
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
22
|
-
args[_i] = arguments[_i];
|
|
23
|
-
}
|
|
19
|
+
return ((...args) => {
|
|
24
20
|
callback1.apply(null, args);
|
|
25
21
|
callback2.apply(null, args);
|
|
26
22
|
});
|
|
@@ -1,18 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
3
|
exports.mergeProps = void 0;
|
|
15
|
-
|
|
4
|
+
const mergeCallback_1 = require("./mergeCallback");
|
|
16
5
|
// This file suppresses TS errors that come from merging interfaces of elements that aren't
|
|
17
6
|
// determined within components. Element interfaces are determined only when used, so TS errors
|
|
18
7
|
// aren't even useful here. Things get complicated when merging interfaces of callbacks.
|
|
@@ -25,19 +14,19 @@ var mergeCallback_1 = require("./mergeCallback");
|
|
|
25
14
|
* passing of props from merged hooks to another without passing out to the final element props.
|
|
26
15
|
*/
|
|
27
16
|
function mergeProps(targetProps, sourceProps) {
|
|
28
|
-
|
|
29
|
-
for (
|
|
17
|
+
const returnProps = { ...targetProps };
|
|
18
|
+
for (const key in sourceProps) {
|
|
30
19
|
if (sourceProps.hasOwnProperty(key)) {
|
|
31
20
|
if (key === 'css' && targetProps.hasOwnProperty('css')) {
|
|
32
21
|
// @ts-ignore
|
|
33
|
-
|
|
22
|
+
const css = [].concat(targetProps[key], sourceProps[key]);
|
|
34
23
|
// @ts-ignore
|
|
35
24
|
returnProps[key] = css;
|
|
36
25
|
}
|
|
37
26
|
else if (key === 'style' && targetProps.hasOwnProperty('style')) {
|
|
38
27
|
// merge style objects
|
|
39
28
|
// @ts-ignore TS complains that key might not be on targetProps, but typeof returns
|
|
40
|
-
returnProps[key] =
|
|
29
|
+
returnProps[key] = { ...targetProps[key], ...sourceProps[key] };
|
|
41
30
|
}
|
|
42
31
|
else if (typeof sourceProps[key] === 'function' &&
|
|
43
32
|
// @ts-ignore TS complains that key might not be on targetProps, but typeof returns
|
|
@@ -1,33 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
|
-
var t = {};
|
|
15
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
16
|
-
t[p] = s[p];
|
|
17
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
18
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
19
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
20
|
-
t[p[i]] = s[p[i]];
|
|
21
|
-
}
|
|
22
|
-
return t;
|
|
23
|
-
};
|
|
24
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
25
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
26
4
|
};
|
|
27
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
6
|
exports.createModelHook = exports.createEvents = exports.useEventMap = exports.createEventMap = void 0;
|
|
29
7
|
/* eslint-disable react-hooks/rules-of-hooks */
|
|
30
|
-
|
|
8
|
+
const react_1 = __importDefault(require("react"));
|
|
31
9
|
/**
|
|
32
10
|
* Convenience factory function that extracts type information and encodes it for use with model
|
|
33
11
|
* config and `useEventMap`. Under the hood, it returns the config that was passed in. The real
|
|
@@ -54,13 +32,13 @@ var react_1 = __importDefault(require("react"));
|
|
|
54
32
|
*
|
|
55
33
|
* @deprecated `createModelHook` uses Template Literal Types to create event map types
|
|
56
34
|
*/
|
|
57
|
-
|
|
35
|
+
const createEventMap = () => (config) => {
|
|
58
36
|
// Instruct Typescript that all valid guards and callbacks exist
|
|
59
37
|
return config;
|
|
60
|
-
};
|
|
38
|
+
};
|
|
61
39
|
exports.createEventMap = createEventMap;
|
|
62
40
|
// small wrapper to get `keyof T` instead of `string | number | symbol`
|
|
63
|
-
|
|
41
|
+
const keys = (input) => Object.keys(input);
|
|
64
42
|
/**
|
|
65
43
|
* This hook creates a stable reference events object to be used in a model. The reference is stable
|
|
66
44
|
* by the use of `React.Memo` and uses React Refs to make sure there are no stale closure values. It
|
|
@@ -82,30 +60,30 @@ var keys = function (input) { return Object.keys(input); };
|
|
|
82
60
|
* })
|
|
83
61
|
* @deprecated Use `createModelHook` instead
|
|
84
62
|
*/
|
|
85
|
-
|
|
63
|
+
const useEventMap = (eventMap, state, config, events) => {
|
|
86
64
|
// use refs so we can memoize the returned `events` object
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
65
|
+
const eventMapRef = react_1.default.useRef(eventMap);
|
|
66
|
+
const stateRef = react_1.default.useRef(state);
|
|
67
|
+
const configRef = react_1.default.useRef(config);
|
|
68
|
+
const eventsRef = react_1.default.useRef(events);
|
|
91
69
|
// update all the refs with current values
|
|
92
70
|
eventMapRef.current = eventMap;
|
|
93
71
|
stateRef.current = state;
|
|
94
72
|
configRef.current = config;
|
|
95
73
|
eventsRef.current = events;
|
|
96
|
-
return react_1.default.useMemo(
|
|
97
|
-
return keys(eventsRef.current).reduce(
|
|
98
|
-
result[key] = (
|
|
74
|
+
return react_1.default.useMemo(() => {
|
|
75
|
+
return keys(eventsRef.current).reduce((result, key) => {
|
|
76
|
+
result[key] = (data => {
|
|
99
77
|
var _a, _b;
|
|
100
78
|
// Invoke the configured guard if there is one
|
|
101
79
|
if (!eventsRef.current[key]._wrapped) {
|
|
102
|
-
|
|
80
|
+
const guardFn = keys(eventMapRef.current.guards || {}).find(k => {
|
|
103
81
|
return (eventMapRef.current.guards || {})[k] === key;
|
|
104
82
|
});
|
|
105
83
|
if (guardFn &&
|
|
106
84
|
((_a = configRef.current) === null || _a === void 0 ? void 0 : _a[guardFn]) &&
|
|
107
85
|
//@ts-ignore Typescript doesn't like that the call signatures are different
|
|
108
|
-
!configRef.current[guardFn]({ data
|
|
86
|
+
!configRef.current[guardFn]({ data, state: stateRef.current })) {
|
|
109
87
|
return;
|
|
110
88
|
}
|
|
111
89
|
}
|
|
@@ -113,12 +91,12 @@ var useEventMap = function (eventMap, state, config, events) {
|
|
|
113
91
|
eventsRef.current[key](data);
|
|
114
92
|
if (!eventsRef.current[key]._wrapped) {
|
|
115
93
|
// Invoke the configured callback if there is one
|
|
116
|
-
|
|
94
|
+
const callbackFn = keys(eventMapRef.current.callbacks || {}).find(k => {
|
|
117
95
|
return (eventMapRef.current.callbacks || {})[k] === key;
|
|
118
96
|
});
|
|
119
97
|
if (callbackFn && ((_b = configRef.current) === null || _b === void 0 ? void 0 : _b[callbackFn])) {
|
|
120
98
|
//@ts-ignore Typescript doesn't like that the call signatures are different
|
|
121
|
-
configRef.current[callbackFn]({ data
|
|
99
|
+
configRef.current[callbackFn]({ data, prevState: stateRef.current });
|
|
122
100
|
}
|
|
123
101
|
}
|
|
124
102
|
}); // this cast keeps Typescript happy
|
|
@@ -130,30 +108,30 @@ var useEventMap = function (eventMap, state, config, events) {
|
|
|
130
108
|
};
|
|
131
109
|
exports.useEventMap = useEventMap;
|
|
132
110
|
// use this?
|
|
133
|
-
|
|
134
|
-
return { events
|
|
135
|
-
};
|
|
111
|
+
const createEvents = (events) => (config) => {
|
|
112
|
+
return { events, eventMap: config };
|
|
113
|
+
};
|
|
136
114
|
exports.createEvents = createEvents;
|
|
137
115
|
function capitalize(string) {
|
|
138
116
|
return string[0].toUpperCase() + string.substring(1);
|
|
139
117
|
}
|
|
140
118
|
function getGuardName(eventName) {
|
|
141
|
-
return
|
|
119
|
+
return `should${capitalize(eventName)}`;
|
|
142
120
|
}
|
|
143
121
|
function getCallbackName(eventName) {
|
|
144
|
-
return
|
|
122
|
+
return `on${capitalize(eventName)}`;
|
|
145
123
|
}
|
|
146
124
|
// Merges config together in a way that is type safe and works at runtime with correct rules and order applied
|
|
147
125
|
// to guards and callbacks.
|
|
148
126
|
function mergeConfig(sourceConfig, newConfig) {
|
|
149
|
-
|
|
150
|
-
|
|
127
|
+
const result = { ...sourceConfig };
|
|
128
|
+
for (const key in newConfig) {
|
|
151
129
|
if (typeof newConfig[key] === "function" &&
|
|
152
130
|
/(on)[A-Z]/.test(key) &&
|
|
153
131
|
typeof sourceConfig[key] === "function") {
|
|
154
132
|
// merge callbacks and ignore Typescript's errors. We've already tested call signatures
|
|
155
133
|
// @ts-ignore
|
|
156
|
-
result[key] =
|
|
134
|
+
result[key] = (data, state) => {
|
|
157
135
|
// @ts-ignore
|
|
158
136
|
sourceConfig[key](data, state);
|
|
159
137
|
// @ts-ignore
|
|
@@ -165,7 +143,7 @@ function mergeConfig(sourceConfig, newConfig) {
|
|
|
165
143
|
sourceConfig[key]) {
|
|
166
144
|
// merge guards and ignore Typescript's errors. We've already tested call signatures
|
|
167
145
|
// @ts-ignore
|
|
168
|
-
result[key] =
|
|
146
|
+
result[key] = (data, state) => {
|
|
169
147
|
// @ts-ignore
|
|
170
148
|
return sourceConfig[key](data, state) && newConfig[key](data, state);
|
|
171
149
|
};
|
|
@@ -174,9 +152,6 @@ function mergeConfig(sourceConfig, newConfig) {
|
|
|
174
152
|
// @ts-ignore
|
|
175
153
|
result[key] = newConfig[key];
|
|
176
154
|
}
|
|
177
|
-
};
|
|
178
|
-
for (var key in newConfig) {
|
|
179
|
-
_loop_1(key);
|
|
180
155
|
}
|
|
181
156
|
return result;
|
|
182
157
|
}
|
|
@@ -203,21 +178,21 @@ function mergeConfig(sourceConfig, newConfig) {
|
|
|
203
178
|
* // config is pre-typed for you based on `defaultConfig`
|
|
204
179
|
* })
|
|
205
180
|
*/
|
|
206
|
-
|
|
207
|
-
|
|
181
|
+
const createModelHook = (options) => {
|
|
182
|
+
const { defaultConfig = {}, requiredConfig = {}, defaultContext, contextOverride } = options;
|
|
208
183
|
// create a bunch of refs so we can define the `wrappedModel` function once.
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
184
|
+
const fnRef = { current: null };
|
|
185
|
+
const callbacksRef = { current: [] };
|
|
186
|
+
const guardsRef = { current: [] };
|
|
187
|
+
const Context = contextOverride || react_1.default.createContext(defaultContext || { state: {}, events: {} });
|
|
188
|
+
const getElemProps = (props) => {
|
|
214
189
|
// if (eventsRef.current === null) {
|
|
215
190
|
// throw Error(
|
|
216
191
|
// `useModel.getElemProps() must be called after useModel(). getElemProps needs to determine the events returned by the model to function correctly.\nExample:\nconst model = useModel();\nconst elemProps = useModel.getElemProps(props);`
|
|
217
192
|
// );
|
|
218
193
|
// }
|
|
219
|
-
|
|
220
|
-
for (
|
|
194
|
+
const elemProps = {};
|
|
195
|
+
for (const key in props) {
|
|
221
196
|
if (!defaultConfig.hasOwnProperty(key) &&
|
|
222
197
|
!requiredConfig.hasOwnProperty(key) &&
|
|
223
198
|
!callbacksRef.current.includes(key) &&
|
|
@@ -231,10 +206,13 @@ var createModelHook = function (options) {
|
|
|
231
206
|
// we use `any` here because we don't know what the type is here and it is internal. No use
|
|
232
207
|
// slowing down Typescript to bother type checking
|
|
233
208
|
function wrappedModelHook(config) {
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
209
|
+
const stateRef = react_1.default.useRef({});
|
|
210
|
+
const configRef = react_1.default.useRef({});
|
|
211
|
+
const eventsRef = react_1.default.useRef({});
|
|
212
|
+
const { state, events, ...rest } = fnRef.current({
|
|
213
|
+
...defaultConfig,
|
|
214
|
+
...config,
|
|
215
|
+
});
|
|
238
216
|
// update all the refs with current values
|
|
239
217
|
stateRef.current = state;
|
|
240
218
|
configRef.current = config || {};
|
|
@@ -245,12 +223,12 @@ var createModelHook = function (options) {
|
|
|
245
223
|
if (!guardsRef.current.length) {
|
|
246
224
|
guardsRef.current = keys(events).map(getGuardName);
|
|
247
225
|
}
|
|
248
|
-
|
|
249
|
-
return keys(eventsRef.current).reduce(
|
|
250
|
-
result[key] =
|
|
226
|
+
const wrappedEvents = react_1.default.useMemo(() => {
|
|
227
|
+
return keys(eventsRef.current).reduce((result, key) => {
|
|
228
|
+
result[key] = (data) => {
|
|
251
229
|
// Invoke the configured guard if there is one
|
|
252
230
|
if (!eventsRef.current[key]._wrapped) {
|
|
253
|
-
|
|
231
|
+
const guardFnName = getGuardName(key);
|
|
254
232
|
if (configRef.current[guardFnName] &&
|
|
255
233
|
!configRef.current[guardFnName](data, stateRef.current)) {
|
|
256
234
|
return;
|
|
@@ -258,7 +236,7 @@ var createModelHook = function (options) {
|
|
|
258
236
|
}
|
|
259
237
|
// call the event (setter)
|
|
260
238
|
eventsRef.current[key](data);
|
|
261
|
-
|
|
239
|
+
const callbackFnName = getCallbackName(key);
|
|
262
240
|
if (!eventsRef.current[key]._wrapped) {
|
|
263
241
|
if (configRef.current[callbackFnName]) {
|
|
264
242
|
configRef.current[callbackFnName](data, stateRef.current);
|
|
@@ -270,14 +248,14 @@ var createModelHook = function (options) {
|
|
|
270
248
|
return result;
|
|
271
249
|
}, {});
|
|
272
250
|
}, []);
|
|
273
|
-
return
|
|
251
|
+
return { state, events: wrappedEvents, ...rest };
|
|
274
252
|
}
|
|
275
253
|
wrappedModelHook.getElemProps = getElemProps;
|
|
276
254
|
wrappedModelHook.defaultConfig = defaultConfig;
|
|
277
255
|
wrappedModelHook.requiredConfig = requiredConfig;
|
|
278
256
|
wrappedModelHook.mergeConfig = mergeConfig;
|
|
279
257
|
wrappedModelHook.Context = Context;
|
|
280
|
-
return
|
|
258
|
+
return (fn) => {
|
|
281
259
|
fnRef.current = fn;
|
|
282
260
|
return wrappedModelHook; // Typescript complains about the `fn` not matching the signature. It's okay Typescript. It works at runtime
|
|
283
261
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useConstant = void 0;
|
|
4
|
-
|
|
4
|
+
const react_1 = require("react");
|
|
5
5
|
/**
|
|
6
6
|
* Get a constant value in React, only running the callback function once. `React.useMemo` does not
|
|
7
7
|
* guarantee that a function will only be run once.
|
|
@@ -10,7 +10,7 @@ var react_1 = require("react");
|
|
|
10
10
|
* const value = useConstant(generateUniqueId)
|
|
11
11
|
*/
|
|
12
12
|
function useConstant(fn) {
|
|
13
|
-
|
|
13
|
+
const ref = react_1.useRef();
|
|
14
14
|
if (!ref.current) {
|
|
15
15
|
ref.current = fn();
|
|
16
16
|
}
|
|
@@ -4,16 +4,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.useIsFullscreen = void 0;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const screenfull_1 = __importDefault(require("screenfull"));
|
|
9
|
+
const useIsFullscreen = () => {
|
|
10
|
+
const [isFullscreen, setIsFullscreen] = react_1.default.useState(false);
|
|
11
|
+
const handler = react_1.default.useCallback(() => {
|
|
12
12
|
setIsFullscreen(screenfull_1.default.isFullscreen);
|
|
13
13
|
}, []);
|
|
14
|
-
react_1.default.useEffect(
|
|
14
|
+
react_1.default.useEffect(() => {
|
|
15
15
|
screenfull_1.default.on('change', handler);
|
|
16
|
-
return
|
|
16
|
+
return () => {
|
|
17
17
|
screenfull_1.default.off('change', handler);
|
|
18
18
|
};
|
|
19
19
|
}, [handler]);
|
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.useModalityType = void 0;
|
|
7
|
-
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
8
|
function safeLocalStorageGet(key) {
|
|
9
9
|
try {
|
|
10
10
|
return localStorage.get(key);
|
|
@@ -30,7 +30,7 @@ function safeLocalStorageSet(key, value) {
|
|
|
30
30
|
// a. if localStorage isn't primed, use clientWidth of the browsers
|
|
31
31
|
// b. if < 768, default to 'touch'
|
|
32
32
|
// c. else default to 'mouse'
|
|
33
|
-
|
|
33
|
+
let localStorageValue = (safeLocalStorageGet('modality') ||
|
|
34
34
|
(typeof document !== 'undefined'
|
|
35
35
|
? document.documentElement.clientWidth < 768
|
|
36
36
|
? 'touch'
|
|
@@ -40,7 +40,7 @@ var localStorageValue = (safeLocalStorageGet('modality') ||
|
|
|
40
40
|
// Update the `localStorageValue`, but conditionally update localStorage only if the value has
|
|
41
41
|
// changed. This prevents too many calls to `localStorage` which can be costly on spinning disk
|
|
42
42
|
// drives
|
|
43
|
-
|
|
43
|
+
const updateLocalStorage = (value) => {
|
|
44
44
|
if (localStorageValue !== value) {
|
|
45
45
|
safeLocalStorageSet('modality', value);
|
|
46
46
|
}
|
|
@@ -59,16 +59,16 @@ var updateLocalStorage = function (value) {
|
|
|
59
59
|
*
|
|
60
60
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/pointerType
|
|
61
61
|
*/
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
react_1.default.useEffect(
|
|
65
|
-
|
|
66
|
-
|
|
62
|
+
const useModalityType = () => {
|
|
63
|
+
const [modality, setModality] = react_1.default.useState(localStorageValue);
|
|
64
|
+
react_1.default.useEffect(() => {
|
|
65
|
+
const handlePointerDown = (event) => {
|
|
66
|
+
const value = event.pointerType;
|
|
67
67
|
setModality(value);
|
|
68
68
|
updateLocalStorage(value);
|
|
69
69
|
};
|
|
70
70
|
document.addEventListener('pointerdown', handlePointerDown);
|
|
71
|
-
return
|
|
71
|
+
return () => {
|
|
72
72
|
document.removeEventListener('pointerdown', handlePointerDown);
|
|
73
73
|
};
|
|
74
74
|
}, []);
|
|
@@ -4,12 +4,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.useMountLayout = exports.useMount = void 0;
|
|
7
|
-
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
8
|
/**
|
|
9
9
|
* Alias to `useEffect` with the intention to only run on mount/unmount.
|
|
10
10
|
* Avoids the React lint errors and encodes intent.
|
|
11
11
|
*/
|
|
12
|
-
|
|
12
|
+
const useMount = (callback) => {
|
|
13
13
|
// we only want this to be called once
|
|
14
14
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
15
15
|
react_1.default.useEffect(callback, []);
|
|
@@ -19,7 +19,7 @@ exports.useMount = useMount;
|
|
|
19
19
|
* Alias to `useLayoutEffect` with the intention to only run on mount/unmount
|
|
20
20
|
* Avoids the React lint errors and encodes intent.
|
|
21
21
|
*/
|
|
22
|
-
|
|
22
|
+
const useMountLayout = (callback) => {
|
|
23
23
|
// we only want this to be called once
|
|
24
24
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
25
25
|
react_1.default.useLayoutEffect(callback, []);
|
|
@@ -1,35 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
4
|
};
|
|
16
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
6
|
exports.useResizeObserver = void 0;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const use_resize_observer_1 = __importDefault(require("use-resize-observer"));
|
|
9
|
+
const resize_observer_polyfill_1 = __importDefault(require("resize-observer-polyfill"));
|
|
21
10
|
if (typeof window !== 'undefined' && !window.ResizeObserver) {
|
|
22
11
|
window.ResizeObserver = resize_observer_polyfill_1.default;
|
|
23
12
|
}
|
|
24
13
|
// `useResizeObserver` contains this fix in 8.0.0:
|
|
25
14
|
// https://github.com/ZeeCoder/use-resize-observer/commit/bd0f3c8597bac0d853b88cf585256aac1bd4f554
|
|
26
15
|
// v8.0.0 requires TS4.2. So we'll manually patch until we're ready for TS4.2+
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
? function (data) {
|
|
16
|
+
const useResizeObserver = (params = {}) => {
|
|
17
|
+
const widthRef = react_1.default.useRef();
|
|
18
|
+
const heightRef = react_1.default.useRef();
|
|
19
|
+
const onResize = params.onResize
|
|
20
|
+
? (data) => {
|
|
33
21
|
if (widthRef.current !== data.width || heightRef.current !== data.height) {
|
|
34
22
|
widthRef.current = data.width;
|
|
35
23
|
heightRef.current = data.height;
|
|
@@ -37,7 +25,7 @@ var useResizeObserver = function (params) {
|
|
|
37
25
|
}
|
|
38
26
|
}
|
|
39
27
|
: undefined;
|
|
40
|
-
return use_resize_observer_1.default(
|
|
28
|
+
return use_resize_observer_1.default({ ...params, onResize });
|
|
41
29
|
};
|
|
42
30
|
exports.useResizeObserver = useResizeObserver;
|
|
43
31
|
// When the dependency is moved up to v8.0.0, remove the above function and export below instead
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.resetUniqueIdCount = exports.setUniqueSeed = exports.uniqueId = exports.useUniqueId = exports.generateUniqueId = void 0;
|
|
4
|
-
|
|
4
|
+
const useConstant_1 = require("./useConstant");
|
|
5
5
|
// Create a unique seed per import to prevent collisions from other versions of `useUniqueId`
|
|
6
|
-
|
|
6
|
+
let seed = Math.random()
|
|
7
7
|
.toString(36)
|
|
8
8
|
.slice(2)
|
|
9
9
|
.replace(/[0-9]*/, '')
|
|
10
10
|
.substr(0, 4);
|
|
11
|
-
|
|
11
|
+
let c = 0;
|
|
12
12
|
/**
|
|
13
13
|
* Generates a unique and HTML5 compliant identifier every time it is called. Internally it uses a 4
|
|
14
14
|
* character random seed starting with a letter. This seed is unique to each instance of this
|
|
@@ -18,15 +18,15 @@ var c = 0;
|
|
|
18
18
|
* [resetUniqueIdCount](#resetuniqueidcount). [setUniqueSeed](#setuniqueseed) can also be used for
|
|
19
19
|
* testing or server side rendering to get the same results during hydration.
|
|
20
20
|
*/
|
|
21
|
-
|
|
21
|
+
const generateUniqueId = () => seed + (c++).toString(36);
|
|
22
22
|
exports.generateUniqueId = generateUniqueId;
|
|
23
23
|
/**
|
|
24
24
|
* Generate a unique ID if one is not provided. The generated ID will be stable across renders
|
|
25
25
|
* @param id Optional ID provided that will be used instead of a unique ID
|
|
26
26
|
*/
|
|
27
|
-
|
|
27
|
+
const useUniqueId = (id) => {
|
|
28
28
|
// https://codesandbox.io/s/react-functional-component-ids-p2ndq
|
|
29
|
-
|
|
29
|
+
const generatedId = useConstant_1.useConstant(exports.generateUniqueId);
|
|
30
30
|
return id || generatedId;
|
|
31
31
|
};
|
|
32
32
|
exports.useUniqueId = useUniqueId;
|
|
@@ -50,14 +50,14 @@ exports.uniqueId = exports.useUniqueId;
|
|
|
50
50
|
* setSeed('a')
|
|
51
51
|
* })
|
|
52
52
|
*/
|
|
53
|
-
|
|
53
|
+
const setUniqueSeed = (s) => {
|
|
54
54
|
seed = s;
|
|
55
55
|
};
|
|
56
56
|
exports.setUniqueSeed = setUniqueSeed;
|
|
57
57
|
/**
|
|
58
58
|
* This should only be called for tests in an `beforeEach`
|
|
59
59
|
*/
|
|
60
|
-
|
|
60
|
+
const resetUniqueIdCount = () => {
|
|
61
61
|
c = 0;
|
|
62
62
|
};
|
|
63
63
|
exports.resetUniqueIdCount = resetUniqueIdCount;
|
|
@@ -4,28 +4,28 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.useWindowSize = void 0;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const useMount_1 = require("./useMount");
|
|
9
|
+
const getFromWindow = (property, defaultValue) => {
|
|
10
10
|
var _a;
|
|
11
11
|
if (typeof window !== undefined) {
|
|
12
12
|
return (_a = window[property]) !== null && _a !== void 0 ? _a : defaultValue;
|
|
13
13
|
}
|
|
14
14
|
return defaultValue;
|
|
15
15
|
};
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
const useWindowSize = () => {
|
|
17
|
+
const [width, setWidth] = react_1.default.useState(getFromWindow('innerWidth', 0));
|
|
18
|
+
const [height, setHeight] = react_1.default.useState(getFromWindow('innerHeight', 0));
|
|
19
|
+
const onResize = () => {
|
|
20
20
|
setWidth(window.innerWidth);
|
|
21
21
|
setHeight(window.innerHeight);
|
|
22
22
|
};
|
|
23
|
-
useMount_1.useMount(
|
|
23
|
+
useMount_1.useMount(() => {
|
|
24
24
|
window.addEventListener('resize', onResize);
|
|
25
|
-
return
|
|
25
|
+
return () => {
|
|
26
26
|
window.removeEventListener('resize', onResize);
|
|
27
27
|
};
|
|
28
28
|
});
|
|
29
|
-
return { width
|
|
29
|
+
return { width, height };
|
|
30
30
|
};
|
|
31
31
|
exports.useWindowSize = useWindowSize;
|