whole_func_string: function toggle(input) {
  	    var passive = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  
  	    // If there's no full support
  	    if (!this.supported.ui) {
  	      return;
  	    }
  
  	    var toggled = this.captions.toggled; // Current state
  
  	    var activeClass = this.config.classNames.captions.active; // Get the next state
  	    // If the method is called without parameter, toggle based on current value
  
  	    var active = is$1.nullOrUndefined(input) ? !toggled : input; // Update state and trigger event
  
  	    if (active !== toggled) {
  	      // When passive, don't override user preferences
  	      if (!passive) {
  	        this.captions.active = active;
  	        this.storage.set({
  	          captions: active
  	        });
  	      } // Force language if the call isn't passive and there is no matching language to toggle to
  
  
  	      if (!this.language && active && !passive) {
  	        var tracks = captions.getTracks.call(this);
  	        var track = captions.findTrack.call(this, [this.captions.language].concat(_toConsumableArray(this.captions.languages)), true); // Override user preferences to avoid switching languages if a matching track is added
  
  	        this.captions.language = track.language; // Set caption, but don't store in localStorage as user preference
  
  	        captions.set.call(this, tracks.indexOf(track));
  	        return;
  	      } // Toggle button if it's enabled
  
  
  	      if (this.elements.buttons.captions) {
  	        this.elements.buttons.captions.pressed = active;
  	      } // Add class hook
  
  
  	      toggleClass(this.elements.container, activeClass, active);
  	      this.captions.toggled = active; // Update settings menu
  
  	      controls.updateSetting.call(this, 'captions'); // Trigger event (not used internally)
  
  	      triggerEvent.call(this, this.media, active ? 'captionsenabled' : 'captionsdisabled');
  	    }
  	  }
func_code_string: function toggle(input) {
  	    var passive = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  
  	    // If there's no full support
  	    if (!this.supported.ui) {
  	      return;
  	    }
  
  	    var toggled = this.captions.toggled; // Current state
  
  	    var activeClass = this.config.classNames.captions.active; // Get the next state
  	    // If the method is called without parameter, toggle based on current value
  
  	    var active = is$1.nullOrUndefined(input) ? !toggled : input; // Update state and trigger event
  
  	    if (active !== toggled) {
  	      // When passive, don't override user preferences
  	      if (!passive) {
  	        this.captions.active = active;
  	        this.storage.set({
  	          captions: active
  	        });
  	      } // Force language if the call isn't passive and there is no matching language to toggle to
  
  
  	      if (!this.language && active && !passive) {
  	        var tracks = captions.getTracks.call(this);
  	        var track = captions.findTrack.call(this, [this.captions.language].concat(_toConsumableArray(this.captions.languages)), true); // Override user preferences to avoid switching languages if a matching track is added
  
  	        this.captions.language = track.language; // Set caption, but don't store in localStorage as user preference
  
  	        captions.set.call(this, tracks.indexOf(track));
  	        return;
  	      } // Toggle button if it's enabled
  
  
  	      if (this.elements.buttons.captions) {
  	        this.elements.buttons.captions.pressed = active;
  	      } // Add class hook
  
  
  	      toggleClass(this.elements.container, activeClass, active);
  	      this.captions.toggled = active; // Update settings menu
  
  	      controls.updateSetting.call(this, 'captions'); // Trigger event (not used internally)
  
  	      triggerEvent.call(this, this.media, active ? 'captionsenabled' : 'captionsdisabled');
  	    }
  	  }
func_documentation_string: Toggle captions display Used internally for the toggleCaptions method, with the passive option forced to false