Brian Ford
5db89071d4
fix(router): improve route matching priorities
2015-05-18 15:57:08 -07:00
Brian Ford
c29ab86d85
refactor(router): improve control flow of descendant route activation
2015-05-18 15:57:08 -07:00
Brian Ford
6b02cb9b44
test(router): rename helpers in test
2015-05-18 15:57:08 -07:00
gdi2290
f9fd4926ef
docs(pipes): fix @View
...
we all copy/pasta ObservablePipe which had the typo
Closes #1958
2015-05-18 14:34:37 -07:00
gdi2290
986038242a
feat(change_detection): json pipe
...
Closes #1957
2015-05-18 14:34:37 -07:00
Josef Meier
8e84f8a1c4
chore: don't throw if paramTypes is undefined.
...
Closes #1955
2015-05-18 14:34:37 -07:00
Tim Blasi
edfbc25768
style(change detect): Fix typo unitialized => uninitialized
...
Closes #1928
2015-05-18 14:34:37 -07:00
Tim Blasi
05a1c6c183
perf(compiler): Avoid unnecessary List concats
...
Update `BindingRecordsCreator#getBindingRecords` and `ProtoRecordBuilder#addAst`
to avoid unnecessary calls to `ListWrapper.concat`.
Closes #1905
2015-05-18 14:34:36 -07:00
Tim Blasi
534cbb4bf5
refactor(benchmarks): Update compile benchmarks
...
Update the compile benchmark to allow the Dart transformer to properly
generate the getters, setters, & methods needed.
This also improves the method of duplicating the source templates,
further decreasing runtime from ~5s to ~2s.
2015-05-18 14:34:36 -07:00
Jeremy Elbourn
8d6943227d
chore(material): add e2e smoke tests for a few more components.
...
Closes #1884
2015-05-18 14:34:36 -07:00
Pawel Kozlowski
3011cd86bd
feat(compiler): special-case class attribute in hostAttributes
...
Closes #1774
Closes #1841
2015-05-18 14:34:36 -07:00
vsavkin
11e4385173
feat(forms): improved error messages
...
Closes #1839
2015-05-18 14:34:36 -07:00
Victor Berchet
ad29b12cde
doc(NgFor): fix inline doc
2015-05-18 23:12:41 +02:00
Victor Berchet
842459aa46
doc: fix & sync with latest updates
2015-05-18 23:11:45 +02:00
Victor Berchet
b033416a45
doc(DI): fix inline doc in binding.ts
...
fixes #1894
2015-05-18 23:10:41 +02:00
Victor Berchet
7310b09a1a
doc(UrlResolver): inline doc
...
fixes #1732
2015-05-18 23:09:35 +02:00
Jeremy Elbourn
bb2eda2d15
feat(element_injector): allow @Optional for ProtoViewRef
2015-05-18 12:48:33 -07:00
Victor Berchet
0114cd97b6
refactor(RouteRegistry): optimize recognize()
2015-05-18 19:32:33 +02:00
Victor Berchet
fc13cdab3a
refactor(router): add types
2015-05-18 19:32:33 +02:00
Tim Blasi
3644036693
refactor(proto_view_factory): Move getChangeDetectorDefinitions out of ProtoViewFactory
...
Move `getChangeDetectorDefinitions` out of `ProtoViewFactory` since it
does not depend on any state in that object.
2015-05-18 08:45:59 -07:00
Misko Hevery
1eea2b254e
feat: allow for forward references in injection
...
It is possible for a class defined first to be referencing a class defined later,
and as a result at the time of the definition it is not possible to access the later's
class reference. This allows to refer to the later defined class through
a closure.Closes #1891
2015-05-15 21:12:57 -07:00
Michael Goderbauer
0e04467b8a
docs(bench press): Added link to Chromedriver bug for reference
...
Closes #1923
2015-05-15 16:51:18 -07:00
Yegor Jbanov
b6f29b4448
feat(errors): preserve stack traces of user exceptions in Dart
2015-05-15 15:03:31 -07:00
Tobias Bosch
421d8916a6
refactor(view_manager): split `inPlace` views into root and free host views.
...
BREAKING CHANGE:
`AppViewManager.createInPlaceHostView` is replaced by
`AppViewManager.createRootHostView` (for bootstrap) and
`AppViewManager.createFreeHostView` (for imperative components).
The later creates new host elements that are not attached anywhere.
To attach them, use `DomRenderer.getHostElement(hostviewRef)`
to get the host element.
Closes #1920
2015-05-15 13:24:53 -07:00
Matan Lurey
a38a0d6f87
Merge pull request #1909 from angular/view-ref-return-types
...
Update view_ref.js
2015-05-15 12:32:22 -07:00
gdi2290
7a4a635399
feat(change_detection): uppercase and lowercase pipes
...
because the world needs more uppercase madness
[✔] clang-format
[✔] tests
2015-05-15 19:46:52 +02:00
gdi2290
557d54b3de
feat(facade): toUpperCase and toLowerCase
2015-05-15 19:46:52 +02:00
Victor Berchet
c47902a471
refactor(reflector): improve types
2015-05-15 19:26:06 +02:00
Victor Berchet
25cd6e4321
fix(Compiler): add an error when a directive is null or undefined
...
fixes #1908
2015-05-15 19:26:06 +02:00
Matan Lurey
6ad5fa0d9d
Update view_ref.js
...
Add return types.
2015-05-14 12:36:16 -07:00
PatrickJS
8ad0205948
docs(promise_pipe.ts): correct "async" pipe
...
the syntax is now combined with `|async` rather than separate `|promise`
2015-05-14 17:25:46 +02:00
gdi2290
1d11fdecdc
docs(annotations): correct List for directives for Component
...
@Component takes a List of directives
https://github.com/angular/angular/blob/master/modules/angular2/src/core
/annotations_impl/annotations.js#L867
2015-05-14 08:13:54 -07:00
Tobias Bosch
ecb068019b
refactor(proto_view_factory): expose data for generating change detectors
...
Also consolidates metadata handling in `ElementInjector`
BREAKING CHANGE:
- renames `DirectiveMetadataReader` into `DirectiveResolver`
and removes `src/core/compiler/directive_metadata`.
Fixes #1712
Fixes #1713
2015-05-13 17:11:59 -07:00
Tim Blasi
5114411749
perf(dart): Improve Dart ListWrapper#concat
...
Improve implementation of `ListWrapper#concat` to take advantage of our
knowledge of input list sizes.
2015-05-13 16:30:50 -07:00
vsavkin
08f21dbf51
feat(change_detection): implemented change detection that can be configured with pregenerated change detectors
2015-05-13 16:23:22 -07:00
vsavkin
d8c7c274e4
refactor(change_detector): extracted ChangeDetectorDefinition
2015-05-13 16:23:22 -07:00
vsavkin
685a6507b6
feat(compiler): added support for [()] syntax
2015-05-13 16:08:59 -07:00
Jacob MacDonald
846354473d
chore(cleanup): Remove some unused files.
2015-05-13 13:56:54 -07:00
Brian Ford
390cfb793b
fix(router): generate links for router-link with baseHref
2015-05-13 12:22:45 -07:00
Brian Ford
17392f663f
fix(router): sort possible routes by cost
2015-05-13 11:57:57 -07:00
Victor Berchet
8b6fa1cf19
doc: fix inline docs
2015-05-13 11:56:51 +02:00
Victor Berchet
909233f724
fix(ng1 benchmarks): revert *ng-if to ng-if
2015-05-13 11:56:50 +02:00
Victor Berchet
0e82970a29
fix(examples): prefix directives with Ng
2015-05-13 11:56:50 +02:00
Victor Berchet
cdbb2473bb
fix(benchmark): change If for NgIf
2015-05-13 11:56:50 +02:00
Victor Berchet
c20060d259
fix(directives): fix import path
2015-05-13 11:56:50 +02:00
Rado Kirov
38926f7123
fix(benchmark): fixes ng-if ng-for renaming for templates.
2015-05-13 11:56:50 +02:00
Chirayu Krishnappa
af9dcad8e3
fix(facade): MapWrapper.createFromPairs
...
Closes #1640
2015-05-12 16:10:00 -07:00
Misko Hevery
111fa60a93
chore: rename for to ng-for
...
Closes #1598
Closes #1295
Closes #1827
Closes #1827
2015-05-12 15:32:44 -07:00
Misko Hevery
e9f236b70f
chore: rename switch to ng-switch
2015-05-12 15:32:44 -07:00
Misko Hevery
78d3f62b6a
chore: rename non-bindable to ng-non-bindable
2015-05-12 15:32:44 -07:00
Misko Hevery
d310a9c0b4
chore: rename if to ng-if
2015-05-12 15:32:44 -07:00
vsavkin
032f8b7840
fix(test): fixed a test
2015-05-12 14:40:20 -07:00
Misko Hevery
f302f70330
chore: convert dom module to typescript
2015-05-12 12:59:53 -07:00
Jeff Cross
96b0a1c75e
refactor(PromisePipe): use lexical this inside of transform
2015-05-12 12:40:13 -07:00
Victor Berchet
e11c20541a
refactor(VmTurnZone): renamed to NgZone
...
BREAKING CHANGE:
VmTurnZone has been renamed to NgZone.
- The public API has not chnanged,
- The "outer" zone is now named "mount" zone (private to NgZone).
2015-05-12 21:03:24 +02:00
Victor Berchet
c75e216871
refactor(VmTurnZone): outer zone = root zone
2015-05-12 21:03:24 +02:00
Victor Berchet
fd1d60f03b
refactor(VmTurnZone): use the browser microtask queue for JS
2015-05-12 21:03:24 +02:00
Victor Berchet
e8a6c95e2a
feat(VmTurnZone): Rework the implementation to minimize change detection runs
...
Before this PR there were only 2 zones: root zone = outer zone > inner
zone.
This PR creates the outer zone as a fork of the root zone: root > outer
> inner.
By doing this it is possible to detected microtasks scheduling in the
outer zone and run the change detection less often (no more than one
time per VM turn).
The PR also introduce a Promise monkey patch for the JS implementation.
It makes Promises aware of microtasks and again allow running the change
detection only once per turn.
2015-05-12 21:03:24 +02:00
yjbanov
358a6750ed
feat(di): support type literals in DI
2015-05-12 10:57:53 -07:00
Pawel Kozlowski
229e770a1d
refactor(forms): rename FormDirectives to formDirectives
...
BREAKING CHANGE:
A collection of all the form directives is exported
under `formDirectives`
while those were previously available
under `FormDirectives`.
Closes #1804
2015-05-12 18:44:25 +02:00
Pawel Kozlowski
5036086fb3
fix(forms): export directives as const in Dart
...
Fixes #1283
2015-05-12 18:44:25 +02:00
Tim Blasi
97d24563f4
feat(dart/transform): Inline `templateUrl` values
...
Modify DirectiveProcessor to inline `templateUrl` values to avoid making
additional browser requests.
Closes #1035
2015-05-12 09:08:56 -07:00
Pawel Kozlowski
655ed851f0
refactor(facade/lang): remove unneded semicolons
...
Those were previously enforced incorrectly by clang-format
Closes #1816
2015-05-12 08:50:44 +02:00
Rado Kirov
a574154108
fix(router): add baseUrl to relative paths, but not absolute.
...
Closes #1783
2015-05-11 18:55:24 -07:00
vsavkin
7f976381d5
fix(view): fixed ProtoViewFactory to get all property bindings
2015-05-11 17:38:34 -07:00
Brian Ford
ac80df0959
fix(router): reuse common parent components
2015-05-11 15:49:40 -07:00
Brian Ford
aff85b5037
feat(facade): add equals method to StringMapWrapper
2015-05-11 15:49:40 -07:00
Jeff Cross
5691063ba0
refactor(ChangeDetection): rename AsyncPipe to ObservablePipe
...
The async pipe in templates will now delegate to both Observable pipe or Promise pipe,
whichever first says it can support the input. Therefore, it's beneficial to disambiguate
the name of the AsyncPipe/AsyncPipeFactory constructors to reflect that these actually
support only Observables.
2015-05-11 14:25:27 -07:00
Jeff Cross
7498758584
feat(PromisePipe): add pipe for promises
2015-05-11 14:23:46 -07:00
vsavkin
f9c1de46b3
feat(compiler): added support for host actions
2015-05-11 13:28:19 -07:00
vsavkin
a9ce0f7afb
cleanup(di): use typescript initialization idioms
2015-05-11 12:34:22 -07:00
Rado Kirov
77d1fc149a
fix(router): router-link works without params
...
Router-link attaches a listener to prevent default behavior and
navigate.
Closes: 1689
2015-05-11 11:58:38 -07:00
Rado Kirov
c2a42d5d2b
fix(location): dartium does not like pushState with null.
...
According to
https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history
the value of the title parameter is irrelevant anyways.
2015-05-11 11:48:45 -07:00
Jacob MacDonald
01d5c29513
fix(transformer): remove classDefParser in favor of hardcoded strings to speed up build
2015-05-11 10:45:02 -07:00
Kevin Moore
7844e3a275
chore: dartfmt Dart code in the repo
2015-05-11 09:50:33 -07:00
Pawel Kozlowski
a5638a940c
feat(directives): export collection of core directives
...
Closes #1524
2015-05-11 16:47:45 +02:00
Pawel Kozlowski
4665726f48
feat(lang): support const expressions in TS/JS and Dart
...
Closes #1796
2015-05-11 12:11:24 +02:00
Tobias Bosch
4f3433b5bd
feat(view): allow to transplant a view into a ViewContainer at another place.
...
Closes #1492 .
2015-05-08 21:35:01 -07:00
yjbanov
2185e7cee9
feat(di): expose parent injector
2015-05-08 17:11:27 -07:00
yjbanov
66f5e30d7c
chore(dart): use --trust-type-annotations and --trust-primitives
2015-05-08 16:13:53 -07:00
yjbanov
1a0da11e55
feat(di): components can self-publish via publishAs
2015-05-08 16:13:00 -07:00
Tim Blasi
abc8878547
feat(dart/transform): Reuse readDirectiveMetadata in plugin
...
Share code for parsing `DirectiveMetadata` values between the
transformer and the analyzer plugin.
2015-05-08 14:34:16 -07:00
Brian Ford
853d1de6ec
fix(router): strip base href from URLs when navigating
2015-05-08 13:51:43 -07:00
Brian Ford
84dc6ae76b
fix(test_lib): spy funcs should match null arguments
2015-05-08 13:51:43 -07:00
Brian Ford
05219a54cd
feat(dom): add getBaseHref method
2015-05-08 13:51:42 -07:00
PatrickJS
4b62a722f0
feat(change_detection.js): export null pipes
...
rather then having developers creating their own null pipes
Closes #1624
2015-05-08 13:50:17 -07:00
gdi2290
09b39bf77a
docs(core): fix Formatters -> Pipes
...
long overdue update
Closes #1629
2015-05-08 13:45:13 -07:00
Kevin Western
42f6baeaec
Fix documentation for toFactory and toAsyncFactory
...
The bound String classes should have a dependency on Number, not String.
Closes #1654
2015-05-08 13:40:12 -07:00
Jeremy Elbourn
8ef183b593
feat(material): add early version of md-grid-list.
...
Closes #1683
2015-05-08 13:29:24 -07:00
Matan Lurey
2cb066215a
Add correct type to TestBed.createView
...
Closes #1727
2015-05-08 13:17:42 -07:00
Tim Blasi
200e190f70
fix(dart/transform): Handle `hostAttributes` in DirectiveMetadata
...
Handle `hostAttributes` in the transformer.
`hostAttributes` was introduced in 51839ca677
Closes #1742
2015-05-08 11:19:11 -07:00
Tim Blasi
44f829dbc6
feat(dart/transform): Use the render Compiler and the DirectiveParser
...
Update the `TemplateCompile` step to use the full render `Compiler`.
Provide `DirectiveMetadata` for `ViewDefinition` objects and use it to
run the `DirectiveParser` step of the render compile pipeline.
2015-05-08 11:18:40 -07:00
Jeremy Elbourn
ad23921814
feat(material): early version of md-input
...
Closes #1753
2015-05-08 11:16:18 -07:00
vsavkin
d717529e9a
fix(change_detection): updated dynamic change detector not to mutate when throwing
...
Closes #1762
2015-05-08 10:46:08 -07:00
Tobias Bosch
c68fa27444
refactor(render): remove recursion from renderer
...
The goal is to make implementing a renderer straight forward.
BREAKING_CHANGE:
- Renderer interface was redone / simplified.
- `DirectDomRenderer` was replaced by `DomRenderer`.
- `DirectDomRenderer.setImperativeComponentRootNodes` is replaced
by the following 2 steps:
1. `ViewManager.getComponentView(elementRef) -> ViewRef`
2. `DomRenderer.setComponentViewRootNodes(viewRef, rootNodes)`
- all `@View` annotations need to have a template, but the template
may be empty. Previously views that had a `renderer` property did
not have to have a `template`.
- `dynamicComponentLoader.loadIntoNewLocation` does no more allow
to pass an element, but requires a css selector.
Special syntax: `:document` can be used as prefix to search globally
on the document instead of in the provided parent view.
Part of #1675
2015-05-08 09:37:41 -07:00
John Jelinek IV
d2507ac760
Add full example to FormBuilder docs
2015-05-08 16:35:25 +02:00
Martin Probst
4ce0d5e024
fix(dart): Remove unused imports.
...
These imports cause dart analyze errors once ts2dart removes the
IMPLEMENTS import.
2015-05-08 15:24:37 +02:00
Matthew Hill
5d9e573b3e
docs(annotations): differentiate between component definitions and component instances
...
Closes #1661
2015-05-08 14:50:33 +02:00
Pawel Kozlowski
51839ca677
feat(compiler): allow setting attributes on a host element
...
Closes #1402
2015-05-08 14:22:07 +02:00
vsavkin
fa28b28d0a
build(typescript): Migrated change detection to typescript
2015-05-07 17:18:04 -07:00
Jeremy Elbourn
20a033e4c9
chore(material): add simple e2e smoke tests for components.
2015-05-07 15:13:30 -07:00
PatrickJS
93c331d103
fix(decorators.es6): export Directive decorator
...
Closes #1688
2015-05-07 15:12:22 -07:00
Alex Eagle
1daa8aa3a1
chore(shrinkwrap): update dependencies to latest
...
Also, our package.json was out-of-sync with npm-shrinkwrap.json; see https://github.com/angular/angular/issues/1737
This includes a fix for the shrinkwrapping of ts2dart; see https://github.com/angular/ts2dart/issues/138
2015-05-07 14:29:43 -07:00
Misko Hevery
b0c735f72c
fix(decorators): incorrect annotation to decorator adapter
2015-05-07 12:30:18 -07:00
Jacob MacDonald
0e2047f9ca
chore(benchmarks): add transform benchmark runner and clean up benchmark output
2015-05-07 10:36:04 -07:00
vsavkin
49777648b3
fix(decorators): fixed decorators
2015-05-06 21:08:55 -07:00
vsavkin
cb87fa0970
chore(build): migrated di to TypeScript
2015-05-06 19:00:56 -07:00
Kevin Moore
649e276610
chore: support last dev build of Dart at 1.10.0-dev.1.10
...
Can revert once 1.11 is available
2015-05-06 18:21:46 -07:00
Kevin Moore
5ef11774c2
chore: update pubspec files
...
Allow latest analyzer version
Add an upper constraint to the Dart SDK
2015-05-06 17:55:03 -07:00
Kevin Moore
75db2c5241
chore: add more types to a number of top-level properties and methods
2015-05-06 17:53:44 -07:00
Tim Blasi
c8ebd11d63
feat(dart/transform): Generate DirectiveMetadata for exports
...
For all files that export another library, include `DirectiveMetadata`
for the exported library in that file's associated `ng_meta.json` file.
2015-05-06 17:17:04 -07:00
Alex Wolfe
577a80371f
fixed build process by adding comment
2015-05-06 15:27:25 -07:00
Rado Kirov
be7504d451
fix(decorators): fixes decorator reflection.
...
The bug appears when there are only type annotations without parameter
annotations.
2015-05-06 13:44:44 -07:00
Tim Blasi
169e4e862d
refactor(dart/transform): Use render Compiler concepts
...
Update `TemplateCompiler` transform step to use abstractions used by the
render `Compiler`. For example, template code is now loaded via an
instance of `TemplateLoader` and external resources are fetched via an
instance of `XHR`.
2015-05-06 12:51:49 -07:00
Tobias Bosch
abc3de7efe
refactor(render): rename `RenderView` and `RenderProtoView`
...
Part of #1675
Closes #1705
2015-05-06 11:46:52 -07:00
Tobias Bosch
0856516ae9
refactor(renderer): separate compiler from renderer
...
Part of #1675
Closes #1702
2015-05-06 10:50:15 -07:00
Rado Kirov
c9cec60007
fix(router): fix for leading slash in dart
...
Using string1 === string2 translates to identical(string1, string2) in
dart, which is incorrect as it is possilbe for dart strings to have
different reference.
2015-05-05 15:19:06 -07:00
Rado Kirov
f356d03362
feat(dom): add location and history as DOM-like APIs.
...
Instead of global access methods.
2015-05-05 14:50:53 -07:00
Tim Blasi
0520ca68b4
feat(dart/transform): Add DirectiveMetadataExtractor transform step
...
Add a step that reads `DirectiveMetadata` object off annotated classes
into `.ng_meta.dart` files. These will be used by the `TemplateCompiler`
step as inputs to the Angular 2 render compiler.
Update one test to avoid unsupported functionality, format others.
2015-05-05 12:07:50 -07:00
Rado Kirov
8e1d53b5e9
feat(router): adds the router to the self-executing bundle.
...
Due to limitation of system build, the router cannot have its own sfx
bundle.
Fixes an issue with RouteConfig decorator by moving it into its own
file.
2015-05-05 10:55:23 -07:00
Kevin Moore
f5b56c627b
refactor: add types to top-level fields in change_detection
...
Also introduced an abstract PipeFactory base class
2015-05-05 10:21:56 -07:00
Jeremy Elbourn
f88c4b77ca
feat(material): add prototype dialog component w/ demo.
2015-05-04 16:43:15 -07:00
Brian Ford
75da6e4c4a
feat(router): export decorator version of RouteConfig
2015-05-04 15:44:16 -07:00
Jacob MacDonald
1864f60afb
feat(benchmarks): Add basic dart transformer benchmarks.
...
Adds simple benchmarks for various transformation phases, as well as hello_world.
Does not integrate these into any benchmark frameworks yet.
2015-05-04 14:03:58 -07:00
Rado Kirov
457c15cd6c
feat(decorators): adds decorator versions of DI annotations.
...
In 'angular2/di' the symbol:
- Inject is a decorator
- InjectAnnotation is an annotation
Internally one an get a hold of annotations without *Annotations appened
(to make ts2dart work without workarounds) by importing from
'angular2/src/di/annotations_impl' instead of 'angular2/di'. This is
needed only for users that transpile through TS and through ts2dart.
2015-05-04 13:35:09 -07:00
Brian Ford
28feac9411
refactor(router): rename "alias" to "as"
2015-05-03 20:37:00 -07:00
Brian Ford
9153331303
feat(router): route redirects
2015-05-03 20:37:00 -07:00
Brian Ford
9d5c33f9dd
feat(router): sibling outlets
2015-05-03 20:26:47 -07:00
Brian Ford
2713b7877b
fix(router): navigate on popstate event
2015-05-03 20:26:22 -07:00
Brian Ford
259f872cea
fix(router): throw if config does not contain required fields
2015-05-01 16:41:25 -07:00
Brian Ford
68ed8f1b6b
refactor(router): rename LocationMock to LocationSpy
2015-05-01 16:41:25 -07:00
Brian Ford
ef7014fe19
feat(router): export routerInjectables
2015-05-01 16:41:25 -07:00
Brian Ford
46ad3552c7
fix(router): infer top-level routing from app component
...
Closes #1600
2015-05-01 16:41:25 -07:00
Brian Ford
4965226f3f
fix(router): use lists for RouteConfig annotations
2015-05-01 15:55:53 -07:00
Brian Ford
ea546f5069
feat(router): add location service
2015-05-01 15:55:53 -07:00
vsavkin
ce6a2ba836
refactor(view): moved the logic from ProtoView to ProtoViewFactory
2015-05-01 13:35:17 -07:00
Alex Eagle
3c77855b39
chore(build): Remove .es6 files which shadow .ts files.
...
This removes .es6 files which are pure duplicates of a
.ts file in the same folder.
Next we need to remove .js files as well, and remove karma preprocessors for dart.
2015-05-01 09:51:03 -07:00
vsavkin
c1579222bd
fix(view): changed view manager to hydrate change detector after creating directives
2015-04-30 22:01:55 -07:00
Rado Kirov
f863ea0db5
feat(decorators): adds support for parameter decorators.
...
Paramater decorators expect to be called as currently implemented by TS.
2015-04-30 18:42:40 -07:00
vsavkin
e4342743c0
feat(benchmark): added an implementation of the tree benchmark in React
2015-04-30 18:12:21 -07:00
Tobias Bosch
9e8d31d532
fix(compiler): clone templates before compiling them
...
This is needed as the compiler changes templates during compilation
and we are caching templates in the `TemplateLoader`.
Closes #1058
2015-04-30 16:40:57 -07:00
Tobias Bosch
f75a50c1dd
refactor(compiler): rename decorator directives into directive
...
BREAKING CHANGE:
Previously, `Directive` was the abstract base class of several directives.
Now, `Directive` is the former `Decorator`, and `Component` inherits from it.
2015-04-30 13:38:40 -07:00
Tobias Bosch
c671706518
refactor(benchpress): report forced gc metric separately
2015-04-30 12:15:30 -07:00
Tobias Bosch
ead21c91a4
fix(exception_handler): log errors via `console.error`
...
This is e.g. needed as we use this to test for errors
in our examples.
2015-04-30 11:45:34 -07:00
Rado Kirov
87dcd5eb6f
fix(decorators): updates missing benchmark and fixes typo.
2015-04-30 10:22:30 -07:00
Tobias Bosch
8faf6364dc
refactor(core): remove DynamicComponent
...
BREAKING CHANGE:
A dynamic component is just a component that has no @View annotation…
2015-04-30 09:17:25 -07:00
Alex Eagle
bb50fc131b
chore(build): update TypeScript version to unreleased beta
...
Also fixup the typings which were broken by changes in typescript's lib.d.ts.
Second attempt to merge this, now that bugfix for tsd is in.
2015-04-29 17:03:02 -07:00
Tobias Bosch
3aac2fefd7
refactor(compiler): remove `Viewport` directives, use `Decorator` instead
...
BREAKING_CHANGE:
- The special type of `Viewport` directives is removed
in favor of a more general `Decorator` directive
- `ViewContainerRef` now no more has a default `ProtoViewRef`
but requires an explicit one when creating views.
Closes #1536
2015-04-29 15:59:55 -07:00
Rado Kirov
fb67e37339
feat(decorators): adds decorators to be used by TS and Babel transpiled apps.
2015-04-29 15:13:25 -07:00
Tim Blasi
648c514c28
feat(dart/transform): Add directiveMetadata{To,From}Map
...
Add utility methods to convert `render.dom.DirectiveMetadata` to and
from maps. This will allow saving and restoring `DirectiveMetadata` in
the Angular 2 Transformer.
We discussed adding this as a member on `DirectiveMetadata`. Since this
is not necessary for anything except the Transformer, we decided to put
it into a separate file to avoid shipping it with the Angular 2 core
code.
2015-04-29 14:22:08 -07:00
Alex Eagle
511e832ee2
chore(build): Karma watches broccoli output.
...
This is a prerequisite for switching to TypeScript. We need to remove the Traceur preprocessor
from Karma, so we have the build specified in a single place (broccoli tree def'n).
2015-04-29 14:15:45 -07:00
Tobias Bosch
09f8d8f7ba
refactor(core): introduce `ViewRef` and `ProtoViewRef`
...
BREAKING CHANGES:
- `NgElement` merged into `ElementRef`
- `Compiler.compile…` returns `ProtoViewRef`
- `ViewContainer` uses `ProtoViewRef`s and `ViewRef`s.
- `ViewRef`/`ProtoViewRef` in renderer were renamed to
`RenderViewRef`/`RenderProtoViewRef`.
Related to #1477
Closes #1592
2015-04-29 14:03:38 -07:00
Alex Eagle
b5032fd374
fix(build): revert typescript upgrade which broke the build.
...
This reverts commit a7a9463624
.
This reverts commit 59824e40e8
.
2015-04-29 10:49:54 -07:00
Alex Eagle
a7a9463624
fix(build): refer to newest version of hammerjs typings
2015-04-29 10:13:30 -07:00
Alex Eagle
59824e40e8
chore(build): update TypeScript version to unreleased beta
...
Also fixup the typings which were broken by changes in typescript's lib.d.ts
2015-04-29 10:09:32 -07:00
Marc Laval
a51a5c2968
chore(build): run forms tests in Node
...
Closes #1565
2015-04-29 13:58:07 +02:00
vsavkin
e3c11045bf
fix(compiler): changed the compiler to set up event listeners and host properties on host view elements
...
Closes #1584
2015-04-29 05:27:45 +00:00
Pawel Kozlowski
d2d4e7d783
refactor(parser): remove unused variables
...
Closes #1553
2015-04-29 04:08:42 +00:00
Pawel Kozlowski
ee1b574baf
fix(di): improve error messages for invalid bindings
...
Fixes #1515
Closes #1573
2015-04-28 23:42:36 +00:00
Pawel Kozlowski
c0f3778dda
docs(For): fix example to use for-of syntax
...
Closes #1572
2015-04-28 23:42:24 +00:00
Matteo Suppo
d4925b61ff
fix(change_detector): ensure that locals are only used when implicit receiver
...
closes #1542
2015-04-28 23:40:22 +00:00
Josh Kurz
14988d4415
docs(core): updating some errors in 01_templates
...
Signed-off-by: Josh Kurz <jkurz25@gmail.com>
Closes #1529
2015-04-28 23:39:20 +00:00
Josh Kurz
cd953ceb48
docs(core): update core directives document
...
Signed-off-by: Josh Kurz <jkurz25@gmail.com>
2015-04-28 23:39:20 +00:00
Tim Blasi
726fecbfb6
feat(dart/transform): Turn on transform for examples/todo
...
- Tag services with `@Injectable()`
- Update `pubspec.yaml` to transform examples/todo.
Closes #1527
2015-04-28 23:38:08 +00:00
vsavkin
818bb9b697
test: changed test bed to run change detection twice to make sure there are no changes second time
...
Closes #1517
2015-04-28 23:37:09 +00:00
vsavkin
e4586249fa
refactor(change_detection): removed NO_CHANGED and replaced it with WrappedValue
2015-04-28 23:37:09 +00:00
Matthew Hill
3d62546314
fix(compiler): only sets viewDefinition absUrl if the view has either a template or templateUrl
...
fixes #1326
closes #1327
2015-04-28 15:40:07 -07:00
Jeremy Elbourn
b9eab463f7
chore(): fix host properties for MD components.
2015-04-28 10:48:03 -07:00
Peter Bacon Darwin
7fb2f2069c
docs(Injector): remove unwanted tab characters in the examples
...
These mess up the jade templates that use tabs for structuring the output.
2015-04-28 14:31:35 +01:00
Tobias Bosch
a801da6f7c
fix(ViewManager): dehydrate views recursively over ViewContainers
...
Closes #1560
2015-04-27 17:39:20 -07:00
Tobias Bosch
6fcd3709cf
fix(render): return views when destroyed in ViewContainer
...
Closes #1316
2015-04-27 17:39:09 -07:00
Brian Ford
1b2754dacd
feat(router): add initial implementation
2015-04-27 17:15:58 -07:00
Brian Ford
e617ca6323
feat(facade): add isType method
2015-04-27 17:15:58 -07:00
Tim Blasi
15376a6d24
feat(dart/transform): Dedup getters, setters, & methods
...
Dedup the getters, setters, and methods generated by the transformer
when compiling a template.
Run `dartformat` over the transform code.
2015-04-27 17:04:31 -07:00
Naomi Black
6ab19dd095
docs(change_detection): document JitChangeDetection and DynamicChangeDetection
...
closes #1446
2015-04-27 15:34:40 -07:00
Tim Blasi
99fdb9ac41
fix(dart/transform): Use `var` instead of `bool` in generated files
...
If a source file hides `bool` (explicitly or implicitly via `show`), a
generated file using `bool` may not resolve.
Closes #1455
2015-04-27 14:23:24 -07:00
Yegor Jbanov
427f0d021c
perf(benchmarks): benchmark that measure cost of dynamic components
2015-04-27 10:16:53 -07:00
Yegor Jbanov
9fc9d53566
perf(benchmarks): benchmark measuring cost of decorators ( fixes #1479 )
2015-04-27 10:16:52 -07:00
Tobias Bosch
6dece68bb8
refactor(core): rename ViewContainer to ViewContainerRef
...
This also renames InternalAppViewContainer into AppViewContainer
Related to #1477
Closes #1554
2015-04-27 10:12:21 -07:00
Ciro Nunes
0676fef61f
docs(directives): CSS selectors are used for directives
...
Closes #1544
2015-04-27 15:32:26 +02:00
Sekib Omazic
1d52cfba13
chore(query_list.js): fix minor typos
...
Typos fixed
Closes #1549
2015-04-27 15:30:17 +02:00
Tobias Bosch
bfa381b35a
refactor(view): introduce AppViewManager to consolidate logic
...
AppViewManager is the single entry point to changing the view hierarchy.
It is split between the manager itself which does coordination and
helper methods, so both are easily testable in isolation.
Also, ViewContainer is now only a pure reference to a bound element
with the previous functionality but does not contain the list of views
any more.
Part of #1477
2015-04-24 20:26:18 -07:00
Tobias Bosch
f78406392b
fix(test_lib): support multi matches with deep equality for function calls
2015-04-24 17:53:41 -07:00
Alex Eagle
623edcd2d8
Copy a second package to TypeScript.
2015-04-24 15:49:04 -07:00
vsavkin
b5e350b18c
cleanup(forms): do not export AbstractControl
...
Closes #1299
2015-04-24 13:57:03 -07:00
Yegor Jbanov
87cf434929
chore(sources): intro modules_dart; move analyzer code there
...
We have Dart code in `angular2` module that ought to be in its own
package. Examples include Dart analysis plugins, and potentially the
transformers (although transformers cannot be moved out just yet).
However, this code is Dart-only and it doesn’t make sense to use JS
directory layout for it. This commit introduces a sub-directory called
`modules_dart`. All modules in this directory are pure Dart packages
using standard pub directory layout. The code in these packages never
gets transpiled. It is directly copied to `dist` unmodified, except an
adjustment in relative paths in `pubspec.yaml` files.
2015-04-24 13:29:18 -07:00
Pawel Kozlowski
4bab25b366
feat: alllow specifying directives as bindings
...
Related to #709
Closes #1498
2015-04-24 11:02:17 -07:00
Pawel Kozlowski
6896305e34
fix: export ShadowDom strategies
...
Fixes #1510
Closes #1511
2015-04-24 08:41:37 +02:00
vsavkin
8ccafb0524
feat(view): reimplemented property setters using change detection
2015-04-23 11:55:27 -07:00
Marc Laval
8a92a1f13e
fix(angular2): export QueryList in angular2/core
...
Closes #1502
2015-04-23 11:04:30 -07:00
Pawel Kozlowski
d0059b5d75
refactor(PipeRegistry): improve error messages
...
Closes #1504
2015-04-23 11:04:30 -07:00
Pawel Kozlowski
fa8e059f28
refacor(lexer): remove unused ~/ operator
...
Closes #1509
2015-04-23 11:04:30 -07:00
Wesley Cho
8e18d6c6cf
docs(annotations): fix casing in view annotation
...
- Fix the casing to match key name exposed for `templateUrl` in `View`
annotation
Closes #1495
2015-04-23 11:04:30 -07:00
Pawel Kozlowski
afe0e45453
feat(parser): support === and !== operators
...
Closes #1496
Closes #1500
2015-04-23 20:01:31 +02:00
Victor Berchet
2e3e41ba64
fix(ListWrapper): follow JS semantics
2015-04-23 09:46:09 +02:00
vsavkin
d74dd1126b
cleanup(di): removed dead code
2015-04-22 14:48:53 -07:00
Matthew Hill
6f4b6783c0
docs(02_directives): TemplateConfig -> @View
...
for #1224
Closes #1325
2015-04-21 16:31:25 -07:00
Sam Rawlins
642e7e5c46
fix(benchpress): only print the CV when it is meaningful
...
When the mean is 0, the coefficient of variation is calculated to be
NaN, which is not meaningful, so instead of printing "+-NaN%", just
don't print the CV at all.
Closes #908
Closes #1444
2015-04-21 16:31:12 -07:00
Kevin Moore
7551a28f1a
chore: show dart2js package warnings for angular2, benchmarks, examples
...
Closes #1468
2015-04-21 16:22:49 -07:00
Gion Kunz
e51a48fe4c
Fixed example for EventEmitter
...
I didn't get a full trace back for my evidence I got from making this example work. EventEmitter was instantiated and assigned to wrong property. Also the mapping should be done using the component property name as it will be obtained via accessor and exposed on the directive (as far as I understood).
2015-04-21 16:22:10 -07:00
Marc Laval
22c6c09daf
chore(build): run event tests in Node
...
Closes #1476
2015-04-21 16:21:39 -07:00
Tobias Bosch
e70a2f21dd
fix(dom): remove methods is allowed on text nodes as well
...
Fixes #1473
Closes #1478
2015-04-21 11:56:11 -07:00
Tobias Bosch
97e6fb6835
fix(benchmarks): wait for end of benchmarks
2015-04-21 11:25:07 -07:00
Julie Ralph
fa1ec48549
chore(example): fix TODO example on dart
...
Reflection for Dart was not set up properly for the TODO example,
so it was failing when served on dartium via
gulp serve/examples.dart
2015-04-21 10:17:26 -07:00
Kevin Moore
f7f06c5ad4
chore: add more type annotations
2015-04-21 08:49:05 -07:00
Pawel Kozlowski
e23004df52
fix(di): capture original exception in InvalidBindingError
...
Fixes #1406
Closes #1459
2015-04-21 10:59:44 +02:00
Tobias Bosch
ada1e642c5
feat(view): add imperative views
2015-04-20 17:18:44 -07:00
Julie Ralph
817c79ca77
refactor(testability): rename function to get testability
...
Previously, getting testability was `window.angular2.getTestability`
This was because the plan was to export the API to the window as
angular2. However, the decision was changed to make this just `angular`
in 3177576ad6
To decouple testability from the rest of the Angular API, just make it
one function, `window.getAngularTestability`.
2015-04-20 15:13:09 -07:00
vsavkin
a97a2266d3
feat(change_detection): added async pipe
2015-04-20 14:50:23 -07:00
vsavkin
2d929e73ec
cleanup(change_detection): moved pipes-related tests to the pipes dir
2015-04-20 14:24:15 -07:00
vsavkin
681d06386d
feat(view): implemented loading component next to existing location
2015-04-20 13:41:10 -07:00
Tim Blasi
77b31ab42f
feat(dart/transform): Add debug transform parameters
...
Add two transform parameters to aid in debugging the transformer
- `mirror_mode`, with values {`debug`, `none`, and `verbose`}
- `init_reflector`, with values {`true`, `false`}
`mirror_mode`:
- `debug`: Allow reflective access, but log a message if it is used
- `none`: Remove reflective access, `throw` if it is used. Default value
- `verbose`: Allow reflective access, log a stack trace if it is used
`init_reflector`: Whether to generate calls to our generated
`initReflector` code.
These will be useful to reveal areas where the transformer is not generating
appropriate code and to quickly see where reflective accesses occur.
When the pub mode is `transform_dynamic`, we run in MirrorMode.debug
with `init_reflector = false`. This is used for testing purposes.
2015-04-20 12:32:04 -07:00
Tim Blasi
5b4eb0c6d7
style(dart/transform): Format Dart files in reflection
...
Run the formatter on some Dart-specific reflection files.
2015-04-20 12:32:04 -07:00
Naomi Black
5c25248582
docs(x-ref links): Change links to use dgeni syntax
...
Closes #1440
2015-04-20 18:45:04 +00:00
Tobias Bosch
64ad74acbe
fix(shadowdom): remove unused nodes on redistribute
...
Previously, light dom nodes that were not used by any content tag
were not removed from a view on redistribute. This lead
to a bug when reusing a view from the view pool, as it
still contained stale reprojected nodes.
Fixes #1416
2015-04-20 11:36:39 -07:00
Tobias Bosch
02997f473a
fix(viewFactory): allow empty view cache
2015-04-20 11:36:39 -07:00
Misko Hevery
447018b54b
docs: change primordial injector to platform injector
2015-04-20 16:45:23 +00:00
Marc Laval
883e1c1541
feat(events): support preventdefault
...
Fixes #1039
Closes #1397
2015-04-20 15:20:52 +02:00
Marc Laval
aabe83cf63
chore(build): run application tests in Node
...
Closes #1423
2015-04-20 14:45:18 +02:00
Konstantin Shcheglov
a00cb1de50
feat(Compiler): Make Compiler.buildRenderDirective() static.
2015-04-17 21:57:25 -07:00
vsavkin
56f3429cc9
fix(view): chagned view factory to keep AstWithSource
2015-04-17 17:40:43 -07:00
vsavkin
4943c0f887
fix(view): fixed hydrator to pass the right element index when attaching an event listener
2015-04-17 17:27:12 -07:00
Tim Blasi
00e2d70f05
refactor(dart/transform): Remove index_static from hello_world
...
index_static.js & index_static.html are unnecessary in Js and are now
essentially generated via the Dart transformer. The angular
transformer is specified in examples/pubspec.yaml; use pub build to
create a transformed application that does not use dart:mirrors.
Create index_dynamic.js & index_dynamic.html, which are used to test
that the app runs equally well with mirrors and without.
Closes #495
2015-04-17 16:11:48 -07:00
Yegor Jbanov
e52d71060f
chore(analysis): fix analyzer warning in index_static
2015-04-17 14:01:42 -07:00
Yegor Jbanov
01869f9fa8
chore(format): format a TS file
2015-04-17 13:56:13 -07:00
Yegor Jbanov
526c51d1a6
fix(facades): fix splice semantics; add test
2015-04-17 13:52:03 -07:00
Yegor Jbanov
2b4d30d931
chore(analysis): analyze everything in lib folders recursively; fix existing warnings
2015-04-17 13:52:02 -07:00
Yegor Jbanov
3dc4df2ffa
chore(analysis): analyze web folders; fix existing warnings
2015-04-17 13:52:02 -07:00
Tobias Bosch
f830cfca12
refactor(view): provide ViewContainers dynamically on any element
2015-04-17 12:35:59 -07:00
vsavkin
eac5c88893
fix(view): fixed hydrator to export the dom element instead of ng element
2015-04-17 12:32:33 -07:00
Victor Berchet
abfe175c9e
doc(VmTurnZone): inline doc
...
Closes #1427
2015-04-17 18:19:59 +00:00
Victor Berchet
0fc66daef6
fix(core): typo ComponetRef -> ComponentRef
...
Closes #1426
2015-04-17 18:19:58 +00:00
Pawel Kozlowski
5a095bb257
refactor(di): rename ProviderError to BindingError
...
Closes #1428
2015-04-17 20:17:51 +02:00
Naomi Black
de31aca7a7
docs(di): Edits to DI.
...
Closes #1420
2015-04-17 17:49:12 +00:00
Peter Bacon Darwin
97220dd2ba
docs(life_cycle): mark `registerWith` as `@private`
2015-04-17 16:25:13 +01:00
Peter Bacon Darwin
66a2f9b23a
docs(angular2/annotations): convert `[...]` links to use `{@link ...}` style inline tags
...
This is an example of how to link to other code components using the `link`
inline tag.
2015-04-17 14:02:03 +01:00
Misko Hevery
87ac100c66
docs: add DI to public docs
2015-04-17 03:56:17 +00:00
vsavkin
5408abca68
refactor(change_detection): removed global change detection objects so it is possible to override pipe registry
2015-04-16 15:57:45 -07:00
vsavkin
233cb0f96a
feat(view): changed event emitters to be observables
2015-04-16 14:44:14 -07:00
Julie Ralph
8b28e99373
fix(benchpress): explicitly require navigation to finish before continuing
2015-04-16 14:04:41 -07:00
Tobias Bosch
923d90bce8
refactor(views): clean up creating views in place and extract view_hydrator
...
Major changes:
- `compiler.compileRoot(el, type)`
-> `compiler.compileInHost(type) + viewHydrator.hydrateHostViewInPlace(el, view)`
- move all `hydrate`/`dehydrate` methods out of `View` and `ViewContainer` into
a standalone class `view_hydrator` as private methods and provide new public
methods dedicated to the individual use cases.
Note: This PR does not change the current functionality, only moves it
into different places.
See design discussion in #1351 , in preparation for imperative views.
2015-04-16 11:58:01 -07:00
vsavkin
97fc248e00
cleanup(di): changed an error message to be more descriptive
2015-04-16 11:06:20 -07:00
vsavkin
7bd682bb27
feat(parser): changed parser to parse pipes in the middle of a binding
2015-04-16 10:39:03 -07:00
Tim Blasi
e927342e58
Read only a single DirectiveMetadata (will be squashed)
2015-04-16 09:11:03 -07:00
Tim Blasi
ae84eb7462
refactor(dart/transform): Correct Dart analyzer warnings
2015-04-16 09:11:03 -07:00
Tim Blasi
f89bb8eaf3
Address code review comments
2015-04-16 09:11:03 -07:00
Tim Blasi
0d0b3a35da
test(dart/transform): Add unit tests for DirectiveMetadataReader
2015-04-16 09:11:03 -07:00
Tim Blasi
cf7bef58b0
feat(dart/transform): Add the DirectiveMetadataReader
...
Add a class that parses and reads Directive metadata to prepare for
running the Render compiler in the Dart transformer.
2015-04-16 09:11:02 -07:00
Jacob MacDonald
c65fd31e86
feat(dart/transform): Detect annotations which extend Injectable or Template.
...
Create a method that recursively walks imports from an entry point and
determines where classes are registered.
Use this information to determine if a particular annotation implements or
extends Injectable or Template.
2015-04-16 07:17:24 -07:00
Kevin Moore
957384ceeb
fix: Fix issues found by Dart analyzer
2015-04-15 20:58:29 -07:00