UNPKG

terra-clinical-onset-picker

Version:

The terra-clinical-onset-picker component provides users a way to enter or select an approximate date for use in onset scenarios.

65 lines (56 loc) 1.65 kB
import React from 'react'; import moment from 'moment'; import OnsetPicker from '../../../OnsetPicker'; class DefaultOnsetNotSet extends React.Component { constructor(props) { super(props); moment.now = () => new Date(); this.state = { precision: 'before', granularity: 'age', onsetDate: undefined, }; this.handleOnset = this.handleOnset.bind(this); this.handleSubmit = this.handleSubmit.bind(this); } handleOnset(onsetObject) { this.setState({ precision: onsetObject.precision, granularity: onsetObject.granularity, onsetDate: onsetObject.onsetDate, ageUnit: onsetObject.ageUnit, }); } handleSubmit(e) { e.preventDefault(); this.setState(prevState => ({ submittedData: { precision: prevState.precision, granularity: prevState.granularity, onsetDate: prevState.onsetDate, ageUnit: prevState.ageUnit, }, })); } render() { return ( <div> <p>Birth Date: 2001-03-06 (March 06, 2001)</p> <p>Default Onset Date: NOT SET!</p> <form onSubmit={this.handleSubmit}> <OnsetPicker birthdate={moment('2001-03-06').format('YYYY-MM-DD')} granularity={this.state.granularity} id="test" legend="Date of Onset" precision={this.state.precision} onsetOnChange={this.handleOnset} /> <button type="submit">Submit</button> </form> <p data-test-json>{JSON.stringify(this.state.submittedData, null, 2)}</p> </div> ); } } export default DefaultOnsetNotSet;