UNPKG

azure-devops-ui

Version:

React components for building web UI in Azure DevOps

1 lines 1.05 kB
import"../../CommonImports";import"../../Core/core.css";import"./ColorPicker.css";import*as React from"react";import{useObservable}from"../../Core/Observable";import{Dropdown}from"../../Dropdown";import{ListSelection}from"../../List";import{css}from"../../Util";import{ColorDropdownCalloutComponent}from"./ColorCallout";import{addColorClass,colorItems}from"./Utils";function ColorDropdown({ariaLabel:o,className:e,color:r,disabled:t,onColorSelected:l}){const s=React.useRef(new ListSelection),[a]=useObservable("#000000");React.useEffect(()=>{a.value=r;var o=colorItems.findIndex(o=>"#"+o.id===r);s.current.select(0<=o?o:0)},[r]);var n=addColorClass(r);return React.createElement(Dropdown,{ariaLabel:o,className:css(e,n,"color-dropdown"),dismissOnSelect:!0,disabled:t,items:colorItems,renderCallout:ColorDropdownCallout,renderSelectedItems:()=>"",selection:s.current,onSelect:(o,e)=>{l("#"+e.id)}})}function ColorDropdownCallout(o){return React.createElement(ColorDropdownCalloutComponent,Object.assign({},o))}export{ColorDropdown,ColorDropdownCallout};