azure-devops-ui
Version:
React components for building web UI in Azure DevOps
1 lines • 2.59 kB
JavaScript
import"../../CommonImports";import"../../Core/core.css";import"./IdentityPickerSuggestionsList.css";import*as React from"react";import{Callout}from"../../Callout";import{IdentityCard}from"../../IdentityCard";import{Observer}from"../../Observer";import*as Resources from"../../Resources.IdentityPicker";import{SuggestionsList}from"../../SuggestionsList";import{css}from"../../Util";class IdentityPickerSuggestionsList extends React.Component{constructor(){super(...arguments),this.renderNoIdentitiesFound=()=>React.createElement("div",{className:"bolt-identitypickerdropdown-noresults flex-row flex-grow flex-center"},this.props.noResultsFoundText||Resources.IdentityPickerNoResultsText)}render(){return React.createElement(React.Fragment,null,React.createElement(Observer,{suggestionsVisible:this.props.suggestionsVisible,suggestionsLoading:this.props.isLoading,selectedIndex:this.props.selectedIndex,suggestions:this.props.suggestions},e=>{var t;return e.suggestionsVisible?React.createElement(Callout,Object.assign({},this.props.calloutProps,{className:css("bolt-identitypickerdropdown-callout",this.props.calloutProps.className),contentClassName:css("bolt-identitypickerdropdown-callout-content flex-row flex-grow",this.props.calloutProps.contentClassName)}),React.createElement(SuggestionsList,Object.assign({},this.props,{className:css("bolt-identitypickerdropdown-list",this.props.className),isLoading:e.suggestionsLoading,loadingText:this.props.loadingText||Resources.IdentityPickerLoadingText,renderNoResultFound:this.renderNoIdentitiesFound,renderSuggestion:this.props.renderSuggestion,onBlur:this.props.onBlur,onFocus:this.props.onFocus,resultsMaximumNumber:0<(null!=(t=this.props.resultsMaximumNumber)?t:25)?null!=(t=this.props.resultsMaximumNumber)?t:25:void 0,suggestionsItemClassName:css("bolt-identitypickerdropdown-item",this.props.suggestionsItemClassName),suggestions:e.suggestions,selectedIndex:e.selectedIndex,width:this.props.width,suggestionsContainerAriaLabel:this.props.suggestionsContainerAriaLabel}))):React.createElement("div",null)}),React.createElement(Observer,{openedIdentityCard:this.props.openedIdentityCard},e=>e.openedIdentityCard?React.createElement(IdentityCard,{getEntityFromUniqueAttribute:this.props.pickerProvider.getEntityFromUniqueAttribute,key:e.openedIdentityCard.entityId,identity:e.openedIdentityCard,target:this.props.suggestionTarget,onDismissCallback:this.props.onClosePersonaCard,onRequestConnectionInformation:this.props.pickerProvider.onRequestConnectionInformation}):React.createElement("div",null)))}}export{IdentityPickerSuggestionsList};