Skip to content

Commit 7af7295

Browse files
committed
Migrate BasePageToolbar to TypeScript
Migrate BaseLogo to TypeScript Migrate AppHeader to Typescript
1 parent 808fbf2 commit 7af7295

File tree

15 files changed

+62
-55
lines changed

15 files changed

+62
-55
lines changed
File renamed without changes.

src/Dashboard/Dashboard.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ const Dashboard = () => {
1616
<BasePageContainer>
1717
<BasePageToolbar
1818
title={'Dashboard'}
19-
actionsComponent={DashboardActions}
19+
actions={<DashboardActions />}
2020
></BasePageToolbar>
2121
<Grid container spacing={3}>
2222
<KeyMetrics />

src/_common/AppFooter/AppFooter.js renamed to src/_common/AppFooter/AppFooter.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ import React from 'react'
22
import Typography from '@material-ui/core/Typography'
33
import Link from '@material-ui/core/Link'
44
import { makeStyles } from '@material-ui/core/styles'
5-
// import pkg from '../../../package.json'
5+
import pkg from '../../../package.json'
66

7-
const Footer = () => {
7+
const Footer: React.FC = () => {
88
const classes = useStyles()
99

1010
return (
@@ -15,7 +15,7 @@ const Footer = () => {
1515
color="secondary"
1616
href="https://github.com/modularcode/modular-admin-react/releases"
1717
>
18-
{/* v{pkg.version} */}
18+
v{pkg.version}
1919
</Link>
2020
{' | '}
2121
<Link
File renamed without changes.

src/_common/AppHeader/AppHeader.js renamed to src/_common/AppHeader/AppHeader.tsx

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,24 @@
11
import React from 'react'
2-
import PropTypes from 'prop-types'
32
import clsx from 'clsx'
43

54
import { makeStyles } from '@material-ui/core/styles'
65
import AppBar from '@material-ui/core/AppBar'
76
import Toolbar from '@material-ui/core/Toolbar'
87
import IconButton from '@material-ui/core/IconButton'
9-
108
import IconMenu from '@material-ui/icons/Menu'
119

12-
import HeaderDemo from './AppHeaderDemoButtons'
10+
import { ITheme } from '_theme/'
1311

12+
import HeaderDemo from './AppHeaderDemoButtons'
13+
import HeaderProfile from './AppHeaderProfile'
1414
// import HeaderSearch from './AppHeaderSearch'
1515
// import HeaderNotifications from './AppHeaderNotifications'
16-
import HeaderProfile from './AppHeaderProfile'
1716

18-
const AppHeader = ({ onToggleClick }) => {
17+
export interface IAppHeader {
18+
onToggleClick(): void
19+
}
20+
21+
const AppHeader: React.FC<IAppHeader> = ({ onToggleClick }) => {
1922
const classes = useStyles()
2023

2124
return (
@@ -39,11 +42,7 @@ const AppHeader = ({ onToggleClick }) => {
3942
)
4043
}
4144

42-
AppHeader.propTypes = {
43-
onToggleClick: PropTypes.func,
44-
}
45-
46-
const useStyles = makeStyles((theme) => ({
45+
const useStyles = makeStyles<ITheme>((theme) => ({
4746
header: {
4847
background: '#fff',
4948
color: '#7b7b7b',

src/_common/AppHeader/AppHeaderDemoButtons.js renamed to src/_common/AppHeader/AppHeaderDemoButtons.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@ import IconCode from '@material-ui/icons/Code'
77
import IconStar from '@material-ui/icons/Star'
88
import IconDownload from '@material-ui/icons/GetApp'
99

10-
const AppHeaderDemoButtons = (props) => {
10+
export interface IAppHeaderDemoButtonsProps {}
11+
12+
const AppHeaderDemoButtons: React.FC<IAppHeaderDemoButtonsProps> = (props) => {
1113
const classes = useStyles(props)
1214

1315
return (

src/_common/AppHeader/AppHeaderNotifications.js renamed to src/_common/AppHeader/AppHeaderNotifications.tsx

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import React from 'react'
1+
import React, { MouseEvent } from 'react'
22

33
import { makeStyles } from '@material-ui/core/styles'
44
import IconButton from '@material-ui/core/IconButton'
@@ -12,6 +12,8 @@ import ListItemAvatar from '@material-ui/core/ListItemAvatar'
1212
import Avatar from '@material-ui/core/Avatar'
1313
import Typography from '@material-ui/core/Typography'
1414

15+
import { ITheme } from '_theme/'
16+
1517
const notifications = [
1618
{
1719
user: {
@@ -39,16 +41,16 @@ const notifications = [
3941
},
4042
]
4143

42-
const AppHeaderNotifications = () => {
44+
const AppHeaderNotifications: React.FC = () => {
4345
const classes = useStyles()
44-
const [anchorEl, setAnchorEl] = React.useState(null)
46+
const [anchorEl, setAnchorEl] = React.useState<HTMLButtonElement>()
4547

46-
function handleClick(event) {
48+
function handleClick(event: MouseEvent<HTMLButtonElement>) {
4749
setAnchorEl(event.currentTarget)
4850
}
4951

5052
function handleClose() {
51-
setAnchorEl(null)
53+
setAnchorEl(undefined)
5254
}
5355

5456
return (
@@ -120,7 +122,7 @@ const AppHeaderNotifications = () => {
120122
// return <List className={classes.notifications}></List>
121123
// }
122124

123-
const useStyles = makeStyles((theme) => ({
125+
const useStyles = makeStyles<ITheme>((theme) => ({
124126
headerNotifications: {
125127
marginRight: 23,
126128
// position: 'relative',

src/_common/AppHeader/AppHeaderProfile.js renamed to src/_common/AppHeader/AppHeaderProfile.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import React from 'react'
1+
import React, { MouseEvent } from 'react'
22
import clsx from 'clsx'
33

44
import { Link } from 'react-router-dom'
@@ -18,9 +18,9 @@ import IconAccount from '@material-ui/icons/AccountBalance'
1818
import IconSettings from '@material-ui/icons/Settings'
1919
import IconLogout from '@material-ui/icons/ExitToApp'
2020

21-
const AppHeaderProfile = () => {
21+
const AppHeaderProfile: React.FC = () => {
2222
const classes = useStyles()
23-
const [anchorEl, setAnchorEl] = React.useState(null)
23+
const [anchorEl, setAnchorEl] = React.useState<HTMLButtonElement>()
2424
const user = {
2525
firstName: 'Gevorg',
2626
}
@@ -29,12 +29,12 @@ const AppHeaderProfile = () => {
2929
return <div className={clsx('headerProfile', classes.headerProfile)} />
3030
}
3131

32-
function handleClick(event) {
32+
function handleClick(event: MouseEvent<HTMLButtonElement>) {
3333
setAnchorEl(event.currentTarget)
3434
}
3535

3636
function handleClose() {
37-
setAnchorEl(null)
37+
setAnchorEl(undefined)
3838
}
3939

4040
return (

src/_common/AppHeader/AppHeaderSearch.js renamed to src/_common/AppHeader/AppHeaderSearch.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import DialogTitle from '@material-ui/core/DialogTitle'
1111
import IconSearch from '@material-ui/icons/Search'
1212
import IconButton from '@material-ui/core/IconButton'
1313

14-
const AppHeaderSearch = () => {
14+
const AppHeaderSearch: React.FC = () => {
1515
const classes = useStyles()
1616
const [open, setOpen] = React.useState(false)
1717

File renamed without changes.

0 commit comments

Comments
 (0)