PluginProbe
WP Ultimate Post Grid / 4.1.1
WP Ultimate Post Grid v4.1.1
4.1.1 trunk 1.5 1.6 1.7 1.7.1 1.7.2 1.8 1.9 2.0 2.1 2.2 2.3 2.4.0 2.5.0 2.6.0 2.7.0 2.8.0 2.8.2 3.0.0 3.3.0 3.4.0 3.5.0 3.6.0 3.7.0 All 32 releases
wp-ultimate-post-grid / assets / js / admin-modal / field / FieldColor.js

FieldColor.js in WP Ultimate Post Grid 4.1.1, at assets/js/admin-modal/field/FieldColor.js

80 lines 2.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import React, { Component } from 'react';
2
3 import reactCSS from 'reactcss';
4 import { SketchPicker } from 'react-color';
5
6 export default class FieldColor extends Component {
7 constructor(props) {
8 super(props);
9
10 this.state = {
11 displayColorPicker: false,
12 }
13 }
14
15 handleClick() {
16 this.setState({ displayColorPicker: !this.state.displayColorPicker })
17 };
18
19 handleClose() {
20 this.setState({ displayColorPicker: false })
21 };
22
23 handleChange(color) {
24 this.props.onChange(color.hex);
25 };
26
27 render() {
28 const styles = reactCSS({
29 'default': {
30 color: {
31 width: '36px',
32 height: '14px',
33 borderRadius: '2px',
34 background: `${ this.props.value }`,
35 },
36 swatch: {
37 padding: '5px',
38 background: '#fff',
39 borderRadius: '4px',
40 border: '1px solid #cccccc',
41 display: 'inline-block',
42 cursor: 'pointer',
43 },
44 popover: {
45 position: 'absolute',
46 zIndex: '2',
47 },
48 cover: {
49 position: 'fixed',
50 top: '0px',
51 right: '0px',
52 bottom: '0px',
53 left: '0px',
54 },
55 },
56 });
57
58 return (
59 <div className="wpupg-admin-modal-field-color">
60 <div style={ styles.swatch } onClick={ this.handleClick.bind(this) }>
61 <div style={ styles.color } />
62 </div>
63 {
64 this.state.displayColorPicker
65 ?
66 <div style={ styles.popover }>
67 <div style={ styles.cover } onClick={ this.handleClose.bind(this) }/>
68 <SketchPicker
69 color={ this.props.value }
70 onChange={ this.handleChange.bind(this) }
71 disableAlpha={ true }
72 />
73 </div>
74 :
75 null
76 }
77 </div>
78 );
79 }
80 }