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
vsavkin
81bf3f66ca
docs(router): rename global redirects into absolute redirects
2016-06-30 22:14:42 -07:00
PatrickJS
137fff9632
fix(router): remove private and internal annotations ( #9753 )
2016-06-30 19:39:13 -07:00
Rob Wormald
dabf214f17
fix(router): remove private and internal annotations ( #9745 )
2016-06-30 14:47:55 -07:00
vsavkin
fb2539e1d5
fix(router): remove the precompile warning
2016-06-30 14:33:04 -07:00
Alex Eagle
73f017bad9
fix(typescript): make router compile with typescript@next
...
fixes #9731
2016-06-30 11:51:52 -07:00
vsavkin
a3b90411aa
fix(router): fix RouterLinkActive to handle the case when the link has extra paths
2016-06-30 09:26:57 -07:00
vsavkin
5781b96490
fix(router): redirect should not add unnecessary brackets
2016-06-30 09:26:57 -07:00
vsavkin
3784696b9e
fix(router): make the contstructor of the router service public
2016-06-28 18:39:37 -07:00
vsavkin
8c45aebc18
fix(router): make router links work on non-a tags
2016-06-28 18:39:37 -07:00
vsavkin
296a447e3c
docs(router): add api docs
2016-06-28 14:49:29 -07:00
Igor Minar
24eb8389d2
fix: public api surface fixes + stability markers
...
- ts-api-guardian will now error if a new public symbol is added with a stability marker (`@stable`, `@experimental`, `@deprecated`)
- DomEventsPlugin and KeyEventsPlugin were removed from public api surface - these classes is an implementation detail
- deprecated BROWSER_PROVIDERS was removed completely
- `@angular/compiler` was removed from the ts-api-guardian check since this package shouldn't contain anything that users need to directly import
- the rest of the api surface was conservatively marked as stable or experimental
BREAKING CHANGES: DomEventsPlugin and KeyEventsPlugin previously exported from core are no longer public - these classes are implementation detail.
Previously deprecated BROWSER_PROVIDERS was completely removed from platform-browser.
Closes #9236
Closes #9235
Ref #9234
2016-06-28 07:39:40 -07:00
vsavkin
fcfddbf79c
feat(router): add pathMatch property to replace terminal
2016-06-27 20:21:30 -07:00
vsavkin
dc64e90ab9
feat(router): use componentFactoryResolver
2016-06-27 20:21:30 -07:00
vsavkin
f2f1ec0117
feat(router): implement data and resolve
2016-06-27 14:25:56 -07:00
Alex Eagle
e913d9954d
chore(typings): restrict Angular to es5+collections+promise
2016-06-27 13:58:59 -07:00
vsavkin
d20488752b
fix(router): top-levels do not work in ngIf
2016-06-27 13:34:54 -07:00
vsavkin
855f3afb28
fix(router): canceled navigations should return a promise that is resolved with false
2016-06-27 13:34:54 -07:00
vsavkin
3f44377f2f
fix(router): handle empty path with query params
2016-06-27 13:34:54 -07:00
vsavkin
90295e3252
fix(router): preserve fragment on initial load
2016-06-27 13:34:54 -07:00
vsavkin
327d04c9c6
chore(router): clang-format
2016-06-24 12:44:32 -07:00
vsavkin
54edce2bab
fix(router): wildcard don't get notified on url changes
2016-06-24 12:44:32 -07:00
vsavkin
1a145ac500
fix(router): default exact to false in routerLinkActiveOptions
2016-06-24 12:44:32 -07:00
vsavkin
41b781107b
fix(router): doen't throw on canDeactive when route hasn't advanced
2016-06-24 12:44:32 -07:00
vsavkin
fbd2dd9ca2
fix(router): handle path:'' redirects and matches
2016-06-24 11:39:41 -07:00
Jason Choi
22d8f73bc9
test: add public api golden files
...
Includes a few style fixes on "* as foo" imports.
2016-06-23 14:26:40 -07:00
ScottSWu
ae75e3640a
chore(lint): Added license headers to most TypeScript files
...
Relates to #9380
2016-06-23 09:47:54 -07:00
vsavkin
15911367a2
refactor(router): removes a circualr dep
2016-06-21 12:17:30 -07:00
vsavkin
8dd3f59c81
chore(router): changes the router setup to align with other modules
2016-06-21 12:17:30 -07:00
vsavkin
c9d28492b7
chore(router): remove lint and format tasks from router
2016-06-21 12:17:30 -07:00
vsavkin
92d8bf9619
feat(router): add support for componentless routes
2016-06-21 12:17:30 -07:00
vsavkin
bd2281e32d
fix(resolve): change resolve not to resolve root activate route
2016-06-21 12:17:30 -07:00
vsavkin
0c50bc6449
fix(router): url serializer should handle segments without primary children
2016-06-21 12:17:30 -07:00
Dimitrios Loukadakis
f6b75f56ad
fix(router): typo in starts with slash validation error
2016-06-21 12:17:30 -07:00
vsavkin
280540e4a2
fix(router): change serialize not to require parenthesis in query string to be encoded
2016-06-21 12:17:30 -07:00
vsavkin
ca23b4c55f
feat(router): add route config validation
2016-06-21 12:17:30 -07:00
vsavkin
7e12208ca6
feat(router): do not support paths starting with /
2016-06-21 12:17:30 -07:00
vsavkin
2773281338
feat(router): drop index property
...
Use path: '/' instead of 'index: true'
2016-06-21 12:17:30 -07:00
vsavkin
f8e8d22e4e
fix(router): stringify positional parameters when using routerLink
2016-06-21 12:17:30 -07:00
vsavkin
4450e7b246
cleanup(router): enable noImplicitAny and noImplicntReturns
2016-06-21 12:17:30 -07:00
vsavkin
cdbf67ee05
test(router): add a test checking that guards work for child routes
2016-06-21 12:17:30 -07:00
Dimitrios Loukadakis
9a67f38728
fix(router): port fixes done on angular current router to the new one
...
The bugs were fixed on current angular router in the following commits:
angular/angular@b2a7fd05cb
angular/angular@fa2ce8100b
angular/angular@595bcdd1ac
Closes #12
2016-06-21 12:17:30 -07:00
vsavkin
25560ed048
feat(router): implement RouterLinkActive
2016-06-21 12:17:30 -07:00
vsavkin
2aa19fd078
feat(router): support navigating by url tree
2016-06-21 12:17:30 -07:00
vsavkin
b3e801ed9e
feat(router): make it work with TypeScript 1.8
2016-06-21 12:17:30 -07:00
vsavkin
3683fb6886
refactor(router): minor refactoring
2016-06-21 12:17:30 -07:00
vsavkin
3bd0ce291e
feat(router): mark the index property as deprecated
...
Use {path: '', component: A} instead of {index: true, component: A}
}#
2016-06-21 12:17:30 -07:00
vsavkin
523fc5536c
fix(router): fix Params type to allow passing any value types when calling router.navigate
2016-06-21 12:17:30 -07:00
Rob Wormald
15f27b5455
fix(providers): make providers static analysis friendly
2016-06-21 12:17:30 -07:00
vsavkin
127401598b
feat(router): implement terminal
2016-06-21 12:17:30 -07:00
vsavkin
f0a6329005
fix(router): fixes a typo
2016-06-21 12:17:30 -07:00
vsavkin
2982892acc
cleanup(router): clang-format
2016-06-21 12:17:30 -07:00
vsavkin
9de56481f1
feat(router): add enableTracing option
2016-06-21 12:17:30 -07:00
vsavkin
777eb2f159
feat(router): emit an event when routes are recognized
2016-06-21 12:17:30 -07:00
vsavkin
05eebe0fed
feat(router): provide meaningful toString impls
2016-06-21 12:17:30 -07:00
vsavkin
1f3f8ef6c8
fix(router): fix nested deactivation
2016-06-21 12:17:30 -07:00
vsavkin
2d4be1c9eb
fix(router): init is not triggered in certain scenarios
2016-06-21 12:17:30 -07:00
vsavkin
2fef30f619
fix(router): make stringify handle nulls
2016-06-21 12:17:30 -07:00
vsavkin
545caab433
fix(router): use bootstrap listener to trigger initial navigation
2016-06-21 12:17:30 -07:00
vsavkin
3f90659cc1
fix(router): supports index routes with path
2016-06-21 12:17:30 -07:00
vsavkin
131914ac94
fix(router): fix lazy loading issues
2016-06-21 12:17:30 -07:00