@angular-wave/angular.ts 0.0.37 → 0.0.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. package/Makefile +6 -5
  2. package/dist/angular-ts.esm.js +2 -1
  3. package/dist/angular-ts.umd.js +1 -1
  4. package/package.json +2 -4
  5. package/rollup.config.js +5 -1
  6. package/src/binding.spec.js +4 -4
  7. package/src/core/location/location.js +1 -1
  8. package/src/core/scope/scope.js +4 -7
  9. package/src/exts/aria/aria.html +1 -4
  10. package/src/exts/messages/messages.html +1 -4
  11. package/src/index.js +307 -1
  12. package/src/loader.js +13 -6
  13. package/src/public.js +7 -2
  14. package/src/router/directives/directives.test.js +19 -0
  15. package/src/router/directives/state-directives.html +21 -0
  16. package/src/router/{state-directives.spec.js → directives/state-directives.spec.js} +2 -1
  17. package/src/router/{view-directive.spec.js → directives/view-directive.spec.js} +2 -1
  18. package/src/router/directives/view-directives.html +21 -0
  19. package/src/router/router.html +22 -0
  20. package/src/router/router.test.js +11 -0
  21. package/src/router/services.spec.js +2 -2
  22. package/src/router/{state-builder.spec.js → state/state-builder.spec.js} +9 -12
  23. package/src/router/state/state.html +22 -0
  24. package/src/router/{state.spec.js → state/state.spec.js} +1 -1
  25. package/src/router/state/state.test.js +11 -0
  26. package/src/router/state-filter.spec.js +2 -2
  27. package/src/router/template-factory.spec.js +4 -4
  28. package/src/router/url/url.html +18 -0
  29. package/src/router/url/url.test.js +11 -0
  30. package/src/router/view/view.html +18 -0
  31. package/src/router/{view.spec.js → view/view.spec.js} +1 -1
  32. package/src/router/view/view.test.js +11 -0
  33. package/src/router/view-hook.spec.js +4 -4
  34. package/src/router/view-scroll.spec.js +4 -4
  35. package/src/services/http/http.html +22 -0
  36. package/src/services/http/http.test.js +11 -0
  37. package/src/services/http-backend/http-backend.html +21 -0
  38. package/src/services/http-backend/http-backend.js +1 -1
  39. package/src/services/http-backend/http-backend.spec.js +1 -1
  40. package/src/services/http-backend/http-backend.test.js +11 -0
  41. package/src/shared/common.spec.js +4 -4
  42. package/src/shared/hof.spec.js +1 -1
  43. package/src/shared/min-err.spec.js +2 -2
  44. package/src/shared/shared.html +22 -0
  45. package/src/shared/shared.test.js +11 -0
  46. package/src/shared/test-utils.js +2 -2
  47. package/src/shared/utils.spec.js +1 -1
  48. package/src/src.html +22 -0
  49. package/src/src.test.js +10 -0
  50. package/tsconfig.json +1 -1
  51. package/tsconfig.types.json +11 -0
  52. package/types/animations/animate-cache.d.ts +7 -7
  53. package/types/animations/animate-children-directive.d.ts +3 -6
  54. package/types/animations/animate-swap.d.ts +7 -16
  55. package/types/animations/animation.d.ts +2 -11
  56. package/types/animations/raf-scheduler.d.ts +3 -3
  57. package/types/animations/shared.d.ts +8 -23
  58. package/types/core/{animate-css.d.ts → animate/animate-css.d.ts} +2 -8
  59. package/types/core/{cache.d.ts → cache/cache.d.ts} +5 -5
  60. package/types/core/compile/compile.d.ts +173 -0
  61. package/types/core/controller/controller.d.ts +32 -0
  62. package/types/core/exception-handler.d.ts +1 -1
  63. package/types/core/filter/filter.d.ts +9 -0
  64. package/types/core/{interpolate.d.ts → interpolate/interpolate.d.ts} +23 -39
  65. package/types/core/interval/interval-factory.d.ts +4 -0
  66. package/types/core/{interval.d.ts → interval/interval.d.ts} +1 -1
  67. package/types/core/location/location.d.ts +209 -0
  68. package/types/core/pubsub/pubsub.d.ts +156 -0
  69. package/types/core/q/q.d.ts +31 -0
  70. package/types/core/sanitize/sanitize-uri.d.ts +53 -0
  71. package/types/core/{sce.d.ts → sce/sce.d.ts} +80 -86
  72. package/types/core/scope/scope.d.ts +727 -0
  73. package/types/core/task-tracker-factory.d.ts +29 -29
  74. package/types/core/timeout/timeout.d.ts +20 -0
  75. package/types/core/{urlUtils.d.ts → url-utils/url-utils.d.ts} +2 -7
  76. package/types/directive/{bind.d.ts → bind/bind.d.ts} +4 -10
  77. package/types/directive/{class.d.ts → class/class.d.ts} +12 -21
  78. package/types/directive/controller/controller.d.ts +6 -0
  79. package/types/directive/events/events.d.ts +5 -0
  80. package/types/directive/form/form.d.ts +200 -0
  81. package/types/directive/if/if.d.ts +8 -0
  82. package/types/directive/include/include.d.ts +14 -0
  83. package/types/directive/{input.d.ts → input/input.d.ts} +20 -69
  84. package/types/directive/{model.d.ts → model/model.d.ts} +256 -279
  85. package/types/directive/options/options.d.ts +9 -0
  86. package/types/directive/ref/ref.d.ts +5 -0
  87. package/types/directive/repeat/repeat.d.ts +8 -0
  88. package/types/directive/{script.d.ts → script/script.d.ts} +5 -8
  89. package/types/directive/{show-hide.d.ts → show-hide/show-hide.d.ts} +10 -16
  90. package/types/directive/switch/switch.d.ts +17 -0
  91. package/types/directive/transclude/transclude.d.ts +4 -0
  92. package/types/directive/{validators.d.ts → validators/validators.d.ts} +20 -35
  93. package/types/filters/filters.d.ts +10 -16
  94. package/types/filters/order-by.d.ts +2 -4
  95. package/types/index.d.ts +117 -0
  96. package/types/injector.d.ts +12 -0
  97. package/types/public.d.ts +5 -0
  98. package/types/router/common/coreservices.d.ts +2 -2
  99. package/types/router/common/glob.d.ts +9 -9
  100. package/types/router/common/queue.d.ts +13 -13
  101. package/types/router/common/trace.d.ts +43 -43
  102. package/types/router/directives/view-directive.d.ts +13 -32
  103. package/types/router/globals.d.ts +20 -20
  104. package/types/router/hooks/lazy-load.d.ts +2 -11
  105. package/types/router/hooks/redirect-to.d.ts +1 -4
  106. package/types/router/hooks/url.d.ts +1 -5
  107. package/types/router/hooks/views.d.ts +1 -4
  108. package/types/router/params/param-factory.d.ts +5 -5
  109. package/types/router/params/param-type.d.ts +35 -35
  110. package/types/router/params/param-types.d.ts +11 -11
  111. package/types/router/params/param.d.ts +38 -38
  112. package/types/router/params/state-params.d.ts +10 -10
  113. package/types/router/path/path-node.d.ts +34 -34
  114. package/types/router/path/path-utils.d.ts +73 -77
  115. package/types/router/resolve/resolvable.d.ts +32 -32
  116. package/types/router/resolve/resolve-context.d.ts +84 -84
  117. package/types/router/services.d.ts +4 -9
  118. package/types/router/state/state-builder.d.ts +27 -27
  119. package/types/router/state/state-matcher.d.ts +5 -5
  120. package/types/router/state/state-object.d.ts +58 -58
  121. package/types/router/state/state-queue-manager.d.ts +10 -16
  122. package/types/router/state/state-registry.d.ts +100 -107
  123. package/types/router/state/state-service.d.ts +411 -411
  124. package/types/router/state/target-state.d.ts +64 -69
  125. package/types/router/state/views.d.ts +31 -37
  126. package/types/router/state-filters.d.ts +7 -7
  127. package/types/router/state-provider.d.ts +105 -105
  128. package/types/router/template-factory.d.ts +83 -112
  129. package/types/router/transition/hook-builder.d.ts +25 -25
  130. package/types/router/transition/hook-registry.d.ts +68 -83
  131. package/types/router/transition/interface.d.ts +7 -7
  132. package/types/router/transition/reject-factory.d.ts +34 -34
  133. package/types/router/transition/transition-event-type.d.ts +9 -18
  134. package/types/router/transition/transition-hook.d.ts +77 -82
  135. package/types/router/transition/transition-service.d.ts +82 -99
  136. package/types/router/transition/transition.d.ts +369 -377
  137. package/types/router/url/url-config.d.ts +84 -84
  138. package/types/router/url/url-matcher.d.ts +115 -119
  139. package/types/router/url/url-rule.d.ts +114 -124
  140. package/types/router/url/url-rules.d.ts +217 -217
  141. package/types/router/url/url-service.d.ts +264 -269
  142. package/types/router/view/view.d.ts +114 -117
  143. package/types/router/view-scroll.d.ts +2 -2
  144. package/types/services/anchor-scroll.d.ts +2 -8
  145. package/types/services/browser.d.ts +122 -130
  146. package/types/services/cache-factory.d.ts +25 -25
  147. package/types/services/cookie-reader.d.ts +2 -2
  148. package/types/services/document.d.ts +2 -2
  149. package/types/services/http/http.d.ts +145 -0
  150. package/types/services/{http-backend.d.ts → http-backend/http-backend.d.ts} +3 -35
  151. package/types/services/log.d.ts +49 -49
  152. package/types/services/template-request.d.ts +44 -53
  153. package/types/shared/common.d.ts +4 -19
  154. package/types/{constants.d.ts → shared/constants.d.ts} +6 -6
  155. package/types/shared/hof.d.ts +1 -1
  156. package/types/{jqLite.d.ts → shared/jqlite/jqlite.d.ts} +11 -11
  157. package/types/shared/test-utils.d.ts +11 -0
  158. package/types/shared/utils.d.ts +7 -24
  159. package/types-back/global.d.ts +3 -1
  160. package/types-back/index.d.ts +2 -221
  161. package/types/core/compile.d.ts +0 -206
  162. package/types/core/controller.d.ts +0 -42
  163. package/types/core/filter.d.ts +0 -9
  164. package/types/core/interval-factory.d.ts +0 -21
  165. package/types/core/location.d.ts +0 -234
  166. package/types/core/pubsub.d.ts +0 -164
  167. package/types/core/q.d.ts +0 -33
  168. package/types/core/root-scope.d.ts +0 -754
  169. package/types/core/sanitize-uri.d.ts +0 -57
  170. package/types/core/timeout.d.ts +0 -31
  171. package/types/directive/controller.d.ts +0 -6
  172. package/types/directive/events.d.ts +0 -12
  173. package/types/directive/form.d.ts +0 -230
  174. package/types/directive/if.d.ts +0 -17
  175. package/types/directive/include.d.ts +0 -33
  176. package/types/directive/options.d.ts +0 -16
  177. package/types/directive/ref.d.ts +0 -11
  178. package/types/directive/repeat.d.ts +0 -23
  179. package/types/directive/switch.d.ts +0 -23
  180. package/types/directive/transclude.d.ts +0 -15
  181. package/types/services/http.d.ts +0 -157
  182. /package/src/router/{url-service.spec.js → url/url-service.spec.js} +0 -0
  183. /package/types/directive/{attrs.d.ts → attrs/attrs.d.ts} +0 -0
  184. /package/types/directive/{change.d.ts → change/change.d.ts} +0 -0
  185. /package/types/directive/{cloak.d.ts → cloak/cloak.d.ts} +0 -0
  186. /package/types/directive/{init.d.ts → init/init.d.ts} +0 -0
  187. /package/types/directive/{list.d.ts → list/list.d.ts} +0 -0
  188. /package/types/directive/{non-bindable.d.ts → non-bindable/non-bindable.d.ts} +0 -0
  189. /package/types/directive/{style.d.ts → style/style.d.ts} +0 -0
  190. /package/types/exts/{aria.d.ts → aria/aria.d.ts} +0 -0
  191. /package/types/exts/{messages.d.ts → messages/messages.d.ts} +0 -0
@@ -28,75 +28,70 @@
28
28
  * or invalid (the state being targeted is not registered).
29
29
  */
30
30
  export class TargetState {
31
- /**
32
- * The TargetState constructor
33
- *
34
- * Note: Do not construct a `TargetState` manually.
35
- * To create a `TargetState`, use the [[StateService.target]] factory method.
36
- *
37
- * @param _stateRegistry The StateRegistry to use to look up the _definition
38
- * @param _identifier An identifier for a state.
39
- * Either a fully-qualified state name, or the object used to define the state.
40
- * @param _params Parameters for the target state
41
- * @param _options Transition options.
42
- *
43
- * @internal
44
- */
45
- constructor(
46
- _stateRegistry: any,
47
- _identifier: any,
48
- _params: any,
49
- _options: any,
50
- );
51
- _stateRegistry: any;
52
- _identifier: any;
53
- _params: any;
54
- _options: any;
55
- _definition: any;
56
- /** The name of the state this object targets */
57
- name(): any;
58
- /** The identifier used when creating this TargetState */
59
- identifier(): any;
60
- /** The target parameter values */
61
- params(): any;
62
- /** The internal state object (if it was found) */
63
- $state(): any;
64
- /** The internal state declaration (if it was found) */
65
- state(): any;
66
- /** The target options */
67
- options(): any;
68
- /** True if the target state was found */
69
- exists(): boolean;
70
- /** True if the object is valid */
71
- valid(): boolean;
72
- /** If the object is invalid, returns the reason why */
73
- error(): string;
74
- toString(): string;
75
- /**
76
- * Returns a copy of this TargetState which targets a different state.
77
- * The new TargetState has the same parameter values and transition options.
78
- *
79
- * @param state The new state that should be targeted
80
- */
81
- withState(state: any): TargetState;
82
- /**
83
- * Returns a copy of this TargetState, using the specified parameter values.
84
- *
85
- * @param params the new parameter values to use
86
- * @param replace When false (default) the new parameter values will be merged with the current values.
87
- * When true the parameter values will be used instead of the current values.
88
- */
89
- withParams(params: any, replace?: boolean): TargetState;
90
- /**
91
- * Returns a copy of this TargetState, using the specified Transition Options.
92
- *
93
- * @param options the new options to use
94
- * @param replace When false (default) the new options will be merged with the current options.
95
- * When true the options will be used instead of the current options.
96
- */
97
- withOptions(options: any, replace?: boolean): TargetState;
31
+ /**
32
+ * The TargetState constructor
33
+ *
34
+ * Note: Do not construct a `TargetState` manually.
35
+ * To create a `TargetState`, use the [[StateService.target]] factory method.
36
+ *
37
+ * @param _stateRegistry The StateRegistry to use to look up the _definition
38
+ * @param _identifier An identifier for a state.
39
+ * Either a fully-qualified state name, or the object used to define the state.
40
+ * @param _params Parameters for the target state
41
+ * @param _options Transition options.
42
+ *
43
+ * @internal
44
+ */
45
+ constructor(_stateRegistry: any, _identifier: any, _params: any, _options: any);
46
+ _stateRegistry: any;
47
+ _identifier: any;
48
+ _params: any;
49
+ _options: any;
50
+ _definition: any;
51
+ /** The name of the state this object targets */
52
+ name(): any;
53
+ /** The identifier used when creating this TargetState */
54
+ identifier(): any;
55
+ /** The target parameter values */
56
+ params(): any;
57
+ /** The internal state object (if it was found) */
58
+ $state(): any;
59
+ /** The internal state declaration (if it was found) */
60
+ state(): any;
61
+ /** The target options */
62
+ options(): any;
63
+ /** True if the target state was found */
64
+ exists(): boolean;
65
+ /** True if the object is valid */
66
+ valid(): boolean;
67
+ /** If the object is invalid, returns the reason why */
68
+ error(): string;
69
+ toString(): string;
70
+ /**
71
+ * Returns a copy of this TargetState which targets a different state.
72
+ * The new TargetState has the same parameter values and transition options.
73
+ *
74
+ * @param state The new state that should be targeted
75
+ */
76
+ withState(state: any): TargetState;
77
+ /**
78
+ * Returns a copy of this TargetState, using the specified parameter values.
79
+ *
80
+ * @param params the new parameter values to use
81
+ * @param replace When false (default) the new parameter values will be merged with the current values.
82
+ * When true the parameter values will be used instead of the current values.
83
+ */
84
+ withParams(params: any, replace?: boolean): TargetState;
85
+ /**
86
+ * Returns a copy of this TargetState, using the specified Transition Options.
87
+ *
88
+ * @param options the new options to use
89
+ * @param replace When false (default) the new options will be merged with the current options.
90
+ * When true the options will be used instead of the current options.
91
+ */
92
+ withOptions(options: any, replace?: boolean): TargetState;
98
93
  }
99
94
  export namespace TargetState {
100
- /** Returns true if the object has a state property that might be a state or state name */
101
- function isDef(obj: any): boolean;
95
+ /** Returns true if the object has a state property that might be a state or state name */
96
+ function isDef(obj: any): boolean;
102
97
  }
@@ -1,7 +1,4 @@
1
- export function getNg1ViewConfigFactory(): (
2
- path: any,
3
- view: any,
4
- ) => Ng1ViewConfig[];
1
+ export function getNg1ViewConfigFactory(): (path: any, view: any) => Ng1ViewConfig[];
5
2
  /**
6
3
  * This is a [[StateBuilder.builder]] function for angular1 `views`.
7
4
  *
@@ -14,37 +11,34 @@ export function getNg1ViewConfigFactory(): (
14
11
  */
15
12
  export function ng1ViewsBuilder(state: any): {};
16
13
  export class Ng1ViewConfig {
17
- /**
18
- * Normalizes a view's name from a state.views configuration block.
19
- *
20
- * This should be used by a framework implementation to calculate the values for
21
- * [[_ViewDeclaration.$ngViewName]] and [[_ViewDeclaration.$ngViewContextAnchor]].
22
- *
23
- * @param context the context object (state declaration) that the view belongs to
24
- * @param rawViewName the name of the view, as declared in the [[StateDeclaration.views]]
25
- *
26
- * @returns the normalized ngViewName and ngViewContextAnchor that the view targets
27
- */
28
- static normalizeUIViewTarget(
29
- context: any,
30
- rawViewName?: string,
31
- ): {
32
- ngViewName: string;
33
- ngViewContextAnchor: string;
34
- };
35
- constructor(path: any, viewDecl: any, factory: any);
36
- path: any;
37
- viewDecl: any;
38
- factory: any;
39
- /** @type {Number} */ $id: number;
40
- loaded: boolean;
41
- getTemplate: (ngView: any, context: any) => any;
42
- load(): any;
43
- controller: any;
44
- /**
45
- * Gets the controller for a view configuration.
46
- *
47
- * @returns {Function|Promise.<Function>} Returns a controller, or a promise that resolves to a controller.
48
- */
49
- getController(context: any): Function | Promise<Function>;
14
+ /**
15
+ * Normalizes a view's name from a state.views configuration block.
16
+ *
17
+ * This should be used by a framework implementation to calculate the values for
18
+ * [[_ViewDeclaration.$ngViewName]] and [[_ViewDeclaration.$ngViewContextAnchor]].
19
+ *
20
+ * @param context the context object (state declaration) that the view belongs to
21
+ * @param rawViewName the name of the view, as declared in the [[StateDeclaration.views]]
22
+ *
23
+ * @returns the normalized ngViewName and ngViewContextAnchor that the view targets
24
+ */
25
+ static normalizeUIViewTarget(context: any, rawViewName?: string): {
26
+ ngViewName: string;
27
+ ngViewContextAnchor: string;
28
+ };
29
+ constructor(path: any, viewDecl: any, factory: any);
30
+ path: any;
31
+ viewDecl: any;
32
+ factory: any;
33
+ /** @type {Number} */ $id: number;
34
+ loaded: boolean;
35
+ getTemplate: (ngView: any, context: any) => any;
36
+ load(): any;
37
+ controller: any;
38
+ /**
39
+ * Gets the controller for a view configuration.
40
+ *
41
+ * @returns {Function|Promise.<Function>} Returns a controller, or a promise that resolves to a controller.
42
+ */
43
+ getController(context: any): Function | Promise<Function>;
50
44
  }
@@ -1,15 +1,15 @@
1
1
  export function $IsStateFilter($state: any): {
2
- (state: any, params: any, options: any): any;
3
- $stateful: boolean;
2
+ (state: any, params: any, options: any): any;
3
+ $stateful: boolean;
4
4
  };
5
5
  export namespace $IsStateFilter {
6
- let $inject: string[];
6
+ let $inject: string[];
7
7
  }
8
8
  export function $IncludedByStateFilter($state: any): {
9
- (state: any, params: any, options: any): any;
10
- $stateful: boolean;
9
+ (state: any, params: any, options: any): any;
10
+ $stateful: boolean;
11
11
  };
12
12
  export namespace $IncludedByStateFilter {
13
- let $inject_1: string[];
14
- export { $inject_1 as $inject };
13
+ let $inject_1: string[];
14
+ export { $inject_1 as $inject };
15
15
  }
@@ -15,109 +15,109 @@
15
15
  * The `$stateProvider` provides interfaces to declare these states for your app.
16
16
  */
17
17
  export class StateProvider {
18
- constructor(stateRegistry: any, stateService: any);
19
- stateRegistry: any;
20
- stateService: any;
21
- /**
22
- * Decorates states when they are registered
23
- *
24
- * Allows you to extend (carefully) or override (at your own peril) the
25
- * `stateBuilder` object used internally by [[StateRegistry]].
26
- * This can be used to add custom functionality to ui-router,
27
- * for example inferring templateUrl based on the state name.
28
- *
29
- * When passing only a name, it returns the current (original or decorated) builder
30
- * function that matches `name`.
31
- *
32
- * The builder functions that can be decorated are listed below. Though not all
33
- * necessarily have a good use case for decoration, that is up to you to decide.
34
- *
35
- * In addition, users can attach custom decorators, which will generate new
36
- * properties within the state's internal definition. There is currently no clear
37
- * use-case for this beyond accessing internal states (i.e. $state.$current),
38
- * however, expect this to become increasingly relevant as we introduce additional
39
- * meta-programming features.
40
- *
41
- * **Warning**: Decorators should not be interdependent because the order of
42
- * execution of the builder functions in non-deterministic. Builder functions
43
- * should only be dependent on the state definition object and super function.
44
- *
45
- *
46
- * Existing builder functions and current return values:
47
- *
48
- * - **parent** `{object}` - returns the parent state object.
49
- * - **data** `{object}` - returns state data, including any inherited data that is not
50
- * overridden by own values (if any).
51
- * - **url** `{object}` - returns a {@link ui.router.util.type:UrlMatcher UrlMatcher}
52
- * or `null`.
53
- * - **navigable** `{object}` - returns closest ancestor state that has a URL (aka is
54
- * navigable).
55
- * - **params** `{object}` - returns an array of state params that are ensured to
56
- * be a super-set of parent's params.
57
- * - **views** `{object}` - returns a views object where each key is an absolute view
58
- * name (i.e. "viewName@stateName") and each value is the config object
59
- * (template, controller) for the view. Even when you don't use the views object
60
- * explicitly on a state config, one is still created for you internally.
61
- * So by decorating this builder function you have access to decorating template
62
- * and controller properties.
63
- * - **ownParams** `{object}` - returns an array of params that belong to the state,
64
- * not including any params defined by ancestor states.
65
- * - **path** `{string}` - returns the full path from the root down to this state.
66
- * Needed for state activation.
67
- * - **includes** `{object}` - returns an object that includes every state that
68
- * would pass a `$state.includes()` test.
69
- *
70
- * #### Example:
71
- * Override the internal 'views' builder with a function that takes the state
72
- * definition, and a reference to the internal function being overridden:
73
- * ```js
74
- * $stateProvider.decorator('views', function (state, parent) {
75
- * let result = {},
76
- * views = parent(state);
77
- *
78
- * angular.forEach(views, function (config, name) {
79
- * let autoName = (state.name + '.' + name).replace('.', '/');
80
- * config.templateUrl = config.templateUrl || '/partials/' + autoName + '.html';
81
- * result[name] = config;
82
- * });
83
- * return result;
84
- * });
85
- *
86
- * $stateProvider.state('home', {
87
- * views: {
88
- * 'contact.list': { controller: 'ListController' },
89
- * 'contact.item': { controller: 'ItemController' }
90
- * }
91
- * });
92
- * ```
93
- *
94
- *
95
- * ```js
96
- * // Auto-populates list and item views with /partials/home/contact/list.html,
97
- * // and /partials/home/contact/item.html, respectively.
98
- * $state.go('home');
99
- * ```
100
- *
101
- * @param {string} name The name of the builder function to decorate.
102
- * @param {object} func A function that is responsible for decorating the original
103
- * builder function. The function receives two parameters:
104
- *
105
- * - `{object}` - state - The state config object.
106
- * - `{object}` - super - The original builder function.
107
- *
108
- * @return {object} $stateProvider - $stateProvider instance
109
- */
110
- decorator(name: string, func: object): object;
111
- /**
112
- *
113
- * @param {angular.Ng1StateDeclaration} definition
114
- * @returns {StateProvider}
115
- */
116
- state(definition: angular.Ng1StateDeclaration): StateProvider;
117
- /**
118
- * Registers an invalid state handler
119
- *
120
- * This is a passthrough to [[StateService.onInvalid]] for ng1.
121
- */
122
- onInvalid(callback: any): any;
18
+ constructor(stateRegistry: any, stateService: any);
19
+ stateRegistry: any;
20
+ stateService: any;
21
+ /**
22
+ * Decorates states when they are registered
23
+ *
24
+ * Allows you to extend (carefully) or override (at your own peril) the
25
+ * `stateBuilder` object used internally by [[StateRegistry]].
26
+ * This can be used to add custom functionality to ui-router,
27
+ * for example inferring templateUrl based on the state name.
28
+ *
29
+ * When passing only a name, it returns the current (original or decorated) builder
30
+ * function that matches `name`.
31
+ *
32
+ * The builder functions that can be decorated are listed below. Though not all
33
+ * necessarily have a good use case for decoration, that is up to you to decide.
34
+ *
35
+ * In addition, users can attach custom decorators, which will generate new
36
+ * properties within the state's internal definition. There is currently no clear
37
+ * use-case for this beyond accessing internal states (i.e. $state.$current),
38
+ * however, expect this to become increasingly relevant as we introduce additional
39
+ * meta-programming features.
40
+ *
41
+ * **Warning**: Decorators should not be interdependent because the order of
42
+ * execution of the builder functions in non-deterministic. Builder functions
43
+ * should only be dependent on the state definition object and super function.
44
+ *
45
+ *
46
+ * Existing builder functions and current return values:
47
+ *
48
+ * - **parent** `{object}` - returns the parent state object.
49
+ * - **data** `{object}` - returns state data, including any inherited data that is not
50
+ * overridden by own values (if any).
51
+ * - **url** `{object}` - returns a {@link ui.router.util.type:UrlMatcher UrlMatcher}
52
+ * or `null`.
53
+ * - **navigable** `{object}` - returns closest ancestor state that has a URL (aka is
54
+ * navigable).
55
+ * - **params** `{object}` - returns an array of state params that are ensured to
56
+ * be a super-set of parent's params.
57
+ * - **views** `{object}` - returns a views object where each key is an absolute view
58
+ * name (i.e. "viewName@stateName") and each value is the config object
59
+ * (template, controller) for the view. Even when you don't use the views object
60
+ * explicitly on a state config, one is still created for you internally.
61
+ * So by decorating this builder function you have access to decorating template
62
+ * and controller properties.
63
+ * - **ownParams** `{object}` - returns an array of params that belong to the state,
64
+ * not including any params defined by ancestor states.
65
+ * - **path** `{string}` - returns the full path from the root down to this state.
66
+ * Needed for state activation.
67
+ * - **includes** `{object}` - returns an object that includes every state that
68
+ * would pass a `$state.includes()` test.
69
+ *
70
+ * #### Example:
71
+ * Override the internal 'views' builder with a function that takes the state
72
+ * definition, and a reference to the internal function being overridden:
73
+ * ```js
74
+ * $stateProvider.decorator('views', function (state, parent) {
75
+ * let result = {},
76
+ * views = parent(state);
77
+ *
78
+ * angular.forEach(views, function (config, name) {
79
+ * let autoName = (state.name + '.' + name).replace('.', '/');
80
+ * config.templateUrl = config.templateUrl || '/partials/' + autoName + '.html';
81
+ * result[name] = config;
82
+ * });
83
+ * return result;
84
+ * });
85
+ *
86
+ * $stateProvider.state('home', {
87
+ * views: {
88
+ * 'contact.list': { controller: 'ListController' },
89
+ * 'contact.item': { controller: 'ItemController' }
90
+ * }
91
+ * });
92
+ * ```
93
+ *
94
+ *
95
+ * ```js
96
+ * // Auto-populates list and item views with /partials/home/contact/list.html,
97
+ * // and /partials/home/contact/item.html, respectively.
98
+ * $state.go('home');
99
+ * ```
100
+ *
101
+ * @param {string} name The name of the builder function to decorate.
102
+ * @param {object} func A function that is responsible for decorating the original
103
+ * builder function. The function receives two parameters:
104
+ *
105
+ * - `{object}` - state - The state config object.
106
+ * - `{object}` - super - The original builder function.
107
+ *
108
+ * @return {object} $stateProvider - $stateProvider instance
109
+ */
110
+ decorator(name: string, func: object): object;
111
+ /**
112
+ *
113
+ * @param {angular.Ng1StateDeclaration} definition
114
+ * @returns {StateProvider}
115
+ */
116
+ state(definition: angular.Ng1StateDeclaration): StateProvider;
117
+ /**
118
+ * Registers an invalid state handler
119
+ *
120
+ * This is a passthrough to [[StateService.onInvalid]] for ng1.
121
+ */
122
+ onInvalid(callback: any): any;
123
123
  }