react-lite-misc
Version:
Misc Components of jianliao.com
36 lines (27 loc) • 884 B
text/coffeescript
cx = require 'classnames'
React = require 'react'
div = React.createFactory 'div'
span = React.createFactory 'span'
T = React.PropTypes
module.exports = React.createClass
displayName: 'color-chooser'
propTypes:
data: T.object.isRequired
onColorClick: T.func.isRequired
chosen: T.string.isRequired
onColorClick: (color) ->
.onColorClick color
renderIcons: (color, name) ->
names = Object.keys(.data)
names.map (name) =>
color = .data[name]
className = cx 'color-icon', 'ti',
'ti-tick': .chosen is name
'is-chosen': .chosen is name
style =
backgroundColor: color or '#ff9800'
onClick = => name
span key: name, className: className, style: style, onClick: onClick
render: ->
div className: 'color-chooser',