<commit_before>import * as React from "react";
import {
  ReactSurveyElement,
  SurveyQuestionUncontrolledElement
} from "./reactquestionelement";
import { Helpers } from "../helpers";
import { QuestionCommentModel } from "../question_comment";
import { ReactQuestionFactory } from "./reactquestionfactory";

export class SurveyQuestionComment extends SurveyQuestionUncontrolledElement<
  QuestionCommentModel
> {
  constructor(props: any) {
    super(props);
  }
  render(): JSX.Element {
    if (!this.question) return null;
    var cssClasses = this.question.cssClasses;
    var onBlur = !this.question.isInputTextUpdate
      ? this.updateValueOnEvent
      : null;
    var onInput = this.question.isInputTextUpdate
      ? this.updateValueOnEvent
      : null;
    var placeHolder = this.question.isReadOnly ? "" : this.question.placeHolder;
    return (
      <textarea
        id={this.question.inputId}
        className={cssClasses.root}
        disabled={this.isDisplayMode}
        ref={tetxarea => (this.control = tetxarea)}
        maxLength={this.question.getMaxLength()}
        placeholder={placeHolder}
        onBlur={onBlur}
        onInput={onInput}
        onChange={this.updateValueOnEvent}
        cols={this.question.cols}
        rows={this.question.rows}
        aria-label={this.question.locTitle.renderedHtml}
      />
    );<commit_msg>Fix: react version: Comment Question raise onValueChanged on typing a letter #2028<commit_after>import * as React from "react";
import {
  ReactSurveyElement,
  SurveyQuestionUncontrolledElement
} from "./reactquestionelement";
import { Helpers } from "../helpers";
import { QuestionCommentModel } from "../question_comment";
import { ReactQuestionFactory } from "./reactquestionfactory";

export class SurveyQuestionComment extends SurveyQuestionUncontrolledElement<
  QuestionCommentModel
> {
  constructor(props: any) {
    super(props);
  }
  render(): JSX.Element {
    if (!this.question) return null;
    var cssClasses = this.question.cssClasses;
    var onBlur = !this.question.isInputTextUpdate
      ? this.updateValueOnEvent
      : null;
    var onInput = this.question.isInputTextUpdate
      ? this.updateValueOnEvent
      : null;
    var placeHolder = this.question.isReadOnly ? "" : this.question.placeHolder;
    return (
      <textarea
        id={this.question.inputId}
        className={cssClasses.root}
        disabled={this.isDisplayMode}
        ref={tetxarea => (this.control = tetxarea)}
        maxLength={this.question.getMaxLength()}
        placeholder={placeHolder}
        onBlur={onBlur}
        onInput={onInput}
        cols={this.question.cols}
        rows={this.question.rows}
        aria-label={this.question.locTitle.renderedHtml}
      />
    );
{'fraction_non_alphanumeric': 0.1106676342525399, 'fraction_numerical': 0.001451378809869376, 'mean_word_length': 3.3349056603773586, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 9, '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': '6868862', 'n_tokens_mistral': 777, 'n_tokens_neox': 771, 'n_words': 150}