title: How to decorate current state resolve function in UI-Router? Current function isn't invoked
body: <p>I'm trying to DRY in <code>$stateProvider</code> and prevent adding the same <code>auth</code> function in each resolve. I've created decorator that in each state change would add this function to current state, but <code>auth</code> function isn't invoked, How to fix it or how to workaround discussed issue?</p>
  
  <pre><code>app.config(function ($stateProvider, $urlRouterProvider, $provide) {
    $provide.decorator('$state', function($delegate, $rootScope) {
      $rootScope.$on('$stateChangeStart', function(event, state, params) {
        if ($delegate.current === "login" || $delegate.current === "register") {
          return;
        }
        console.log("decorator", $delegate);
        $delegate.current.resolve = {
          auth: ['AuthService', '$stateParams', function(AuthService, $stateParams) {
            //how to invoke this function?
            if (AuthService.isAuthenticated()) {
              return AuthService.me(); //promise
            } else {
              return false;
            }
          }]
        };
      });
      return $delegate;
    });
  </code></pre>
  
  <p>states definition:    </p>
  
  <pre><code>  $stateProvider.state('root', {
      abstract: true,
      url: '/',
      views: {
        "": {
          controller: 'RootCtrl',
          templateUrl: 'views/root.html'
        },
        "header@root": {
          templateUrl: 'views/header.html'
        }
      }
    })
    .state('root.home', {
      url: urlPrefix,
      views: {
        "content@artworks": {
          templateUrl: 'views/home.html',
          //resolve: {
          //  auth: ['AuthService', '$stateParams', function(AuthService, $stateParams) {
          //  }]
          //}
        }
      }
    })
    ...
  </code></pre>