Tobias Bosch
5dee8e26cc
fix(views): remove dynamic component views, free host views, free embedded views
...
Closes #2472
Closes #2339
BREAKING CHANGE
- `Compiler.compile` has been removed, the only way to compile
components dynamically is via `Compiler.compileInHost`
- `DynamicComponentLoader.loadIntoExistingLocation` has changed:
* renamed into `loadIntoLocation`
* will always create the host element as well
* requires an element with a variable inside of the host component view
next to which it will load new component.
- `DynamicComponentLoader.loadNextToExistingLocation` was renamed into
`DynamicComponentLoader.loadNextToLocation`
- `DynamicComponentLoader.loadIntoNewLocation` is removed
* use `DynamicComponentLoader.loadNextToLocation` instead
and then move the view nodes
manually around via `DomRenderer.getRootNodes()`
- `AppViewManager.{create,destroy}Free{Host,Embedded}View` was removed
* use `AppViewManager.createViewInContainer` and then move the view nodes
manually around via `DomRenderer.getRootNodes()`
- `Renderer.detachFreeView` was removed. Use `DomRenderer.getRootNodes()`
to get the root nodes of a view and detach them manually.
2015-06-17 11:33:51 -07:00
Misko Hevery
b2c66949b2
feat: allow Type.annotations = Component(...).View(...)
...
Closes #2577
2015-06-16 16:36:46 -07:00
vsavkin
d8e2795368
fix(view): local variables override local variables set by ng-for
2015-06-16 07:48:26 -07:00
vsavkin
5bfcca2d5b
feat(query): notify on changes
2015-06-15 11:10:21 -07:00
Victor Berchet
ac3e624d0f
feat(View): add support for styleUrls and styles
...
fixes #2382
2015-06-15 19:35:16 +02:00
Misko Hevery
c3ae34f066
feat: support decorator chaining and class creation in ES5
...
Closes #2534
2015-06-14 16:54:08 -07:00
Martin Probst
4ae7df27d2
fix: improve type safety by typing `refs`.
2015-06-12 18:02:07 -07:00
vsavkin
c51aef9f7d
fix(element_injector): changed visibility rules to expose hostInjector of the component to its shadow dom
2015-06-12 17:17:31 -07:00
Tim Blasi
bbfb4e1dcc
fix(dynamic_component_loader): Fix for ts2dart issue
...
Fix a build break by declaring a type for `locals`.
See https://github.com/angular/ts2dart/wiki/Builtin-fa%C3%A7ade-methods#fixing-untyped-property-access-errors
for some context.
2015-06-12 16:55:08 -07:00
vsavkin
21dcfc89e9
fix(dynamic_component_loader): implemented dispose for dynamically-loaded components
2015-06-12 15:47:09 -07:00
Martin Probst
f3d741854a
fix: add types for ts2dart's façade handling.
...
... in many, many places.
2015-06-12 15:41:08 -07:00
Martin Probst
c4ecbf0a7f
fix: rename FORWARD_REF to forwardRef in the Angular code base.
...
Now that ts2dart understands forwardRef, there's
no need to maintain the old syntax.
2015-06-12 15:41:08 -07:00
Martin Probst
a6e7123995
feat: adjust formatting for clang-format v1.0.19.
2015-06-12 09:51:57 -07:00
Victor Berchet
7648bb8ee3
doc(Lifecycle events): Document the call order
2015-06-12 18:51:04 +02:00
Rado Kirov
355ab5b3a6
feat(query): adds support for descendants and more list apis.
...
Additional clean up of query code.
Closes : #1935
BREAKING CHANGE:
By default Query only queries direct children.
2015-06-11 16:05:06 -07:00
Victor Berchet
f3b49378e4
feat(Directive): Have a single Directive.host which mimics HTML
...
fixes #2268
BREAKING CHANGE:
Before
@Directive({
hostListeners: {'event': 'statement'},
hostProperties: {'expression': 'hostProp'},
hostAttributes: {'attr': 'value'},
hostActions: {'action': 'statement'}
})
After
@Directive({
host: {
'(event)': 'statement',
'[hostProp]': 'expression' // k & v swapped
'attr': 'value',
'@action': 'statement'
}
})
2015-06-11 13:11:09 -07:00
Victor Berchet
6ca81fb98c
refactor(ProtoViewDto): switch to enum
2015-06-11 17:11:34 +02:00
vsavkin
af35ab56a3
fix(life_cycle): throw when recursively reentering LifeCycle.tick
2015-06-11 07:43:14 -07:00
vsavkin
15dab7c5b2
fix(ng_zone): updated zone not to run onTurnDown when invoking run synchronously from onTurnDone
2015-06-11 07:43:13 -07:00
Victor Berchet
4d338a4f5c
test(ElementInjector): test that hostInjector has priority over viewInjector
2015-06-08 20:34:44 +02:00
Victor Berchet
6a6b43de07
feat(ElementInjector): throw if multiple directives define the same host injectable
...
relates to #2015
2015-06-08 20:34:44 +02:00
Victor Berchet
29c72abcc4
feat(Events): allow a different event vs field name
...
closes #2272
closes #2344
2015-06-08 19:29:49 +02:00
vsavkin
69b75b7fd8
feat(view): added support for exportAs, so any directive can be assigned to a variable
2015-06-04 14:14:03 -07:00
Rado Kirov
552985e305
fix(types): parametrize QueryList.
2015-06-03 17:08:55 -07:00
Martin Probst
f999d5a156
chore: move to clang-format 1.0.17.
...
clang-format 1.0.17 substantially improves formatting for fat arrow functions
and array literal detection. It also fixes a number of minor formatting issues.
2015-06-03 15:27:27 -07:00
Tobias Bosch
5030ffb01c
feat(view): introduce free embedded views
...
Free embedded views are view instances that are created
logically in the same was as views of a ViewContainer,
but their dom nodes are not attached.
BREAKING CHANGE:
- `Renderer.detachFreeHostView` was renamed to
`Renderer.detachFreeView`
- `DomRenderer.getHostElement()` was generalized into
`DomRenderer.getRootNodes()`
2015-06-03 14:42:00 -07:00
vsavkin
d523613329
test(di): added a test verifying hierarchical injection
2015-05-29 15:52:46 -07:00
Tobias Bosch
f9908cd436
feat(test): add element probe
...
Usage: bootstrap the app with the special binding
`ELEMENT_PROBE_CONFIG` from `angular2/debug`.
This will provide a global method `ngProbe(element)` that
will expose a `DebugElement` with directive instances, ... on it.
During tests that use Angular's test injector, the probe is
enabled by default. The `DebugElement ` can be retrieved via the
function `inspectDomElement` of `angular2/debug`. Note
that the `TestComponentBuilder` already returns `DebugElement `s.
Closes #1992
2015-05-29 12:44:21 -07:00
Tobias Bosch
75578f41e7
feat(view): add `AppViewListener` interface
...
Basic functionality how element probe is hooked into
the system.
2015-05-29 11:33:22 -07:00
Tim Blasi
ffb219fb91
style(dart): Format Dart source with dart_style 0.1.8
2015-05-29 10:42:47 -07:00
Victor Berchet
d7df853bde
feat(Directive): convert properties to an array
...
fixes #2013
BREAKING CHANGE:
Before
@Directive(properties: {
'sameName': 'sameName',
'directiveProp': 'elProp | pipe'
})
After
@Directive(properties: [
'sameName',
'directiveProp: elProp | pipe'
])
2015-05-29 11:44:43 +02:00
vsavkin
c39c8ebcd0
feat(change_detection): added onInit and onCheck hooks
2015-05-28 16:46:22 -07:00
vsavkin
34cfc9f474
feat(di): added optional self parameter to Parent, Ancestor, and Unbounded
2015-05-28 09:53:06 -07:00
vsavkin
30b6542fc8
feat(core): added support for detecting lifecycle events based on interfaces
2015-05-27 16:23:42 -07:00
Marc Laval
c6335c128e
feat(test_lib): add method to compare stringified DOM element
...
Closes #2106
2015-05-27 16:19:39 +02:00
Tobias Bosch
79f564be46
refactor(core): ts’ify tests
2015-05-26 17:01:31 -07:00
yjbanov
d48fae3566
fix(core): resurrect OnChange interface
2015-05-22 16:48:00 -07:00
Martin Probst
15f1eb28a2
fix(deps): Update clang-format to 1.0.14.
2015-05-22 09:39:15 -07:00
Victor Berchet
b1c9bf14b2
feat(ElementInjector): support an arbitrary number of bindings
...
fixes #1853
2015-05-22 13:42:53 +02:00
Marc Laval
661a04798e
fix(test): adds longer timers for NgZone and PromisePipe tests (IE11)
...
Closes #2055
2015-05-22 13:30:49 +02:00
Tobias Bosch
cc2c8f6b00
refactor(test): ts’if compiler integration tests.
2015-05-21 17:53:53 -07:00
yjbanov
c5996529c3
chore(expressions): add explicit test for map vs property access
2015-05-21 14:41:26 -07:00
vsavkin
705ee46f31
fix(di): changed host and view injector to respect visibility
2015-05-21 09:17:56 -07:00
vsavkin
b6b52e62b2
fix(element_injector): fixed element injector to inject view dependencies into its components
2015-05-20 17:48:04 -07:00
vsavkin
28c2b8f432
fix(element_injector): fixed element injector to resolve dependencies of regular services
2015-05-20 10:56:33 -07:00
Victor Berchet
6ec5d5daaf
refactor(async): extract timer related functions into a TimerWrapper
2015-05-20 07:47:46 +02:00
vsavkin
62b1a08f06
refactor(reflection): improved error message
2015-05-19 21:17:52 -07:00
Yegor Jbanov
8ab773538b
fix(errors): require passing stack traces explicitly in ng2 own code
2015-05-19 12:48:00 -07:00
vsavkin
b066b8d15a
feat(di): added hostInjector and viewInjector to the Directive annotation
2015-05-18 18:30:53 -07:00
vsavkin
7b511462af
refactor(core): renamed injectables into appInjector
...
BREAKING CHANGES
Before:
@Component({injectables: [Type]} class MyCmp{}
After:
@Component({appInjector: [Type]} class MyCmp{}
2015-05-18 18:30:52 -07:00