Victor Berchet
aaa215514b
refactor(ListWrapper): get ride of ListWrapper.map
2015-10-07 06:39:14 +00:00
Igor Minar
15ab6f6ea8
fix(location): improve the 'No base href set' error message
2015-10-06 20:59:02 -07:00
vsavkin
dea6a4593b
cleanup(core): making @View optional
...
Closes #4566
2015-10-07 02:16:42 +00:00
vsavkin
bd31b01690
feat(core): add syntax sugar to make @View optional
2015-10-07 02:16:42 +00:00
Tim Blasi
a4869c874b
build(dart): Remove unused Dart benchmarks
2015-10-06 14:11:03 -07:00
Alex Eagle
6093e28b61
fix(typings): repair broken typechecks
...
We had the typechecker disabled by accident, and many problems snuck in
Fixes #4507
Closes #4508
2015-10-06 13:28:17 +00:00
Tobias Bosch
0b3e4fa090
refactor(core): move `ViewEncapsulation` and `ViewType` to the right places
...
Closes #4526
2015-10-05 11:22:21 -07:00
Tobias Bosch
0299d4af00
fix(core): keep styles for `ViewEncapsulation.Native` isolated per component
...
BREAKING CHANGE:
- `Renderer.registerComponent` now takes an additional argument.
Fixes #4513
Closes #4524
2015-10-05 10:34:42 -07:00
Tobias Bosch
a9aef8e5e6
fix(core): set `ViewEncapsulation.Emulated` as the default again
...
Fixes #4494
2015-10-05 10:33:58 -07:00
Tobias Bosch
6fe8b85295
fix(render): keep bindings of components in content and view in the right order
...
Bindings in the component view have to be first, before
bindings of components in the light dom (i.e. have the same
order as used in the `ViewManagerUtils.createView()` method.
Fixes #4522
Closes #4523
2015-10-05 10:10:47 -07:00
Alex Eagle
208f3d4c65
fix(typings): repair broken type-checking for StringMap
...
Note that the previous type of StringMap was overly permissive and didn't catch errors.
Also we have to explicitly type empty objects, which is explained here:
https://github.com/Microsoft/TypeScript/issues/5089
Closes #4487
2015-10-03 01:09:42 +00:00
Alex Eagle
7c4199cd1c
chore(typings): remove StringMap
...
This was a poorly typed attempt to mimic TypeScript's index signatures,
which we can use instead.
This eliminates a very strange type that we were exposing to users, but
not re-exporting through our public API.
Fixes #4483
2015-10-03 01:09:42 +00:00
Rob Wormald
01fb06a377
chore(http): Use Observables in Http
...
- Remove ObservableWrapper/EventEmitter from Http.
- Temporarily use complete Rx build w/ all operators.
2015-10-02 17:20:25 -07:00
vsavkin
c9901c5fe0
feat(core): support properties and events in addition to inputs and outputs to make transition easier
...
Closes #4482
2015-10-02 23:23:15 +00:00
Tobias Bosch
13161ae5aa
refactor(core): move APP_ID from render/dom/dom_tokens into application_tokens
2015-10-02 13:38:52 -07:00
Tobias Bosch
6b5d345a2b
refactor(core): adjust imports for move files to the right place
...
- render/xhr_* -> compiler/xhr_*
- render/event_config -> linker/event_config
- render/dom/schema -> compiler/schema
- render/dom/compiler/* -> compiler/*
- render/dom/view/shared_styles_host -> render/dom/shared_styles_host
2015-10-02 13:38:51 -07:00
Tobias Bosch
2450a3c5b0
refactor(core): move files to the right place
...
- render/xhr_* -> compiler/xhr_*
- render/event_config -> linker/event_config
- render/dom/schema -> compiler/schema
- render/dom/compiler/* -> compiler/*
- render/dom/view/shared_styles_host -> render/dom/shared_styles_host
- services/url_resolver -> compiler/url_resolver
- services/app_root_urlo -> compiler/app_root_url
2015-10-02 13:38:51 -07:00
mgechev
34518f0f2d
feat(http): Add support for strings as http method names
...
Closes #4331
2015-10-02 11:33:49 -07:00
Tobias Bosch
e8e57cdd73
refactor(core): adjust imports for rename angular2/src/compiler -> angular2/src/core/compiler
2015-10-02 08:59:43 -07:00
Tobias Bosch
aa3d94149f
refactor(core): rename angular2/src/compiler -> angular2/src/core/compiler
2015-10-02 08:42:12 -07:00
Tobias Bosch
6248a5e846
refactor(core): move core/compiler to core/linker, adjust imports
2015-10-02 08:42:12 -07:00
Tobias Bosch
9f4fa1ab0a
refactor(core): move core/compiler to core/linker
2015-10-02 08:42:11 -07:00
Tobias Bosch
d21c7bdf90
refactor(compiler): remove unused code
...
BREAKING CHANGE:
- Removes `ChangeDetection`, use a binding for `ChangeDetectorGenConfig` instead
to configure change detection.
- `RenderElementRef.renderBoundElementIndex` was renamed to `RenderElementRef.boundElementIndex`.
- Removes `ViewLoader`, use `XHRImpl` instead.
2015-10-01 22:27:41 -07:00
Tobias Bosch
76247b7097
refactor(compiler): use the new compiler everywhere
...
Closes #3605
BREAKING CHANGE:
- we don't mark an element as bound any more if it only contains text bindings
E.g. <div>{{hello}}</div>
This changes the indices when using `DebugElement.componentViewChildren` / `DebugElement.children`.
- `@Directive.compileChildren` was removed,
`ng-non-bindable` is now builtin and not a directive any more
- angular no more adds the `ng-binding` class to elements with bindings
- directives are now ordered as they are listed in the View.directives regarding change detection.
Previously they had an undefined order.
- the `Renderer` interface has new methods `createProtoView` and `registerComponentTemplate`. See `DomRenderer` for default implementations.
- reprojection with `ng-content` is now all or nothing per `ng-content` element
- angular2 transformer can't be used in tests that modify directive metadata.
Use `angular2/src/transform/inliner_for_test` transformer instead.
2015-10-01 18:48:27 -07:00
Yegor Jbanov
841f8789fd
refactor(transformer): precompile stylesheets
...
Part of #3605
2015-10-01 18:48:27 -07:00
vsavkin
adbfd29fd7
feat(core): renames Property into Input and Event into Output
...
BREACKING CHANGE:
Before: @Directive({properties: ['one'], events: ['two']})
After: @Directive({inputs: ['one'], outputs: ['two']})
Before: @Component({properties: ['one'], events: ['two']})
After: @Componet({inputs: ['one'], outputs: ['two']})
Before: class A {@Property() one; @Event() two;}
After: class A {@Input() one; @Output() two;}
2015-10-01 04:36:23 +00:00
vsavkin
00a4b2e28f
feat(forms): make NgControl -> NgValueAccessor dependency unidirectional
...
Closes #4421
2015-10-01 01:47:18 +00:00
vsavkin
cec4b36d9b
fix(change_detection): _throwError should not mask the original exception
2015-09-30 18:18:28 -07:00
Marc Laval
eafa482052
chore(saucelabs): add latest Safaris
...
Closes #4411
2015-09-30 21:38:04 +00:00
vsavkin
3aa204791b
feat(query): make QueryList notify on changes via an observable
...
BREAKING CHANGE:
Before: query.onChange(() => ...);
After: query.changes.subscribe((iterable) => {});
Closes #4395
2015-09-30 15:45:16 +00:00
Alex Eagle
9b7378d132
chore(typings): remove traceur-runtime.d.ts
...
fixes #4297
Closes #4415
2015-09-30 00:07:16 +00:00
Alex Eagle
b4fe590b2d
chore(ts): fix TODOs that were pending on 1.6 upgrade
...
Closes #4377
2015-09-29 03:23:25 +00:00
Tobias Bosch
8ff65a30c7
refactor(compiler): don’t require `id` in metadata and use `appId`
...
The output of the compiler has to be the same
given the same input. Requiring a unique id for
every type already during compilation makes it
hard to parallelize compilation.
Part of #3605
Closes #4397
2015-09-28 19:47:24 -07:00
cexbrayat
e2f5d87ff7
fix(services): export title service
...
Signed-off-by: cexbrayat <cedric@ninja-squad.com>
Closes #4271
2015-09-28 23:23:40 +00:00
Alex Rickabaugh
7714d6a6eb
fix(forms): avoid issues with nulls checking on validation status and other form states.
...
Closes #4338
2015-09-28 21:01:51 +00:00
Rob Wormald
a88e6f3106
refactor(http): use Observables in Http backends
...
BREAKING CHANGE: Http now returns Rx Observables directly, so calling .toRx() is no longer necessary. Additionally, Http calls are now cold, so backend requests will not fire unless .subscribe() is called.
closes #4043 and closes #2974
Closes #4376
2015-09-27 22:15:30 +00:00
Victor Berchet
0319417a1b
feat(Binding): improve errors
...
fix #4358
Closes #4360
2015-09-25 22:05:36 +00:00
Tobias Bosch
1cf45757cd
feat(render): add generic view factory based on the template commands
...
Part of #3605
Closes #4367
2015-09-25 11:56:58 -07:00
Tobias Bosch
0ed6fc4f6b
fix(compiler): minor cleanups and fixes
...
Part of #3605
2015-09-25 11:27:39 -07:00
Marc Laval
9c9769047d
fix(test): StyleCompiler tests failing in Android browsers
...
Closes #4351
2015-09-25 07:34:17 +00:00
Victor Berchet
0a88e7b736
feat(change detection): export SimpleChange
...
Closes #4337
2015-09-25 02:33:41 +00:00
vsavkin
4efc4a5520
feat(query): remove the 3-query-per-element limit
...
Closes #4336
2015-09-24 21:09:02 +00:00
vsavkin
225eab8f25
cleanup(change_detection): make Locals private
...
Closes #4321
2015-09-24 18:10:47 +00:00
vsavkin
7c2c1a8e03
docs(change_detection): add docs to ChangeDetectorRef
2015-09-24 18:10:47 +00:00
Tobias Bosch
7470ad1bd1
refactor(compiler): various cleanups
...
- use `$implicit` variable value correctly
- handle `ng-non-bindable` correctly
- add some more assertions to `TemplateCompiler`
- make `CompiledTemplate` const
- fix default value for `@Directive.moduleId`
- add new compiler to application bindings
BREAKING CHANGE:
- `Compiler.compileInHost` and all methods of `DynamicComponentLoader` don’t take `Binding` any more, only `Type`s. This is in preparation for the new compiler which does not support this.
Part of #3605
Closes #4346
2015-09-24 10:56:29 -07:00
Marc Laval
bffa2cb59b
feat(animate): cross-browser compatibility
...
Closes #4243
2015-09-24 10:24:40 +02:00
Misko Hevery
8427863bab
feat(upgrade): Allow including ng2/1 components in ng1/2
...
Closes #3539
2015-09-23 05:02:43 +00:00
Brian Ford
41b019f5f8
refactor(router): do not export RootRouter
...
BREAKING CHANGE:
It's unlikely that any apps were explicitly referencing `RootRouter`, but if they were they should
prefer to use the `routerBindings` helper or the `ROUTER_BINDINGS` const exported from `angular2/router`
2015-09-22 23:51:19 +00:00
Misko Hevery
af2cd4d6f3
fix(api): align dart/js APIs
2015-09-22 23:11:40 +00:00
Alex Eagle
577ee3744a
fix(bug): reflect Dart interfaces from superclass as well
...
fixes #4221
Closes #4222
2015-09-22 22:31:07 +00:00
vsavkin
238dfc1e17
cleanup(di): make KeyRegistry private
2015-09-22 21:38:33 +00:00
vsavkin
29b56ceb40
cleanup(di): make DependencyProvider private
2015-09-22 21:38:33 +00:00
Tobias Bosch
cc0c30484f
refactor(compiler): cleanup and preparation for integration
...
- Rename `DirectiveMetadata` into `CompileDirectiveMetadata`, merge
with `NormalizedDirectiveMetadata` and remove `ChangeDetectionMetadata`
- Store change detector factories not as array but
directly at the `CompiledTemplate` or the embedded template
to make instantiation easier later on
- Already analyze variable values and map them
to `Directive.exportAs`
- Keep the directive sort order as specified in the
`@View()` annotation
- Allow to clear the runtime cache in `StyleCompiler`
and `TemplateCompiler`
- Ignore `script` elements to match the semantics of the
current compiler
- Make all components dynamically loadable and remove
the previously introduced property `@Component#dynamicLoadable`
for now until we find a better option to configure this
- Don’t allow to specify bindings in `@View#directives` and `@View#pipes` as this was never supported by the transformer (see below for the breaking change)
BREAKING CHANGE:
- don't support DI bindings in `@View#directives` and `@View@pipes` any more in preparation of integrating the new compiler. Use `@Directive#bindings` to reexport directives under a different token instead.
Part of #3605
Closes #4314
2015-09-22 12:50:03 -07:00
vsavkin
b0effe8e27
docs(di): add docs to Injector
...
Closes #4254
2015-09-21 21:55:04 +00:00
vsavkin
c2a60f1624
feat(core): add support for @ContentChild and @ViewChild
...
Closes #4251
2015-09-20 01:45:09 +00:00
vsavkin
2e9de0b169
feat(core): add sugar to use ContentChildren and ViewChildren as prop decorators
...
Closes #4237
2015-09-20 00:43:04 +00:00
vsavkin
5dbe292615
feat(core): add support for ContentChildren and ViewChildren
2015-09-20 00:43:04 +00:00
Brian Yarger
3525d8a394
fix(http): throw if url is not string or Request
...
Closes #4245
Closes #4257
2015-09-18 23:33:17 +00:00
Marc Laval
390aacd442
fix(facade): workaround for lack of Symbol.iterator in es6-shim
...
Closes #4219
Fixes #4216
2015-09-18 09:46:13 +02:00
Pascal Precht
5a3ce87915
chore(http): remove unused properties from Request
...
This removes properties mentioned in #3339
Closes #3339
Closes #3823
2015-09-17 17:16:47 -07:00
Tobias Bosch
f490565b09
refactor(compiler): cleanup method and property names
...
Closes #4236
2015-09-17 20:41:37 +00:00
Tobias Bosch
457b689bf0
feat(compiler): add TemplateCompiler
...
TemplateCompiler is the entry point to the new compiler
Related to #3605
Closes #4220
2015-09-17 04:24:15 +00:00
Harry Terkelsen
70586b668c
fix(debug): make debug tools take ComponentRef
...
The debug tools used to take ApplicationRefs, which are the old return
type of bootstrap. Now bootstrap returns ComponentRef, so the debug
tools should be updated.
Closes #4203
2015-09-16 18:00:28 +00:00
Pawel Kozlowski
73351ac00f
fix(NgClass): ignore empty and blank class names
...
Fixes #4033
Closes #4173
2015-09-16 07:56:48 +00:00
vsavkin
16bf335a4a
refactor(async): replace RxJS with RxNext
...
Closes #3110
Closes #4201
2015-09-15 23:44:57 +00:00
Pawel Kozlowski
045cc8269f
fix(compiler): remove attributes when expression in [attr.foo]='exp' evaluates to null
...
Fixes #4150
Closes #4163
2015-09-15 19:59:12 +00:00
vsavkin
9f999dd8e4
cleanup(pipes): clean up imports
2015-09-15 11:47:09 -07:00
Lenny
d890c4f827
refactor(pipes): remove LimitTo pipe in favor of slice pipe
2015-09-15 11:42:31 -07:00
Lenny
c2043ec681
feat(pipes): add slice pipe that supports start and end indexes
2015-09-15 11:42:30 -07:00
Lenny
0808eeaa0c
feat(StringWrapper): add support for JS slice method to string
2015-09-15 11:42:30 -07:00
Lenny
bced3aaa17
fix(ListWrapper): make list slice in dart return empty list if start and end are inverted like JS
2015-09-15 11:42:30 -07:00
Misko Hevery
105db02e07
fix(api): remove DomRenderer from public API
...
Closes #4187
2015-09-15 18:12:05 +00:00
Misko Hevery
61b6a475a6
fix(api): remove RecordViewTuple / cleanup NgFor
2015-09-15 18:12:05 +00:00
Misko Hevery
6db9f9013d
fix(api): remove UNDEFINED
2015-09-15 18:12:05 +00:00
Misko Hevery
f7d46e7159
fix(api): remove animation from public API
2015-09-15 18:12:05 +00:00
Misko Hevery
5b6d576f93
chore: add test to prevent accidental changes to public API
2015-09-15 18:12:05 +00:00
Ted Sander
a15b679494
feat(ng_for): Add Even and Odd variables to ng_for
...
Add even and odd local variables to ng_for to allow developers to style table rows differently and other features.
Closes #4181
2015-09-15 17:45:32 +00:00
Marc Laval
f7b6ff0520
chore(build): improve reliability of the saucelabs job
...
Closes #4091
Closes #4047
2015-09-15 18:34:13 +02:00
Marc Laval
55290b9b21
fix(test): PostMessageBusSink tests failing in slow browsers
2015-09-15 18:33:31 +02:00
Marc Laval
d6464633fa
fix(test): StyleCompiler tests failing in Android browsers
2015-09-15 18:33:30 +02:00
Marc Laval
c83207f231
fix(test): Android browser does not support element.click()
2015-09-15 18:33:29 +02:00
Marc Laval
3a7b50f244
fix(shims): function.name to return empty string when no name
2015-09-15 18:33:28 +02:00
Brian Ford
5298eb0709
feat(router): enforce convention of CamelCase names in route aliases
...
Closes #4083
2015-09-14 22:46:02 -07:00
Brian Ford
cb4a9a3c04
refactor(router): use CamelCase aliases for routes
2015-09-14 22:46:02 -07:00
Alex Rickabaugh
97d1844bfc
feat(core): Add a long-form syntax for Angular bootstrapping.
...
This change adds a syntax for bootstrapping Angular on a page that allows more fine-grained control of the hierarchy created. platform() creates a platform injector (of which there can only be one). From the platform, .application() creates an Angular application including a Zone and all specified application bindings (e.g. for the DOM, HTTP, Compiler, Renderer, etc). At the application level, .bootstrap() will bootstrap the given component into that application.
Closes #3852
2015-09-14 23:37:39 +00:00
Alex Rickabaugh
193792c27f
refactor(router): Switch from using APP_COMPONENT binding to a manual ROUTER_PRIMARY_COMPONENT binding.
...
With the coming bootstrapping changes, a single application (and thus Router) can have multiple root components. One of these needs to be identified as the "primary" component from which the Router will load its configuration. This is now done by providing a ROUTER_PRIMARY_COMPONENT binding to the primary component type.
2015-09-14 23:37:39 +00:00
Brian Ford
d2458866c1
refactor(router): remove unused Pipeline
2015-09-14 21:21:57 +00:00
Brian Ford
309944931f
fix(router): recognize child components with empty segments
...
Previosly, recognition ended when a parent captured all the parsed URL segments.
This caused routes that delegated from a parent to a child with an empty segment
to never be recognized.
Closes #4178
2015-09-14 20:22:40 +00:00
Misko Hevery
63e785902f
feat(change_detection): allow triggering CD form ChangeDetectorRef
...
Closes #4144
2015-09-14 18:07:31 +00:00
Robert Messerle
39ce9d3397
feat(animate): adds basic support for CSS animations on enter and leave
...
Closes #3876
2015-09-14 17:37:09 +00:00
Jason Teplitz
787d1f955f
fix(Typings): Remove public exports added in 1926335b85
...
Closes #4147
2015-09-11 19:16:57 -07:00
Tobias Bosch
0246b2a2cb
feat(compiler): support creating template commands
...
Closes #4142
2015-09-12 01:16:06 +00:00
Tobias Bosch
71cbb49672
refactor(compiler): allow to serialize and deserialize `DirectiveMetadata`
2015-09-12 01:16:06 +00:00
Tobias Bosch
67c79ba3f6
fix(test): make `evalModule` faster by caching spawned modules in the browser
2015-09-12 01:16:06 +00:00
Brian Ford
d9036c6cf3
feat(router): introduce new navigate method
...
Previously, `router.navigate` took a string representing the URL.
Now, it accepts an array that mirrors the link DSL.
Closes #4040
BREAKING CHANGE
The old method has been renamed to `router.navigateByUrl`.
Either change your navigation calls to use the DSL (preferred) or
call `router.navigateByUrl` instead.
Closes #4074
2015-09-11 17:20:13 -07:00
Brian Ford
acc2722cb8
refactor(router): rename navigate and navigateInstruction methods
2015-09-11 17:17:45 -07:00
Brian Ford
5e49d7e624
fix(router): load route config from async instructions
...
Previously, async routes generated from links would not load the configs of
their resolved components, which led to broken links in the children of the
async instruction's component.
This commit fixes the bookkeeping in the Router to correctly load the configs.
Fixes internal b/23791558
Closes #4146
2015-09-11 16:23:40 -07:00
Brian Ford
3c13f5fd4b
test(router): add integration test for async routes with children
2015-09-11 11:24:36 -07:00
vsavkin
f6cc573687
fix(exception_handler): fix error messages of wrapped exceptions
...
Closes #4117
2015-09-10 22:26:56 +00:00
vsavkin
892d2b9652
refactor(exception_handler): move ExceptionHandler into facade
2015-09-10 22:26:55 +00:00
Rado Kirov
63141ab9ab
chore(tools): remove rtts from the repo.
...
Closes #4107
2015-09-10 21:10:36 +00:00
Jason Teplitz
1926335b85
fix(Typings): Output public constructors in .d.ts files
...
Closes #3926 .
Closes #3963
2015-09-10 01:37:43 +00:00
Tobias Bosch
12dd44f7f6
feat(compiler): add change detector generation
...
Runtime and Codegen.
Part of #3605
Closes #4057
2015-09-10 00:59:34 +00:00
Brian Ford
77e8304fc4
fix(router): do not reuse common children with different parents
2015-09-09 12:03:59 -07:00
Brian Ford
8aec215ca0
fix(router): throw when generating non-terminal link
...
Closes #3979
Closes #4092
2015-09-09 15:53:30 +00:00
Igor Minar
f91c087c46
feat(TestComponentBuilder): add #overrideBindings and #overrideViewBindings
...
Closes #4052
2015-09-09 14:20:05 +00:00
Igor Minar
39a6f85e95
test(TestComponentBuilder): add tests for overriding child component's directive
2015-09-09 14:20:05 +00:00
yjbanov
8dd6c4680b
feat(perf): change detection profiler
...
Closes #4000
2015-09-09 01:12:58 +00:00
Jason Teplitz
f3da37c92f
fix(WebWorker): Add zone support to MessageBus
...
Closes #4053
2015-09-08 14:03:58 -07:00
vsavkin
a8bdb693b9
feat(pipes): add support for pure pipes
...
By default, pipes are pure. This means that an instance of a pipe will be reused and the pipe will be called only when its arguments change.
BREAKING CHANGE
Before:
@Pipe({name: 'date'}) class DatePipe {} defines an impure pipe.
After:
@Pipe({name: 'date'}) class DatePipe {} defines a pure pipe.
@Pipe({name: 'date', pure: false}) class DatePipe {} defines an impure pipe.
Closes #3966
2015-09-08 16:24:27 +00:00
Matt Greenland
e36966b83c
fix(forms): Update NgModel's viewModel when model changes
...
Closes #3627
2015-09-05 11:58:42 -07:00
Jeff Cross
f14b212dc9
refactor: export core APIs from angular2/core
...
This change moves many APIs to the angular2/core export.
This change also automatically adds FORM_BINDINGS in
the application root injector.
BREAKING CHANGE:
Many dependencies that were previously exported from specific
APIs are now exported from angular2/core. Affected exports, which
should now be included from angular2/core include:
angular2/forms
angular2/di
angular2/directives
angular2/change_detection
angular2/bootstrap (except for dart users)
angular2/render
angular2/metadata
angular2/debug
angular2/pipes
Closes #3977
2015-09-05 07:01:34 +00:00
Jeff Cross
6d13cf9b8f
refactor(core): move more modules into core
2015-09-05 07:01:34 +00:00
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
Rado Kirov
e9ad100b1f
fix(build): switch to cjs output for es5.
...
System output does not work at the current versions of TS and
system.js. Will revisit after upgrading TS.
Removes unused traceur tooling.
Closes #3974
2015-09-04 23:10:34 +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
Tobias Bosch
2a126f72f3
feat(tests): add helper to eval a module
...
Needed later for unit tests for code gen and runtime code
in #3605
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
Jason Teplitz
696edde17c
fix(WebWorker): Fix Todo Server demo and add test to ensure the demo can bootstrap.
...
Closes #3970
2015-09-03 18:52:06 +00:00
vsavkin
79994b2abf
refactor(forms): use multibindings instead of query to get a list of validators
...
BREAKING CHANGE
Before:
@Directive({selector: '[credit-card]', bindings: [new Binding(NgValidator, {toAlias: forwardRef(() => CreditCardValidator)})]})
class CreditCardValidator {
get validator() { return CreditCardValidator.validate; }
static validate(c): StringMap<string, boolean> {...}
}
After:
function creditCardValidator(c): StringMap<string, boolean> {...}
@Directive({selector: '[credit-card]', bindings: [new Binding(NG_VALIDATORS, {toValue: creditCardValidator, multi: true})]})
class CreditCardValidator {}
2015-09-03 15:18:18 +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
Tobias Bosch
2fea0c2602
feat(compiler): allow to create ChangeDetectors from parsed templates
...
Part of #3605
Closes #3950
2015-09-02 23:20:14 +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
Jason Teplitz
358908e605
feat(WebWorker): Expose MessageBroker API
...
Closes #3942
2015-09-01 23:53:54 +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
Brian Ford
ad1bd5fc11
refector(router): rename outlet integration spec to navigation spec
...
The new name better reflects the behavior under test.
2015-08-31 23:24:09 +00:00
Isaac Park
3791c4a682
fix(RouteRegistry): initialize RouteParams.params
...
Fix a bug caused by RouteRegistry.generate not initializing RouteParams.params to a StringMap
Closes #3755
2015-08-31 22:02:50 +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
Jason Teplitz
9619636ba7
fix(WebWorker): WebWorkerRenderer removes views after they're destroyed
...
closes #3240
Closes #3894
2015-08-31 18:33:25 +00:00
Brian Ford
7de447e4b5
test(router): fix typo in spec name
2015-08-31 18:09:32 +00:00
Brian Ford
36eb9d392d
feat(router): router-link-active CSS class support
...
The `[router-link]` directive now applies the `router-link-active` CSS
class to the associated element whenever the link is active.
Closes #3209
2015-08-31 18:09:32 +00:00
Brian Ford
de37729823
feat(router): implement Router.isRouteActive
2015-08-31 18:09:32 +00:00
Brian Ford
e1a7e0329c
feat(router): hash-cons ComponentInstructions
2015-08-31 18:09:32 +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
Tobias Bosch
0f4eb1b524
refactor(compiler): simplify metadata
2015-08-28 14:55:23 -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
Tim Blasi
02d9e18279
chore(transform): Move registrations tests to modules_dart
...
This moves tests which were created in 104302a958
and were not moved in 88a5b8da0f
.
2015-08-27 20:54:47 +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
Tobias Bosch
9f576b0233
feat(compile): add HtmlParser, TemplateParser, ComponentMetadataLoader
...
First bits of new compile pipeline #3605
Closes #3839
2015-08-27 00:05:48 +00: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
Jason Teplitz
21f60c5dce
refactor(WebWorker): Abstract message passing and serialization to UIMessageBroker
...
closes #3703
Closes #3815
2015-08-25 03:18:22 +00:00
Brian Ford
aeef19e2a6
refactor(router): reorganize 2.x tests
2015-08-24 20:55:50 +00:00
Jeff Cross
88a5b8da0f
chore(transform): move transform module to modules_dart
...
The build/pure-packages.dart gulp task has also been updated to move the files into the angular2 tree.
Closes #3729
2015-08-24 03:39:07 +00: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
b039ec3da3
fix(parser): detect and report interpolation in expressions
...
Fixes #3645
Closes #3750
2015-08-23 14:06:30 +00: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
Pawel Kozlowski
3871f89119
fix(ViewLoader): provide componentId in missing template / templateUrl errors
...
Befor this change it wasn't clear which component is faulty
2015-08-23 07:26:56 +00:00
Misko Hevery
5d403966d5
refactor: rename web-workers to web_workers
...
Closes #3683
2015-08-22 14:20:33 -07:00
vsavkin
e8e430e630
feat(change_detection): added support for observable components and directives
2015-08-21 15:44:45 -07: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
Misko Hevery
b986c54079
chore: remove int in favor for number
...
Closes #3511
2015-08-21 05:10:31 +00:00
yjbanov
8336881a85
feat: track unused reflection data
2015-08-20 18:20:53 -07:00
Marc Laval
b0d27ee896
chore(build): add IE10 to CI
2015-08-21 00:16:34 +02:00
Marc Laval
1c9be9b5aa
chore(build): add Firefox to CI
2015-08-21 00:16:33 +02:00
vsavkin
195c5c21d4
fix(change_detection): update the right change detector when using ON_PUSH mode
...
Previously, in a case where you have a mix of ON_PUSH and DEFAULT detectors, Angular would update the status of a wrong detector.
2015-08-20 21:55:50 +00:00
Jason Teplitz
0b59e664ec
feat(WebWorker) Add channel support to MessageBus
...
closes #3661 and #3686
2015-08-19 10:57:22 -07:00
Tim Blasi
104302a958
refactor(dart/transform): Remove unnecessary getter/setter codegen
...
Currently the transformer generates all getters and setters even when
creating pre-generated change detectors, which remove the need for them.
Generate getters and setters via the model provided by `ProtoViewDto`,
which contains enough information to allow omitting unnecessary getters
and setters from code output.
Allow generating getters, setters, and method names which are Dart
pseudo keywords.
Closes #3489
2015-08-19 17:36:12 +00:00
Marc Laval
873b6da120
chore(test): disable tests based on Intl API in non-Chrome browsers
...
Closes #3692
2015-08-19 09:45:34 +02:00
Misko Hevery
ccfadb9b47
refactor: make bindings/directives names consistent
...
BREAKING CHANGE
- `routerDirectives` => `ROUTER_DIRECTIVES`
- `routerInjectables` => `ROUTER_BINDINGS`
- `ELEMENT_PROBE_CONFIG` => `ELEMENT_PROBE_BINDINGS`
2015-08-18 21:23:26 -07:00
Brian Ford
72e0b8f7dc
fix(router): allow router-link to link to redirects
...
Closes #3335
Closes #3624
2015-08-19 01:34:46 +00:00
Brian Ford
b5c4d8ba79
feat(facade): add maximum method for ListWrapper
2015-08-19 01:34:45 +00:00
Brian Ford
5c95b376b5
fix(router): subscribe should return subscription
...
Closes #3491
Closes #3695
2015-08-19 01:34:08 +00: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
gdi2290
235dec26fc
fix(browser_adapter.ts): baseElement.getAttribute
...
currently throwing an error
```error
Error during instantiation of LocationStrategy! (RouterLink -> Router
-> Location -> LocationStrategy).
ORIGINAL ERROR: TypeError: baseElement.attr is not a function
```
Closes #3214
2015-08-18 19:07:47 +00:00
vsavkin
cbfc9cb344
feat(change_detection): added an experimental support for observables
2015-08-18 19:00:04 +00:00
Daniel Rasmuson
ed81cb94b0
feat(router): user metadata in route configs
...
Provide the ability to attach custom data onto a route and retrieve
that data as an injectable (RouteData) inside the component.
Closes #2777
Closes #3541
2015-08-18 10:33:19 -07:00
Victor Berchet
1f54e64fcf
feat(PropertyBindingParser): support onbubble-event as an alternate syntax for (^event)
...
fixes #3448
Closes #3616
2015-08-18 17:30:48 +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
vsavkin
5e6317fecc
feat(change_detection): request a change detection check when an event happens
...
Closes #3679
2015-08-17 19:08:03 +00:00
vsavkin
823fa4689e
refactor(change_detection): generate handleEvent only when necessary
2015-08-17 19:08:03 +00:00
Rado Kirov
6c9e712c34
fix(query): do not visit dehydrated injectors.
2015-08-17 11:43:44 -07:00