feat(v2): Provide typing to most of the theme-classic components (#3348)

* feat(v2): Provide typing to most of the theme-classic components

* Expose type to the end users and dogfood it in v2 website
This commit is contained in:
Sam Zhou 2020-08-28 06:06:37 -04:00 committed by GitHub
parent 658dac7d42
commit bd9b6618c1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
31 changed files with 440 additions and 125 deletions

View file

@ -7,8 +7,7 @@
import {useState, useEffect} from 'react';
import ExecutionEnvironment from '@docusaurus/ExecutionEnvironment';
type ScrollPosition = {scrollX: number; scrollY: number};
import type {ScrollPosition} from '@theme/hooks/useScrollPosition';
const getScrollPosition = (): ScrollPosition => ({
scrollX: ExecutionEnvironment.canUseDOM ? window.pageXOffset : 0,
@ -16,7 +15,7 @@ const getScrollPosition = (): ScrollPosition => ({
});
const useScrollPosition = (
effect: (position: ScrollPosition) => void,
effect?: (position: ScrollPosition) => void,
deps = [],
): ScrollPosition => {
const [scrollPosition, setScrollPosition] = useState(getScrollPosition());