Kara Erickson
6e7d071c6b
fix(ivy): move next property to TNode ( #23869 )
...
PR Close #23869
2018-05-21 16:09:12 -04:00
Matias Niemelä
816bc8af17
feat(ivy): support injectable sanitization service ( #23809 )
...
PR Close #23809
2018-05-11 16:43:43 -04:00
Igor Minar
5b96078624
Revert "refactor(core): tree-shake application_module providers ( #23477 )"
...
This reverts commit eb031c6ff1
.
The change is breaking targets in g3 see cl/194336387.
2018-04-26 14:08:13 -07:00
Marc Laval
1a44a0b4a8
feat(ivy): support lifecycle hooks of ViewContainerRef ( #23396 )
...
PR Close #23396
2018-04-25 19:02:00 -07:00
Matias Niemelä
eb031c6ff1
refactor(core): tree-shake application_module providers ( #23477 )
...
PR Close #23477
2018-04-25 15:51:51 -07:00
Alex Eagle
b4c252bcc5
build: serve ivy todo app with real http-server ( #23446 )
...
PR Close #23446
2018-04-25 15:51:18 -07:00
Kara Erickson
db77d8dc92
feat(ivy): support injection flags at runtime ( #23518 )
...
PR Close #23518
2018-04-25 13:26:58 -07:00
Victor Berchet
6761a64522
refactor(compiler): remove a dependency from the IVY AST to the template AST ( #23476 )
...
PR Close #23476
2018-04-20 17:23:02 -07:00
Victor Berchet
9757347e71
feat(ivy): add an IVY local the compiler which avoids analyzeModule ( #23441 )
...
closes #23289
Based on a spike by @chukjaz
PR Close #23441
2018-04-19 16:32:09 -07:00
Victor Berchet
1d1e75ee2b
Revert "fix(compiler): Pretty print object instead of [Object object] ( #22689 )" ( #23442 )
...
This reverts commit 8555a3a3cd
.
Reverted because of https://github.com/angular/angular/issues/23440
PR Close #23442
2018-04-19 14:51:58 -07:00
Matias Niemelä
acf6781ccc
test(core): add a symbols test for renderer2 code ( #23436 )
...
PR Close #23436
2018-04-18 14:49:29 -07:00
Kara Erickson
5a1ddee88c
refactor(ivy): speed up bound text nodes ( #23386 )
...
PR Close #23386
2018-04-17 13:49:19 -07:00
Misko Hevery
b64a276d4b
refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private ( #23371 ) ( #23383 )
...
Ivy definition looks something like this:
```
class MyService {
static ngInjectableDef = defineInjectable({
…
});
}
```
Here the argument to `defineInjectable` is well known public contract which needs
to be honored in backward compatible way between versions. The type of the
return value of `defineInjectable` on the other hand is private and can change
shape drastically between versions without effecting backwards compatibility of
libraries publish to NPM. To our users it is effectively an opaque token.
For this reson why declare the return value of `defineInjectable` as `never`.
PR Close #23383
2018-04-14 20:40:14 -07:00
Igor Minar
674c3def31
revert: refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private ( #23371 )
...
This reverts commit 2c09b707ce
.
2018-04-13 23:02:29 -07:00
Miško Hevery
2c09b707ce
refactor(ivy): make return value of define(Component|Directive|Pipe|Injector|Injectable) private ( #23371 )
...
Ivy definition looks something like this:
```
class MyService {
static ngInjectableDef = defineInjectable({
…
});
}
```
Here the argument to `defineInjectable` is well known public contract which needs
to be honored in backward compatible way between versions. The type of the
return value of `defineInjectable` on the other hand is private and can change
shape drastically between versions without effecting backwards compatibility of
libraries publish to NPM. To our users it is effectively an `OpaqueToken`.
By prefixing the type with `ɵ` we are communicating the the outside world that
the value is not public API and is subject to change without backward compatibility.
PR Close #23371
2018-04-13 16:20:25 -07:00
Misko Hevery
f4017ce5e3
fix(ivy): Update Todo app to take advantage of optional injector ( #23345 )
...
PR Close #23345
2018-04-13 14:29:52 -07:00
Kara Erickson
0d516f1658
fix(ivy): update compiler to generate separate creation mode and update mode blocks ( #23292 )
...
PR Close #23292
2018-04-11 15:30:39 -07:00
Kara Erickson
de3ca56769
fix(ivy): support separate creation mode and update mode execution in runtime ( #23292 )
...
PR Close #23292
2018-04-11 15:30:39 -07:00
Miško Hevery
f1db789450
test(ivy): update todo app to http://todomvc.com ( #23168 )
...
PR Close #23168
2018-04-10 13:14:20 -07:00
Miško Hevery
3fb4e190a8
fix(ivy): correctly bind to component context ( #23168 )
...
When compiling templates the compiler would often bind to
closest context rather than the component context.
The only time one should be binding to the cont component is
in explicit cases where the inner template declares local variable.
PR Close #23168
2018-04-10 13:14:20 -07:00
Miško Hevery
4f7fac0e03
test(ivy): cleanup todo test app ( #23168 )
...
PR Close #23168
2018-04-10 13:14:20 -07:00
Miško Hevery
720031b5f6
docs(ivy): update outstanding work for todo ( #23168 )
...
PR Close #23168
2018-04-10 13:14:20 -07:00
Kara Erickson
628303d2cb
fix(ivy): instantiate dirs in correct order ( #23178 )
...
PR Close #23178
2018-04-05 14:50:00 -07:00
Pawel Kozlowski
32a41bc738
test(ivy): fixes in the TodoMVC example ( #23161 )
...
- properly display initial checked state
- properly remove a todo
Please note that the 'archive' option still doesn't
work correctly as listening to component outputs doesn't
seem to work (onArchive() is never called).
PR Close #23161
2018-04-04 10:26:18 -07:00
Alex Eagle
580f05bd9c
build: flatten esm5 sources before rollup ( #23131 )
...
this is needed to update to latest rules_nodejs due to breaking change in
https://github.com/bazelbuild/rules_nodejs/pull/172
It has the side-effect of correctly marking rxjs packages as side-effect-free
PR Close #23131
2018-04-03 10:47:29 -07:00
Igor Minar
92724b396b
build: update to rxjs@6.0.0-rc.0 ( #23106 )
...
PR Close #23106
2018-04-03 10:00:24 -07:00
Pawel Kozlowski
fa2c9a81dd
feat(ivy): ViewContainerRef basic scenarios support ( #23021 )
...
PR Close #23021
2018-04-03 09:35:14 -07:00
Miško Hevery
55c9fb298f
test(ivy): create todo app in ivy ( #22921 )
...
PR Close #22921
2018-04-02 15:49:48 -07:00
Miško Hevery
4290ea4bb9
ci: update to latest rulse_nodejs ( #22921 )
...
PR Close #22921
2018-04-02 15:49:48 -07:00
Miško Hevery
e7f1af3c54
refactor(ivy): cleanup necessary domino files ( #22921 )
...
PR Close #22921
2018-04-02 15:49:48 -07:00
Igor Minar
6f7d14064c
build: update to rxjs@6.0.0-beta.4 ( #23084 )
...
PR Close #23084
2018-03-30 13:07:03 -07:00
Olivier Combe
d28ce50067
test(ivy): make sure `goog.getMsg()` is defined before being used ( #22998 )
...
PR Close #22998
2018-03-27 17:07:50 -04:00
Kara Erickson
910a16a1ff
refactor(ivy): remove directive references from template ( #22986 )
...
PR Close #22986
2018-03-26 22:33:23 -04:00
Kara Erickson
e44f69c387
refactor(ivy): move dir flags to tnode ( #22901 )
...
PR Close #22901
2018-03-22 19:19:40 -04:00
Olivier Combe
99711b12f9
test(core): hello world i18n demo ( #22654 )
...
PR Close #22654
2018-03-22 19:01:51 -04:00
Igor Minar
3cc5c2e4d0
build: update to rxjs@6.0.0-beta.0 ( #22887 )
...
PR Close #22887
2018-03-20 15:26:49 -07:00
Igor Minar
b43f8bc7d3
feat(core): upgrade rxjs to 6.0.0-alpha.4 ( #22573 )
...
PR Close #22573
2018-03-19 21:51:51 -07:00
Misko Hevery
fc50c77bd3
test(ivy): switch HelloWorld to ivy compiler ( #22788 )
...
PR Close #22788
2018-03-19 16:00:38 -07:00
Kara Erickson
1a0cb21538
refactor(ivy): remove unnecessary binding from hello world ( #22848 )
...
PR Close #22848
2018-03-19 16:29:45 -05:00
Kara Erickson
e27cfd6236
refactor(ivy): split up directiveCreate for tree shaking ( #22838 )
...
PR Close #22838
2018-03-18 11:56:35 -07:00
Kara Erickson
1612985e48
refactor(ivy): allow tick and deps to be tree-shaken ( #22838 )
...
PR Close #22838
2018-03-18 11:47:44 -07:00
Kara Erickson
4f21d373b7
refactor(ivy): move hostBindings calls out of template ( #22833 )
...
PR Close #22833
2018-03-18 11:41:39 -07:00
Alex Rickabaugh
6ef9f2278f
feat(ivy): @NgModule -> ngInjectorDef compilation ( #22458 )
...
This adds compilation of @NgModule providers and imports into
ngInjectorDef statements in generated code. All @NgModule annotations
will be compiled and the @NgModule decorators removed from the
resultant js output.
All @Injectables will also be compiled in Ivy mode, and the decorator
removed.
PR Close #22458
2018-03-16 12:57:11 -07:00
Kara Erickson
b1365d1fa8
refactor(ivy): remove directiveRefresh instruction ( #22745 )
...
PR Close #22745
2018-03-13 23:29:21 -07:00
Miško Hevery
51027d73cc
fix(ivy): Update rollup rule to prevent inlining symbols in debug. ( #22747 )
...
The new rollup rule disables inlining symbols in debug mode. This makes
it look as if there would be more symbols but in reality these are the
symbols which are no longer being inlined.
PR Close #22747
2018-03-13 19:58:30 -07:00
Kara Erickson
aa7dba244b
feat(ivy): support checkNoChanges ( #22710 )
...
PR Close #22710
2018-03-11 22:16:38 -07:00
Kara Erickson
f13f4db9dc
refactor(ivy): fix rebase error ( #22661 )
...
PR Close #22661
2018-03-08 11:37:42 -08:00
Kara Erickson
4c089c1d93
feat(ivy): support ChangeDetectorRef.detectChanges ( #22614 )
...
PR Close #22614
2018-03-07 21:08:25 -08:00
Kara Erickson
8c358844dd
feat(ivy): support OnPush change detection ( #22417 )
...
PR Close #22417
2018-02-28 10:42:11 -08:00
Misko Hevery
ac2b04a5ab
test(ivy): Add small_app spec for sprint #3 ( #22018 )
...
PR Close #22018
2018-02-18 13:18:54 -08:00
Victor Berchet
5dd2b5135d
refactor(ivy): rename `bindX()` functions to `interpolationX()` ( #22229 )
...
rationale: remove the confusion with `bind()` and `bind0()`
PR Close #22229
2018-02-15 14:20:53 -08:00
Miško Hevery
20a900b648
test: Add bundle symbol extractor tool ( #22002 )
...
This tool will be used for extracting symbols out of bundles so that
we can assert that only whitelisted symbols are allowed.
PR Close #22002
2018-02-13 11:28:54 -08:00
Alex Eagle
16e5b866d2
test(ivy): also track the size of the compressed hello world bundle ( #22056 )
...
PR Close #22056
2018-02-07 16:10:00 -08:00
Alex Eagle
370ab66c4f
build(ivy): create hello world rollup ( #22004 )
...
This is a customization of the rollup_bundle rule from rules_nodejs
which adds the build-optimizer as a plugin.
Add a functional test with fast round-trip that asserts the minified app
still works.
Publish the min.js artifact on circleCI so we can track its size.
PR Close #22004
2018-02-06 08:25:22 -08:00