/**
 * @file sub-caps-button.js
 * /
importar TextTrackButton desde './text-track-button.js';
importar componente desde '../../component.js';
importar CaptionSettingsMenuItem desde './caption-settings-menu-item.js';
importar SubsCapsMenuItem desde './subs-caps-menu-item.js';
importar {toTitleCase} desde '../../utils/string-cases.js';
/**
 * El componente de botón para alternar y seleccionar subtítulos y/o subtítulos
 *
 * @extiende TextTrackButton
 * /
clase SubsCapsButton extiende TextTrackButton {

  constructor(jugador, opciones = {}) {
    super(jugador, opciones);

    // Aunque Norteamérica usa "títulos" en la mayoría de los casos para
    // "títulos y subtítulos" otras configuraciones regionales usan "subtítulos"
    this.label_ = 'subtítulos';
    if (['en', 'en-us', 'en-ca', 'fr-ca'].indexOf(this.player_.language_) > -1) {
      this.label_ = 'subtítulos';
    }
    this.menuButton_.controlText(toTitleCase(this.label_));
  }

  /**
   * Construye el DOM predeterminado `className`.
   *
   * @return {cadena}
   * El DOM `className` para este objeto.
   * /
  construirClaseCSS() {
    devuelve `vjs-subs-caps-button ${super.buildCSSClass()}`;
  }

  buildWrapperCSSClass() {
    return `vjs-subs-caps-button ${super.buildWrapperCSSClass()}`;
  }

  /**
   * Crear subtítulos/elementos de menú de subtítulos
   *
   * @return {CaptionSettingsMenuItem[]}
   * La matriz de elementos de menú actuales.
   * /
  crear elementos () {
    let elementos = [];

    if (!(este.jugador().tech_ && this.player().tech_.featuresNativeTextTracks) &&
      this.player().getChild('textTrackSettings')) {
      items.push(nuevo CaptionSettingsMenuItem(this.player_, {tipo: this.label_}));

      este.hideThreshold_ += 1;
    }

    elementos = super.createItems (elementos, SubsCapsMenuItem);
    devolver los artículos;
  }

}

/**
 * Tipo de TextTrack a buscar para asociarlo con este menú.
 *
 * @tipo {matriz}
 * @privado
 * /
SubsCapsButton.prototype.kinds_ = ['títulos', 'subtítulos'];

/**
 * El texto que debería mostrarse sobre los controles `SubsCapsButton`s.
 *
 *
 * @tipo {cadena}
 * @privado
 * /
SubsCapsButton.prototype.controlText_ = 'Subtítulos';

Component.registerComponent('SubsCapsButton', SubsCapsButton);
exportar SubsCapsButton predeterminado;