import * as classNames from "classnames"; import * as React from "react"; import { Input, InputProps } from "semantic-ui-react"; import { Duration } from "@common/Duration"; export default class DurationInput extends React.Component<{ duration: Duration, onDurationChange: (newDuration: Duration) => void, className?: string, }> { render() { const duration = this.props.duration; const className = classNames("field", "durationInput", this.props.className); // const editing = this.props.onDurationChange != null; return (
); } private onMinutesChange: InputProps["onChange"] = (e, { value }) => { if (value.length === 0 || isNaN(Number(value))) { return; } const newMinutes = parseInt(value, 10); this.props.onDurationChange(this.props.duration.withMinutes(newMinutes)); } private onSecondsChange: InputProps["onChange"] = (e, { value }) => { if (value.length === 0 || isNaN(Number(value))) { return; } const newSeconds = parseInt(value, 10); this.props.onDurationChange(this.props.duration.withSeconds(newSeconds)); } }