Matias Niemelä
13eb57a59f
fix(ivy): merge static style rendering across elements, directives and components ( #27661 )
...
PR Close #27661
2018-12-21 18:14:44 -05:00
Andrew Kushnir
dfbf6d72b0
fix(ivy): provide an ability to match <ng-template> tags ( #27636 )
...
Prior to this change, we were unable to match directives using `ng-template` tags (for example the following selector would not work even though there might be some <ng-template>s in a template: `ng-template[directiveA]`. As a result, that broke some components that relies on such selectors to work. In order to resolve the problem, we now pass tag name to the `template` instruction (where we passed `null` before) and this tag name is used for matching at runtime. This update should also help support projecting containers, because the tag name is required to properly match such elements.
PR Close #27636
2018-12-17 09:33:37 -08:00
Kara Erickson
e76a570908
refactor(ivy): remove LNode ( #26426 )
...
PR Close #26426
2018-10-15 11:20:32 -07:00
Kara Erickson
931e603f80
refactor(ivy): revert LNode.data into LViewData[HOST] ( #26424 )
...
PR Close #26424
2018-10-15 10:17:12 -07:00
Kara Erickson
aedebaf025
refactor(ivy): remove LNode.tNode ( #25958 )
...
PR Close #25958
2018-09-14 16:16:28 -07:00
George Kalpakas
18f129f536
build: upgrade Chromium and ChromeDriver to latest versions ( #25602 )
...
PR Close #25602
2018-08-24 11:48:40 -04:00
Kara Erickson
d5b70e0c66
fix(ivy): create LViewData from blueprint ( #25587 )
...
PR Close #25587
2018-08-22 15:58:42 -04:00
Kara Erickson
21a14407f6
refactor(ivy): generate vars in component defs ( #25562 )
...
PR Close #25562
2018-08-20 11:08:10 -07:00
Kara Erickson
f2aa9c6a7f
refactor(ivy): use generated consts value to set binding index ( #25533 )
...
PR Close #25533
2018-08-17 14:32:55 -07:00
Kara Erickson
6482f6f0fe
refactor(ivy): separate container into 2 instructions ( #25509 )
...
PR Close #25509
2018-08-16 13:47:14 -07:00
Victor Berchet
89e8b6fc0e
refactor(ivy): update specs to make use of the `element()` instruction ( #25173 )
...
PR Close #25173
2018-07-27 17:22:18 -07:00
Matias Niemelä
169e9dd2c8
feat(ivy): bridge compile instructions to include sanitization helpers ( #24938 )
...
PR Close #24938
2018-07-23 08:49:52 -07:00
Matias Niemelä
ba3eb8b654
feat(ivy): properly apply class="", [class], [class.foo] and [attr.class] bindings ( #24822 )
...
PR Close #24822
2018-07-17 16:33:25 -04:00
Matias Niemelä
3980640d53
feat(ivy): properly apply style="", [style], [style.foo] and [attr.style] bindings ( #24602 )
...
PR Close #24602
2018-07-06 13:51:00 -07:00
Rado Kirov
c95437f15d
build(bazel): Turning on strictPropertyInitialization for Angular. ( #24572 )
...
All errors for existing fields have been detected and suppressed with a
`!` assertion.
Issue/24571 is tracking proper clean up of those instances.
One-line change required in ivy/compilation.ts, because it appears that
the new syntax causes tsickle emitted node to no longer track their
original sourceFiles.
PR Close #24572
2018-06-25 07:57:13 -07:00
Ben Lesh
82c5313740
feat(ivy): namespaced attributes added to output instructions ( #24386 )
...
NOTE: This does NOT add parsing of namespaced attributes
- Adds AttributeMarker for namespaced attributes
- Adds test for namespaced attributes
- Updates AttributeMarker enum to use CamelCase, and not UPPER_CASE names
PR Close #24386
2018-06-13 13:28:16 -07:00
Ben Lesh
8dd99ac550
refactor(ivy): add element instruction, reducing output size ( #24379 )
...
- Adds an element instruction
- Reduces size of compiled output slightly
PR Close #24379
2018-06-11 14:02:48 -04:00
Victor Berchet
7de2ba0e22
Revert "feat(ivy): add namespace instructions for SVG and others ( #23899 )"
...
This reverts commit 81e4b2a4bf
.
2018-06-06 13:38:21 -07:00
Victor Berchet
07b4c8be42
Revert "feat(ivy): added namespaced attributes ( #23899 )"
...
This reverts commit d6989c80d3
.
2018-06-06 13:38:20 -07:00
Victor Berchet
3128b26e5c
Revert "feat(ivy): add element instruction ( #23899 )"
...
This reverts commit b415010222
.
2018-06-06 13:38:19 -07:00
Victor Berchet
4f5b01a98a
Revert "refactor(ivy): Use AttributeMarker instead of NS ( #23899 )"
...
This reverts commit 1208a35373
.
2018-06-06 13:38:18 -07:00
Victor Berchet
c151f9cdc8
Revert "refactor(ivy): rename setNS, setHtmlNS and friends to namespace, namespaceHTML, etc ( #23899 )"
...
This reverts commit 0d06c866c6
.
2018-06-06 13:38:17 -07:00
Victor Berchet
31988a6ff9
Revert "test(ivy): add testing for namespaced attributes ( #23899 )"
...
This reverts commit e994b11105
.
2018-06-06 13:38:12 -07:00
Victor Berchet
355e0b0587
Revert "test(ivy): update test that is flaky in IE ( #23899 )"
...
This reverts commit 51e9e64c5a
.
2018-06-06 13:38:11 -07:00
Victor Berchet
7e73287676
Revert "feat(ivy): added new namespace and element instructions to JIT environment ( #23899 )"
...
This reverts commit acf270d724
.
2018-06-06 13:38:00 -07:00
Ben Lesh
acf270d724
feat(ivy): added new namespace and element instructions to JIT environment ( #23899 )
...
PR Close #23899
2018-06-06 10:22:28 -07:00
Ben Lesh
51e9e64c5a
test(ivy): update test that is flaky in IE ( #23899 )
...
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
e994b11105
test(ivy): add testing for namespaced attributes ( #23899 )
...
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
0d06c866c6
refactor(ivy): rename setNS, setHtmlNS and friends to namespace, namespaceHTML, etc ( #23899 )
...
- Renames functions
- Adds documentation
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
1208a35373
refactor(ivy): Use AttributeMarker instead of NS ( #23899 )
...
- Removes NS enum
- Uses existing AttributeMarker
- Adds enum value NAMESPACE_URI
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
b415010222
feat(ivy): add element instruction ( #23899 )
...
Adds a simplified element instruction that can be used if an element
has no children.
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
d6989c80d3
feat(ivy): added namespaced attributes ( #23899 )
...
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
81e4b2a4bf
feat(ivy): add namespace instructions for SVG and others ( #23899 )
...
PR Close #23899
2018-06-06 10:22:27 -07:00
JoostK
b99ef2b80a
refactor(ivy): simplify bind instruction to reuse bindingUpdated logic ( #23881 )
...
Added runtime and compiler testcases for interpolated bindings, which verify
that NO_CHANGE is properly handled in `bind`.
PR Close #23881
2018-05-30 16:38:46 -07:00
Kara Erickson
8216657681
refactor(ivy): add tNodes for view nodes and hosts ( #24113 )
...
PR Close #24113
2018-05-25 13:40:59 -04:00
Matias Niemelä
816bc8af17
feat(ivy): support injectable sanitization service ( #23809 )
...
PR Close #23809
2018-05-11 16:43:43 -04:00
Kara Erickson
c5cfc3a1b6
fix(ivy): only generate TViews once per embedded template ( #23385 )
...
PR Close #23385
2018-05-01 10:27:40 -07:00
Misko Hevery
b76f5a6a7d
perf(ivy): add performance counters in ngDevMode ( #23385 )
...
PR Close #23385
2018-05-01 10:27:40 -07:00
Miško Hevery
112431db69
test(ivy): add canonical compiler spec for class/style ( #22719 )
...
Adds a stub for `elementStyle` and `elementClass` instruction
with a canonical spec for the compiler. The spec shows the the
compiler should be using `elementStyle` and `elementClass` instruction
in place of `[class]` and `[style]` bindings respectively.
PR Close #22719
2018-03-14 12:59:52 -07:00
Miško Hevery
a0a01f1e1e
refactor(ivy): rename class/style to make space for new instruction ( #22719 )
...
Rename:
- `elementClass` (short: `k`) => `elementClassNamed` (short: `kn`)
- `elementStyle` (short: `s`) => `elementStyleNamed` (short: `sn`)
Currently `[class.name]` is `elementClass(0, ‘name’, value)`. We would
like to introduce new binding `[class]` which needs a new instruction
ideally `elementClass(0, value)`. Doing the rename creates space
to create such an instruction in subsequent change.
PR Close #22719
2018-03-14 12:59:52 -07:00
Marc Laval
f95730b8e2
fix(ivy): elements properties should not be stringified ( #22683 )
...
PR Close #22683
2018-03-12 13:16:05 -07:00
Miško Hevery
6d1367d297
feat(ivy): provide sanitization methods which can be tree shaken ( #22540 )
...
By providing a top level sanitization methods (rather than service) the
compiler can generate calls into the methods only when needed. This makes
the methods tree shakable.
PR Close #22540
2018-03-07 18:24:07 -08:00