Package Exports
- reanimated-color-picker
- reanimated-color-picker/src/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (reanimated-color-picker) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
🔴 🟢 🔵
Reanimated Color Picker
- Pure JavaScript color picker for react-native.
🔹 Table of contents
1️⃣ Prerequisites
2️⃣ Installation
3️⃣ Usage
4️⃣ API
5️⃣ License
🔹Prerequisites
Use the links below to follow the installation instructions.
react-native-gesture-handler version
2.0.0
or higher.react-native-reanimated version
2.0.0
or higher.For
Expo
manged workflow version44
or higher is required.
🔹Installation
Note First we need to install react-native-gesture-handler(>=2.0.0) and react-native-reanimated(>=2.0.0),
- Open a Terminal in the project root and run:
npm i reanimated-color-picker
🔹Usage
You can add, remove, rearrange or style the color picker's built-in components.
You can also add your components.
Check out the working examples:
import React, { useState } from 'react';
import { Button, Modal, View } from 'react-native';
import ColorPicker, { Panel1, Swatches, Preview, OpacitySlider, HueSlider } from 'reanimated-color-picker';
export default function App() {
const [showModal, setShowModal] = useState(false);
const onSelectColor = ({ hex }) => {
// do something with the selected color
console.log(hex);
};
return (
<View style={styles.container}>
<Button title='Color Picker' onPress={() => setShowModal1(true)} />
<Modal visible={showModal}>
<ColorPicker value='red' onComplete={onSelectColor}>
<Preview />
<Panel1 />
<HueSlider />
<OpacitySlider />
<Swatches />
</ColorPicker>
<Button title='Ok' onPress={() => setShowModal(false)} />
</Modal>
</View>
);
}
🔹API
🔺ColorPicker Wrapper
The
ColorPicker
Wrapper is responsible for managing the built-in components.It has the following props:
🔸value
- The initial value of the color picker.
- Accepts
'hex'
,'rgb'
,'rgba'
,'hsl'
,'hsla'
andnamed color
formats. type: string
default: '#418181'
🔸tracksHeight
- Change all slider's track height.
type: number
default: 25
🔸thumbsSize
- Change all slider's thumb size.
type: number
default: 35
🔸width
- The width of the color picker's wrapper.
- All built-in components will inherit this width.
type: number
default: 300
🔸style
- Color picker's wrapper style.
- If you want to change the width using the
width
property. type: object
Note some style properties will be overwritten.
🔸onChange
- Called every time the color value changed.
- The passed color object has the following properties:
hex
,rgb
,rgba
,hsl
andhsla
type: (color: object) => void
default: null
🔸onComplete
- Called when the user releases the slider handle or when a swatch is clicked.
- The passed color object has the following properties:
hex
,rgb
,rgba
,hsl
andhsla
type: (color: object) => void
default: null
🔺Built-in Components
🔸<Preview />
- The preview of the selected and the initial color.
Property | Type | Default | Description |
---|---|---|---|
colorFormat | string | 'hex' |
preview color text format: 'hex' , 'rgb' , 'rgba' , 'hsl' , 'hsla' , 'hsv' or 'hsva' |
hideInitialColor | boolean | false |
hide the initial color preview part |
hideText | boolean | false |
hide preview color text |
style | object | / | preview container style |
textStyle | object | / | preview text style |
Note some style properties will be overwritten.
🔸<Panel1 />
- A square-shaped slider (adobe style) used for changing the color's brightness and saturation.
Note you need to add
<HueSlider />
alongside with it.
Property | Type | Default | Description |
---|---|---|---|
thumbSize | number | 35 |
panel handle (thumb) size (height*width) |
style | object | / | panle container style |
Note some style properties will be overwritten.
🔸<Panel2 />
- A square-shaped slider (windows style) used for changing the color's hue and saturation.
Note you need to add
<BrightnessSlider />
alongside with it.
Property | Type | Default | Description |
---|---|---|---|
thumbSize | number | 35 |
panel handle (thumb) size (height*width) |
style | object | / | panle container style |
Note some style properties will be overwritten.
🔸<HueSlider />
- A slider to change color's hue.
Property | Type | Default | Description |
---|---|---|---|
thumbSize | number | 35 |
hue slider handle (thumb) size (height*width) |
ringColor | string | #fff |
the color of the ring around the slider handle |
style | object | / | hue slider container style |
Note some style properties will be overwritten.
🔸<SaturationSlider />
- A slider to change color's saturation.
Property | Type | Default | Description |
---|---|---|---|
thumbSize | number | 35 |
saturation slider handle (thumb) size (height*width) |
ringColor | string | #fff |
the color of the ring around the slider handle |
style | object | / | saturation slider container style |
Note some style properties will be overwritten.
🔸<BrightnessSlider />
- A slider to change color brightness.
Property | Type | Default | Description |
---|---|---|---|
thumbSize | number | 35 |
brightness slider handle (thumb) size (height*width) |
ringColor | string | #fff |
the color of the ring around the slider handle |
style | object | / | brightness slider container style |
Note some style properties will be overwritten.
🔸<OpacitySlider />
- A slider to change color's opacity.
Property | Type | Default | Description |
---|---|---|---|
thumbSize | number | 35 |
opacity slider handle (thumb) size (height*width) |
ringColor | string | #fff |
the color of the ring around the slider handle |
style | object | / | opacity slider container style |
Note some style properties will be overwritten.
🔸<Swatches />
- A list of colored swatches is used for quick color selection.
Property | Type | Default | Description |
---|---|---|---|
colors | string[ ] | material colors | custom swatches colors |
style | object | / | swatches container style |
swatchStyle | object | / | swatch style |
Note some style properties will be overwritten.
🔹License
- Reanimated Color Picker library is licensed under The MIT License.