Tobias Bosch
f2bbef3e33
fix(core): allow to query content of templates that are stamped out at a different place
...
Previously, if a `TemplateRef` was created in a `ViewContainerRef`
at a different place, the content was not query able at all.
With this change, the content of the template can be queried
as if it was stamped out at the declaration place of the template.
E.g. in the following example, the `QueryList<ChildCmp>` will
be filled once the button is clicked.
```
@Component({
selector: ‘my-comp’,
template: ‘<button #vc (click)=“createView()”></button>’
})
class MyComp {
@ContentChildren(ChildCmp)
children: QueryList<ChildCmp>;
@ContentChildren(TemplateRef)
template: TemplateRef;
@ViewChild(‘vc’, {read: ViewContainerRef})
vc: ViewContainerRef;
createView() {
this.vc.createEmbeddedView(this.template);
}
}
@Component({
template: `
<my-comp>
<template><child-cmp></child-cmp></template>
</my-comp>
`
})
class App {}
```
Closes #12283
Closes #12094
2016-11-04 10:50:27 -07:00
Tobias Bosch
e3687706c7
refactor(compiler): minor cleanup
2016-11-03 16:29:51 -07:00
Tobias Bosch
9c23884da4
perf(compiler): introduce direct rendering
...
This allows to attach / detach embedded views and projected nodes
in a faster way.
2016-11-03 16:29:51 -07:00
Tobias Bosch
d708a8859c
perf(platform-browser): don’t use `DomAdapter` any more
...
But use the DOM apis directly.
This also creates a separate `ServerRenderer` implementation
for `platform-server` as it previously reused the `BrowserRenderer`.
2016-11-03 16:29:51 -07:00
gaohailang
69f006cd89
docs(change_detection): fix typo(ChangeDetectorStatus enum comment CheckedOnce -> CheckOnce) ( #12683 )
2016-11-03 11:23:20 -07:00
Tobias Bosch
1a069e8372
refactor(compiler): cleanups
2016-11-02 20:58:48 -07:00
Tobias Bosch
0fc11a43f1
perf(core): use `array.push` / `array.pop` instead of `splice` if possible
2016-11-02 20:58:48 -07:00
Tobias Bosch
0e3d655220
refactor(compiler): remove view factories, use view classes directly
2016-11-02 20:58:48 -07:00
Tobias Bosch
7c5cc9bc41
refactor(compiler): initialize `RenderComponentType` eagerly
...
This moves the usage of `APP_ID` into the `DomRenderer`.
2016-11-02 20:58:48 -07:00
Tobias Bosch
5f1dddc5d0
refactor(compiler): cleanups
2016-11-02 17:06:27 -07:00
Tobias Bosch
20a4f9923f
refactor(compiler): remove `view.parentInjector`
2016-11-02 17:06:27 -07:00
Tobias Bosch
e7c00be19d
refactor(compiler): rename `AppElement` into `ViewContainer`
2016-11-02 17:06:27 -07:00
Tobias Bosch
74ede9aa9b
refactor(core): don’t store view factory in `TemplateRef`
...
Instead, generate `createEmbeddedView`.
2016-11-02 17:06:27 -07:00
Tobias Bosch
d1035da85c
refactor(compiler): don’t use `AppElement`s for creating component views
2016-11-02 17:06:27 -07:00
Tobias Bosch
13533d2a30
refactor(compiler): remove `AppElement.initComponent`
2016-11-02 17:06:27 -07:00
Tobias Bosch
6fda97287e
fix(compiler): support multiple components in a view container
2016-11-01 14:21:40 -07:00
Tobias Bosch
234c5599f1
refactor(compiler): remove unused constructor query support
2016-11-01 11:29:15 -07:00
Tobias Bosch
f6710fefeb
refactor(compiler): make `view.disposable` array null if empty
2016-11-01 11:29:15 -07:00
Tobias Bosch
bda1909ede
refactor(compiler): remove `view.rootNodes` and `view.projectableNodes`
...
They are replaced by generated visitor functions `view.visitRootNodes` / `view.visitProjectableNodes`.
2016-11-01 11:29:15 -07:00
Tobias Bosch
b3e3cd3add
refactor(compiler): inline `view.contentChildren`
2016-11-01 11:29:14 -07:00
Tobias Bosch
e5fdf4c70a
refactor(compiler): inline view.viewChildren in generated code
2016-11-01 11:29:14 -07:00
Tobias Bosch
97471d74b6
refactor(compiler): remove unused `subscriptions` in view
2016-11-01 11:29:14 -07:00
Tobias Bosch
642c1db9ef
fix(compiler): Don’t throw on empty property bindings
...
Closes #12583
2016-10-31 14:43:50 -07:00
Thomas Shafer
7c16ef942e
feat(core): add the find method to QueryList
2016-10-28 15:34:47 -07:00
Thomas Shafer
a318b57257
refactor(core): removed extraneous interface from QueryList test
2016-10-28 15:34:47 -07:00
Tobias Bosch
e391cacdf9
fix(compiler): don’t double bind functions
...
This fixes a performance regressions introduced by 178fb79b5c
.
Also makes properties in the directive wrapper private
so that closure compiler can minify them better.
2016-10-28 11:17:12 -07:00
Tobias Bosch
32feb8a532
refactor(compiler): generate host listeners in DirectiveWrappers
...
Part of #11683
2016-10-27 16:09:01 -07:00
Tobias Bosch
178fb79b5c
refactor(compiler): move host properties into DirectiveWrapper
...
Part of #11683
2016-10-26 14:32:24 -07:00
Tobias Bosch
5a7a58b1e0
refactor(compiler): make arguments in `InlineArray` optional.
2016-10-26 14:32:24 -07:00
Tobias Bosch
fe299f4dfc
refactor(compiler): minor cleanups
2016-10-26 14:32:24 -07:00
Tobias Bosch
faa3478514
refactor(compiler): set element attributes via one call
...
This makes the cost of using directives that have host attributes
smaller.
Part of #11683
2016-10-26 14:32:23 -07:00
Victor Berchet
57051f01ce
refactor: remove most facades ( #12399 )
2016-10-21 15:14:44 -07:00
Tobias Bosch
867494a060
fix(compiler): don't access view local variables nor pipes in host expressions ( #12396 )
...
Fixes #12004
Closes #12071
2016-10-20 15:24:58 -07:00
Tobias Bosch
b0a03fcab3
refactor(compiler): introduce directive wrappers to generate less code
...
- for now only wraps the `@Input` properties and calls
to `ngOnInit`, `ngDoCheck` and `ngOnChanges` of directives.
- also groups eval sources by NgModule.
Part of #11683
2016-10-20 10:41:43 -07:00
Victor Berchet
76dd026447
refactor: remove some facades ( #12335 )
2016-10-19 13:42:39 -07:00
Matias Niemelä
6e5f8b59b3
fix(animations): generate aot code for animation trigger output events ( #12291 )
...
Closes #11707
Closes #12291
2016-10-18 17:16:51 -07:00
Victor Berchet
38e2203b24
refactor(core): delete unused reflector code
2016-10-17 23:17:34 -07:00
Victor Berchet
bd1dcb5f11
fix(core): fix decorator defalut values
2016-10-17 23:17:34 -07:00
Victor Berchet
3993279527
fix(core): fix property decorators
...
fixes #12224
2016-10-17 23:17:34 -07:00
Victor Berchet
bf1e2613b2
refactor(core): cleanup decorators
2016-10-17 23:17:34 -07:00
Victor Berchet
f7db0668d1
refactor(core): simplify & cleanup reflection
2016-10-17 23:17:34 -07:00
Matias Niemelä
33c8948fd3
refactor(animations): ensure animation data-structures are created only when used
...
Closes #12250
2016-10-14 15:43:41 -07:00
Victor Berchet
7787771aba
refactor(core): cleanup decorators.ts ( #12161 )
2016-10-11 15:47:20 -07:00
Victor Berchet
e6e007e2f1
refactor(core): cleanup SpyObject ( #12221 )
2016-10-11 15:44:48 -07:00
Matias Niemelä
91dd138fa5
docs(animations): document :enter and :leave transition aliases ( #12222 )
2016-10-11 15:44:38 -07:00
Victor Berchet
d972d82354
refactor: simplify `isPresent(x) ? x : y` to `x || y` ( #12166 )
...
Closes #12166
2016-10-10 09:20:58 -07:00
Victor Berchet
afb4bd9ef6
refactor(NgZone): merge NgZoneImpl and NgZone ( #12104 )
2016-10-06 15:23:37 -07:00
Victor Berchet
0254ce1f6c
refactor(core): simplify Reflector code, add types ( #12099 )
2016-10-06 15:11:16 -07:00
Alex Eagle
8c975ed156
refactor(facade): inline StringWrapper ( #12051 )
2016-10-06 15:10:27 -07:00
Victor Berchet
cf269d9ff4
refactor: add license header to JS files & format files ( #12081 )
2016-10-04 20:39:20 -07:00
Victor Berchet
50c37d45dc
refactor: simplify arrow functions ( #12057 )
2016-10-04 15:57:37 -07:00
Chuck Jazdzewski
43d3a84df3
Revert "refactor: add license header to JS files & format files ( #12035 )"
...
This reverts commit 8310c91823
.
2016-10-04 14:06:41 -07:00
Victor Berchet
8310c91823
refactor: add license header to JS files & format files ( #12035 )
2016-10-04 13:15:49 -07:00
Alex Eagle
b64b5ece65
refactor(facade): Remove most of StringMapWrapper facade. ( #12022 )
...
This change mostly automated by
12012b07a2
with some manual fixes.
2016-10-03 16:46:05 -07:00
Ben Elliott
1cf5f5fa38
docs(NgModule): Fixed docs for NgModule.entryComponents ( #12006 )
...
* docs(NgModule): Corrected the wording of the documentation of `entryComponents`, fixed some minor grammar issues
* docs(NgModule): Remove redundant ComponentFactory mentions
* docs(NgModule): Restore ComponentFactory/ComponentResolver links
2016-10-03 10:19:03 -07:00
Alex Eagle
0286956107
refactor(facade): Inline isBlank called with object-type argument ( #11992 )
2016-09-30 09:26:53 -07:00
Matias Niemelä
e884f4854d
feat(animations): provide aliases for :enter and :leave transitions ( #11991 )
2016-09-30 09:15:56 -07:00
Alex Eagle
41c8c30973
chore(lint): remove unused imports ( #11923 )
...
This was done automatically by tslint, which can now fix issues it finds.
The fixer is still pending in PR https://github.com/palantir/tslint/pull/1568
Also I have a local bugfix for https://github.com/palantir/tslint/issues/1569
which causes too many imports to be deleted.
2016-09-27 17:12:25 -07:00
Marc Laval
61129fa12d
fix(compiler): move detection of unsafe properties for binding to ElementSchemaRegistry ( #11378 )
2016-09-27 17:10:02 -07:00
Victor Berchet
425c1e6042
refactor: remove dead code
2016-09-27 16:13:09 -07:00
Victor Berchet
58605cf350
refactor(facade): remove useless facades
2016-09-27 16:13:09 -07:00
Victor Berchet
33340dbbd1
docs: remove outdated docs ( #11875 )
2016-09-24 08:23:28 +09:00
Victor Berchet
9be895b6da
docs(ExceptionHandler): fix API docs ( #11772 )
...
fixes #11769
2016-09-24 07:05:43 +09:00
Matias Niemelä
f1b6c6efa1
refactor(animations): ensure animation input/outputs are managed within the template parser ( #11782 )
...
Closes #11782
Closes #11601
Related #11707
2016-09-24 05:37:04 +09:00
Victor Berchet
136621ebc9
docs(Component): API docs for .encapsulation and .interpolation
2016-09-22 11:01:16 -07:00
Victor Berchet
f23b22a0f4
refactor: misc cleanup
2016-09-22 11:01:16 -07:00
Igor Minar
3a6fcee0e6
docs(core): mark TestBed as stable api and add preliminary docs ( #11767 )
...
TestBed was accidentaly ommited from the 'stable' api list during the API sweep before final. We do consider it to be stable.
2016-09-22 10:32:17 -07:00
Victor Berchet
c041b93418
refactor(TemplateParser): clearer error message for on* binding ( #11802 )
...
fixes #11756
2016-09-22 10:31:18 -07:00
Chuck Jazdzewski
131626fc61
fix(compiler): Safe property access expressions work in event bindings ( #11724 )
2016-09-20 14:54:53 -07:00
Victor Berchet
671f73448c
refactor: misc cleanup ( #11654 )
2016-09-19 17:15:57 -07:00
Victor Berchet
0dc15eb64a
fix(ContentChild): query descendants by default
...
fixes #1645
2016-09-19 10:42:46 -07:00
Victor Berchet
cba885a1fb
refactor: code cleanup
2016-09-19 10:42:46 -07:00
Patrice Chalin
89802316b9
docs(injector): API docs - remove lone code-block backticks ( #11653 )
...
The triple backticks in the markdown of the API entry are unbalanced.
2016-09-18 16:04:04 -07:00
Victor Berchet
54b41f57be
docs(Host): fix the API example ( #11684 )
...
fixes #11681
2016-09-18 15:56:13 -07:00
Jason Choi
df4254ae89
refactor(facade): move isPromise to core private ( #10573 )
2016-09-18 15:55:08 -07:00
Igor Minar
cb657c4b55
docs: update descriptions in package.jsons
2016-09-14 16:44:39 -07:00
vsavkin
42f60ca303
docs(core): update dts file
2016-09-14 15:27:33 -07:00
vsavkin
e33037a2f1
docs(core): docs for Directive and Component
2016-09-14 15:27:33 -07:00
vsavkin
003294d5df
docs(core): fix examples
2016-09-14 14:53:30 -07:00
vsavkin
785292f44f
chore(core): reexport query metadata decorators
2016-09-14 14:53:30 -07:00
vsavkin
096ae7c404
docs(core): updates query decorator docs
2016-09-14 14:53:30 -07:00
Alex Eagle
5fad37df69
Revert "chore(core): update public api file"
...
This reverts commit 727c2b38a4
.
Revert "docs(core): updates query decorator docs"
This reverts commit b6287ccc51
.
Revert "docs(core): extract how to examples"
This reverts commit 69e8ace884
.
2016-09-14 13:34:25 -07:00
vsavkin
b6287ccc51
docs(core): updates query decorator docs
2016-09-14 13:22:09 -07:00
Tobias Bosch
0a2132ef10
docs(di): update docs on di
2016-09-14 11:57:31 -07:00
Tobias Bosch
d299ce4bcf
docs(lifecycle): update docs for lifecycle hooks
2016-09-14 11:51:03 -07:00
vsavkin
7ac47acc1c
docs(core): updates docs for query metadata
2016-09-13 11:28:12 -07:00
Tobias Bosch
42a287fabf
fix(core): make `name` in `Pipe` non optional
2016-09-12 22:47:54 -07:00
Tobias Bosch
42d442dcd5
refactor(core): add a name to all decorators and other fixes
2016-09-12 22:47:54 -07:00
Tobias Bosch
cc2873a94d
chore: update typings
...
Note that the typings don’t reflect the shape of the metadata
due to a bug in the public-api-guard
2016-09-12 22:47:54 -07:00
Tobias Bosch
63e15ffaec
refactor(core): remove `…Metadata` for all decorators and use the decorator directly.
...
BREAKING CHANGE:
- all `…Metadata` classes have been removed. Use the corresponding decorator
as constructor or for `instanceof` checks instead.
- Example:
* Before: `new ComponentMetadata(…)`
* After: `new Component(…)`
- Note: `new Component(…)` worked before as well.
2016-09-12 22:47:54 -07:00
Tobias Bosch
1b15170c89
refactor(core): simplify decorators
...
Every decorator now is made of the following:
- a function that can be used
as a decorator or as a constructor. This function
also can be used for `instanceof` checks.
- a type for this function (callable and newable)
- a type that describes the shape of the data
that the user needs to pass to the decorator
as well as the instance of the metadata
The docs for decorators live at the followig places
so that IDEs can discover them correctly:
- General description of the decorator is placed on the
`...Decorator` interface on the callable function
definition
- Property descriptions are placed on the interface
that describes the metadata produces by the decorator
2016-09-12 22:47:54 -07:00
Igor Minar
cc7780adf7
build(npm): update to rxjs@5.0.0-beta.12
...
Fixes #11300
2016-09-12 12:05:00 -07:00
Misko Hevery
051a6ebe12
feat(zone): upgrade to zone.js@0.6.21
2016-09-12 11:48:24 -07:00
Victor Berchet
5a4e46db20
refactor(tests): simplify code ( #11485 )
2016-09-09 12:04:38 -07:00
Suguru Inatomi
df6762a170
docs(TestBed): Fix to current packageing ( #11472 )
2016-09-09 09:36:38 -07:00
Rob Wormald
d296298282
fix(build): prevent package tsconfigs from shadowing main tsconfig ( #11454 )
2016-09-08 15:01:22 -07:00
Pawel Kozlowski
436af15d63
refactor: remove parseFloat from facades ( #11446 )
2016-09-08 13:54:10 -07:00
Matias Niemelä
6a2bbffe10
fix(animations): allow `group()` to be used as entry point for an animation trigger ( #11419 )
...
Closes #11312
Closes #11419
2016-09-08 12:20:07 -07:00
Pete Bacon Darwin
f78e184822
docs(FactoryProvider): add missing backtick ( #11444 )
2016-09-08 09:18:37 -07:00
PatrickJS
3ff816afa6
style(CompileMetadataResolver): better error message ( #11401 )
2016-09-07 14:09:25 -07:00