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
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
Jason Teplitz
296851797b
fix(WebWorkers): Run XHR requests on the UI
...
Fixes issues in dart where dart:html is not available in isolates and
allows for better profiling of XHR requests
Closes #3652
2015-08-15 21:54:51 +00:00
Brian Ford
26d2ea8afc
fix(router): fix regression with generating links to async routes
...
Closes #3650
2015-08-14 22:32:48 +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
Victor Berchet
2fcb4cb769
test(Router): increase the timeout for the back button test
...
The test would fail on Ubuntu 15.04 + Chrome 46 with the standard
timeout.
2015-08-13 17:50:16 -07: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
5c328adb4b
refactor(di): Visibility.(Private|Public|PublicAndPrivate)
...
BREAKING CHANGE:
Rename:
- `PRIVATE` => `Visibility.Private`
- `PUBLIC` => `Visibility.Public`
- `PUBLIC_AND_PRIVATE` => `Visibility.PublicAndPrivate`
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
vsavkin
416fd085b1
refactor(pipes): removed BasePipeTrasnform
...
Closes #3608
2015-08-13 01:39:21 +00:00
vsavkin
839edaa15b
feat(pipes): changed PipeTransform to make onDestroy optional
...
BREAKING CHANGE:
Before:
Angular called onDestroy on all pipes.
After:
Angular calls onDestroy only on pipes that have the onDestroy method.
2015-08-13 01:39:21 +00:00
Tim Blasi
aa480fee72
feat(dart/transform): Support `part` directives
...
Allow users to split libraries using the `part` directive.
Closes #1817
2015-08-13 00:28:42 +00:00
Pawel Kozlowski
ed25a29cc8
fix(NgClass): take initial classes into account during cleanup
...
Closes #3557
2015-08-12 20:08:03 +00:00
Pawel Kozlowski
a7a1851c0f
feat(compiler): allow binding to className using class alias
...
Closes #2364
2015-08-12 20:08:03 +00:00
Pawel Kozlowski
218b037d98
test(NgClass): remove code duplication in tests
2015-08-12 10:29:37 +02: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
Jeff Cross
5a405011de
refactor(http): move http files to top-level module
...
Closes #2680
Closes #3417
2015-08-11 22:32:17 +00:00
Brian Ford
903a0f0513
fix(router): throw when component in route config is not defined
...
Close #3265
Closes #3569
2015-08-11 21:21:32 +00:00
Caitlin Potter
77d3668432
feat(http): serialize search parameters from request options
...
- Extends URLSearchParams API to include operations for combining
different URLSearchParams objects:
These new methods include:
setAll(otherParams): performs `this.set(key, values[0])` for each
key/value-list pair in `otherParams`
appendAll(otherParams): performs `this.append(key, values)` for
each key/value-list pair in `otherParams`
replaceAll(otherParams): for each key/value-list pair in
`otherParams`, replaces current set of values for `key` with
a copy of the list of values.
- RequestOptions do not merge search params automatically (because
there are multiple ways to do this). Instead, they replace any
existing `search` field if `search` is provided. Explicit merging
is required if merging is desirable.
- Some extra test coverage added.
Closes #2417
Closes #3020
2015-08-10 16:29:36 -07:00
Pawel Kozlowski
4f5e405676
fix(UrlResolver): encode URLs before resolving
...
This commits makes JS implementation to behave like Dart one.
Fixes #3543
Closes #3545
2015-08-10 19:50:10 +00:00
Brian Ford
ac6227e434
feat(router): auxiliary routes
...
Closes #2775
2015-08-10 10:47:37 -07:00
Matias Niemelä
24eabb9bb1
test(matchers): add support for toHaveClass in tests
2015-08-08 02:22:45 +00:00
jteplitz
a1c53eec6b
Refactor(WebWorker): Unify WebWorker naming
...
Closes #3205
2015-08-07 14:43:52 -07: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
vsavkin
06da60f4b7
feat(di): added resolveAndInstantiate and instantiateResolved to Injector
...
These two methods can be used to create objects in the context of the injector without storing them in the injector.
2015-08-07 08:29:19 -07:00
Pawel Kozlowski
ff1b110ae1
fix(CSSClass): change selector to ng-class
...
BREAKING CHANGE:
The selector for the CSSClass directive was changed
from [class] to [ng-class]. The directive itself was
renamed from CSSClass to NgClass
Closes #3498
2015-08-07 14:56:41 +02:00
Pawel Kozlowski
748c2d6c97
fix(compiler): strip <script> tag from templates
...
Fixes #2766
Closes #3486
2015-08-07 11:54:33 +00:00
Marc Laval
a37de36fa6
fix(test_lib): run unit tests in default Documnent
...
Closes #3501
Fixes #3475
2015-08-07 09:57:59 +02:00
vsavkin
106a28b8dc
feat(refactor): replaced ObservablePipe and PromisePipe with AsyncPipe
2015-08-07 02:10:32 +00:00
Tim Blasi
40a3cd2ab1
style(dart/transform): Do not format generated code by default
...
Formatting code requires time and memory during the build -- do not do
it unless explicitly requested via a parameter to the transformer.
Add an entry to the
[wiki](https://github.com/angular/angular/wiki/Angular-2-Dart-Transformer )
describing the added parameter.
2015-08-06 23:32:01 +00:00
Tim Blasi
3db0ae1dac
refactor(dart/transform): Show friendly messages for transform failures
...
Previously, the error messages coming out of the Dart transformer were
opaque when those errors came from the analyzer (for example, analyzer
parse errors). Log more useful errors when they are caught by the
transform code.
2015-08-06 22:28:10 +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
Pascal Precht
39ad50657e
refactor(di/tests): removes unecessary for-loop
...
Closes #3268
2015-08-04 20:14:04 +00:00
Martin Probst
861be30021
feat: export a proper promise type.
...
Promise used to be typed as any, giving incorrect results. This change
fixes places that were incorrectly typed and re-exports the actual
Promise type from es6-promise.
It also fixes a series of compilation errors discovered/triggered by
this change.
2015-08-04 19:56:02 +00:00
Tim Blasi
c58b0ff787
refactor(change_detect): Share more codegen logic
...
Move more logic in our codegen into a shared util which is called by the
Jit & Prege change detector code.
2015-08-04 18:55:07 +00: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
Jeremy Elbourn
c20a5d65d8
fix(compiler): Allow components to use any style of selector. Fixes #1602
2015-08-04 09:34:03 -07:00
Pawel Kozlowski
4422819754
fix(parser): detect empty expression in strings to interpolate
...
Fixes #3412
Closes #3451
2015-08-04 08:44:14 +02:00
gdi2290
cfedc77ce1
test(XHRConnection): normalize responseText and response
...
normalize xhr.responseText and xhr.response
- [x] Tests
Closes #2882
2015-08-04 00:39:11 +00:00
gdi2290
96eefdfebc
fix(XHRConnection): use xhr status code
...
closes #2841
- [x] Tests
2015-08-04 00:39:11 +00:00
Matias Niemelä
7bf7ec6d9c
fix(router): ensure navigation via back button works
...
The router will now navigate and respect the current address value
accordingly whenever a popState event is handled.
Closes #2201
2015-08-03 22:24:57 +00:00