diff --git a/package.json b/package.json index 1dac18e..451295c 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,6 @@ "react-router": "^4.3.1", "react-router-dom": "^4.3.1", "react-scripts": "3.2.0", - "recompose": "^0.30.0", "redux": "^4.0.1", "redux-actions": "^2.6.4", "redux-logger": "^3.0.6", @@ -46,7 +45,6 @@ "@types/react-redux": "^5.0.14", "@types/react-router": "^4.4.4", "@types/react-router-dom": "^4.3.1", - "@types/recompose": "^0.27.0", "@types/redux": "^3.6.0", "@types/redux-actions": "^2.3.2", "@types/redux-logger": "^3.0.5", diff --git a/src/Pim/index.tsx b/src/Pim/index.tsx index 14f7c83..220356f 100644 --- a/src/Pim/index.tsx +++ b/src/Pim/index.tsx @@ -12,7 +12,6 @@ import { Action } from 'redux-actions'; import * as EteSync from '../api/EteSync'; import { createSelector } from 'reselect'; -import { pure } from 'recompose'; import { History } from 'history'; @@ -78,7 +77,7 @@ const itemsSelector = createSelector( } ); -const ItemChangeLog = pure((props: any) => { +const ItemChangeLog = React.memo((props: any) => { const { syncInfo, paramItemUid, diff --git a/src/components/AddressBook.tsx b/src/components/AddressBook.tsx index 5514b00..e8811b1 100644 --- a/src/components/AddressBook.tsx +++ b/src/components/AddressBook.tsx @@ -1,6 +1,5 @@ import * as React from 'react'; -import { pure } from 'recompose'; import { createSelector } from 'reselect'; import * as colors from '@material-ui/core/colors'; @@ -39,7 +38,7 @@ function getContactColor(contact: ContactType) { return colorOptions[sum % colorOptions.length]; } -const AddressBookItem = pure((_props: any) => { +const AddressBookItem = React.memo((_props: any) => { const { entry, onClick, diff --git a/src/components/TaskList.tsx b/src/components/TaskList.tsx index 1b6e33b..80b4f3d 100644 --- a/src/components/TaskList.tsx +++ b/src/components/TaskList.tsx @@ -1,13 +1,12 @@ import * as React from 'react'; -import { pure } from 'recompose'; import { createSelector } from 'reselect'; import { List, ListItem } from '../widgets/List'; import { TaskType } from '../pim-types'; -const TaskListItem = pure((_props: any) => { +const TaskListItem = React.memo((_props: any) => { const { entry, onClick, diff --git a/src/widgets/Avatar.tsx b/src/widgets/Avatar.tsx index bec1d2c..ad2aa0f 100644 --- a/src/widgets/Avatar.tsx +++ b/src/widgets/Avatar.tsx @@ -1,7 +1,6 @@ import * as React from 'react'; -import { pure } from 'recompose'; -export const Avatar = pure((props: { children: React.ReactNode[] | React.ReactNode, size?: number, style?: any }) => { +export const Avatar = React.memo((props: { children: React.ReactNode[] | React.ReactNode, size?: number, style?: any }) => { const size = (props.size) ? props.size : 40; return ( diff --git a/src/widgets/ConfirmationDialog.tsx b/src/widgets/ConfirmationDialog.tsx index e49412d..13120c7 100644 --- a/src/widgets/ConfirmationDialog.tsx +++ b/src/widgets/ConfirmationDialog.tsx @@ -6,9 +6,7 @@ import DialogContent from '@material-ui/core/DialogContent'; import DialogActions from '@material-ui/core/DialogActions'; import Button from '@material-ui/core/Button'; -import { pure } from 'recompose'; - -export default pure((_props: any) => { +export default React.memo((_props: any) => { const { title, children, diff --git a/src/widgets/ExternalLink.tsx b/src/widgets/ExternalLink.tsx index 046adaa..18ec1bf 100644 --- a/src/widgets/ExternalLink.tsx +++ b/src/widgets/ExternalLink.tsx @@ -1,7 +1,6 @@ import * as React from 'react'; -import { pure } from 'recompose'; -export const ExternalLink = pure(({children, ...props}: any) => ( +export const ExternalLink = React.memo(({children, ...props}: any) => ( {children} diff --git a/src/widgets/List.tsx b/src/widgets/List.tsx index d6db912..696a915 100644 --- a/src/widgets/List.tsx +++ b/src/widgets/List.tsx @@ -1,17 +1,16 @@ import * as React from 'react'; -import { pure } from 'recompose'; import ExternalLink from './ExternalLink'; import './List.css'; -export const List = pure((props: { children: React.ReactNode[] | React.ReactNode }) => ( +export const List = React.memo((props: { children: React.ReactNode[] | React.ReactNode }) => (
diff --git a/src/widgets/withSpin.tsx b/src/widgets/withSpin.tsx index 65a2037..73dbfdc 100644 --- a/src/widgets/withSpin.tsx +++ b/src/widgets/withSpin.tsx @@ -1,10 +1,9 @@ import * as React from 'react'; -import { pure } from 'recompose'; import './withSpin.css'; const withSpin = (Component: any) => { - return pure((_props: any) => { + return React.memo((_props: any) => { const { spin, ...props diff --git a/yarn.lock b/yarn.lock index 35aed8e..ac7fbf2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1450,13 +1450,6 @@ "@types/prop-types" "*" csstype "^2.2.0" -"@types/recompose@^0.27.0": - version "0.27.1" - resolved "https://registry.yarnpkg.com/@types/recompose/-/recompose-0.27.1.tgz#eafe5a80b6bdce2108c025bbf19d030136aad894" - integrity sha512-5bT3OMz9HHHwvRSMQaDGN8tWbpCxQfsZXlcy5HLexEEqkSJ9PBZfVMA6HANDbshOvn4kNS75SjQSJLJv5LJHxw== - dependencies: - "@types/react" "*" - "@types/redux-actions@^2.3.2": version "2.3.2" resolved "https://registry.yarnpkg.com/@types/redux-actions/-/redux-actions-2.3.2.tgz#a141515f280d19fd53be7e8a9994985847423540" @@ -8871,7 +8864,7 @@ realpath-native@^1.1.0: dependencies: util.promisify "^1.0.0" -"recompose@0.28.0 - 0.30.0", recompose@^0.30.0: +"recompose@0.28.0 - 0.30.0": version "0.30.0" resolved "https://registry.yarnpkg.com/recompose/-/recompose-0.30.0.tgz#82773641b3927e8c7d24a0d87d65aeeba18aabd0" integrity sha512-ZTrzzUDa9AqUIhRk4KmVFihH0rapdCSMFXjhHbNrjAWxBuUD/guYlyysMnuHjlZC/KRiOKRtB4jf96yYSkKE8w==