UNPKG

azure-devops-ui

Version:

React components for building web UI in Azure DevOps

1 lines 1.13 kB
import{__assign}from"tslib";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(o){var r=o.ariaLabel,e=o.className,t=o.color,l=o.disabled,n=o.onColorSelected,s=React.useRef(new ListSelection),a=useObservable("#000000")[0],o=(React.useEffect(function(){a.value=t;var o=colorItems.findIndex(function(o){return"#"+o.id===t});s.current.select(0<=o?o:0)},[t]),addColorClass(t));return React.createElement(Dropdown,{ariaLabel:r,className:css(e,o,"color-dropdown"),dismissOnSelect:!0,disabled:l,items:colorItems,renderCallout:ColorDropdownCallout,renderSelectedItems:function(){return""},selection:s.current,onSelect:function(o,r){n("#"+r.id)}})}function ColorDropdownCallout(o){return React.createElement(ColorDropdownCalloutComponent,__assign({},o))}export{ColorDropdown,ColorDropdownCallout};