code: function wrapApply (callback) {
          // return mousetrap a function to call
          return function (event, combo) {
  
            // if this is an array, it means we provided a route object
            // because the scope wasn't available yet, so rewrap the callback
            // now that the scope is available:
            if (callback instanceof Array) {
              var funcString = callback[0];
              var route = callback[1];
              callback = function (event) {
                route.scope.$eval(funcString);
              };
            }
  
            // this takes place outside angular, so we'll have to call
            // $apply() to make sure angular's digest happens
            $rootScope.$apply(function() {
              // call the original hotkey callback with the keyboard event
              callback(event, _get(combo));
            });
          };
        }
docs: All callbacks sent to Mousetrap are wrapped using this function
  so that we can force a $scope.$apply()
  
  @param  {Function} callback [description]
  @return {[type]}            [description]