vsavkin
2fc5c57b31
feat(router): add support for custom error handlers
2016-08-26 10:32:35 -07:00
vsavkin
93f323cfa2
refactor(router): make RouterLink and RouterLinkWithHref create url in a similar way
2016-08-26 10:32:35 -07:00
vsavkin
bb9dfbc578
fix(router): use encodeUri/decodeUri to encode fragment
2016-08-26 10:32:35 -07:00
vsavkin
0bb516fae2
fix(router): fix the order of guards, so canActivateChild runs before canActivate
2016-08-26 10:32:35 -07:00
vsavkin
2ffecc0e14
fix(router): update the location before activating components
2016-08-26 10:32:35 -07:00
Igor Minar
ea2e5521e8
refactor: replace any[] with Provider[] where possible
2016-08-25 13:29:03 -07:00
Victor Savkin
f1ce7607a6
fix(router): canLoad should cancel a navigation instead of failing it ( #11001 )
2016-08-24 10:20:44 -07:00
Alex Rickabaugh
5ddecb18a7
feat(router): throw a helpful error when misusing forRoot() from a lazy module. ( #10996 )
2016-08-23 11:57:58 -07:00
Brandon
cc0e3d2296
docs(router): Added additional router documentation including cheatsheet updates ( #10802 )
2016-08-19 15:48:09 -07:00
Victor Savkin
00e157dc3b
refactor(router): update stability labels ( #10902 )
2016-08-17 15:35:30 -07:00
Trotyl Yu
2451eb9ded
docs(router): Explanation in code should be comment ( #10790 )
2016-08-16 19:38:23 -07:00
Trotyl Yu
ed639784d4
docs(router): Fix mismatching of code and comment ( #10791 )
2016-08-16 19:37:53 -07:00
Victor Savkin
24e280a21a
refactor(router): remove deprecated apis ( #10658 )
2016-08-16 13:40:28 -07:00
Victor Savkin
6b26102931
feat(router): extend support for lazy loading children ( #10705 )
2016-08-15 21:11:09 -07:00
Rob Wormald
73c0a9daaf
fix(router): make routerLinkActiveOptions public ( #10758 )
2016-08-15 00:39:59 -07:00
Victor Savkin
04c6b2fe85
fix(router): location changes and redirects break the back button ( #10742 )
2016-08-12 14:30:51 -07:00
Victor Savkin
cc6749c158
fix(router): lazy loading keeps refetching modules ( #10707 )
2016-08-11 22:59:53 -07:00
vsavkin
947f9c3f56
feat(router): make router.config public
2016-08-11 22:56:10 -07:00
Miško Hevery
b96869afd2
refactor(Type): merge Type and ConcreType<?> into Type<?> ( #10616 )
...
Closes #9729
BREAKING CHANGE:
`Type` is now `Type<T>` which means that in most cases you have to
use `Type<any>` in place of `Type`.
We don't expect that any user applications use the `Type` type.
2016-08-10 18:21:28 -07:00
Victor Savkin
6db27153ef
Router Fixes ( #10579 )
...
* fix(router): copy over data during data resolution
* fix(router): components instantiated in lazy-loaded modules should use location's injector
2016-08-10 15:53:57 -07:00
Victor Savkin
c7f3aa71fb
fix(router): support relative param-only navigation ( #10613 )
2016-08-09 17:03:17 -07:00
vsavkin
1a41bd1ca4
feature(router): add route.root returning the root of router state
2016-08-08 09:15:59 -07:00
vsavkin
5a99393355
fix(router): route.parent should work for secondary children
2016-08-08 09:15:59 -07:00
vsavkin
afcb3c0035
fix(router): support outlets in non-absolute positions
2016-08-08 09:15:59 -07:00
vsavkin
d2d36c61f3
fix(router): fix matrix params check to handle 'special' objects
2016-08-08 09:15:59 -07:00
vsavkin
c586656d43
fix(router): fix type definition
2016-08-05 13:12:21 -07:00
vsavkin
3a307c2794
fix(router): absolute redirects should work with lazy loading
2016-08-05 13:12:21 -07:00
vsavkin
4f17dbc721
fix(router): add segmentPath to the link DSL
2016-08-05 13:12:21 -07:00
Jason Choi
83e2d3d1cb
refactor(RegExpWrapper): remove the facade ( #10512 )
2016-08-05 09:50:49 -07:00
Brandon
63b82cd730
feat(router): Allow navigation without updating the URL ( #9608 )
2016-08-04 11:46:09 -07:00
Victor Savkin
2eda7a5293
fix(router): provideRouter should use provideRoutes ( #10488 )
2016-08-03 19:35:12 -07:00
vsavkin
422d380b3e
feat(router): add queryParams and fragment to every activated route
2016-08-03 15:30:03 -07:00
vsavkin
550ab31bd0
feat(router): add parent, children, firstChild to ActivatedRoute
2016-08-03 15:30:03 -07:00
vsavkin
5fceb21549
refactor(router): remove dead code
2016-08-03 15:30:03 -07:00
vsavkin
29caa37943
feat(router): support sibling modules providing routes
2016-08-02 13:31:15 -07:00
Tobias Bosch
3d53b33391
chore: update public api and integrate minor review comments
2016-08-02 11:23:26 -07:00
Tobias Bosch
af2e80e068
refactor(core): introduce APP_BOOTSTRAP_LISTENER multi provider
...
Using the `registerBootstrapListener` easily lead to race condition
and needed dependencies on `ApplicationRef`.
BREAKING CHANGE:
- `ApplicationRef.registerBootstrapListener` is deprecated. Provide a multi
provider for the new token `APP_BOOTSTRAP_LISTENER` instead.
2016-08-02 11:23:26 -07:00
Tobias Bosch
8e6091de6c
refactor(core): use ngOnDestroy in providers
...
Note about the addition of `beforeEach(fakeAsync(inject(…))))` in some tests:
`ApplicationRef` is now using `ngOnDestroy` and there is eager,
including all of its dependencies which contain `NgZone`.
The additional `fakeAsync` in `beforeEach` ensures that `NgZone`
uses the fake async zone as parent, and not the root zone.
BREAKING CHANGE (via deprecations):
- `ApplicationRef.dispose` is deprecated. Destroy the module that was
created during bootstrap instead by calling `NgModuleRef.destroy`.
- `AplicationRef.registerDisposeListener` is deprecated.
Use the `ngOnDestroy` lifecycle hook for providers or
`NgModuleRef.onDestroy` instead.
- `disposePlatform` is deprecated. Use `destroyPlatform` instead.
- `PlatformRef.dipose()` is deprecated. Use `PlatformRef.destroy()`
instead.
- `PlatformRef.registerDisposeListener` is deprecated. Use
`PlatformRef.onDestroy` instead.
- `PlaformRef.diposed` is deprecated. Use `PlatformRef.destroyed`
instead.
2016-08-02 11:23:26 -07:00
vsavkin
3e377f520e
fix(router): make an outlet to unregister itself when it is removed from the dom
2016-08-01 16:56:38 -07:00
vsavkin
8dc82a0080
fix(router): fix offline compilation by exporting provideLocationStrategy
2016-08-01 16:23:28 -07:00
vsavkin
4624a35845
docs(router): fixes api docs
2016-08-01 16:23:28 -07:00
Tobias Bosch
93ade740e2
fix(router): configure DI correctly when using the old provideRouter function
2016-08-01 02:35:41 -07:00
Tobias Bosch
a46437c57d
refactor(core): fix bootstrapModule regarding zones and initializers ( #10383 )
...
This makes `bootstrapModuleFactory` wait for promises
returned by `APP_INITIALIZER`s, also making `bootstrapModuleFactory` async.
I.e. now `bootstrapModule` and `bootstrapModuleFactory` behave in the
same way.
This ensures that all code from module instantiation, to creating
`ApplicationRef`s as well as calling `APP_INITIALIZERS` is run
in the Angular zone.
This also moves the invocation of the initializers from the `ApplicationRef`
constructor into the `bootstrapModuleFactory` call, allowing initializers
to get a hold of `ApplicationRef` (see #9101 ).
Fixes #9101
Fixes #10363
Fixes #10205
2016-08-01 02:12:59 -07:00
Suguru Inatomi
0d6cc17252
fix(UrlParser): stop setting default value 'true' ( #10399 )
2016-07-30 14:34:03 -07:00
vsavkin
3c3e9ddb10
feat(router): add a validation to make sure pathMatch is set correctly
2016-07-29 12:27:43 -07:00
vsavkin
5162fb6d52
feat(router): add isActive to router
2016-07-29 12:27:43 -07:00
vsavkin
2fdb39e60a
feat(router): activateroute should expose its route config
2016-07-29 12:27:43 -07:00
vsavkin
81d27daf0d
fix(router): update dts files
2016-07-28 15:03:19 -07:00
vsavkin
bb8b82b3f5
fix(router): relax type defintion of Route to improve dev ergonomics
2016-07-28 15:03:19 -07:00
vsavkin
72da547d6a
fix(router): updates router module to be offline-compilation friendly
2016-07-28 15:03:19 -07:00
vsavkin
9d9e9c6ff1
refactor(router): take advantage of the new way of configuring modules
2016-07-27 10:24:29 -07:00
vsavkin
62e7c0f464
feat(router): implement canLoad
2016-07-26 14:39:02 -07:00
Tobias Bosch
6f4e49ed53
refactor(core): rename precompile into entryComponents.
...
Part of #10043
BREAKING CHANGE:
- `@Component.precompile` was renamed to `@Component.entryComponents`
(old property still works but is deprecated)
- `ANALYZE_FOR_PRECOMPILE` was renamed to `ANALYZE_FOR_ENTRY_COMPONENTS` (no deprecations)
2016-07-26 07:04:36 -07:00
Tobias Bosch
46b212706b
refactor(core): change module semantics
...
This contains major changes to the compiler, bootstrap of the platforms
and test environment initialization.
Main part of #10043
Closes #10164
BREAKING CHANGE:
- Semantics and name of `@AppModule` (now `@NgModule`) changed quite a bit.
This is actually not breaking as `@AppModules` were not part of rc.4.
We will have detailed docs on `@NgModule` separately.
- `coreLoadAndBootstrap` and `coreBootstrap` can't be used any more (without migration support).
Use `bootstrapModule` / `bootstrapModuleFactory` instead.
- All Components listed in routes have to be part of the `declarations` of an NgModule.
Either directly on the bootstrap module / lazy loaded module, or in an NgModule imported by them.
2016-07-26 07:04:10 -07:00
vsavkin
d15a1d64e1
fix(router): make router provides work with cli and offline compilation
2016-07-25 18:04:22 -07:00
vsavkin
6f68330fa5
feat(router): rename UrlPathWithParams into UrlSegment
...
BREAKING CHANGE:
UrlPathWithParams => UrlSegment
UrlSegment => UrlSegmentGroup
2016-07-25 12:15:07 -07:00
vsavkin
2b63330a36
fix(router): handle when both primary and secondary are empty-path and primary has a child
2016-07-22 18:51:35 -07:00
vsavkin
06e4ca4bb3
fix(router): advance query params and fragment after advanced routes
2016-07-22 18:51:35 -07:00
vsavkin
43437c175a
fix(router): handle url fragments when no url segments present
2016-07-22 18:51:35 -07:00
vsavkin
8d90a5a4cf
fix(router): router link active should take all descendants into account
2016-07-22 18:51:35 -07:00
vsavkin
93a4ca652a
refactor(router): renames PRIMARY_OUTLET into primary
2016-07-22 18:51:35 -07:00
vsavkin
27b87ef535
fix(router): throw when cannot parse a url
2016-07-21 16:14:55 -07:00
vsavkin
44709e0dca
fix(router): handle urls with only secondary top-level segments
2016-07-21 16:14:44 -07:00
vsavkin
db54a84d14
fix(router): routerLinkActive should only set classes after the router has successfully navigated
2016-07-20 17:51:21 -07:00
vsavkin
eb6ff65af7
refactor(router): makes an error message clearer
2016-07-20 14:47:51 -07:00
vsavkin
23ee29b6a2
fix(router): navigation should not preserve query params and fragment by default
...
BREAKING CHANGE
Previously both imperative (router.navigate) and declarative (routerLink) navigations
would preserve the current query params and fragment. This behavior turned out to
be confusing. This commit changes it.
Now, neither is preserved by default. To preserve them, you need to do the following:
router.naviage("newUrl", {preserveQueryParams: true, preserveFragment: true})
<a routerLink="newUrl" preserveQueryParams preserveFragment></a>
2016-07-20 14:30:04 -07:00
Suguru Inatomi
450f61d384
docs(router): fix provider token ( #10177 )
2016-07-20 07:27:09 -07:00
vsavkin
51e661eb74
fix(router): export navigation extras
2016-07-18 17:42:04 -07:00
vsavkin
921a17960c
fix(router): lazy loaded components should use loaded injector
2016-07-18 17:42:04 -07:00
vsavkin
7a4f6621ed
fix(router): handle lastPathIndex of empty-path routes
2016-07-18 17:42:04 -07:00
vsavkin
1803ed2512
fix(router): fix rollup config to properly set up rxjs
2016-07-15 16:27:54 -07:00
vsavkin
f08060b0b0
fix(router): back button does not work in IE11 and Safari
2016-07-15 14:59:59 -07:00
vsavkin
b77a4a40a4
fix(router): expose initalNavigation and dispose so they can be used with webworkers
2016-07-14 17:29:01 -07:00
vsavkin
0668ba50e8
fix(router): freeze params and queryParams to prevent common source of bugs
2016-07-14 13:33:05 -07:00
Hiroto Fukui
aa88438b54
feat(Router): add extra validation for when route was passed as Array ( #9942 )
2016-07-14 08:28:31 -07:00
vsavkin
85be729c70
fix(router): lazily-loaded modules should use loaded injectors instead of the root one
2016-07-13 18:25:30 -07:00
vsavkin
a5dc5705a3
feat(router): guards and data resolvers can now return promises
2016-07-13 18:25:30 -07:00
vsavkin
9e3d13f61f
feat(router): add support for canActivateChild
2016-07-13 18:25:30 -07:00
vsavkin
0426325ef7
fix(router): merge SystemJsAppModuleFactoryLoader and SystemJsAllModuleLoader
2016-07-13 11:16:46 -07:00
vsavkin
0b54e3cf0a
fix(router): do not fire events on 'duplicate' location events
2016-07-13 11:16:46 -07:00
vsavkin
5cf58971f1
fix(router): update current state and url before activating components
2016-07-13 11:16:46 -07:00
choeller
a46291b67c
docs(router) Added @Injectable decorators to Router API examples ( #10033 )
2016-07-13 07:27:32 -07:00
Codebacca
4ac76ca281
docs(router): fix syntax in code example of comment block ( #10026 )
2016-07-13 07:26:26 -07:00
vsavkin
ded518d47f
feat(router): update routerLink DSL to handle aux routes
2016-07-12 11:44:55 -07:00
LongYinan
61e18434d3
refactor(router): not use reserved words as variable ( #9941 )
2016-07-11 10:53:29 -07:00
vsavkin
245b0910ed
feat(router): add activate and deactivate events to RouterOutlet
2016-07-08 15:01:52 -07:00
vsavkin
a77db44129
feat(router): empty-path routes should inherit matrix params
2016-07-08 14:48:59 -07:00
vsavkin
34b3c534e7
fix(router): disallow root segments with matrix params
2016-07-08 14:47:55 -07:00
Patrice Chalin
749dec7dfb
doc(api): fix invalid doc links ( #9873 )
...
Errors were reported during API doc generation.
2016-07-07 23:02:35 -07:00
vsavkin
96a9e66616
feat(router): add the ANALYZE_FOR_PRECOMPILE provider to make dev ergonomics better
2016-07-07 18:07:10 -07:00
vsavkin
46e105f3ab
fix(router): encode/decode params and path segments
2016-07-07 17:33:42 -07:00
vsavkin
f7a0e9ecb6
fix(router): fix RouterLinKActive to work with RouterLink
2016-07-07 17:33:42 -07:00
vsavkin
72544ba551
feat(router): add RouterTestModule
2016-07-07 14:28:01 -07:00
vsavkin
c43dd5a655
refactor(router): renamed RouterAppModule into RouterModule
2016-07-07 14:28:01 -07:00
vsavkin
37e6da6dfb
refactor(router): clean up naming
2016-07-06 16:19:52 -07:00
vsavkin
8aa2a0c1b2
feat(router): add RouterAppModule
2016-07-06 16:00:40 -07:00
vsavkin
6bfd514caf
fix(router): remove a circular dep
2016-07-06 14:38:05 -07:00
vsavkin
8ebb8e44c8
feat(router): add support for lazily loaded modules
2016-07-06 14:38:05 -07:00
vsavkin
0c65d5cf2b
fix(router): handle router outlets in ngIf
2016-06-30 22:14:42 -07:00
vsavkin
f65ebec3ed
fix(router): update links when query params change
2016-06-30 22:14:42 -07:00