azure-devops-ui
Version:
React components for building web UI in Azure DevOps
1 lines • 1.26 kB
JavaScript
import"../../../CommonImports";import"../../../Core/core.css";import*as React from"react";import*as DateUtil from"../../../Utilities/Date";import{Time}from"../Time/Time";import*as Resources from"../../../Resources.Widgets";import{format}from"../../../Core/Util/String";class Duration extends React.Component{constructor(t){super(t),this.getTimeString=()=>DateUtil.duration(this.props.startDate,this.props.endDate),this.getNextInterval=()=>Duration.durationNextInterval(this.props.startDate,this.props.endDate),this.state={tooltipProps:{}}}static getDerivedStateFromProps(t){return{tooltipProps:void 0===t.tooltipProps?{renderContent:function(){return format(Resources.Started,DateUtil.tooltipString(t.startDate))}}:t.tooltipProps}}render(){return React.createElement(Time,{ariaHidden:this.props.ariaHidden,ariaLabel:this.props.ariaLabel||DateUtil.tooltipString(this.props.startDate),className:this.props.className,getNextInterval:this.getNextInterval,getTimeString:this.getTimeString,tabIndex:this.props.tabIndex,tooltipProps:this.state.tooltipProps})}static durationNextInterval(e,r,i){if(r)return-1;{i=(r=i||new Date).getTime()-e.getTime();let t=DateUtil.minute;return t=i<DateUtil.day?DateUtil.second:DateUtil.minute-i%DateUtil.minute}}}export{Duration};