mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
530b561039
* implemented example for using redux with reselect and recompose * removed unused package * fixed linting issue * fixed linting issue
35 lines
813 B
JavaScript
35 lines
813 B
JavaScript
import React from 'react'
|
|
import PropTypes from 'prop-types'
|
|
import { compose, pure, setDisplayName, setPropTypes } from 'recompose'
|
|
|
|
const format = t => `${pad(t.getUTCHours())}:${pad(t.getUTCMinutes())}:${pad(t.getUTCSeconds())}`
|
|
|
|
const pad = n => n < 10 ? `0${n}` : n
|
|
|
|
const Clock = ({ lastUpdate, light }) =>
|
|
<div className={light ? 'light' : ''}>
|
|
{format(new Date(lastUpdate))}
|
|
<style jsx>{`
|
|
div {
|
|
padding: 15px;
|
|
display: inline-block;
|
|
color: #82FA58;
|
|
font: 50px menlo, monaco, monospace;
|
|
background-color: #000;
|
|
}
|
|
|
|
.light {
|
|
background-color: #999;
|
|
}
|
|
`}</style>
|
|
</div>
|
|
|
|
export default compose(
|
|
setDisplayName('Clock'),
|
|
setPropTypes({
|
|
lastUpdate: PropTypes.number,
|
|
light: PropTypes.bool
|
|
}),
|
|
pure
|
|
)(Clock)
|