diff --git a/.eslintrc.json b/.eslintrc.json index c752bfb..884a0e4 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -17,6 +17,8 @@ "prettier/prettier": "error", "react/prop-types": "off", "no-param-reassign": "off", + "react/jsx-uses-react": "off", + "react/react-in-jsx-scope": "off", "react/jsx-filename-extension": [ 1, { diff --git a/components/base-layout/index.tsx b/components/base-layout/index.tsx index 2c20bf3..73998f4 100644 --- a/components/base-layout/index.tsx +++ b/components/base-layout/index.tsx @@ -1,4 +1,3 @@ -import React from 'react' import PropTypes from 'prop-types' import { Header } from 'components/header' diff --git a/components/button/index.stories.tsx b/components/button/index.stories.tsx index 9177853..af2ddfe 100644 --- a/components/button/index.stories.tsx +++ b/components/button/index.stories.tsx @@ -1,4 +1,3 @@ -import React from 'react' import { withKnobs, text, select, boolean } from '@storybook/addon-knobs' import { Button } from '.' import useDarkMode from 'use-dark-mode' diff --git a/components/button/index.tsx b/components/button/index.tsx index b2ac0ce..1ad4507 100644 --- a/components/button/index.tsx +++ b/components/button/index.tsx @@ -1,4 +1,3 @@ -import React from 'react' import PropTypes from 'prop-types' import classNames from 'classnames' diff --git a/components/checkbox/index.stories.tsx b/components/checkbox/index.stories.tsx index 0db454f..fd0a856 100644 --- a/components/checkbox/index.stories.tsx +++ b/components/checkbox/index.stories.tsx @@ -1,4 +1,3 @@ -import React from 'react' import { Checkbox } from '.' import useDarkMode from 'use-dark-mode' import { Typography } from 'components/typography' diff --git a/components/dark-mode-toggle/index.stories.tsx b/components/dark-mode-toggle/index.stories.tsx index f843fae..f1bfbd0 100644 --- a/components/dark-mode-toggle/index.stories.tsx +++ b/components/dark-mode-toggle/index.stories.tsx @@ -1,4 +1,3 @@ -import React from 'react' import { DarkModeToggle } from '.' import useDarkMode from 'use-dark-mode' import { Typography } from 'components/typography' diff --git a/components/dark-mode-toggle/index.tsx b/components/dark-mode-toggle/index.tsx index 643e7ab..a7022a2 100644 --- a/components/dark-mode-toggle/index.tsx +++ b/components/dark-mode-toggle/index.tsx @@ -1,4 +1,3 @@ -import React from 'react' import useDarkMode from 'use-dark-mode' import { SvgSun } from 'components/svgs/svg-sun' import { SvgMoon } from 'components/svgs/svg-moon' diff --git a/components/drag-and-drop/index.stories.tsx b/components/drag-and-drop/index.stories.tsx index a7d2b5b..0be16c2 100644 --- a/components/drag-and-drop/index.stories.tsx +++ b/components/drag-and-drop/index.stories.tsx @@ -1,4 +1,3 @@ -import React from 'react' import useDarkMode from 'use-dark-mode' import { DragAndDrop } from '.' import { Button } from 'components/button' diff --git a/components/header/index.tsx b/components/header/index.tsx index 9dac569..73fb09e 100644 --- a/components/header/index.tsx +++ b/components/header/index.tsx @@ -1,4 +1,3 @@ -import React from 'react' import classnames from 'classnames' import { DarkModeToggle } from 'components/dark-mode-toggle' import { SvgFavycon } from 'components/svgs/svg-favycon' diff --git a/components/index.stories.tsx b/components/index.stories.tsx index 6e04207..76b71ba 100644 --- a/components/index.stories.tsx +++ b/components/index.stories.tsx @@ -1,5 +1,3 @@ -import React from 'react' - export default { title: 'Welcome', } diff --git a/components/seo/index.tsx b/components/seo/index.tsx index e8868b4..521b594 100644 --- a/components/seo/index.tsx +++ b/components/seo/index.tsx @@ -1,4 +1,3 @@ -import React from 'react' import Head from 'next/head' type SEOProps = { diff --git a/components/sticky/index.tsx b/components/sticky/index.tsx index 57b356e..317e97a 100644 --- a/components/sticky/index.tsx +++ b/components/sticky/index.tsx @@ -1,4 +1,3 @@ -import React from 'react' import PropTypes from 'prop-types' import styles from './index.module.scss' diff --git a/components/svgs/svg-check.tsx b/components/svgs/svg-check.tsx index f38e4d6..8f6e40d 100644 --- a/components/svgs/svg-check.tsx +++ b/components/svgs/svg-check.tsx @@ -1,4 +1,3 @@ -import React from 'react' import classnames from 'classnames' type SvgCheckProps = { diff --git a/components/svgs/svg-checkbox.tsx b/components/svgs/svg-checkbox.tsx index 2236e1a..5dafd38 100644 --- a/components/svgs/svg-checkbox.tsx +++ b/components/svgs/svg-checkbox.tsx @@ -1,4 +1,3 @@ -import React from 'react' import classnames from 'classnames' import styles from './svg-checkbox.module.scss' diff --git a/components/svgs/svg-drop-zone.tsx b/components/svgs/svg-drop-zone.tsx index 3e24aec..04afe8d 100644 --- a/components/svgs/svg-drop-zone.tsx +++ b/components/svgs/svg-drop-zone.tsx @@ -1,5 +1,3 @@ -import React from 'react' - import styles from './svg-drop-zone.module.scss' const SvgDropZone: React.FC> = (props) => { diff --git a/components/svgs/svg-error.tsx b/components/svgs/svg-error.tsx index a098f87..dfb804e 100644 --- a/components/svgs/svg-error.tsx +++ b/components/svgs/svg-error.tsx @@ -1,4 +1,3 @@ -import React from 'react' import classnames from 'classnames' type SvgErrorProps = { diff --git a/components/svgs/svg-favycon.tsx b/components/svgs/svg-favycon.tsx index 8b350a7..436e553 100644 --- a/components/svgs/svg-favycon.tsx +++ b/components/svgs/svg-favycon.tsx @@ -1,5 +1,3 @@ -import React from 'react' - import styles from './svg-favycon.module.scss' const SvgFavycon: React.FC> = (props) => { diff --git a/components/svgs/svg-github.tsx b/components/svgs/svg-github.tsx index 0738ca4..ef8471e 100644 --- a/components/svgs/svg-github.tsx +++ b/components/svgs/svg-github.tsx @@ -1,5 +1,3 @@ -import React from 'react' - const SvgGithub: React.FC> = (props) => ( > = (props) => { diff --git a/components/svgs/svg-moon.tsx b/components/svgs/svg-moon.tsx index 3a4675c..604c58d 100644 --- a/components/svgs/svg-moon.tsx +++ b/components/svgs/svg-moon.tsx @@ -1,5 +1,3 @@ -import React from 'react' - const SvgMoon: React.FC> = (props) => { const idPrefix = 'svg-moon-' return ( diff --git a/components/svgs/svg-sun.tsx b/components/svgs/svg-sun.tsx index 9ffcbc4..355be90 100644 --- a/components/svgs/svg-sun.tsx +++ b/components/svgs/svg-sun.tsx @@ -1,5 +1,3 @@ -import React from 'react' - const SvgSun: React.FC> = (props) => { const idPrefix = 'svg-sun-' return ( diff --git a/components/svgs/svg-twitter.tsx b/components/svgs/svg-twitter.tsx index 17534b0..24ebe8d 100644 --- a/components/svgs/svg-twitter.tsx +++ b/components/svgs/svg-twitter.tsx @@ -1,5 +1,3 @@ -import React from 'react' - const SvgTwitter: React.FC> = (props) => ( void] => { - const [value, setValue] = React.useState(initialValue) + const [value, setValue] = useState(initialValue) - const toggle = React.useCallback(() => { + const toggle = useCallback(() => { setValue((v) => !v) }, []) diff --git a/package.json b/package.json index 2cccad0..91ed964 100644 --- a/package.json +++ b/package.json @@ -55,9 +55,9 @@ "preact-ssr-prepass": "1.1.2", "prismjs": "1.22.0", "prop-types": "15.7.2", - "react": "16.13.1", + "react": "16.14.0", "react-clipboard.js": "2.0.16", - "react-dom": "16.13.1", + "react-dom": "16.14.0", "react-dropzone": "11.2.0", "react-lazy-images": "1.1.0", "react-modal": "3.11.2", diff --git a/pages/_app.tsx b/pages/_app.tsx index 15195f9..e378f88 100644 --- a/pages/_app.tsx +++ b/pages/_app.tsx @@ -1,4 +1,3 @@ -import React from 'react' import { AppProps } from 'next/app' import { MediaQueryProvider } from 'components/media-query-provider' diff --git a/pages/_document.tsx b/pages/_document.tsx index 34db86b..2c63fc1 100644 --- a/pages/_document.tsx +++ b/pages/_document.tsx @@ -1,4 +1,3 @@ -import React from 'react' import Document, { Html, Head, Main, NextScript } from 'next/document' const isProd = process.env.NODE_ENV === 'production' diff --git a/yarn.lock b/yarn.lock index 326fd87..c81c0a1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13877,7 +13877,17 @@ react-docgen@^5.0.0: node-dir "^0.1.10" strip-indent "^3.0.0" -react-dom@16.13.1, react-dom@^16.8.3: +react-dom@16.14.0: + version "16.14.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.14.0.tgz#7ad838ec29a777fb3c75c3a190f661cf92ab8b89" + integrity sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + scheduler "^0.19.1" + +react-dom@^16.8.3: version "16.13.1" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.13.1.tgz#c1bd37331a0486c078ee54c4740720993b2e0e7f" integrity sha512-81PIMmVLnCNLO/fFOQxdQkvEq/+Hfpv24XNJfpyZhTRfO0QcmQIF/PgCa1zCOj2w1hrn12MFLyaJ/G0+Mxtfag== @@ -14080,7 +14090,16 @@ react-use-gesture@7.0.16: resolved "https://registry.yarnpkg.com/react-use-gesture/-/react-use-gesture-7.0.16.tgz#501985261ef9c815a377b6ff9be6df5a85fbb54f" integrity sha512-gwgX+E+WQG0T1uFVl3z8j3ZwH3QQGIgVl7VtQEC2m0IscSs668sSps4Ss3CFp3Vns8xx0j9TVK4aBXH6+YrpEg== -react@16.13.1, react@^16.8.3: +react@16.14.0: + version "16.14.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.14.0.tgz#94d776ddd0aaa37da3eda8fc5b6b18a4c9a3114d" + integrity sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + +react@^16.8.3: version "16.13.1" resolved "https://registry.yarnpkg.com/react/-/react-16.13.1.tgz#2e818822f1a9743122c063d6410d85c1e3afe48e" integrity sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w==