Victor Berchet
3d38ec8aac
refactor(Lifecycle hooks): move the hooks to their own module (lifecycle_hooks)
...
BREAKING CHANGE
Lifecycle hooks now live in the `angular2/lifecycle_hooks` module.
They previously lived in the `metadata` module.
2015-09-05 01:02:33 +00:00
Victor Berchet
8302afffb4
refactor(LifecycleEvent): remove LifecycleEvent
...
fixes #3924
BREAKING CHANGE
The `lifecycle` configuration for directive has been dropped.
Before
// Dart
@Component({lifecycle: const [LifecycleEvent.OnChanges], ...})
class MyComponent implements OnChanges {
void onChanges() {...}
}
// Typescript
@Component({lifecycle: [LifecycleEvent.OnChanges], ...})
class MyComponent implements OnChanges {
onChanges(): void {...}
}
// ES5
var MyComponent = ng.
Component({lifecycle: [LifecycleEvent.OnChanges], ...}).
Class({
onChanges: function() {...}
});
After
// Dart
@Component({...})
class MyComponent implements OnChanges {
void onChanges() {...}
}
// Typescript
@Component({...})
class MyComponent implements OnChanges {
onChanges(): void {...}
}
// ES5
var MyComponent = ng
.Component({...})
.Class({
onChanges: function() {
}
});
2015-09-05 01:02:33 +00:00
Harry Terkelsen
d8c5ab232c
refactor: add leading underscore to private fields
...
Closes #4001
2015-09-05 00:54:50 +00:00
vsavkin
15164a8e6c
fix(reflector): merge prop metadata from getters and setters
...
Closes #4006
2015-09-04 23:44:22 +00:00
vsavkin
df8e15cab7
feat(core): add support for @HostBinding and @HostListener
...
Example:
@Directive({selector: 'my-directive'})
class MyDirective {
@HostBinding("attr.my-attr") myAttr: string;
@HostListener("click", ["$event.target"])
onClick(target) {
this.target = target;
}
}
Closes #3996
2015-09-04 22:18:22 +00:00
vsavkin
855cb16cc7
refactor(event_manager): use multi bindings to configure EventManager
...
Closes #3978
2015-09-04 21:57:36 +00:00
Rado Kirov
5ebeaf7c9b
feat(query): implement query update mechanism based on views.
...
Instead of working with finer grained element injectors, queries now
iterate through the views as static units of modification of the
application structure. Views already contain element injectors in the
correct depth-first preorder.
This allows us to remove children linked lists on element injectors and a
lot of book keeping that is already present at the view level.
Queries are recalculated using the afterContentChecked and
afterViewChecked hooks, only during init and after a view container has
changed.
BREAKING CHANGE:
ViewQuery no longer supports the descendants flag. It queries the whole
component view by default.
Closes #3973
2015-09-04 21:39:35 +00:00
Alfonso Presa
be954115f8
feat(NgFor): $last property support
...
Makes a new `$last` property available during the loop with a boolean
showing if it's the last item in the iteration.
closes : #3102
Closes #3991
2015-09-04 21:01:42 +00:00
Tobias Bosch
2384082b5c
feat(compiler): add stylesheet compiler
...
Part of #3605
Closes #3891
2015-09-04 19:22:43 +00:00
vsavkin
896add7d77
feat(core): add support for @Property and @Event decorators
...
Example:
@Directive({selector: 'my-selector'})
class MyDirective {
@Property() prop;
@Property('el-prop') prop2;
@Event() event;
@Event('el-event') event2;
}
Closes #3992
2015-09-04 18:33:31 +00:00
vsavkin
7736964a37
feat(di): add support for multi bindings
...
BREAKING CHANGE
Previously a content binding of a component was visible to the directives in its view with the host constraint. This is not the case any more. To access that binding, remove the constraint.
2015-09-03 15:18:18 +00:00
Rado Kirov
5c9613e084
test(query): add a test for view query with var bindings
...
Closes #3920
Closes #3946
2015-09-02 20:26:59 +00:00
Rado Kirov
01cdd31339
fix(query): clean-up queryref during dehydration
...
The QueryRef objects persists during dehydration but needs to be
cleaned-up by removing callbacks and previous elements.
Closes #3944
Closes #3948
2015-09-02 19:00:17 +00:00
Tim Blasi
7c7888de4f
fix(ComponentUrlMapper): support relative template URLs in Dartium
...
When running in Dartium without using transformers (i.e. with a normal
static web server), handle relative template URLs. This works by using
mirrors to get the URL of the library where the component class is
defined.
Closes #2771
Closes #3743
2015-09-01 18:19:55 +00:00
vsavkin
60ce884671
feat(core): remove the (^ syntax and make all DOM events bubbling
...
BREAKING CHANGE
Before
<div (^click)="onEventHandler()">
<button></button>
</div>
After
<div (click)="onEventHandler()">
<button></button>
</div>
Closes #3864
2015-09-01 15:54:47 +00:00
Victor Berchet
ecf6ba3974
refactor: prefer const over var for constants
...
Closes #3818
2015-08-31 21:59:33 +00:00
Misko Hevery
c349bbbc08
refactor(ViewEncapsulation): rename to PascalCase
...
BREAKING CHANGE
- ViewEncapsulation.EMULATED => ViewEncapsulation.Emulated
- ViewEncapsulation.NATIVE => ViewEncapsulation.Native
- ViewEncapsulation.NONE => ViewEncapsulation.None
Closes #3889
2015-08-31 21:32:10 +00:00
Misko Hevery
e916836261
chore(ts2dart): replace List with Array
...
Closes #3514
2015-08-31 21:32:10 +00:00
Misko Hevery
4415855683
refactor(ngProbe): rename to ng.probe
...
BREAKING CHANGE:
Closes #3786
- ngProbe => ng.probe
2015-08-31 21:32:10 +00:00
Misko Hevery
cebd670a8e
refactor(ChandeDetection): Rename ChangeDetectorRef.markForCheck
...
BREAKING CHANGE
Closes #3403
- ChangeDetectorRef.requestCheck() => ChangeDetectorRef.markForCheck()
2015-08-31 21:32:10 +00:00
vsavkin
d49bc438e8
feat(core): added afterContentInit, afterViewInit, and afterViewChecked hooks
...
Closes #3897
2015-08-31 17:16:54 +00:00
Tobias Bosch
f93cd9ced7
feat(compiler): add full directive metadata and validation logic
...
With this, the new `TemplateParser` has feature/data parity with the `ProtoViewDto` of the `RenderCompiler`.
Part of #3605
Closes #3880
2015-08-28 14:55:47 -07:00
Marc Laval
be07390859
refactor(test_lib): BrowserDetection util
...
Closes #3805
2015-08-28 11:41:17 +02:00
Misko Hevery
551d9a1688
chore(LifecycleEvent): change to PascalCase / rename
...
BREAKING CHANGE
Closes #3863
- LifecycleEvent.onInit => LifecycleEvent.OnInit
- LifecycleEvent.onDestroy => LifecycleEvent.OnDestroy
- LifecycleEvent.onChange => LifecycleEvent.OnChanges
- LifecycleEvent.onCheck => LifecycleEvent.DoCheck
- LifecycleEvent.onAllChangesDone => LifecycleEvent.AfterContentChecked
- OnCheck.onCheck() => DoCheck.doCheck()
- OnChange.onChange() => OnChanges.onChanges()
- OnAllChangesDone.onAllChangesDone() => AfterContentChecked.afterContentChecked
Closes #3851
2015-08-27 22:32:21 -07:00
Misko Hevery
ac3f5106e4
refactor(view): remove hostActions
...
BREAKING CHANGE
Closes #3396
Replacement. Either direct DOM access or Renderer in WebWorkers.
2015-08-27 22:32:21 -07:00
Misko Hevery
37b042b361
chore: Make enum names consistent with TypeScript convention
...
BREAKING_CHANGE
Ts2Dart issue: https://github.com/angular/ts2dart/issues/270
TypeScript convention: https://github.com/Microsoft/TypeScript/wiki/Coding-guidelines
DartConvertion: https://www.dartlang.org/articles/style-guide/
Rename:
- NumberFormatStyle.DECIMAL => NumberFormatStyle.Decimal
- NumberFormatStyle.PERCENT => NumberFormatStyle.Percent
- NumberFormatStyle.CURRENCY => NumberFormatStyle.Currency
- RequestMethods.GET => RequestMethods.Get
- RequestMethods.POST => RequestMethods.Post
- RequestMethods.PUT => RequestMethods.Put
- RequestMethods.DELETE => RequestMethods.Delete
- RequestMethods.HEAD => RequestMethods.Head
- RequestMethods.PATCH => RequestMethods.Patch
- ReadyStates.UNSENT => ReadyStates.Unsent
- ReadyStates.OPEN => ReadyStates.Open
- ReadyStates.HEADERS_RECEIVED => ReadyStates.HeadersReceived
- ReadyStates.LOADING => ReadyStates.Loading
- ReadyStates.DONE => ReadyStates.Done
- ReadyStates.CANCELLED => ReadyStates.Canceled
2015-08-27 22:32:21 -07:00
Misko Hevery
69926dd002
refactor(change_detection): introduce enum ChangeDetectionStrategy
...
BREAKING CHANGE
Closes #2497
- change detection strategy type changes from string to ChangeDetectionStrategy
- CHECK_ONCE => ChangeDetectionStrategy.CheckOnce
- CHECKED => ChangeDetectionStrategy.Checked
- CHECK_ALWAYS => ChangeDetectionStrategy.CheckAlways
- DETACHED => ChangeDetectionStrategy.Detached
- ON_PUSH => ChangeDetectionStrategy.OnPush
- DEFAULT => ChangeDetectionStrategy.Default
- ON_PUSH_OBSERVE => ChangeDetectionStrategy.OnPushObserve
2015-08-27 21:41:46 -07:00
vsavkin
3bb27deecc
feat(exception_handler): changed ExceptionHandler to use console.error instead of console.log
...
Closes #3812
2015-08-28 00:09:01 +00:00
Marc Laval
557d309377
chore(build): improve reliability of the saucelabs job
...
Closes #3848
2015-08-27 09:46:15 +02:00
Jason Teplitz
4ba4427510
feat(WebWorkers): Add WebSocket MessageBuses for debugging apps
...
Closes #3858
2015-08-26 19:07:53 -07:00
vsavkin
343dcfa0c0
refactor(tests): removed @IMPLEMENTS
2015-08-26 15:06:25 -07:00
Tim Blasi
457eb5d69c
fix(WebWorker): Return boolean from `dispatchRenderEvent`
...
Update web_worker `dispatchRenderEvent` to return a boolean, which
[view.ts](https://github.com/angular/angular/blob/master/modules/angular2/src/core/render/dom/view/view.ts#L85 ) expects.
2015-08-26 14:12:45 -07:00
Jeff Cross
8ed22ce6e7
chore: update all import paths
2015-08-25 15:33:23 -07:00
Jeff Cross
38a5a2a955
chore: move core modules into core directory
...
BREAKING CHANGE:
This change moves the http module into angular2/, so its import
path is now angular2/http instead of http/http.
Many other modules have also been moved around inside of angular2,
but the public API paths have not changed as of this commit.
2015-08-25 15:33:22 -07:00
Rado Kirov
92da5430e7
fix(injector): support getRootInjectors on dehydrated injectors.
...
Closes #3760
2015-08-24 02:41:43 +00:00
Marc Laval
50eee42668
chore(build): add Android to CI
...
Closes #3756
2015-08-24 00:28:07 +02:00
Pawel Kozlowski
c4044102d6
test(ViewMetadata): use ViewMetadata consistently in tests
...
Closes #3746
2015-08-23 10:47:23 +00:00
Pawel Kozlowski
215c4aa8fb
fix(compiler): detect and report error for views with empty templateUrl
...
Fixes #3762
Closes #3768
2015-08-23 07:26:56 +00:00
vsavkin
a9ce454b21
fix(change_detection): fixed reflect properties as attributes
...
Closes #3761
2015-08-21 19:08:32 +00:00
vsavkin
b6146394ae
refactor(change_detection): replaced devMode with ChangeDetectorGenConfig
2015-08-21 19:08:32 +00:00
Marc Laval
65344fcac9
chore(build): add IE9 to CI
...
Closes #3747
2015-08-21 15:46:26 +00:00
vsavkin
d2d0715568
feat(change_detection): do not reparse AST when using generated detectors
2015-08-21 05:16:31 +00:00
Marc Laval
b0d27ee896
chore(build): add IE10 to CI
2015-08-21 00:16:34 +02:00
Marc Laval
3b4965279c
feat(browser): support Edge
...
Closes #3667
2015-08-18 23:07:59 +00:00
Rado Kirov
272ad61ab1
fix(injectors): reset the construction counter in dynamic strategy.
...
Adds tests for hydrate / dehydrate in cycle.
Closes #3635
2015-08-18 21:03:20 +00:00
Misko Hevery
ea6673947c
refactor: rename annotations to metadata
...
BREAKING CHANGE (maybe)
Well as long as our customers use public API this should not be a
breaking change, but we have changed import structure as well as
internal names, so it could be breaking.
import:
angular2/annotations => angular2/metadata
Classes:
*Annotations => *Metadata
renderer.DirectiveMetadata => renderer.RendererDirectiveMetadata
renderer.ElementBinder => renderer.RendererElementBinder
impl.Directive => impl.DirectiveMetadata
impl.Component => impl.ComponentMetadata
impl.View => impl.ViewMetadata
Closes #3660
2015-08-17 21:23:25 +00:00
Rado Kirov
6c9e712c34
fix(query): do not visit dehydrated injectors.
2015-08-17 11:43:44 -07:00
vsavkin
4845583dcf
refactor(change_detector): made change detection responsible for processing events
...
Closes #3666
2015-08-17 15:39:00 +00:00
Pascal Precht
a06f48e357
test(query_integration): remove duplicated change detection call
...
Closes #3673
2015-08-17 09:22:10 +00:00
Rado Kirov
2686316c90
test(query): adds a view query test in presence of a long ng-for.
...
Closes #3638
Closes #3649
2015-08-14 21:04:29 +00:00
gdi2290
35a83b495a
feat(query_list): delegate `toString` to `_results` array
...
Closes #3004
2015-08-14 03:42:11 +00:00
Misko Hevery
b7837389d7
refactor: Remove isDart from public API
...
BREAKING CHANGE:
- `IS_DARTIUM` no longer exported
2015-08-13 21:18:31 +00:00
Misko Hevery
60af19f0e1
refactor: rename all const to UPPER_CASE
...
Closes #3573
BREAKING CHANGE
Rename:
- `appComponentTypeToken` => `APP_COMPONENT`
- `coreDirectives` => `CORE_DIRECTIVES`
- `formDirectives` => `FORM_DIRECTIVES`
- `formInjectables` => `FORM_BINDINGS`
- `httpInjectables` => `HTTP_BINDINGS`
- `jsonpInjectables` => `JSONP_BINDINGS`
- `PROTO_CHANGE_DETECTOR_KEY` => `PROTO_CHANGE_DETECTOR`
- `appComponentRefPromiseToken` => `APP_COMPONENT_REF_PROMISE`
- `appComponentTypeToken` => `APP_COMPONENT`
- `undefinedValue` => `UNDEFINED`
- `formDirectives` => `FORM_DIRECTIVES`
- `DOCUMENT_TOKEN` => `DOCUMENT`
- `APP_ID_TOKEN` => `APP_ID`
- `MAX_IN_MEMORY_ELEMENTS_PER_TEMPLATE_TOKEN` => `MAX_IN_MEMORY_ELEMENTS_PER_TEMPLATE`
- `appBaseHrefToken` => `APP_BASE_HREF`
2015-08-13 21:18:31 +00:00
Pawel Kozlowski
a7a1851c0f
feat(compiler): allow binding to className using class alias
...
Closes #2364
2015-08-12 20:08:03 +00:00
Rado Kirov
2150a8f9d1
feat(query): view query is properly updated when dom changes.
...
Fixes a bug in view manager util where sibling injector is not correctly
calculated.
ViewQuery no longer includes the view's initiating component injector.
Includes some refactoring of view methods and a removal of a polymorphic
map call.
Closes #3033
Closes #3439
2015-08-12 06:16:09 +00:00
Tobias Bosch
585ea5d600
feat(query): allow to query for `TemplateRef`
...
Part of #1989
Closes #3202
2015-08-12 01:51:18 +00:00
vsavkin
5b5d31fa9a
feat(pipe): added the Pipe decorator and the pipe property to View
...
BREAKING CHANGE:
Instead of configuring pipes via a Pipes object, now you can configure them by providing the pipes property to the View decorator.
@Pipe({
name: 'double'
})
class DoublePipe {
transform(value, args) { return value * 2; }
}
@View({
template: '{{ 10 | double}}'
pipes: [DoublePipe]
})
class CustomComponent {}
Closes #3572
2015-08-12 00:38:40 +00:00
vsavkin
2dcf714d2b
refactor(pipes): use Injector instead of pipe factories for pipe instantiation
...
BREAKING CHANGE
- Pipe factories have been removed.
- PIpe names to pipe implementations are 1-to-1 instead of 1-to-*
Before:
class DateFormatter {
transform(date, args){}
}
class DateFormatterFactory {
supporst(obj) { return true; }
create(cdRef) { return new DateFormatter(); }
}
new Pipes({date: [new DateFormatterFactory()]})
After
class DateFormatter {
transform(date, args){}
}
new Pipes({date: DateFormatter})
2015-08-07 10:02:11 -07:00
Pawel Kozlowski
748c2d6c97
fix(compiler): strip <script> tag from templates
...
Fixes #2766
Closes #3486
2015-08-07 11:54:33 +00:00
vsavkin
07b9be798c
fix(exception_handler): log errors that are thrown by the compiler
2015-08-06 15:26:24 -07:00
Alex Eagle
b4a062983b
fix(dart): @proxy is a value, not a factory
...
Previously I added parens everywhere to make this @proxy() because our typing indicated
it was a function that returned a decorator, but this breaks dart. Instead, the typing needs
to be changed.
Fixes #3494
2015-08-06 10:02:49 -07:00
Tim Blasi
f11f4e0b45
style(dart): Format with dartfmt v0.2.0
...
Format all pure Dart code with package:dart_style v0.2.0
Command:
```
find -type f -name "*.dart" | xargs dartformat -w
```
2015-08-05 11:04:29 -07:00
Marc Laval
166688348a
chore(browsers): fix failing tests in IE11
...
Closes #3388
2015-08-04 22:45:46 +02:00
vsavkin
392de4af67
feat(pipes): replaces iterable and key value diffing pipes with services
...
BREAKING CHANGE:
Directives that previously injected Pipes to get iterableDiff or keyvalueDiff, now should inject IterableDiffers and KeyValueDiffers.
2015-08-04 10:39:55 -07:00
Marc Laval
8822460858
chore(browsers): fix failing tests in Firefox
...
Closes #3386
2015-08-03 12:17:44 +02:00
Misko Hevery
39b0286d6b
fix: remove unused imports
2015-07-31 20:40:33 +00:00
vsavkin
3437d56904
feat(core): made directives shadow native element properties
...
BREAKING CHANGE
Previously, if an element had a property, Angular would update that property even if there was a directive placed on the same element with the same property. Now, the directive would have to explicitly update the native elmement by either using hostProperties or the renderer.
2015-07-31 20:29:57 +00:00
Alex Eagle
3c58878b19
chore(build): Upgrade to TypeScript@1.5.3
...
This change also makes us compliant with 1.6.0-dev compiler,
so we can do some experiments with apps that use 1.6 features
and compile against Angular.
We should probably add a travis build for 1.6 so we stay compatible
with both versions.
2015-07-31 20:01:27 +00:00
Tobias Bosch
dd06a871b7
fix(render): allow to configure when templates are serialized to strings
...
Introduces the injectable `TemplateCloner` that can be configured via the new token `MAX_IN_MEMORY_ELEMENTS_PER_TEMPLATE_TOKEN`.
Also replaces `document.adoptNode` with `document.importNode` as otherwise
custom elements are not triggered in chrome 43.
Closes #3418
Closes #3433
2015-07-31 12:04:32 -07:00
vsavkin
3cda7128d0
cleanup(di): renamed viewInjector and hostInjector
...
BREAKING CHANGE
Replace viewInjector with viewBindings
Replace hostInjector with bindings
2015-07-31 09:49:51 -07:00
Pawel Kozlowski
0a40024995
test(integration): minor tests cleanup
...
Closes #3329
2015-07-31 10:52:42 +02:00
vsavkin
985627bd65
cleanup(DI): clean up visibility decorators
...
BREAKING CHANGE:
Replace @Ancestor() with @Host() @SkipSelf()
Replace @Unbounded() wwith @SkipSelf()
Replace @Ancestor({self:true}) with @Host()
Replace @Unbounded({self:true}) with nothing
Replace new AncestorMetadata() with [new HostMetadata(), new SkipSelfMetadata()]
Replace new UnboundedMetadata() with new SkipSelfMetadata()
Replace new Ancestor({self:true}) with new HostMetadata()
2015-07-31 02:30:26 +00:00
Jeff Cross
4e76cac5b7
fix(core): export LifeCycle at top-level modules
...
LifeCycle can now be imported via angular2/angular2 or
angular2/core, so that end users can inject it without
having to use the full source path.
Closes #3395
2015-07-30 21:52:29 +00:00
Tobias Bosch
0dbdd5cd3c
refactor(render): don’t store DOM nodes but store strings for big ProtoViews.
...
Also inserts comment nodes before/after projected nodes so that text nodes don’t get merged when we serialize/deserialize them.
Closes #3356
First part of #3364
2015-07-30 14:11:13 -07:00
Rado Kirov
34acef58e7
fix(query): view query should not be updated when subviews are attached.
2015-07-29 22:33:15 +00:00
Jeremy Elbourn
f7d7789915
fix(decorators): stop directives inheriting parent class decorators.
...
Fixes #2291
2015-07-29 21:23:31 +00:00
Tobias Bosch
16e3d7e96e
refactor(shadow_dom): remove `ShadowDomStrategy` in favor of `@View(encapsulation)`
...
BREAKING CHANGES:
- `ShadowDomStrategy` was removed. To specify the encapsulation of a component use `@View(encapsulation: ViewEncapsulation.NONE | ViewEncapsulation.EMULATED | ViewEncapsulation.NATIVE)`
- The default encapsulation strategy is now `ViewEncapsulation.EMULATED` if a component contains styles and `ViewEncapsulation.NONE` if it does not. Before this was always `NONE`.
- `ViewLoader` now returns the template as a string and the styles as a separate array
2015-07-28 22:33:11 -07:00
vsavkin
8543c347a8
feat(core): provide an error context when an exception happens in an error handler
2015-07-28 14:22:15 -07:00
Rado Kirov
1d4502944c
fix(query): the view should not be visible to @Query.
...
@ViewQuery is the correct way to query the view template.
2015-07-28 14:16:14 -07:00
Tim Blasi
2c9951273a
style(dart): Run dartfmt v0.1.8+2 on all pure Dart code
...
Update formatting for all pure Dart code in the repo.
2015-07-28 12:44:03 -07:00
Misko Hevery
a2bb81c406
Revert "fix(url_resolver): in Dart make package urls relative to AppRootUrl"
...
This reverts commit 469afda53e
.
2015-07-27 14:15:02 -07:00
Jason Teplitz
7cbaf1076f
refactor(Async): Unify TS and Dart PromiseCompleter naming
...
Also add explicit typing wherever we use PromiseCompleter
2015-07-27 10:28:07 -07:00
Misko Hevery
329a6e00dc
chore(API): cleaned up top level imports (render)
2015-07-25 03:20:15 +00:00
Misko Hevery
c83a3f3372
chore(docs): added more docs for core.ts
2015-07-25 03:20:12 +00:00
yjbanov
469afda53e
fix(url_resolver): in Dart make package urls relative to AppRootUrl
2015-07-24 16:37:01 -07:00
vsavkin
c2bbda02a1
feat(change_detection): provide error context for change detection errors
2015-07-24 15:45:26 -07:00
vsavkin
e744409cb9
feat(exception_handler): print originalException and originalStack for all exceptions
2015-07-24 15:45:26 -07:00
Rado Kirov
2577f5eebf
test(query): adds a test for query in the presense of projection.
...
Query uses only the logical structure of the application, so it is not
affected by projection, which only the rendering structure.
Closes #3278
2015-07-24 15:30:57 -07:00
Hank Duan
a8b75c3d41
feat(testability): hook zone into whenstable api with async support
...
closes(#428 )
2015-07-24 12:46:12 -07:00
Pawel Kozlowski
345fa521dd
fix(change_detection): convert interpolated null values to empty strings
...
Fixes #3007
Closes #3271
2015-07-24 18:05:06 +02:00
Pawel Kozlowski
16493e9769
refactor(integration_test): remove unused imports
2015-07-24 18:05:06 +02:00
Jason Teplitz
771c0170d9
feat(web-workers) Add WebWorker Renderer
...
Allows angular apps to be rendered from the webworker!
Closes #3052 , #3053 , and #3097
2015-07-23 18:29:10 -07:00
Tobias Bosch
46502e4d61
fix(projection): allow more bound render elements than app elements.
...
Fixes #3236
Closes #3247
2015-07-23 15:05:46 -07:00
Tobias Bosch
b44b06c2c9
fix(projection): allow to project to a non text node
...
We already had a test for this, but too low level that it did not catch this null value in `hasNativeShadowRoot`
Fixes #3230
Closes #3241
2015-07-23 14:29:15 -07:00
Tobias Bosch
5ec67ee2a7
fix(compiler): prevent race conditions
...
Previously, the compiler would detect cycles where there were none just because of other components that were compiled in parallel. Furthermore, the way ProtoView merging was triggered could result into early exits resulting in errors when trying to instantiate ProtoViews.
Fixes #3206
Closes #3211
2015-07-23 14:28:38 -07:00
vsavkin
70792c744d
refactor(exception_handler): unified all exception handling
...
BREAKING CHANGE
Previously it was possible to pass a custom error reporter to bootstrap, which was used only during the construction of Injector. This had limited utility, so this capability has been removed.
2015-07-23 11:22:04 -07:00
vsavkin
fdf226ab69
feat(exception_handler): change ExceptionHandler to output context
2015-07-23 11:22:04 -07:00
vsavkin
5a86f85936
feat(di): added context to runtime DI errors
2015-07-22 14:22:46 -07:00
vsavkin
6f4a39c337
refactor(di): removed @Parent
...
BREAKING CHANGE
The @Parent annotation has been removed. Use @Ancestor instead.
@Parent was used to enforce a particular DOM structure (e.g., a pane component is a direct child of the tabs component).
DI is not the right mechanism to do it. We should enforce it using schema instead.
2015-07-21 14:39:28 -07:00
Tobias Bosch
078475a082
refactor(compiler): speed up proto view merging
...
- Don't create intermediate merge results
- Only merge embedded ProtoViews that contain `<ng-content>` tags
Closes #3150
Closes #3177
2015-07-21 13:39:41 -07:00