(function($, Modules) {

'use strict';

Modules.Navigation = function () {
  var $html = $('html');

  var $navToggle;
  var $nav;

  this.start = function ($element) {
    $navToggle = $('.js-nav-toggle', $element);
    $nav = $('.js-nav', $element);

    updateAriaAttributes();

    $navToggle.on('click', toggleNavigation);
    $(window).on('resize', updateAriaAttributes);
  }

  function updateAriaAttributes() {
    var navIsVisible = $nav.is(':visible');

    $navToggle.attr('aria-expanded', navIsVisible ? 'true' : 'false');
    $nav.attr('aria-hidden', navIsVisible ? 'false' : 'true');
  }

  function toggleNavigation() {
    var navIsVisible = !$html.hasClass('nav-open');

    $html.toggleClass('nav-open', navIsVisible);
    updateAriaAttributes();
  }
};

})(jQuery, window.GOVUK.Modules);