vsavkin
984ff9bf1b
cleanup(view): remove unused code
2014-12-05 19:06:11 -08:00
vsavkin
33b47bd5d4
fix(view): fix DirectivePropertyGroupMemento to return a new group instead of null
2014-12-05 19:01:16 -08:00
Tobias Bosch
8db77f2405
refactor(build): simplify and modularize
...
simplify:
- use same html file for dart and JS
- build benchmarks automatically when doing `gulp build`
- centralize configuration
modularize:
- move all build tasks into separate node.js modules under
`tools/build`.
changes:
- the `build` folder is now the `dist` folder
Closes #284
2014-12-05 16:30:36 -08:00
Victor Berchet
ceb9ee92bb
fix(Change Detection): fix merge error
2014-12-05 12:20:00 +01:00
Rado Kirov
174613067c
feat(views): adds (de)hydration of views and template vars.
...
Dehydrated views are views that are structurally fixed, but their
directive instances and viewports are purged.
Support for local bindings is added to the view.
2014-12-04 22:40:51 -08:00
Victor Berchet
5c531f718e
perf(RecordRange): optimize disable()
...
There could be no lastEnabledChildRecord when there is no
firstEnabledChildRecord
- saves time by skipping findLastEnabledRecord() when the result is know
to be null,
- saves a test as isPresent(lastEnabledChildRecord) ==
isPresent(firstEnabledChildRecord)
2014-12-04 19:52:43 +01:00
Peter Bacon Darwin
983c00c495
docs(di/src/annotations): use triple backticks to code-fence code blocks
2014-12-04 14:16:52 +00:00
Victor Berchet
11c52ce06d
style: fix typos
2014-12-04 11:01:19 +01:00
vsavkin
65242fbd6d
perf(change_detection): add baseline to change detection benchmark
2014-12-03 18:09:21 -08:00
vsavkin
847cefcb7b
feat(change_detector): notify directives on property changes
2014-12-03 14:33:52 -08:00
Rado Kirov
5bdefee6c9
fix(record-range): fixes bug when disabling empty ranges.
2014-12-03 12:04:06 -08:00
Rado Kirov
c59cc8631a
feat(examples): adds static dart hello world example.
...
Use gulp examples/pub.serve to start up the server and go to
http://localhost:8080/index_static.html to see the static app.
2014-12-03 10:58:30 -08:00
Victor Berchet
0f3134acd4
perf(ProtoRecordRange): re-use a ProtoRecordCreator
2014-12-03 12:10:07 +01:00
Victor Berchet
f8c070c5e4
perf(ProtoRecord): remove the unused prev field
2014-12-03 12:10:07 +01:00
Tommy Odom
f088e9ef15
feat(transpiler): Transform for..of to Dart as for..in
...
fixes #53
2014-12-03 10:48:48 +01:00
Victor Berchet
bf71b94bde
feat(Change Detector): Add support for collection content watch
2014-12-03 10:37:13 +01:00
Victor Berchet
2d2f44949d
perf(Change Detection): Remove a useless test
...
Only "implicit receiver" records get their context updated (since #239 )
2014-12-03 10:14:07 +01:00
Victor Berchet
7cb93fd59e
feat(Change Detection): Add support for keyed access
2014-12-02 16:15:13 +01:00
Tobias Bosch
7bc282d15e
feat(viewport): add initial integration test for template directives
2014-12-01 16:39:37 -08:00
Tobias Bosch
0758165fb5
fix(compiler): allow identifiers with `-` in the template bindings as keys.
2014-12-01 16:39:36 -08:00
Tobias Bosch
63053438ea
fix(compiler): always wrap views into an own `<template>` element
...
This is needed to allow view instantiation also in browsers that
don’t support the `<template>` element and because of this would
return elements from the content of `<template>` elements when
using `element.querySelectorAll`.
Also stores the `elementBinder.nestedProtoView` correctly
when a template directive was used on a `<template>` element.
2014-12-01 16:39:36 -08:00
Pawel Kozlowski
95d86d151a
fix(example): correct markup in the hello world example
2014-12-01 15:13:02 -08:00
Victor Berchet
fc2181ec4e
fix(Dart1.8): Promise handling
2014-12-01 21:17:16 +01:00
Victor Berchet
0703ee526c
fix(Dart1.8): fix analyzer warnings
2014-12-01 21:17:16 +01:00
Uri Shaked
3e57189e45
fix(examples): fix hello_world example (js)
...
Added missing path mapping for the new reflection module.
2014-11-26 14:14:18 -08:00
vsavkin
1863d50978
feat(parser): adds support for variable bindings
2014-11-26 14:03:05 -08:00
vsavkin
a3d9f0fead
fix(parser): handle empty strings
2014-11-26 12:59:11 -08:00
vsavkin
6f889e3094
feat(di): add OpaqueToken to DI
...
Using `new Object()` as a token causes cryptic errors. OpaqueToken class should be used instead.
2014-11-26 12:52:16 -08:00
vsavkin
6187b80ce6
benchmark(compiler): add a benchmark measuring view instantiation in AngularDart 1.0
2014-11-25 17:46:11 -08:00
Rado Kirov
c6f14dd833
feat(viewPort): adds initial implementation of ViewPort.
...
ViewPort is the mechanism backing @Template directives. Those
directives can use the viewport to dynamically create, attach and
detach views.
2014-11-25 16:19:50 -08:00
vsavkin
9a28fa8590
refactor(change_detection): make RecordRange responsible for removing iself
2014-11-25 14:33:19 -08:00
vsavkin
2b53a2f353
fix(ChangeDetector): fix issues with handling empty ranges
2014-11-25 14:28:02 -08:00
vsavkin
3d05f521fe
fix(benchmarks): add the reflection module to benchmark config files
2014-11-24 18:17:22 -08:00
vsavkin
9466592ca6
refactor(benchmarks): rename paths.js into register_system.js to match other benchmarks
2014-11-24 18:16:50 -08:00
vsavkin
bfd3c2d5a9
fix(reflection): update pubspec.yaml to add a missing dependency on reflection
2014-11-24 18:03:26 -08:00
vsavkin
f55011cde2
fix(reflection): fix a typo
2014-11-24 18:02:21 -08:00
vsavkin
9a9a13a553
feat(change_detection): add benchmarks
2014-11-24 18:01:31 -08:00
vsavkin
6e8175a816
feat(Reflection): extract reflection capabilities into a separate module
2014-11-24 16:53:12 -08:00
Misko Hevery
044625a098
chore: Make field declarations explicit
...
This used to be valid code:
```
class Foo {
constructor() {
this.bar = ‘string’;
}
}
```
This will now fail since ‘bar’ is not explicitly
defined as a field. We now have to write:
```
class Foo {
bar:string; // << REQUIRED
constructor() {
this.bar = ‘string’;
}
}
```
2014-11-24 16:35:39 -08:00
Victor Berchet
ab961b327e
feat(RecordRange): Set context for implicit receivers only
2014-11-24 15:32:25 +01:00
Victor Berchet
69af7ea2c0
feat(ChangeDetection): convert Record.mode to a bit field
2014-11-24 15:18:52 +01:00
Rado Kirov
70c38e6260
doc(example): adds comments to the hello world app.
...
Explains the basic concepts as seen in the demo app, but it is not a
substitute for proper documentation which will come later.
2014-11-20 12:32:30 -08:00
vsavkin
2980eb5b0b
refactor(ChangeDetector): rename WatchGroup into RecordRange
2014-11-20 10:24:18 -08:00
vsavkin
862c6412c4
feat(ChangeDetector): implement enabling/disabling watch group
2014-11-20 10:24:18 -08:00
Tobias Bosch
fc5b7edca4
feat(compiler): support `on-` and `[]`
2014-11-19 16:24:12 -08:00
Tobias Bosch
c6846f1163
feat(compiler): new semantics for `template` attributes and view variables.
...
- Supports `<div template=“…”>`, including parsing the expressions within
the attribute.
- Supports `<template let-ng-repeat=“rows”>`
- Adds attribute interpolation (was missing previously)
2014-11-19 14:32:15 -08:00
Rado Kirov
d6193e9073
feat(examples): adds hello-world app.
...
The app is writen in ES6 and transpiles to ES5 and dart as part of the
usual build.
The app contains a component, a directive and a services wired together
through dependency injection.
Before Each:
- gulp build
For es5:
- gulp serve
- open 'localhost:8000/js/examples/lib/hello_world/'
For dart:
- gulp examples/pub.serve
- open 'localhost:8080'
2014-11-19 12:24:14 -08:00
Rado Kirov
1221857d17
feat(bootstraping): application bootstrapping implementation.
...
Entry-point to bootstrapping is a rootComponent. The bootstrapping
method, uses the component's selector to find the insertion element in
the DOM, and attaches the component in its ShadowRoot.
2014-11-18 15:02:38 -08:00
vsavkin
f0d6464856
feat(ChangeDetector): change View to construct a WatchGroup hierarchy
2014-11-17 17:49:17 -08:00
Victor Berchet
384f0ae858
feat(Change Detection): Child watch groups
2014-11-17 17:49:17 -08:00