Jacob MacDonald
7986e7ce7e
feat(transformer): Support @Injectable() on static functions
2015-07-06 15:47:54 -07:00
Jacob MacDonald
311b47720b
fix(transformer): Fix string interpolation for bindings.
...
Previously it did not stringify properties and used `+` instead of ` `.
2015-07-06 14:57:21 -07:00
Pawel Kozlowski
582551bea9
test(ProtoViewBuilder): correct duplicate tests
...
Closes #2860
2015-07-06 22:40:49 +02:00
Itay Radotzki
883b506445
fix(Http): add support for headers
2015-07-06 10:06:12 -07:00
Igor Minar
d5ace7a562
test(route_link): add missing unit tests
2015-07-02 23:21:33 -07:00
Pawel Kozlowski
cd65fc2a5e
fix(compiler): detect and strip data- prefix from bindings
...
Fixes #2687
Closes #2719
2015-07-02 17:32:12 +02:00
vsavkin
d1393b0581
fix(di): injecting null causes a cyclic dependency
2015-07-01 17:08:45 -07:00
Pawel Kozlowski
0598226e24
fix(compiler): don't trigger duplicated directives
...
Fixes #2756
Closes #2568
2015-07-01 16:13:26 -07:00
Pouria Alimirzaei
0b50258814
feat(pipes): add limitTo pipe
2015-07-01 13:36:01 -07:00
Pouria Alimirzaei
600d53c68e
feat(pipes): support arguments in transform function
2015-07-01 13:36:01 -07:00
vsavkin
f0e962c55e
feat(di): removed app injector
...
BREAKING CHANGE:
THe appInjector property has been removed. Instead use viewInjector or hostInjector.
2015-07-01 13:33:43 -07:00
Jacob MacDonald
73a939e76c
fix(change detectors): Fix deduping of protos in transformed dart mode.
...
In non-transformed mode the funcOrValue check was enough, but once
transformed these all use the same function for getters, so we need
to also check the name.
2015-07-01 12:56:31 -07:00
Ted Sander
dcdd73065a
feat(transformers): provide a flag to disable inlining views
...
Add a flag to allow a user to disable inlining css/html content into the views.
Closes #2658
2015-07-01 11:39:16 -07:00
Alex Eagle
27e710019c
chore(typing): use types for DOM API
...
This is possible now that ts2dart special cases these for dart.
Fixes #2770
2015-07-01 09:57:11 -07:00
Brian Ford
f66ce096d8
feat(router): support deep-linking to anywhere in the app
...
Closes #2642
2015-06-30 17:21:50 -07:00
Jeff Cross
b3d98cba77
refactor(http): remove default settings from `RequestOptions` constructor
...
The BaseRequestOptions class is responsible for declaring default values,
while the RequestOptions class is merely responsible for setting values
based on values provided in the constructor.
2015-06-30 15:21:36 -07:00
Jeff Cross
146dbf1270
refactor(Http): remove HttpFactory
...
BREAKING CHANGE: HttpFactory is no longer available.
This factory provided a function alternative to the `request` method of the
Http class, but added no real value. The additional factory required an
additional IHttp interface, an odd way to inject while preserving type information
(`@Inject(HttpFactory) http:IHttp`), and required additional documentation in the
http module.
Closes #2564
2015-06-30 15:21:36 -07:00
Jeff Cross
55bf0e554f
feat(http): refactor library to work in dart
...
Mostly internal refactoring needed to make ts2dart and DartAnalyzer happy.
Fixes #2415
2015-06-30 15:21:36 -07:00
Alex Eagle
44891996b5
fix(build): add missing return types now enforced by linter
2015-06-29 15:31:41 -07:00
Julie Ralph
82e8e8c638
chore(test): upgrade form tests to testcomponentbuilder
...
Part of #2354
2015-06-29 13:59:12 -07:00
Tobias Bosch
d6cef88dd8
fix(dynamic_component_loader): check whether the dynamically loaded component has already been destroyed
...
Fixes #2748
Closes #2767
2015-06-29 11:30:56 -07:00
vsavkin
eb0fd7967c
feat(di): changed InstantiationError to print the original stack
2015-06-29 11:16:12 -07:00
Julie Ralph
ab3f2365fd
chore(test): move ng-style tests to TestComponentBuilder
...
Part of #2354
2015-06-29 10:59:32 -07:00
Julie Ralph
66d0e4e656
chore(test): migrate router tests to TestComponentBuilder
...
Part of #2354
2015-06-29 10:58:39 -07:00
vsavkin
22d3943831
refactor(di): unified di injector and core injector
...
BREAKING CHANGES:
* InjectAsync and InjectLazy have been removed
* toAsyncFactory has been removed
2015-06-26 15:59:18 -07:00
Jacob MacDonald
5a21dc5340
fix(transformer): Add getters for `events`.
...
closes https://github.com/angular/angular/issues/2725
2015-06-26 08:07:46 -07:00
Jacob MacDonald
d037c082fb
fix(transformer): Don't hang on bad urls and log better errors
...
closes https://github.com/angular/angular/issues/2605
2015-06-26 07:18:58 -07:00
Jacob MacDonald
9c768501c4
fix(transformer): Fix annotation_matcher for NgForm directive.
...
The NgForm directive imports Directive from a previously unlisted import.
2015-06-26 07:16:03 -07:00
Pawel Kozlowski
b50edfd1f3
feat(NgStyle): add new NgStyle directive
...
Closes #2665
2015-06-26 12:50:20 +02:00
Marc Laval
dd7910347a
chore(windows): fix the test.server.dart task
...
Closes #2703
2015-06-26 10:25:26 +02:00
Jason Teplitz
7a7b3a6cb9
perf(Compiler): do not resolve bindings for cached ProtoViews
2015-06-25 14:45:08 -07:00
Pawel Kozlowski
aeb17d8d44
test(NgSwitch): simplify tests with static values
2015-06-25 15:12:16 +02:00
Julie Ralph
85d6ae38b9
chore(test): migrate directives tests to testcomponentbuilder
...
Part of #2354
2015-06-24 21:58:36 -07:00
Julie Ralph
d3dda614dd
chore(test): migrate remaining core tests to testcomponentbuilder
...
Also add a small utility function to debug element to get an
array of native elements, which works smoothly with the
toHaveText matcher.
2015-06-24 21:52:03 -07:00
Victor Berchet
a0e0f3123b
refactor: change template for view where it makes sense
2015-06-24 18:40:04 +02:00
Victor Berchet
b15474c6f2
refactor(TemplateResolver): rename to ViewResolver
2015-06-24 18:40:04 +02:00
Victor Berchet
356c927d12
refactor(TemplateLoader): rename to ViewLoader
2015-06-24 18:40:04 +02:00
Victor Berchet
b89c0672e6
test(refactor): cleanup test to use the new UrlMapper
2015-06-24 18:40:04 +02:00
Victor Berchet
3ea655918e
refactor(Compiler): inline styles before compiling the template
2015-06-24 18:40:03 +02:00
Victor Berchet
3875f02a52
refactor(UrlResolver): move away from the anchor link
...
fixes #2029
fixes #872
2015-06-24 18:40:03 +02:00
Victor Berchet
06aaa0c50e
refactor(UrlResolver): extract app url resolution into AppRootUrl
...
fixes #1732
2015-06-24 18:40:03 +02:00
Pawel Kozlowski
8c993dca03
feat(CSSClass): add support for string and array expresions
...
Closes #2025
2015-06-24 16:17:10 +02:00
Julie Ralph
2c11205b96
chore(testbed): migrate compiler integration spec to testcomponentbuilder
...
Part of #2354
2015-06-23 19:02:46 -07:00
Rado Kirov
d800d2f5d7
fix(injectors): sync injector tree with dom element tree.
...
Changes adds createGrowableSize method to allow for growable lists with fixed
start.
Closes : #2498
2015-06-23 18:32:57 -07:00
Tobias Bosch
6149ce28a7
fix(render): fix failing tests in dynamic_component_loader.ts
2015-06-23 17:43:36 -07:00
Tobias Bosch
c8bdacb195
refactor(render): cleanup access to native dom elements
...
BREAKING CHANGES:
- rename `ElementRef.domElement` to `ElementRef.nativeElement`
- add `Renderer.getNativeElementSync` to make the app side
less dependent on the dom renderer.
- don’t use `ElementRef.nativeElement` in directives but
use the methods on `Renderer` directly.
- Removed `ElementRef.setAttribute`. Use `Renderer.setElementAttribute` instead.
Closes #2712
Last part of #2476
Closes #2476
2015-06-23 17:27:59 -07:00
Julie Ralph
5c9e53a25e
chore(testbed): migrate dynamic component loader spec to testcomponentbuilder
...
Part of #2354
2015-06-23 16:33:11 -07:00
Tobias Bosch
ba9fecd068
refactor(render): use `RenderElementRef` in all renderer methods
...
BREAKING CHANGES:
- Almost all methods in `Renderer` now take a `RenderElementRef` instead
of a `ViewRef` + `boundElementIndex`.
- These methods can be called with the `ElementRef` from the app side
directly.
Closes #2706
Related to #2476
2015-06-23 14:26:34 -07:00
Tobias Bosch
0a51ccbd68
feat(render): don’t use the reflector for setting properties
...
BREAKING CHANGES:
- host actions don't take an expression as value any more but only a method name,
and assumes to get an array via the EventEmitter with the method arguments.
- Renderer.setElementProperty does not take `style.`/... prefixes any more.
Use the new methods `Renderer.setElementAttribute`, ... instead
Part of #2476
Closes #2637
2015-06-22 18:35:16 -07:00
Brian Ford
e5de1f771a
refactor(router): refactor BrowserLocation into LocationStrategy
...
This makes it easy to mock browser location and paves the way to
implementing hash routing.
2015-06-22 16:14:24 -07:00
vsavkin
92ffc465d6
feat(host): limits host properties to renames
2015-06-22 12:10:02 -07:00
Pawel Kozlowski
d7b9345b6d
feat(compiler): detect dangling property bindings
...
BREAKING CHANGE: compiler will throw on binding to non-existing properties.
Till now it was possible to have a binding to a non-existing property,
ex.: `<div [foo]="exp">`. From now on this is compilation error - any
property binding needs to have at least one associated property:
eaither on an HTML element or on any directive associated with a
given element (directives' properites need to be declared using the
`properties` field in the `@Directive` / `@Component` annotation).
Closes #2598
2015-06-20 08:06:07 +02:00
Yegor Jbanov
f158fbd131
chore(ShadowDomStrategy): fix MapWrapper usage, DemoUrlResolver
2015-06-19 18:50:30 -07:00
Victor Berchet
1c4d233fe7
fix(ShadowDomStrategy): always inline import rules
...
fixes #1694
2015-06-19 18:50:30 -07:00
Caitlin Potter
ed9d9d5096
build(broccoli): make node_trees produce strict-mode scripts
...
Closes #2575
Closes #2648
2015-06-19 21:19:12 -04:00
Matias Niemelä
2d2ae9b8d8
feat(router): enforce usage of ... syntax for parent to child component routes
2015-06-19 20:54:45 -04:00
vsavkin
20a8f0dbe5
refactor(pipes): removed pipes from properties
...
BREAKING CHANGE:
This PR remove an ability to use pipes in the properties config. Instead, inject the pipe registry.
2015-06-19 16:56:52 -07:00
vsavkin
c899b0a74c
feat(element_injector): support multiple injectables with the same token
2015-06-19 16:02:56 -07:00
vsavkin
4d1ed509e3
refactor(forms): refactored forms to user Query to get html validators
2015-06-19 16:02:43 -07:00
Martin Probst
920982c4e8
chore: update files to match clang-format 1.0.21.
2015-06-19 15:00:32 -07:00
Ted Sander
f2ef90b240
feat(transformers): inline styleUrls to view directive
...
While creating the ng_deps.dart file for a view inline the styleUrls attribute.
This copies the pattern used for templateUrl, aleviating the need to make an
XHR request for those resources.
closes #2566
2015-06-18 22:12:44 -07:00
vsavkin
f80f97253c
refactor(change_detection): made ChangeDetector and ProtoChangeDetector interfaces
...
List of changes:
- Makes ChangeDetector and ProtoChangeDetector interfaces
- Assigns a unique id to every detector
2015-06-18 17:41:22 -07:00
Tobias Bosch
9d4111d69d
fix(compiler): make text interpolation more robust
...
Allows to add or remove previous siblings of text
interpolations (e.g. by added `<script>` tags for
content reproduction, or by removed `<style>` tags).
Also calculates correctly whether an element is
empty.
Fixes #2591
2015-06-18 15:45:00 -07:00
Tobias Bosch
180e617866
Revert "fix(Compiler): fix text nodes after content tags"
...
This reverts commit d599fd3434
.
but keeps the integration test. The test is made green by the
following commits.
2015-06-18 15:45:00 -07:00
Martin Probst
941362014b
feat: remove MapWrapper.clear().
...
It's the same in Dart and JavaScript.
2015-06-18 14:55:13 -07:00
Martin Probst
dfd30910aa
feat: remove MapWrapper.contains().
2015-06-18 14:55:12 -07:00
Martin Probst
be7ac9fd41
feat: remove MapWrapper.create()/get()/set().
...
Better dart2js code, better Angular code.
2015-06-18 14:55:12 -07:00
Yegor Jbanov
5beaf6d735
fix(change detection): preserve memoized results from pure functions
2015-06-17 17:33:37 -07:00
vsavkin
b0e2ebda70
feat(query): added support for querying by var bindings
2015-06-17 16:36:55 -07:00
Martin Probst
c7e48350d3
chore: kill ListWrapper.create() and .push().
...
These wrappers are not natively understood by
ts2dart. Removing them will improve Dart2JS
compilation due to fewer megamorphic calls to List
functions.
It also makes Angular code more succinct and
improves type safety in Angular due to better type
inference of the Array component type.
This change exposed several bugs in Angular.
2015-06-17 16:21:55 -07:00
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
Jeff Cross
5b5ffe75d0
docs(Http): add docs for Http lib
...
Fixes #2442
2015-06-16 15:42:18 -07:00
Jeff Cross
e68e69e7e5
refactor(Http): rename request options interface
2015-06-16 15:42:01 -07:00
Jeff Cross
70ffd267f8
refactor(Http): implement Request object parameter for http.request
...
Fixes #2416
2015-06-16 15:42:01 -07:00
Jeff Cross
b68e561c0f
feat(Http): add Http class
...
Fixes #2530
2015-06-16 15:42:01 -07:00
Jeff Cross
93596dff3f
feat(BaseRequestOptions): add merge method to make copies of options
2015-06-16 15:42:01 -07:00
Victor Berchet
cdfb635737
refactor(facade): refactor type check function - is*()
2015-06-16 19:27:34 +02:00
Victor Berchet
91c75f99fe
refactor(ShadowDomStrategy): remove unused imports in test
2015-06-16 17:41:32 +02:00
Victor Berchet
6e38515402
fix(ShadowDom): fix emulation integration spec to test all 3 strategies
...
fixes #2546
2015-06-16 17:38:42 +02:00
Victor Berchet
d599fd3434
fix(Compiler): fix text nodes after content tags
...
fixes #2095
2015-06-16 17:38:42 +02:00
Victor Berchet
b2e6ad85ea
style(TestComponentBuilder): fix a typo in the spec
2015-06-16 17:37:58 +02:00
vsavkin
d8e2795368
fix(view): local variables override local variables set by ng-for
2015-06-16 07:48:26 -07:00
Pawel Kozlowski
7a41b19e58
test(PropertySetterFactory): add more tests
...
There are upcoming changes to the way we generate
and verify setters so more test are needed to cover
all the corner cases that are being handled today.
Closes #2559
2015-06-16 14:49:59 +02:00
Misko Hevery
bc9e482b39
fix: Class factory now adds annotations
2015-06-15 22:23:54 -07:00
Brian Ford
cab1d0ef0f
feat(router): allow configuring app base href via token
2015-06-15 18:04:09 -07:00
vsavkin
f1541e65b3
fix(forms): fixed the handling of the select element
2015-06-15 13:16:41 -07:00
Tobias Bosch
9bad70be5e
fix(selector): select by attribute independent of value and order
...
Closes #2513
2015-06-15 12:10:11 -07:00
vsavkin
5bfcca2d5b
feat(query): notify on changes
2015-06-15 11:10:21 -07:00
Matias Niemelä
73d152506b
fix(router): ensure that root URL redirect doesn't redirect non-root URLs
...
Closes #2221
2015-06-15 10:48:47 -07:00
Victor Berchet
ac3e624d0f
feat(View): add support for styleUrls and styles
...
fixes #2382
2015-06-15 19:35:16 +02:00
Victor Berchet
7d32879929
feat(Parser): support if statements in actions
...
fixes #2022
2015-06-15 18:54:12 +02:00
Misko Hevery
c3ae34f066
feat: support decorator chaining and class creation in ES5
...
Closes #2534
2015-06-14 16:54:08 -07:00
Brian Ford
5782f063f1
fix(router): rethrow exceptions
...
Closes #2391
2015-06-12 18:27:00 -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
Tim Blasi
8e3bf3907a
feat(dart/transform): Use the best available Change Detectors
...
Enable pregenerated (for Dart) and JIT (for Js) change detectors when
possible. Previously we would always use `DynamicChangeDetector`s, but
these cause megamorphic calls and are therefore much slower.
Closes #502
2015-06-12 16:04:09 -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
Matias Niemelä
cdc7b03e67
fix(router): avoid two slash values between the baseHref and the path
2015-06-12 15:23:29 -07:00
Matias Niemelä
e372cc779d
fix(router): do not prepend the root URL with a starting slash
2015-06-12 15:23:29 -07:00
Victor Berchet
38e5c3f918
style: format the code with the updated clang
2015-06-12 19:07:13 +02:00
Victor Berchet
b4e82b8bc7
fix(DirectiveMetadata): add support for events, changeDetection
2015-06-12 19:05:51 +02: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
vsavkin
4fe919335c
refactor(forms): made directive names consistent
2015-06-12 09:45:55 -07:00
vsavkin
a858f6ac42
fix(forms): getError does not work without path
2015-06-12 09:45:55 -07: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
Tobias Bosch
ca09701343
perf(render): only create `LightDom` instances if the element has children
2015-06-11 14:45:44 -07:00
Tobias Bosch
4f27611ae6
perf(render): don't create property setters if not needed
2015-06-11 14:45:44 -07:00
Misko Hevery
5ab92ce844
bug: increase number of supported contstructor args to 20
...
Closes #2487
2015-06-11 14:02:36 -07:00
Victor Berchet
591f742d42
feat(transform): update for Directive.host
2015-06-11 13:11:10 -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
f9745327e6
fix(Parser): Parse pipes in arguments
...
fixes #1680
2015-06-11 21:02:40 +02:00
Tim Blasi
a187c782aa
feat(dart/transform): Allow absolute urls in templates
...
Allow `templateUrl` to be specified as an absolute `package:` import.
2015-06-11 09:35:17 -07:00
Tim Blasi
950f2a38cd
refactor(dart/transform): Rename parser.dart > ng_deps.dart
...
- Rename the file that defines NgDeps from parser.dart to ng_deps.dart.
- Remove the `Parser` class and replace with the static `NgDeps.parse`
method.
2015-06-11 08:42:34 -07:00
Victor Berchet
f2371487a1
refactor(ProtoRecord): switch to enum
2015-06-11 17:11:34 +02: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
Misko Hevery
2ccc65d7fd
fix: Improve error message on missing dependency
2015-06-10 16:40:38 -07:00
Victor Berchet
331a051e75
feat(Parser): implement Unparser
...
fixes #1949
closes #2395
2015-06-10 16:24:59 -07:00
Tim Blasi
76beaa2097
refactor(change detect): Clean up change detector test layout
...
- Rename simple_watch_config > change_detector_config
- Add a bunch of comments explaining what's going on with the change
detector tests.
Closes #2468
2015-06-10 16:09:48 -07:00
Victor Berchet
94272af45b
chore: update zone.js to 0.5.1
...
fix #1862
2015-06-10 23:41:45 +02:00
Tim Blasi
ad95601e3c
test(change detect): Port remaining unit tests
...
Move all remaining unit tests for change detectors to exercise Dart
pre-generated change detectors as well as `dynamic` and `JIT` change
detectors.
See #502
2015-06-10 14:11:42 -07:00
Tim Blasi
17c6d6a92d
feat(dart/transform): Add onInit and onCheck hooks in Dart
...
Implement `onInit` and `onCheck` hooks in pre-generated Dart change
detectors. This mirrors the changes made to the JIT change detector in
c39c8ebcd0
.
2015-06-10 14:11:42 -07:00
Rado Kirov
92d565848b
fix(shadow_dom): moves the imported nodes into the correct location.
2015-06-10 13:50:12 -07:00
Tim Blasi
ddd5a235c3
test(change detect): Port change detect tests for mode
...
More the change detect tests that exercise various detection modes to
use the Dart pre-generated change detectors in addition to the `dynamic`
and `JIT` change detectors.
See #502
2015-06-09 17:04:50 -07:00
vsavkin
73bce40287
feat(forms): export validator directives as part of formDirectives
2015-06-09 11:51:14 -07:00
vsavkin
5fc23caef7
feat(forms): changed forms to capture submit events and fires synthetic ng-submit events
2015-06-09 11:51:13 -07:00
vsavkin
1a4d23742b
feat(forms): added hasError and getError methods to all controls
2015-06-09 11:51:08 -07:00
Jeff Cross
f34f8df319
refactor(xhr): move render's xhr implementation to render/
...
The existence of this module in the services/ folder led some to believe xhr
is meant to be a general-purpose http library.
Fixes #2305
2015-06-09 10:28:35 -07:00
Jeff Cross
21568106b1
feat(http): add basic http service
...
This implementation only works in JavaScript, while the Observable transpilation
story gets worked out. Right now, the service just makes a simple request,
and returns an Observable of Response.
Additional functionality will be captured in separate issues.
Fixes #2028
2015-06-09 10:00:04 -07:00
Tim Blasi
0409b4ca49
test(change detect): Port more change detect tests
...
Move more change detector unit tests to exercise the Dart pre-generated
change detectors in addition to `dynamic` and `JIT` change detectors.
See #502
2015-06-09 07:18:48 -07:00
gdi2290
e77710a372
fix(JsonPipe): always transform to json
...
BREAKING CHANGE:
no longer cache ref
2015-06-08 16:22:04 -07:00
Tim Blasi
b6e95bb96e
feat(change detect): Throw on attempts to use dehydrated detector
...
- Modify change detectors to `throw` when attempting to detect changes
on a dehydrated detector.
- Modify `DynamicChagneDetector` to use `null` for the `context` of a
dehydrated detector.
2015-06-08 16:10:41 -07:00
Brian Ford
cd95e078fe
feat(router): add routing to async components
...
Note that this also removes the `components` option from `RouteConfig`.
This functionality will be reintroduced with the more general `//` routing.
See #2329 for more details.
2015-06-08 15:49:56 -07:00
Tim Blasi
d5195d4097
test(change detect): Port Locals tests to pregenerated cds
...
Move existing unit tests exercising Locals to also test Dart's
pre-generated change detectors.
See #502
2015-06-08 13:27:11 -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
309ef0f354
refactor(test): remove explicit calls to flushMicrotasks()
...
flushMicrotasks() is now called at after the fakeAsync callback returns,
see https://github.com/angular/angular/pull/2290
2015-06-08 20:30:49 +02:00
Tim Blasi
81fc657356
refactor(change detect): Remove unnecessary param from tests
2015-06-08 11:21:45 -07: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
Tim Blasi
d1b35f9174
fix(dart/transform): Don't set ReflectionCapabilities over an async gap
...
Update the transformer's `TemplateCompiler` phase to avoid setting
`reflector.reflectionCapabilities`, allowing asynchronous
operations, and restoring the original value, which allows
`reflector.reflectionCapabilities` to get into a bad state.
2015-06-06 17:10:06 -07:00
Misko Hevery
a418397174
fix: corrected var/# parsing in template
...
Closes #2084
2015-06-05 16:22:41 -07:00
Misko Hevery
8d081ea7af
fix: include error message in the stack trace
2015-06-05 16:22:41 -07:00
Tobias Bosch
8a52375fb8
chore(transformer): add tests for property bindings and multiple executions
2015-06-05 13:11:24 -07:00
Tobias Bosch
87b3b718e3
refactor(render): don’t use a global cache for property setters
...
Related to #2359
2015-06-05 13:11:23 -07:00
Tim Blasi
529805508a
feat(dart/change_detect): Add type to ChangeDetector context
...
Add a type for the `context` field in Dart's pre-generated change
detectors. This requires slight changes to set the dehydrated value of
`context` to `null` rather than `ChangeDetectionUtil.uninitialized()`,
which was its former dehydrated state.
Mirror these chagnes as closely as possible in the
`ChangeDetectionJITGenerator` to allow easier maintenance.
Closes #2070
2015-06-05 12:53:25 -07:00
Tim Blasi
851797aecb
refactor(dart): Run dartfmt 0.1.8
...
Format Dart code using dartfmt 0.1.8. Update pubspec to require
dart_style 0.1.8.
2015-06-05 11:45:36 -07:00
Tim Blasi
dc6e7eb19b
feat(dart/transform): Record Type interfaces
...
To support interface-based lifecycle methods (#2220 ), we need to be able
to query for the `interface`s a class supports. Record implemented
interfaces to allow mirror-less querying at runtime.
Closes #2204
2015-06-04 15:02:12 -07:00
vsavkin
e5419febe4
feat(transformers): updated transformers
2015-06-04 14:14:03 -07: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
Tobias Bosch
827841ec5b
refactor(render): add `DomElement`
...
Replaces the multiple arrays of `DomView`
by a single array with `DomElement`s.
Note: this commit does not show a performance regression
(tested against the tree benchmark locally).
2015-06-04 11:44:26 -07:00
Victor Berchet
53694eb64a
feat(FakeAsync): check pending timers at the end of fakeAsync in Dart
...
Made possible with quiver 0.21.4
2015-06-04 09:09:18 +02: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
vsavkin
3baf815d76
feat(forms): added support for status classes
2015-06-03 14:43:46 -07:00
vsavkin
96cadcc29e
refactor(forms): handle dirty/pristine explicitly
2015-06-03 14:43:46 -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
Tim Blasi
246151b2f9
test(dart/transform): More change detector unit tests
...
Port some change detector unit tests which formerly ran only on dynamic
& JIT change detection to run for pre-generated Dart change detectors as
well.
2015-06-03 10:37:34 -07:00
Ian Riley
2b714df64e
refactor(test/mock): Ts'ify angular2/test/mock
...
Translates the last test directory -- angular2/test/mock -- to TypeScript.
2015-06-03 09:52:37 -07:00
Victor Berchet
c7572ac1f9
feat(fakeAsync): flush the microtasks before returning
...
fixes #2269
2015-06-03 06:48:08 +02:00
vsavkin
ec3a78289f
feat(forms): added touched and untouched to Control
2015-06-02 17:32:41 -07:00
vsavkin
f543834be9
feat(forms): renamed control, control-group into ng-control and ng-control-group
2015-06-02 16:24:08 -07:00
vsavkin
6bef1c4169
feat(forms): changed the selector of TemplatdrivenFormDirective to match <form>
2015-06-02 16:24:08 -07:00
vsavkin
652ed0cf6d
feat(form): implemented an imperative way of updating the view by updating the value of a control
2015-06-02 16:24:07 -07:00
vsavkin
559f54e92b
feat(forms): added ng-model
2015-06-02 16:24:07 -07:00
Tobias Bosch
ba7956f521
fix(render): only look for content tags in views that might have them.
...
Largetable benchmark with `interpolationAttr` and 200 rows / 20 columns:
Time for destroy/create pair dropped from about 1260ms to about 150ms.
Related to #2298 , but does not really fix it as we are still slow
if people are using `<content>`.
Closes #2297
2015-06-02 15:31:07 -07:00
Victor Berchet
0b43e3cf32
refactor(lang_spec): Add missing ;s and clang-format
2015-06-02 21:09:38 +02:00
Jeff Cross
ba07f39347
refactor(router): convert to typescript
...
Fixes #2001
2015-06-02 11:06:44 -07:00
Marc Laval
4c8e11a577
fix(ShadowCss): keyframes tests failing in Safari
...
Closes #2283
2015-06-02 19:23:06 +02:00
Victor Berchet
c60091b949
refactor(Compiler): improve the error message on component load error
...
by adding the fetched url.
relates to #1460
2015-06-02 12:59:50 +02:00
Tobias Bosch
62a95823e0
fix(selector): support multiple `:not` clauses
...
Fixes #2243
2015-06-01 14:24:19 -07:00
Tim Blasi
22f5925202
fix(facade): Make PromiseWrapper#all semantics equivalent
...
The semantics between ES6 `Promise#all` and Dart's `Future#wait` are
different for values that are not `Promise`/`Future`s. In ES6,
non-`Promise` values are immediately completed to their current value.
In Dart, non-`Future` values cause an error.
Updated Dart's `PromiseWrapper#all` implementation to conform to the ES6
spec.
2015-06-01 07:26:46 -07:00
vsavkin
a9d6fd9afa
feat(forms): implemented template-driven forms
2015-05-30 11:56:00 -07:00
vsavkin
f19970a481
feat(transformers): added support for lifecycle events
2015-05-29 16:40:34 -07:00
vsavkin
d523613329
test(di): added a test verifying hierarchical injection
2015-05-29 15:52:46 -07:00
Tim Blasi
000a8e25a2
fix(dart/transform): Fix DirectiveMetadata read tests
2015-05-29 14:56:42 -07:00
Tim Blasi
8a3b0b366f
feat(dart/transform): Generate ChangeDetector classes
...
Use the `ProtoViewDto` created by the render `Compiler` to create a
`ChangeDetectorDefinition`.
From there, generate a subclass of `AbstractChangeDetector` for each
`ChangeDetectorDefinition`.
Run some basic unit tests for the dynamic and JIT change detectors on
pre-generated change detectors.
2015-05-29 14:48:53 -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
35f0ee510a
refactor(transformer): updates in properties syntax
2015-05-29 11:44:44 +02: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
Tim Blasi
5d2af54730
feat(dart/transform): Improve constant evaluation
...
Use `package:analyzer`'s `ConstantEvaluator` to read from the AST.
This cleanly builds values for us from adjacent strings, interpolations,
etc.
2015-05-28 15:18:22 -07:00
Victor Berchet
a9be2ebf1b
feat: add support for the safe navigation (aka Elvis) operator
...
fixes #791
2015-05-28 23:03:30 +02:00
Victor Berchet
ec2d8cc2c8
feat(binding): throw on binding to a blank alias
...
fixes #2068
2015-05-28 22:37:29 +02:00
Jeff Cross
01fb8e6635
fix: fix clang errors
2015-05-28 11:08:26 -07:00
Jeff Cross
9d90128463
refactor(ChangeDetection): convert change detection tests to typescript
2015-05-28 10:01:30 -07:00
vsavkin
34cfc9f474
feat(di): added optional self parameter to Parent, Ancestor, and Unbounded
2015-05-28 09:53:06 -07:00
Ian Riley
ebe1e73b1a
refactor (test/test_lib): Ts'ifying test/test_lib
...
Translates AtScript files in test/test_lib to TypeScript.
Closes #2183
2015-05-28 09:50:59 -07:00
Ian Riley
8ce0a67c81
refactor (test/services): Ts'ifying test/services
...
Translates AtScript files in test/services to TypeScript
Closes #2193
2015-05-28 09:48:38 -07:00
Tim Blasi
c065fb1422
feat(dart/transform): Remove unnecessary .ng_deps.dart files
...
Removes `.ng_deps.dart` files which
1. Do not register any `@Injectable` classes
2. Do not call `initReflector` on any other `.ng_deps.dart` files.
Closes #1929
2015-05-28 07:51:10 -07:00
Tim Blasi
cda35101df
fix(facade): Fix bug in TS indexOf
...
startIndex defaults to -1, which in Chrome results in returning -1
regardless of the other parameters.
Added regression tests.
2015-05-28 06:56:24 -07:00
Julie Ralph
c32dbad747
feat(tests): add TestComponentBuilder
...
Adds a TestComponentBuilder for use in component level tests.
For usage examples, see test_component_builder_spec
Closes #1812
2015-05-27 17:15:13 -07:00
vsavkin
30b6542fc8
feat(core): added support for detecting lifecycle events based on interfaces
2015-05-27 16:23:42 -07:00