Color Picker
The Color Picker component provides an interactive interface for selecting colors. It integrates with the Color Selector component to offer a comprehensive color selection experience with various formats and options.
Dependencies
Section titled “Dependencies”The Color Picker component depends on the following components:
- Input
- Radio
- Button
- Color Selector
Basic Usage
Section titled “Basic Usage”<input type="text" data-role="color-picker">
Additional Configurations
Section titled “Additional Configurations”<input type="text" data-role="color-picker" data-show-values="hex, rgb, hsl, hsv, rgba, hsla, cmyk" data-return-value-type="rgba" data-clear-button="true" data-label="Select color:">
Setting Value Programmatically
Section titled “Setting Value Programmatically”<button class="button" onclick="Metro.getPlugin('#cp', 'color-picker').val('#ff00ff');">Set value</button><input type="text" id="cp" data-role="color-picker">
Plugin Parameters
Section titled “Plugin Parameters”Parameter | Type | Default | Description |
---|---|---|---|
defaultSwatches | String | ”#FFFFFF,#000000,#FFFB0D,#0532FF,#FF9300,#00F91A,#FF2700,#686868,#EE5464,#D27AEE,#5BA8C4,#E64AA9,#1ba1e2,#6a00ff,#bebebe,#f8f8f8” | Comma-separated list of predefined color swatches |
duration | Number | 100 | Animation duration for dropdown in milliseconds |
prepend | String | "" | Content to prepend to the color picker |
append | String | "" | Content to append to the color picker |
label | String | "" | Label text for the color picker |
clearButton | Boolean | false | Whether to show a clear button |
clearButtonIcon | String | ”❌“ | Icon for the clear button |
pickerButtonIcon | String | ”🎨“ | Icon for the color picker button |
defaultValue | String | ”rgba(0, 0, 0, 0)“ | Default color value |
openMode | String | ”auto” | Mode for opening the color picker dropdown |
resultType | String | ”hex” | Format of the color result (hex, rgb, rgba, hsl, hsla) |
inputThreshold | Number | 500 | Threshold for input in milliseconds |
API Methods
Section titled “API Methods”- val(value) - Get or set the color value.
Example of Method Usage
Section titled “Example of Method Usage”// Get current color valueconst color = Metro.getPlugin('#my-color-picker', 'color-picker').val();
// Set color valueMetro.getPlugin('#my-color-picker', 'color-picker').val('#FF0000');
- destroy() - Destroy the color picker component and remove it from the DOM.
Example of Method Usage
Section titled “Example of Method Usage”Metro.getPlugin('#my-color-picker', 'color-picker').destroy();
Events
Section titled “Events”Event | Description |
---|---|
onColorSelected | Triggered when a color is selected |
onColorPickerCreate | Triggered when the color picker is created |
Styling with CSS Variables
Section titled “Styling with CSS Variables”Variable | Default (Light) | Dark Mode | Description |
---|---|---|---|
—input-box-shadow | rgba(0, 123, 255, 0.25) | - | Shadow for the focused state |
—input-color | #333 | - | Text color for buttons |
—input-border-color | #ccc | - | Border color for buttons |
—input-font-size | 14px | - | Font size for buttons |
—input-disabled-color | #888 | - | Text color for disabled state |
—border-color | #ddd | - | Border color for the color example box |
—d-menu-shadow-color | rgba(0, 0, 0, 0.2) | - | Shadow color for the dropdown |
Example of Custom Styling
Section titled “Example of Custom Styling”:root { --input-box-shadow: rgba(0, 123, 255, 0.25); --input-color: #333; --input-border-color: #ccc; --input-font-size: 14px; --input-disabled-color: #888; --border-color: #ddd; --d-menu-shadow-color: rgba(0, 0, 0, 0.2);}
Available CSS Classes
Section titled “Available CSS Classes”Base Classes
Section titled “Base Classes”.color-picker
- Main container class.color-example-box
- Box displaying the selected color.color-selector-box
- Container for the color selector dropdown.buttons
- Container for the picker and clear buttons
Modifiers
Section titled “Modifiers”.focused
- Applied when the color picker is focused.disabled
- Applied when the color picker is disabled.open
- Applied when the color selector dropdown is open