/** **************************************************************************** * Copyright 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. * Licensed under the Apache License Version 2.0 (the 'License'). You may not * use this file except in compliance with the License. A copy of the License * is located at * * http://www.apache.org/licenses/ * or in the 'license' file accompanying this file. This file is distributed on * an 'AS IS' BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, express or * implied. See the License for the specific language governing permissions and * limitations under the License. ***************************************************************************** */ import React from 'react'; import PropTypes from 'prop-types'; import { withStyles } from '@material-ui/core/styles'; import { getSoftphoneMetrics } from './utils/findExtras'; import RtcMetricsView from './RtcMetricsView'; const styles = () => ({}); class RtcMetricsViewGroup extends React.PureComponent { constructor(props) { super(props); this.state = this.getInitialState(); this.handleRangeChange = this.handleRangeChange.bind(this); this.handleRangeReset = this.handleRangeReset.bind(this); } getInitialState() { const { timeRange } = this.props; const metricsData = getSoftphoneMetrics(); const audioInput = metricsData.audio_input.flat(); const audioOutput = metricsData.audio_output.flat(); return { audioInput, audioOutput, timeRange, originalTimeRange: timeRange, indexRange: [null, null], originalIndexRange: [null, null], }; } handleRangeChange(timeRange, indexRange) { this.setState({ timeRange, indexRange }); } handleRangeReset() { const { originalTimeRange, originalIndexRange } = this.state; this.setState({ timeRange: originalTimeRange, indexRange: originalIndexRange }); } render() { // eslint-disable-next-line no-unused-vars const { classes } = this.props; const { audioInput, audioOutput, timeRange, indexRange, } = this.state; return ( <> ); } } RtcMetricsViewGroup.propTypes = { classes: PropTypes.object.isRequired, timeRange: PropTypes.array.isRequired, }; RtcMetricsViewGroup.defaultProps = { }; export default withStyles(styles)(RtcMetricsViewGroup);