code: function mobileNavigationBackComponent() {
    return {
      require: '^^gmfMobileNav',
      restrict: 'A',
      scope: false,
      /**
       * @param {angular.IScope} scope Scope.
       * @param {JQuery} element Element.
       * @param {angular.IAttributes} attrs Attributes.
       * @param {angular.IController=} navCtrl Controller.
       */
      link: (scope, element, attrs, navCtrl) => {
        scope.$watch(attrs.gmfMobileNavBack, (newVal, oldVal) => {
          if (!navCtrl) {
            throw new Error('Missing navCtrl');
          }
          if (newVal === true) {
            navCtrl.backIfActive(element[0]);
          }
        });
      }
    };
  }
docs: A directive to be used in conjunction with {@link import("gmf/mobile/navigation.js").default.component}.
  The directive can be set on a slide element of {@link import("gmf/mobile/navigation.js").default.component}
  with an expression. When the value of the expression changes and becomes
  true, the navigation returns to the previous slide, if the slide is
  currently active.
  
  Example:
  
  <nav class="gmf-mobile-nav-left" gmf-mobile-nav>
  ...
  <gmf-authentication class="gmf-mobile-nav-slide"
  gmf-mobile-nav-back="authCtrl.gmfUser.username !== null">
  </gmf-authentication>
  
  If `mainCtrl.gmfUser.username` becomes true and the login-slide is currently
  active, the navigation will go back to the last slide.
  
  @return {angular.IDirective} The Directive Definition Object.
  @ngInject