<commit_before>"use strict";

import React from 'react';

class TempoSlider extends React.Component {
  constructor(props) {
    super(props);
  };

  render() {
    return <span className="flex flex-align-center">
      <label className="width-3">Tempo</label>
      <input className="flex-uniform-size" type="range" min="30" max="255" value={this.props.tempo} onChange={this.props.onChange} />
      <span className="width-2">&nbsp;{this.props.tempo}</span>
    </span>;
  };
};

class AmplitudeSlider extends React.Component {
  constructor(props) {
    super(props);
  };

  render() {
    return <span className="flex flex-align-center">
      <label className="width-3">Volume</label>
      <input className="flex-uniform-size" type="range" min="0.0" max="1.0" step="0.01" value={this.props.amplitude} onChange={this.props.onChange} />
      <span className="width-2">&nbsp;{(this.props.amplitude * 100).toFixed(0)}%</span>
    </span>;
  };
};

class PlayButton extends React.Component {
  constructor(props) {
    super(props);
  };

  render() {
    return <button className={"mr1 round button-full button-hollow" + (this.props.playing ? " button-enabled" : "")}  onClick={this.props.onClick}><span className={"play-icon" + (this.props.playing ? " play-icon-enabled" : "")}>Play</span></button>;
  };
};

class Transport extends React.Component {
  constructor(props) {
    super(props);
  };

  render() {
    return <div id="transport" className="flex flex-uniform-size flex-align-center">
      <div className="transport-inner flex flex-align-center">
        <PlayButton playing={this.props.playing} onClick={this.props.togglePlaying} />
        <span className="transport-controls flex-uniform-size inline-block">
          <TempoSlider tempo={this.props.tempo} onChange={this.props.updateTempo} />
          <AmplitudeSlider amplitude={this.props.amplitude} onChange={this.props.updateAmplitude} />
        </span>
      </div>
    </div>;
  };
};<commit_msg>Converting `Transport` component and children to pure components<commit_after>"use strict";

import React from 'react';

class TempoSlider extends React.PureComponent {
  constructor(props) {
    super(props);
  };

  render() {
    return <span className="flex flex-align-center">
      <label className="width-3">Tempo</label>
      <input className="flex-uniform-size" type="range" min="30" max="255" value={this.props.tempo} onChange={this.props.onChange} />
      <span className="width-2">&nbsp;{this.props.tempo}</span>
    </span>;
  };
};

class AmplitudeSlider extends React.PureComponent {
  constructor(props) {
    super(props);
  };

  render() {
    return <span className="flex flex-align-center">
      <label className="width-3">Volume</label>
      <input className="flex-uniform-size" type="range" min="0.0" max="1.0" step="0.01" value={this.props.amplitude} onChange={this.props.onChange} />
      <span className="width-2">&nbsp;{(this.props.amplitude * 100).toFixed(0)}%</span>
    </span>;
  };
};

class PlayButton extends React.PureComponent {
  constructor(props) {
    super(props);
  };

  render() {
    return <button className={"mr1 round button-full button-hollow" + (this.props.playing ? " button-enabled" : "")}  onClick={this.props.onClick}><span className={"play-icon" + (this.props.playing ? " play-icon-enabled" : "")}>Play</span></button>;
  };
};

class Transport extends React.PureComponent {
  constructor(props) {
    super(props);
  };

  render() {
    return <div id="transport" className="flex flex-uniform-size flex-align-center">
      <div className="transport-inner flex flex-align-center">
        <PlayButton playing={this.props.playing} onClick={this.props.togglePlaying} />
        <span className="transport-controls flex-uniform-size inline-block">
          <TempoSlider tempo={this.props.tempo} onChange={this.props.updateTempo} />
          <AmplitudeSlider amplitude={this.props.amplitude} onChange={this.props.updateAmplitude} />
        </span>
      </div>
    </div>;
  };
};
{'fraction_non_alphanumeric': 0.17285180572851805, 'fraction_numerical': 0.01046077210460772, 'mean_word_length': 3.897560975609756, 'pattern_counts': {'":': 0, '<': 57, '<?xml version=': 0, '>': 57, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3192245', 'n_tokens_mistral': 1278, 'n_tokens_neox': 1250, 'n_words': 221}