1+ /**
2+ * @ngdoc object
3+ * @name ui.router.compat.$routeProvider
4+ *
5+ * @requires ui.router.state.$stateProvider
6+ * @requires ui.router.router.$urlRouterProvider
7+ *
8+ * @description
9+ * `$routeProvider` of the `ui.router.compat` module overwrites the existing
10+ * `routeProvider` from the core. This is done to provide compatibility between
11+ * the UI Router and the core router.
12+ *
13+ * It also provides a `when()` method to register routes that map to certain urls.
14+ * Behind the scenes it actually delegates either to
15+ * {@link ui.router.router.$urlRouterProvider $urlRouterProvider} or to the
16+ * {@link ui.router.state.$stateProvider $stateProvider} to postprocess the given
17+ * router definition object.
18+ */
119$RouteProvider . $inject = [ '$stateProvider' , '$urlRouterProvider' ] ;
220function $RouteProvider ( $stateProvider , $urlRouterProvider ) {
321
@@ -17,6 +35,32 @@ function $RouteProvider( $stateProvider, $urlRouterProvider) {
1735 }
1836
1937 this . when = when ;
38+ /**
39+ * @ngdoc function
40+ * @name ui.router.compat.$routeProvider#when
41+ * @methodOf ui.router.compat.$routeProvider
42+ *
43+ * @description
44+ * Registers a route with a given route definition object. The route definition
45+ * object has the same interface the angular core route definition object has.
46+ *
47+ * @example
48+ * <pre>
49+ * var app = angular.module('app', ['ui.router.compat']);
50+ *
51+ * app.config(function ($routeProvider) {
52+ * $routeProvider.when('home', {
53+ * controller: function () { ... },
54+ * templateUrl: 'path/to/template'
55+ * });
56+ * });
57+ * </pre>
58+ *
59+ * @param {string } url URL as string
60+ * @param {object } route Route definition object
61+ *
62+ * @return {object } $routeProvider - $routeProvider instance
63+ */
2064 function when ( url , route ) {
2165 /*jshint validthis: true */
2266 if ( route . redirectTo != null ) {
@@ -47,6 +91,24 @@ function $RouteProvider( $stateProvider, $urlRouterProvider) {
4791 return this ;
4892 }
4993
94+ /**
95+ * @ngdoc object
96+ * @name ui.router.compat.$route
97+ *
98+ * @requires ui.router.state.$state
99+ * @requires $rootScope
100+ * @requires $routeParams
101+ *
102+ * @property {object } routes - Array of registered routes.
103+ * @property {object } params - Current route params as object.
104+ * @property {string } current - Name of the current route.
105+ *
106+ * @description
107+ * The `$route` service provides interfaces to access defined routes. It also let's
108+ * you access route params through `$routeParams` service, so you have fully
109+ * control over all the stuff you would actually get from angular's core `$route`
110+ * service.
111+ */
50112 this . $get = $get ;
51113 $get . $inject = [ '$state' , '$rootScope' , '$routeParams' ] ;
52114 function $get ( $state , $rootScope , $routeParams ) {
0 commit comments