react-color
Version:
A Collection of Color Pickers from Sketch, Photoshop, Chrome & more
101 lines (79 loc) • 2.85 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Compact = 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 _color = require('../../helpers/color');
var _color2 = _interopRequireDefault(_color);
var _reactMaterialDesign = require('../../../modules/react-material-design');
var _common = require('../common');
var _CompactColor = require('./CompactColor');
var _CompactColor2 = _interopRequireDefault(_CompactColor);
var _CompactFields = require('./CompactFields');
var _CompactFields2 = _interopRequireDefault(_CompactFields);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Compact = exports.Compact = function Compact(_ref) {
var onChange = _ref.onChange,
colors = _ref.colors,
hex = _ref.hex,
rgb = _ref.rgb;
var styles = (0, _reactcss2.default)({
'default': {
Compact: {
background: '#f6f6f6',
radius: '4px'
},
compact: {
paddingTop: '5px',
paddingLeft: '5px',
boxSizing: 'initial',
width: '240px'
},
clear: {
clear: 'both'
}
}
});
var handleChange = function handleChange(data, e) {
if (data.hex) {
_color2.default.isValidHex(data.hex) && onChange({
hex: data.hex,
source: 'hex'
}, e);
} else {
onChange(data, e);
}
};
return _react2.default.createElement(
_reactMaterialDesign.Raised,
{ style: styles.Compact },
_react2.default.createElement(
'div',
{ style: styles.compact, className: 'compact-picker' },
_react2.default.createElement(
'div',
null,
(0, _map2.default)(colors, function (c) {
return _react2.default.createElement(_CompactColor2.default, {
key: c,
color: c,
active: c.toLowerCase() === hex,
onClick: handleChange
});
}),
_react2.default.createElement('div', { style: styles.clear })
),
_react2.default.createElement(_CompactFields2.default, { hex: hex, rgb: rgb, onChange: handleChange })
)
);
};
Compact.defaultProps = {
colors: ['#4D4D4D', '#999999', '#FFFFFF', '#F44E3B', '#FE9200', '#FCDC00', '#DBDF00', '#A4DD00', '#68CCCA', '#73D8FF', '#AEA1FF', '#FDA1FF', '#333333', '#808080', '#cccccc', '#D33115', '#E27300', '#FCC400', '#B0BC00', '#68BC00', '#16A5A5', '#009CE0', '#7B64FF', '#FA28FF', '#000000', '#666666', '#B3B3B3', '#9F0500', '#C45100', '#FB9E00', '#808900', '#194D33', '#0C797D', '#0062B1', '#653294', '#AB149E']
};
exports.default = (0, _common.ColorWrap)(Compact);