react-color
Version:
A Collection of Color Pickers from Sketch, Photoshop, Chrome & more
80 lines (66 loc) • 1.82 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.SketchPresetColors = undefined;
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _reactcss = require('reactcss');
var _reactcss2 = _interopRequireDefault(_reactcss);
var _map = require('lodash/map');
var _map2 = _interopRequireDefault(_map);
var _common = require('../common');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var SketchPresetColors = exports.SketchPresetColors = function SketchPresetColors(_ref) {
var colors = _ref.colors,
onClick = _ref.onClick;
var styles = (0, _reactcss2.default)({
'default': {
colors: {
margin: '0 -10px',
padding: '10px 0 0 10px',
borderTop: '1px solid #eee',
display: 'flex',
flexWrap: 'wrap'
},
swatchWrap: {
width: '16px',
height: '16px',
margin: '0 10px 10px 0'
},
swatch: {
borderRadius: '3px',
boxShadow: 'inset 0 0 0 1px rgba(0,0,0,.15)'
}
},
'no-presets': {
colors: {
display: 'none'
}
}
}, {
'no-presets': !colors || !colors.length
});
var handleClick = function handleClick(hex, e) {
onClick({
hex: hex,
source: 'hex'
}, e);
};
return _react2.default.createElement(
'div',
{ style: styles.colors, className: 'flexbox-fix' },
(0, _map2.default)(colors, function (c) {
return _react2.default.createElement(
'div',
{ key: c, style: styles.swatchWrap },
_react2.default.createElement(_common.Swatch, {
color: c,
style: styles.swatch,
onClick: handleClick
})
);
})
);
};
exports.default = SketchPresetColors;