@angular-wave/angular.ts 0.7.8 → 0.8.0

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 (285) hide show
  1. package/@types/core/parse/parse.d.ts +6 -7
  2. package/@types/directive/bind/bind.d.ts +2 -1
  3. package/@types/index.d.ts +1 -1
  4. package/@types/interface.d.ts +3 -1
  5. package/@types/{public.d.ts → ng.d.ts} +2 -2
  6. package/@types/router/globals.d.ts +1 -1
  7. package/@types/router/path/path-utils.d.ts +8 -11
  8. package/@types/router/state/interface.d.ts +1 -1
  9. package/@types/router/state/state-object.d.ts +1 -1
  10. package/@types/router/state/state-service.d.ts +8 -7
  11. package/@types/router/state-filters.d.ts +24 -2
  12. package/@types/router/transition/transition.d.ts +12 -15
  13. package/@types/router/url/url-matcher.d.ts +3 -3
  14. package/@types/router/url/url-rule.d.ts +1 -0
  15. package/@types/router/url/url-rules.d.ts +26 -6
  16. package/@types/router/url/url-service.d.ts +28 -38
  17. package/@types/services/http/http.d.ts +48 -1
  18. package/@types/services/http-backend/http-backend.d.ts +48 -35
  19. package/@types/services/location/interface.d.ts +55 -0
  20. package/@types/services/location/location.d.ts +225 -252
  21. package/@types/shared/common.d.ts +0 -2
  22. package/@types/shared/interface.d.ts +0 -4
  23. package/@types/{router/common → shared}/queue.d.ts +2 -2
  24. package/@types/shared/url-utils/interface.d.ts +0 -1
  25. package/@types/shared/url-utils/url-utils.d.ts +0 -5
  26. package/@types/shared/utils.d.ts +29 -6
  27. package/Makefile +6 -3
  28. package/dist/angular-ts.esm.js +960 -1062
  29. package/dist/angular-ts.umd.js +960 -1062
  30. package/dist/angular-ts.umd.min.js +1 -1
  31. package/docs/assets/scss/index.scss +23 -0
  32. package/docs/content/_index.md +9 -8
  33. package/docs/content/docs/_index.md +1 -1
  34. package/docs/content/docs/directive/app.md +1 -1
  35. package/docs/content/docs/directive/bind.md +1 -1
  36. package/docs/content/docs/directive/blur.md +1 -1
  37. package/docs/content/docs/directive/channel.md +2 -2
  38. package/docs/content/docs/directive/class-even.md +1 -1
  39. package/docs/content/docs/directive/class-odd.md +1 -1
  40. package/docs/content/docs/directive/class.md +1 -1
  41. package/docs/content/docs/directive/click.md +1 -1
  42. package/docs/content/docs/directive/copy.md +1 -1
  43. package/docs/content/docs/directive/cut.md +1 -1
  44. package/docs/content/docs/directive/dblclick.md +1 -1
  45. package/docs/content/docs/directive/focus.md +1 -1
  46. package/docs/content/docs/directive/get.md +3 -3
  47. package/docs/content/docs/directive/keydown.md +1 -1
  48. package/docs/content/docs/directive/keyup.md +1 -1
  49. package/docs/content/docs/directive/load.md +1 -1
  50. package/docs/content/docs/directive/mousedown.md +1 -1
  51. package/docs/content/docs/directive/mouseenter.md +1 -1
  52. package/docs/content/docs/directive/mouseleave.md +1 -1
  53. package/docs/content/docs/directive/mousemove.md +1 -1
  54. package/docs/content/docs/directive/mouseout.md +1 -1
  55. package/docs/content/docs/directive/mouseover.md +1 -1
  56. package/docs/content/docs/directive/mouseup.md +1 -1
  57. package/docs/content/docs/directive/non-bindable.md +28 -0
  58. package/docs/content/docs/provider/locationProvider.md +26 -0
  59. package/docs/content/docs/provider/templateCacheProvider.md +2 -2
  60. package/docs/content/docs/service/location.md +57 -0
  61. package/docs/content/docs/service/url.md +5 -0
  62. package/docs/layouts/partials/hooks/head-end.html +1 -1
  63. package/docs/layouts/shortcodes/version.html +1 -0
  64. package/docs/static/examples/counter/counter-test.html +0 -4
  65. package/docs/static/examples/eventbus/eventbus-test.html +0 -4
  66. package/docs/static/examples/ng-non-bindable/ng-non-bindable-test.html +13 -0
  67. package/docs/static/examples/ng-non-bindable/ng-non-bindable.html +3 -0
  68. package/docs/static/examples/ng-non-bindable/ng-non-bindable.test.js +11 -0
  69. package/docs/static/typedoc/assets/highlight.css +6 -6
  70. package/docs/static/typedoc/assets/navigation.js +1 -1
  71. package/docs/static/typedoc/assets/search.js +1 -1
  72. package/docs/static/typedoc/classes/Location.html +55 -0
  73. package/docs/static/typedoc/classes/LocationProvider.html +20 -0
  74. package/docs/static/typedoc/index.html +1 -1
  75. package/docs/static/typedoc/interfaces/DefaultPorts.html +5 -0
  76. package/docs/static/typedoc/interfaces/Html5Mode.html +23 -0
  77. package/docs/static/typedoc/interfaces/Provider.html +2 -1
  78. package/docs/static/typedoc/interfaces/UrlParts.html +9 -0
  79. package/docs/static/typedoc/types/AnnotatedFactory.html +1 -1
  80. package/docs/static/typedoc/types/Expression.html +1 -1
  81. package/docs/static/typedoc/types/UrlChangeListener.html +5 -0
  82. package/docs/static/version.js +13 -0
  83. package/docs/test-results/.last-run.json +4 -0
  84. package/docs/test-results/static-examples-counter-counter-counter-example/error-context.md +50 -0
  85. package/package.json +1 -1
  86. package/src/{loader.js → angular.js} +1 -1
  87. package/src/angular.spec.js +189 -21
  88. package/src/animations/animate-css.js +17 -18
  89. package/src/animations/animate.spec.js +1 -1
  90. package/src/animations/shared.js +2 -3
  91. package/src/binding.spec.js +1 -1
  92. package/src/core/compile/compile.js +4 -7
  93. package/src/core/compile/compile.spec.js +1 -1
  94. package/src/core/controller/controller.spec.js +1 -1
  95. package/src/core/controller/controller.test.js +1 -0
  96. package/src/core/di/injector.js +7 -8
  97. package/src/core/di/injector.spec.js +2 -2
  98. package/src/core/di/injector.test.js +2 -2
  99. package/src/core/di/internal-injector.js +3 -6
  100. package/src/core/filter/filter.js +1 -1
  101. package/src/core/filter/filter.spec.js +1 -1
  102. package/src/core/filter/filter.test.js +1 -0
  103. package/src/core/interpolate/interpolate.js +4 -6
  104. package/src/core/interpolate/interpolate.spec.js +1 -1
  105. package/src/core/interpolate/interpolate.test.js +1 -0
  106. package/src/core/parse/ast/ast.spec.js +1 -1
  107. package/src/core/parse/ast/ast.test.js +1 -1
  108. package/src/core/parse/lexer/lexer.spec.js +1 -1
  109. package/src/core/parse/parse.js +150 -146
  110. package/src/core/parse/parse.spec.js +17 -16
  111. package/src/core/prop.spec.js +1 -1
  112. package/src/core/root-element.spec.js +1 -1
  113. package/src/core/scope/scope.js +10 -11
  114. package/src/core/scope/scope.spec.js +3 -4
  115. package/src/directive/aria/aria.spec.js +1 -1
  116. package/src/directive/aria/aria.test.js +1 -0
  117. package/src/directive/attrs/attrs.spec.js +1 -1
  118. package/src/directive/attrs/attrs.test.js +1 -0
  119. package/src/directive/attrs/boolean.spec.js +1 -1
  120. package/src/directive/attrs/boolean.test.js +1 -0
  121. package/src/directive/attrs/element-style.spec.js +1 -1
  122. package/src/directive/attrs/element-style.test.js +1 -0
  123. package/src/directive/attrs/src.spec.js +1 -1
  124. package/src/directive/attrs/src.test.js +1 -0
  125. package/src/directive/bind/bind-html.spec.js +1 -1
  126. package/src/directive/bind/bind.js +1 -0
  127. package/src/directive/bind/bind.spec.js +1 -1
  128. package/src/directive/bind/bind.test.js +1 -0
  129. package/src/directive/channel/channel.spec.js +1 -1
  130. package/src/directive/channel/channel.test.js +1 -0
  131. package/src/directive/class/class.spec.js +1 -1
  132. package/src/directive/class/class.test.js +1 -0
  133. package/src/directive/cloak/cloak.spec.js +1 -1
  134. package/src/directive/cloak/cloak.test.js +1 -0
  135. package/src/directive/controller/controller.spec.js +1 -1
  136. package/src/directive/controller/controller.test.js +1 -0
  137. package/src/directive/events/click.spec.js +1 -1
  138. package/src/directive/events/event.spec.js +1 -1
  139. package/src/directive/events/events.test.js +1 -0
  140. package/src/directive/form/form.js +8 -5
  141. package/src/directive/form/form.spec.js +1 -1
  142. package/src/directive/form/form.test.js +1 -0
  143. package/src/directive/http/delete.spec.js +1 -1
  144. package/src/directive/http/form-test.html +18 -0
  145. package/src/directive/http/get.spec.js +1 -1
  146. package/src/directive/http/http.js +12 -3
  147. package/src/directive/http/post.spec.js +504 -9
  148. package/src/directive/http/put.spec.js +1 -1
  149. package/src/directive/if/if.spec.js +1 -1
  150. package/src/directive/include/include.spec.js +1 -1
  151. package/src/directive/init/init.spec.js +1 -1
  152. package/src/directive/init/init.test.js +1 -0
  153. package/src/directive/input/input.js +13 -15
  154. package/src/directive/input/input.spec.js +1 -2
  155. package/src/directive/input/input.test.js +1 -0
  156. package/src/directive/messages/messages.spec.js +1 -1
  157. package/src/directive/messages/messages.test.js +1 -0
  158. package/src/directive/model/model.js +13 -13
  159. package/src/directive/model/model.spec.js +1 -1
  160. package/src/directive/model/model.test.js +1 -0
  161. package/src/directive/model-options/model-option.test.js +1 -0
  162. package/src/directive/model-options/model-options.js +1 -1
  163. package/src/directive/model-options/model-options.spec.js +1 -1
  164. package/src/directive/non-bindable/non-bindable.spec.js +1 -1
  165. package/src/directive/non-bindable/non-bindable.test.js +1 -0
  166. package/src/directive/observe/observe.spec.js +1 -1
  167. package/src/directive/observe/observe.test.js +1 -0
  168. package/src/directive/on/on.spec.js +1 -1
  169. package/src/directive/on/on.test.js +1 -0
  170. package/src/directive/options/options.spec.js +1 -1
  171. package/src/directive/options/options.test.js +1 -0
  172. package/src/directive/ref/href.spec.js +1 -1
  173. package/src/directive/ref/href.test.js +2 -0
  174. package/src/directive/ref/ref.spec.js +1 -1
  175. package/src/directive/repeat/repeat.spec.js +2 -3
  176. package/src/directive/repeat/repeat.test.js +1 -0
  177. package/src/directive/script/script.spec.js +1 -1
  178. package/src/directive/script/script.test.js +1 -0
  179. package/src/directive/select/select.js +1 -1
  180. package/src/directive/select/select.spec.js +1 -1
  181. package/src/directive/select/select.test.js +1 -0
  182. package/src/directive/setter/setter.spec.js +1 -1
  183. package/src/directive/setter/setter.test.js +1 -0
  184. package/src/directive/show-hide/show-hide.spec.js +1 -1
  185. package/src/directive/show-hide/show-hide.test.js +1 -0
  186. package/src/directive/style/style.spec.js +1 -1
  187. package/src/directive/style/style.test.js +1 -0
  188. package/src/directive/switch/switch.spec.js +1 -1
  189. package/src/directive/switch/switch.test.js +1 -0
  190. package/src/directive/validators/validators.js +82 -84
  191. package/src/directive/validators/validators.spec.js +5 -4
  192. package/src/directive/validators/validators.test.js +1 -0
  193. package/src/filters/filter.spec.js +1 -1
  194. package/src/filters/filters.spec.js +1 -1
  195. package/src/filters/limit-to.js +2 -3
  196. package/src/filters/limit-to.spec.js +1 -1
  197. package/src/filters/order-by.spec.js +1 -1
  198. package/src/index.js +1 -1
  199. package/src/injection-tokens.js +5 -1
  200. package/src/interface.ts +3 -1
  201. package/src/loader.md +0 -155
  202. package/src/{public.js → ng.js} +7 -8
  203. package/src/{public.spec.js → ng.spec.js} +1 -1
  204. package/src/router/directives/state-directives.spec.js +8 -7
  205. package/src/router/directives/view-directive.js +2 -8
  206. package/src/router/directives/view-directive.spec.js +8 -9
  207. package/src/router/{common/common.html → glob/glob.html} +2 -3
  208. package/src/router/{common/common.test.js → glob/glob.test.js} +2 -1
  209. package/src/router/globals.js +1 -1
  210. package/src/router/path/path-utils.js +5 -0
  211. package/src/router/router-test-hashbang.html +45 -0
  212. package/src/router/services.spec.js +5 -6
  213. package/src/router/state/interface.ts +1 -1
  214. package/src/router/state/state-builder.js +3 -3
  215. package/src/router/state/state-builder.spec.js +1 -1
  216. package/src/router/state/state-object.js +1 -1
  217. package/src/router/state/state-registry.js +2 -2
  218. package/src/router/state/state-service.js +13 -10
  219. package/src/router/state/state.spec.js +23 -22
  220. package/src/router/state/state.test.js +1 -0
  221. package/src/router/state/views.js +1 -1
  222. package/src/router/state-filter.spec.js +1 -1
  223. package/src/router/state-filters.js +13 -9
  224. package/src/router/template-factory.js +5 -4
  225. package/src/router/template-factory.spec.js +1 -1
  226. package/src/router/transition/hook-registry.js +1 -1
  227. package/src/router/transition/transition-service.js +6 -5
  228. package/src/router/transition/transition.js +4 -4
  229. package/src/router/url/url-matcher.js +3 -3
  230. package/src/router/url/url-rule.js +1 -0
  231. package/src/router/url/url-rules.js +8 -5
  232. package/src/router/url/url-service.js +77 -76
  233. package/src/router/url/url-service.spec.js +55 -39
  234. package/src/router/url/url.test.js +1 -0
  235. package/src/router/view/view.js +4 -5
  236. package/src/router/view/view.spec.js +10 -12
  237. package/src/router/view/view.test.js +1 -0
  238. package/src/router/view-hook.spec.js +1 -1
  239. package/src/router/view-scroll.spec.js +1 -1
  240. package/src/services/anchor-scroll.html +2 -2
  241. package/src/services/anchor-scroll.js +5 -4
  242. package/src/services/http/http.js +9 -4
  243. package/src/services/http/http.spec.js +2 -7
  244. package/src/services/http/template-request.spec.js +1 -1
  245. package/src/services/http-backend/http-backend.js +51 -77
  246. package/src/services/http-backend/http-backend.spec.js +1 -2
  247. package/src/services/http-backend/http-backend.test.js +1 -0
  248. package/src/services/location/interface.ts +62 -0
  249. package/src/services/location/location.js +433 -520
  250. package/src/services/location/location.spec.js +909 -530
  251. package/src/services/location/location.test.js +2 -2
  252. package/src/services/log/log.spec.js +1 -1
  253. package/src/services/log/log.test.js +1 -0
  254. package/src/services/pubsub/pubsub.spec.js +1 -1
  255. package/src/services/sce/sce.js +5 -7
  256. package/src/services/sce/sce.md +2 -2
  257. package/src/services/sce/sce.spec.js +1 -1
  258. package/src/services/template-cache/template-cache.spec.js +1 -1
  259. package/src/services/template-cache/template-cache.test.js +1 -0
  260. package/src/shared/common.js +0 -5
  261. package/src/shared/common.spec.js +1 -1
  262. package/src/shared/interface.ts +0 -4
  263. package/src/{router/common → shared}/queue.js +7 -7
  264. package/src/shared/shared.html +1 -0
  265. package/src/shared/shared.test.js +1 -0
  266. package/src/shared/url-utils/interface.ts +0 -2
  267. package/src/shared/url-utils/url-utils.js +6 -30
  268. package/src/shared/url-utils/url-utils.spec.js +10 -9
  269. package/src/shared/utils.js +32 -9
  270. package/src/shared/utils.spec.js +35 -1
  271. package/src/src.html +1 -2
  272. package/typedoc.json +0 -1
  273. package/utils/express.js +27 -1
  274. package/utils/version.cjs +23 -0
  275. package/@types/router/state-provider.d.ts +0 -123
  276. package/src/directive/non-bindable/non-bindable.md +0 -17
  277. package/src/loader.spec.js +0 -169
  278. package/src/router/state-provider.js +0 -146
  279. package/src/services/location/location.md +0 -114
  280. package/src/shared/url-utils/url-utils.md +0 -46
  281. /package/@types/{loader.d.ts → angular.d.ts} +0 -0
  282. /package/@types/router/{common → glob}/glob.d.ts +0 -0
  283. /package/src/router/{common → glob}/glob.js +0 -0
  284. /package/src/router/{common → glob}/glob.spec.js +0 -0
  285. /package/src/{router/common → shared}/queue.spec.js +0 -0
@@ -1,4 +1,9 @@
1
- export function ParseProvider(): void;
1
+ export function constantWatchDelegate(
2
+ scope: any,
3
+ listener: any,
4
+ objectEquality: any,
5
+ parsedExpression: any,
6
+ ): any;
2
7
  export class ParseProvider {
3
8
  /**
4
9
  * Allows defining the set of characters that are allowed in AngularTS expressions. The function
@@ -26,9 +31,3 @@ export class ParseProvider {
26
31
  ) => ParseProvider;
27
32
  $get: (string | (($filter: (any: any) => any) => any))[];
28
33
  }
29
- export function constantWatchDelegate(
30
- scope: any,
31
- listener: any,
32
- objectEquality: any,
33
- parsedExpression: any,
34
- ): any;
@@ -7,10 +7,11 @@ export function ngBindDirective(): import("../../interface.ts").Directive;
7
7
  */
8
8
  export function ngBindTemplateDirective(): import("../../interface.ts").Directive;
9
9
  /**
10
+ * @param {import('../../core/parse/interface.ts').ParseService} $parse
10
11
  * @returns {import('../../interface.ts').Directive}
11
12
  */
12
13
  export function ngBindHtmlDirective(
13
- $parse: any,
14
+ $parse: import("../../core/parse/interface.ts").ParseService,
14
15
  ): import("../../interface.ts").Directive;
15
16
  export namespace ngBindHtmlDirective {
16
17
  let $inject: string[];
package/@types/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  export const angular: Angular;
2
- import { Angular } from "./loader.js";
2
+ import { Angular } from "./angular.js";
@@ -4,6 +4,8 @@ export * from "./core/di/ng-module.js";
4
4
  export * from "./services/http/interface.ts";
5
5
  export * from "./services/log/interface.ts";
6
6
  export * from "./services/log/log.js";
7
+ export * from "./services/location/interface.ts";
8
+ export * from "./services/location/location.js";
7
9
  export * from "./services/pubsub/pubsub.js";
8
10
  export * from "./services/template-cache/interface.ts";
9
11
  export * from "./services/template-cache/template-cache.js";
@@ -61,7 +63,7 @@ export interface Provider {
61
63
  /**
62
64
  * Register a directive
63
65
  * @param name - The name of the directive.
64
- * @param provider - An object with a `$get` property that defines how the service is created.
66
+ * @param directive - An object with a `$get` property that defines how the service is created.
65
67
  */
66
68
  directive(name: string, directive: DirectiveFactory): Provider;
67
69
  /**
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * Initializes core `ng` module.
3
- * @param {import('./loader.js').Angular} angular
3
+ * @param {import('./angular.js').Angular} angular
4
4
  * @returns {import('./core/di/ng-module.js').NgModule} `ng` module
5
5
  */
6
6
  export function registerNgModule(
7
- angular: import("./loader.js").Angular,
7
+ angular: import("./angular.js").Angular,
8
8
  ): import("./core/di/ng-module.js").NgModule;
@@ -44,4 +44,4 @@ export class RouterGlobals {
44
44
  */
45
45
  export type ServiceProvider = import("../interface.ts").ServiceProvider;
46
46
  import { StateParams } from "./params/state-params.js";
47
- import { Queue } from "./common/queue.js";
47
+ import { Queue } from "../shared/queue.js";
@@ -34,19 +34,16 @@ export class PathUtils {
34
34
  static inheritParams(fromPath: any, toPath: any, toKeys?: any[]): any;
35
35
  /**
36
36
  * Computes the tree changes (entering, exiting) between a fromPath and toPath.
37
+ * @param {PathNode[]} fromPath
38
+ * @param {PathNode[]} toPath
39
+ * @param {boolean} [reloadState]
40
+ * @returns {import("../transition/interface.js").TreeChanges}
37
41
  */
38
42
  static treeChanges(
39
- fromPath: any,
40
- toPath: any,
41
- reloadState: any,
42
- ): {
43
- from: any;
44
- to: any;
45
- retained: any;
46
- retainedWithToParams: any;
47
- exiting: any;
48
- entering: any;
49
- };
43
+ fromPath: PathNode[],
44
+ toPath: PathNode[],
45
+ reloadState?: boolean,
46
+ ): import("../transition/interface.js").TreeChanges;
50
47
  /**
51
48
  * Returns a new path which is: the subpath of the first path which matches the second path.
52
49
  *
@@ -589,7 +589,7 @@ export interface StateDeclaration {
589
589
  *
590
590
  * An optional object which defines multiple views, or explicitly targets specific named ui-views.
591
591
  *
592
- * - What is a view config
592
+ * - What is a view urlConfig
593
593
  * - What is a ui-view
594
594
  * - Shorthand controller/template
595
595
  * - Incompatible with ^
@@ -80,4 +80,4 @@ export namespace StateObject {
80
80
  function isState(obj: any): boolean;
81
81
  }
82
82
  export type StateDeclaration = import("./interface.js").StateDeclaration;
83
- import { Glob } from "../common/glob.js";
83
+ import { Glob } from "../glob/glob.js";
@@ -76,9 +76,9 @@ export class StateProvider {
76
76
  * - **params** `{object}` - returns an array of state params that are ensured to
77
77
  * be a super-set of parent's params.
78
78
  * - **views** `{object}` - returns a views object where each key is an absolute view
79
- * name (i.e. "viewName@stateName") and each value is the config object
79
+ * name (i.e. "viewName@stateName") and each value is the urlConfig object
80
80
  * (template, controller) for the view. Even when you don't use the views object
81
- * explicitly on a state config, one is still created for you internally.
81
+ * explicitly on a state urlConfig, one is still created for you internally.
82
82
  * So by decorating this builder function you have access to decorating template
83
83
  * and controller properties.
84
84
  * - **ownParams** `{object}` - returns an array of params that belong to the state,
@@ -96,10 +96,10 @@ export class StateProvider {
96
96
  * let result = {},
97
97
  * views = parent(state);
98
98
  *
99
- * angular.forEach(views, function (config, name) {
99
+ * angular.forEach(views, function (urlConfig, name) {
100
100
  * let autoName = (state.name + '.' + name).replace('.', '/');
101
- * config.templateUrl = config.templateUrl || '/partials/' + autoName + '.html';
102
- * result[name] = config;
101
+ * urlConfig.templateUrl = urlConfig.templateUrl || '/partials/' + autoName + '.html';
102
+ * result[name] = urlConfig;
103
103
  * });
104
104
  * return result;
105
105
  * });
@@ -123,7 +123,7 @@ export class StateProvider {
123
123
  * @param {object} func A function that is responsible for decorating the original
124
124
  * builder function. The function receives two parameters:
125
125
  *
126
- * - `{object}` - state - The state config object.
126
+ * - `{object}` - state - The state urlConfig object.
127
127
  * - `{object}` - super - The original builder function.
128
128
  *
129
129
  * @return {object} $stateProvider - $stateProvider instance
@@ -265,7 +265,7 @@ export class StateProvider {
265
265
  * This may be returned from a Transition Hook to redirect a transition, for example.
266
266
  */
267
267
  target(identifier: any, params: any, options?: {}): TargetState;
268
- getCurrentPath(): any;
268
+ getCurrentPath(): PathNode[];
269
269
  /**
270
270
  * Low-level method for transitioning to a new state.
271
271
  *
@@ -419,3 +419,4 @@ export class StateProvider {
419
419
  lazyLoad(stateOrName: any, transition: any): any;
420
420
  }
421
421
  import { TargetState } from "./target-state.js";
422
+ import { PathNode } from "../path/path-node.js";
@@ -1,15 +1,37 @@
1
1
  /**
2
+ * `isState` Filter: truthy if the current state is the parameter
3
+ *
4
+ * Translates to [[StateService.is]] `$state.is("stateName")`.
5
+ *
6
+ * #### Example:
7
+ * ```html
8
+ * <div ng-if="'stateName' | isState">show if state is 'stateName'</div>
9
+ * ```
10
+ *
11
+ * @param {import('./state/state-service.js').StateProvider} $state
2
12
  * @returns {import('../interface.ts').FilterFn}
3
13
  */
4
- export function $IsStateFilter($state: any): import("../interface.ts").FilterFn;
14
+ export function $IsStateFilter(
15
+ $state: import("./state/state-service.js").StateProvider,
16
+ ): import("../interface.ts").FilterFn;
5
17
  export namespace $IsStateFilter {
6
18
  let $inject: string[];
7
19
  }
8
20
  /**
21
+ * `includedByState` Filter: truthy if the current state includes the parameter
22
+ *
23
+ * Translates to [[StateService.includes]]` $state.is("fullOrPartialStateName")`.
24
+ *
25
+ * #### Example:
26
+ * ```html
27
+ * <div ng-if="'fullOrPartialStateName' | includedByState">show if state includes 'fullOrPartialStateName'</div>
28
+ * ```
29
+ *
30
+ * @param {import('./state/state-service.js').StateProvider} $state
9
31
  * @returns {import('../interface.ts').FilterFn}
10
32
  */
11
33
  export function $IncludedByStateFilter(
12
- $state: any,
34
+ $state: import("./state/state-service.js").StateProvider,
13
35
  ): import("../interface.ts").FilterFn;
14
36
  export namespace $IncludedByStateFilter {
15
37
  let $inject_1: string[];
@@ -14,15 +14,15 @@ export class Transition implements IHookRegistry {
14
14
  *
15
15
  * If the target state is not valid, an error is thrown.
16
16
  *
17
- * @param fromPath The path of [[PathNode]]s from which the transition is leaving. The last node in the `fromPath`
17
+ * @param {Array<import('../path/path-node.js').PathNode>} fromPath The path of [[PathNode]]s from which the transition is leaving. The last node in the `fromPath`
18
18
  * encapsulates the "from state".
19
- * @param targetState The target state and parameters being transitioned to (also, the transition options)
19
+ * @param {import('../state/target-state.js').TargetState} targetState The target state and parameters being transitioned to (also, the transition options)
20
20
  * @param {import('../transition/transition-service.js').TransitionProvider} transitionService The [[TransitionService]] instance
21
21
  * @param {import('../globals.js').RouterGlobals} globals
22
22
  */
23
23
  constructor(
24
- fromPath: any,
25
- targetState: any,
24
+ fromPath: Array<import("../path/path-node.js").PathNode>,
25
+ targetState: import("../state/target-state.js").TargetState,
26
26
  transitionService: import("../transition/transition-service.js").TransitionProvider,
27
27
  globals: import("../globals.js").RouterGlobals,
28
28
  );
@@ -44,17 +44,10 @@ export class Transition implements IHookRegistry {
44
44
  _hookBuilder: HookBuilder;
45
45
  /** Checks if this transition is currently active/running. */
46
46
  isActive: () => boolean;
47
- _targetState: any;
47
+ _targetState: import("../state/target-state.js").TargetState;
48
48
  _options: any;
49
49
  $id: number;
50
- _treeChanges: {
51
- from: any;
52
- to: any;
53
- retained: any;
54
- retainedWithToParams: any;
55
- exiting: any;
56
- entering: any;
57
- };
50
+ _treeChanges: import("./interface.js").TreeChanges;
58
51
  onStart: any;
59
52
  onBefore: any;
60
53
  onSuccess: any;
@@ -101,7 +94,7 @@ export class Transition implements IHookRegistry {
101
94
  *
102
95
  * @returns the [[TargetState]] of this Transition
103
96
  */
104
- targetState(): any;
97
+ targetState(): import("../state/target-state.js").TargetState;
105
98
  /**
106
99
  * Determines whether two transitions are equivalent.
107
100
  * @deprecated
@@ -319,7 +312,11 @@ export class Transition implements IHookRegistry {
319
312
  * @returns a list of ViewConfig objects for the given path.
320
313
  */
321
314
  views(pathname: string, state: any): any;
322
- treeChanges(pathname: any): any;
315
+ treeChanges(
316
+ pathname: any,
317
+ ):
318
+ | import("../path/path-node.js").PathNode[]
319
+ | import("./interface.js").TreeChanges;
323
320
  /**
324
321
  * Creates a new transition that is a redirection of the current one.
325
322
  *
@@ -112,9 +112,9 @@ export class UrlMatcher {
112
112
  * // returns { id: 'bob', q: 'hello', r: null }
113
113
  * ```
114
114
  *
115
- * @param path The URL path to match, e.g. `$location.path()`.
116
- * @param search URL search parameters, e.g. `$location.search()`.
117
- * @param hash URL hash e.g. `$location.hash()`.
115
+ * @param path The URL path to match, e.g. `$location.getPath()`.
116
+ * @param search URL search parameters, e.g. `$location.getSearch()`.
117
+ * @param hash URL hash e.g. `$location.getHash()`.
118
118
  *
119
119
  * @returns The captured parameter values.
120
120
  */
@@ -142,6 +142,7 @@ export class BaseUrlRule {
142
142
  $id: number;
143
143
  _group: any;
144
144
  handler: any;
145
+ priority: any;
145
146
  /**
146
147
  * This function should be overridden
147
148
  * @param {*} [params]
@@ -6,14 +6,15 @@
6
6
  *
7
7
  * The most commonly used methods are [[otherwise]] and [[when]].
8
8
  *
9
- * This API is found at `$urlService.rules` (see: [[UIRouter.urlService]], [[URLService.rules]])
9
+ * This API is found at `$url.rules` (see: [[UIRouter.urlService]], [[URLService.rules]])
10
10
  */
11
11
  export class UrlRules {
12
- constructor(urlRuleFactory: any);
13
- _sortFn: any;
12
+ /** @param {UrlRuleFactory} urlRuleFactory */
13
+ constructor(urlRuleFactory: UrlRuleFactory);
14
+ _sortFn: typeof defaultRuleSortFn;
14
15
  _rules: any[];
15
16
  _id: number;
16
- urlRuleFactory: any;
17
+ urlRuleFactory: UrlRuleFactory;
17
18
  /**
18
19
  * Defines the initial state, path, or behavior to use when the app starts.
19
20
  *
@@ -94,7 +95,7 @@ export class UrlRules {
94
95
  * @param handler The url path to redirect to, or a function which returns the url path (or performs custom logic).
95
96
  */
96
97
  otherwise(handler: any): void;
97
- _otherwiseFn: any;
98
+ _otherwiseFn: import("./url-rule.js").BaseUrlRule;
98
99
  _sorted: boolean;
99
100
  /**
100
101
  * Remove a rule previously registered
@@ -225,5 +226,24 @@ export class UrlRules {
225
226
  *
226
227
  * @return the registered [[UrlRule]]
227
228
  */
228
- when(matcher: any, handler: any, options: any): any;
229
+ when(
230
+ matcher: any,
231
+ handler: any,
232
+ options: any,
233
+ ): import("./url-rule.js").BaseUrlRule;
229
234
  }
235
+ /**
236
+ * Default rule priority sorting function.
237
+ *
238
+ * Sorts rules by:
239
+ *
240
+ * - Explicit priority (set rule priority using [[UrlRules.when]])
241
+ * - Rule type (STATE: 4, URLMATCHER: 4, REGEXP: 3, RAW: 2, OTHER: 1)
242
+ * - `UrlMatcher` specificity ([[UrlMatcher.compare]]): works for STATE and URLMATCHER types to pick the most specific rule.
243
+ * - Rule registration order (for rule types other than STATE and URLMATCHER)
244
+ * - Equally sorted State and UrlMatcher rules will each match the URL.
245
+ * Then, the *best* match is chosen based on how many parameter values were matched.
246
+ */
247
+ declare function defaultRuleSortFn(a: any, b: any): number;
248
+ import { UrlRuleFactory } from "./url-rule.js";
249
+ export {};
@@ -6,61 +6,58 @@ export class UrlService {
6
6
  /**
7
7
  * @param {import("../../services/location/location").LocationProvider} $locationProvider
8
8
  * @param {import("../../router/state/state-service.js").StateProvider} stateService
9
- * @param globals
9
+ * @param {import("../../router/globals.js").RouterGlobals} globals
10
10
  * @param {import("../../router/url/url-config.js").UrlConfigProvider} urlConfigProvider
11
11
  */
12
12
  constructor(
13
13
  $locationProvider: any,
14
14
  stateService: import("../../router/state/state-service.js").StateProvider,
15
- globals: any,
15
+ globals: import("../../router/globals.js").RouterGlobals,
16
16
  urlConfigProvider: import("../../router/url/url-config.js").UrlConfigProvider,
17
17
  );
18
- stateService: import("../../router/state/state-service.js").StateProvider;
18
+ /** @type {import("../../services/location/location").Location} */
19
+ $location: any;
19
20
  $locationProvider: any;
20
- $location: import("../../services/location/location.js").Location;
21
+ stateService: import("../../router/state/state-service.js").StateProvider;
21
22
  /** Provides services related to the URL */
22
23
  urlRuleFactory: UrlRuleFactory;
23
24
  /**
24
25
  * The nested [[UrlRules]] API for managing URL rules and rewrites
25
- *
26
- * See: [[UrlRules]] for details
27
26
  * @type {UrlRules}
28
27
  */
29
28
  rules: UrlRules;
30
29
  /**
31
30
  * The nested [[UrlConfig]] API to configure the URL and retrieve URL information
32
- *
33
- * See: [[UrlConfig]] for details
34
31
  * @type {import("./url-config.js").UrlConfigProvider}
35
32
  */
36
33
  config: import("./url-config.js").UrlConfigProvider;
37
34
  /** Creates a new [[Param]] for a given location (DefType) */
38
35
  paramFactory: ParamFactory;
36
+ _urlListeners: any[];
39
37
  /**
40
38
  * Gets the path part of the current url
41
39
  *
42
40
  * If the current URL is `/some/path?query=value#anchor`, this returns `/some/path`
43
41
  *
44
- * @return the path portion of the url
42
+ * @return {string} the path portion of the url
45
43
  */
46
- path: () => any;
44
+ getPath(): string;
47
45
  /**
48
46
  * Gets the search part of the current url as an object
49
47
  *
50
48
  * If the current URL is `/some/path?query=value#anchor`, this returns `{ query: 'value' }`
51
49
  *
52
- * @return the search (query) portion of the url, as an object
50
+ * @return {Object} the search (query) portion of the url, as an object
53
51
  */
54
- search: () => any;
52
+ getSearch(): any;
55
53
  /**
56
54
  * Gets the hash part of the current url
57
55
  *
58
56
  * If the current URL is `/some/path?query=value#anchor`, this returns `anchor`
59
57
  *
60
- * @return the hash (anchor) portion of the url
58
+ * @return {string} the hash (anchor) portion of the url
61
59
  */
62
- hash: () => string | import("../../services/location/location.js").Location;
63
- _urlListeners: any[];
60
+ getHash(): string;
64
61
  $get: (
65
62
  | string
66
63
  | ((
@@ -69,9 +66,8 @@ export class UrlService {
69
66
  ) => UrlService)
70
67
  )[];
71
68
  /**
72
- * @returns {boolean}
69
+ * @returns {string}
73
70
  */
74
- html5Mode(): boolean;
75
71
  baseHref(): string;
76
72
  _baseHref: string;
77
73
  /**
@@ -121,18 +117,13 @@ export class UrlService {
121
117
  * @param {string} [newUrl] The new value for the URL.
122
118
  * This url should reflect only the new internal [[path]], [[search]], and [[hash]] values.
123
119
  * It should not include the protocol, site, port, or base path of an absolute HREF.
124
- * @param {boolean} [replace] When true, replaces the current history entry (instead of appending it) with this new url
125
120
  * @param {any} [state] The history's state object, i.e., pushState (if the LocationServices implementation supports it)
126
121
  *
127
122
  * @return the url (after potentially being processed)
128
123
  */
129
- url(
130
- newUrl?: string,
131
- replace?: boolean,
132
- state?: any,
133
- ): string | import("../../services/location/location.js").Location;
124
+ url(newUrl?: string, state?: any): any;
134
125
  /**
135
- * @internal
126
+ * @private
136
127
  *
137
128
  * Registers a low level url change handler
138
129
  *
@@ -143,20 +134,19 @@ export class UrlService {
143
134
  * let deregisterFn = locationServices.onChange((evt) => console.log("url change", evt));
144
135
  * ```
145
136
  *
146
- * @param callback a function that will be called when the url is changing
147
- * @return a function that de-registers the callback
137
+ * @param {Function} callback a function that will be called when the url is changing
138
+ * @return {Function} a function that de-registers the callback
148
139
  */
149
- onChange(callback: any): () => any;
140
+ private onChange;
150
141
  /**
151
- * Gets the current URL parts
142
+ * Gets the current URL parts.
143
+ *
144
+ * Returns an object with the `path`, `search`, and `hash` components
145
+ * of the current browser location.
152
146
  *
153
- * This method returns the different parts of the current URL (the [[path]], [[search]], and [[hash]]) as a [[UrlParts]] object.
147
+ * @returns {import("../../services/location/interface.ts").UrlParts} The current URL's path, search, and hash.
154
148
  */
155
- parts(): {
156
- path: any;
157
- search: any;
158
- hash: string | import("../../services/location/location.js").Location;
159
- };
149
+ parts(): import("../../services/location/interface.ts").UrlParts;
160
150
  /**
161
151
  * Activates the best rule for the current URL
162
152
  *
@@ -196,9 +186,9 @@ export class UrlService {
196
186
  * });
197
187
  * ```
198
188
  *
199
- * @param enabled `true` or `false` to start or stop listening to URL changes
189
+ * @param {boolean} enabled `true` or `false` to start or stop listening to URL changes
200
190
  */
201
- listen(enabled: any): any;
191
+ listen(enabled: boolean): any;
202
192
  _stopListeningFn: any;
203
193
  /**
204
194
  * Matches a URL
@@ -209,7 +199,7 @@ export class UrlService {
209
199
  */
210
200
  match(url: any): any;
211
201
  update(read: any): void;
212
- location: string | import("../../services/location/location.js").Location;
202
+ location: any;
213
203
  /**
214
204
  * Internal API.
215
205
  *
@@ -228,7 +218,7 @@ export class UrlService {
228
218
  * ```js
229
219
  * matcher = $umf.compile("/about/:person");
230
220
  * params = { person: "bob" };
231
- * $bob = $urlService.href(matcher, params);
221
+ * $bob = $url.href(matcher, params);
232
222
  * // $bob == "/about/bob";
233
223
  * ```
234
224
  *
@@ -50,8 +50,55 @@ export class HttpProvider {
50
50
  * otherwise, returns the current configured value.
51
51
  */
52
52
  useApplyAsync: (value?: boolean | undefined) => boolean | any;
53
+ /**
54
+ * Array containing service factories for all synchronous or asynchronous {@link ng.$http $http}
55
+ * pre-processing of request or postprocessing of responses.
56
+ *
57
+ * These service factories are ordered by request, i.e. they are applied in the same order as the
58
+ * array, on request, but reverse order, on response.
59
+ *
60
+ * {@link ng.$http#interceptors Interceptors detailed info}
61
+ */
53
62
  interceptors: any[];
54
- xsrfTrustedOrigins: any[];
63
+ /**
64
+ * Array containing URLs whose origins are trusted to receive the XSRF token. See the
65
+ * {@link ng.$http#security-considerations Security Considerations} sections for more details on
66
+ * XSRF.
67
+ *
68
+ * **Note:** An "origin" consists of the [URI scheme](https://en.wikipedia.org/wiki/URI_scheme),
69
+ * the [hostname](https://en.wikipedia.org/wiki/Hostname) and the
70
+ * [port number](https://en.wikipedia.org/wiki/Port_(computer_networking). For `http:` and
71
+ * `https:`, the port number can be omitted if using th default ports (80 and 443 respectively).
72
+ * Examples: `http://example.com`, `https://api.example.com:9876`
73
+ *
74
+ * <div class="alert alert-warning">
75
+ * It is not possible to trust specific URLs/paths. The `path`, `query` and `fragment` parts
76
+ * of a URL will be ignored. For example, `https://foo.com/path/bar?query=baz#fragment` will be
77
+ * treated as `https://foo.com`, meaning that **all** requests to URLs starting with
78
+ * `https://foo.com/` will include the XSRF token.
79
+ * </div>
80
+ *
81
+ * @example
82
+ *
83
+ * ```js
84
+ * // App served from `https://example.com/`.
85
+ * angular.
86
+ * module('xsrfTrustedOriginsExample', []).
87
+ * config(['$httpProvider', function($httpProvider) {
88
+ * $httpProvider.xsrfTrustedOrigins.push('https://api.example.com');
89
+ * }]).
90
+ * run(['$http', function($http) {
91
+ * // The XSRF token will be sent.
92
+ * $http.get('https://api.example.com/preferences').then(...);
93
+ *
94
+ * // The XSRF token will NOT be sent.
95
+ * $http.get('https://stats.example.com/activity').then(...);
96
+ * }]);
97
+ * ```
98
+ *
99
+ * @type {string[]}
100
+ */
101
+ xsrfTrustedOrigins: string[];
55
102
  $get: (
56
103
  | string
57
104
  | ((
@@ -2,44 +2,57 @@
2
2
  * @returns
3
3
  */
4
4
  export function createHttpBackend(): (
5
- method: any,
6
- url: any,
7
- post: any,
8
- callback: any,
9
- headers: any,
10
- timeout: any,
11
- withCredentials: any,
12
- responseType: any,
13
- eventHandlers: any,
14
- uploadEventHandlers: any,
5
+ method: string,
6
+ url?: string,
7
+ post?: any,
8
+ callback?: (
9
+ arg0: number,
10
+ arg1: any,
11
+ arg2: string | null,
12
+ arg3: string,
13
+ arg4: string,
14
+ ) => void,
15
+ headers?: {
16
+ [x: string]: string;
17
+ },
18
+ timeout?: number | Promise<any>,
19
+ withCredentials?: boolean,
20
+ responseType?: XMLHttpRequestResponseType,
21
+ eventHandlers?: {
22
+ [x: string]: EventListener;
23
+ },
24
+ uploadEventHandlers?: {
25
+ [x: string]: EventListener;
26
+ },
15
27
  ) => void;
16
28
  /**
17
- * HTTP backend used by the {@link ng.$http service} that delegates to
29
+ * HTTP backend used by the `$http` that delegates to
18
30
  * XMLHttpRequest object and deals with browser incompatibilities.
19
- *
20
- * You should never need to use this service directly, instead use the higher-level abstractions:
21
- * {@link ng.$http $http}.
22
- *
23
- */
24
- /**
25
- * HTTP backend used by the {@link ng.$http service} that delegates to
26
- * XMLHttpRequest object and deals with browser incompatibilities.
27
- *
28
- * You should never need to use this service directly, instead use the higher-level abstractions:
29
- * {@link ng.$http $http}.
30
- *
31
+ * You should never need to use this service directly.
31
32
  */
32
33
  export class HttpBackendProvider {
33
- $get: (() => (
34
- method: any,
35
- url: any,
36
- post: any,
37
- callback: any,
38
- headers: any,
39
- timeout: any,
40
- withCredentials: any,
41
- responseType: any,
42
- eventHandlers: any,
43
- uploadEventHandlers: any,
44
- ) => void)[];
34
+ $get: () => (
35
+ method: string,
36
+ url?: string,
37
+ post?: any,
38
+ callback?: (
39
+ arg0: number,
40
+ arg1: any,
41
+ arg2: string | null,
42
+ arg3: string,
43
+ arg4: string,
44
+ ) => void,
45
+ headers?: {
46
+ [x: string]: string;
47
+ },
48
+ timeout?: number | Promise<any>,
49
+ withCredentials?: boolean,
50
+ responseType?: XMLHttpRequestResponseType,
51
+ eventHandlers?: {
52
+ [x: string]: EventListener;
53
+ },
54
+ uploadEventHandlers?: {
55
+ [x: string]: EventListener;
56
+ },
57
+ ) => void;
45
58
  }