Commit Graph

569 Commits

Author SHA1 Message Date
Marc Laval e8965656a4 feat(directives/forms): run tests in NodeJS
Closes #921
2015-03-13 19:18:15 +01:00
Victor Berchet 7322ed721e refactor: remove reference to the FIELD class 2015-03-13 18:59:51 +01:00
Victor Berchet fde7e9e898 doc(TestInjector): fix a build error with dgeni 2015-03-13 18:48:29 +01:00
Marc Laval 8d2ee6bbda feat(selector): add support for :not
Fixes #609
Closes #948
2015-03-13 18:26:10 +01:00
Tim Blasi 5c1c534894 test(dart/transform): Move BindGenerator tests to their own dir.
Move existing BindGenerator test to its own directory and to test that
phase specificially, rather than the whole pipeline.
Add another BindGenerator test.
2015-03-13 10:25:11 -07:00
Tim Blasi 4b12c19560 feat(dart/transform): Add a parser for `.ng_deps.dart` files and use.
Use the parser in `BindGenerator`
This checkin also removes types from `registerSetters` calls since they
can cause runtime failures (see #886). We will resolve this by
generating change detector classes in the future.
2015-03-13 10:24:15 -07:00
Tim Blasi 92b22d24d0 feat(dart/transform): Add a `.ng_deps.dart` file parser.
Create a common, reusable `.ng_deps.dart` file parser. All future transformer
phases build on the information in `.ng_deps.dart` files.
2015-03-13 10:24:15 -07:00
Tim Blasi 95c9eca64c style(dart/transform): Change quote character for consistency.
Use ' as a quote character in generated output instead of ".
2015-03-13 10:24:15 -07:00
Victor Berchet 30253592ff refactor(tests): refactor some tests to use the test injector 2015-03-13 18:20:02 +01:00
Victor Berchet 33b5ba863e feat(tests): add a test injector
fixes #614

Asynchronous test should inject an AsyncTestCompleter:

Before:

  it("async test", (done) => {
    // ...
    done();
  });

After:

  it("async test", inject([AsyncTestCompleter], (async) => {
    // ...
    async.done();
  }));

Note: inject() is currently a function and the first parameter is the
array of DI tokens to inject as the test function parameters. This
construct is linked to Traceur limitations. The planned syntax is:

  it("async test", @Inject (async: AsyncTestCompleter) => {
    // ...
    async.done();
  });
2015-03-13 18:20:02 +01:00
Pawel Kozlowski 5926d2e2f7 refactor: use attributes for directives matching
Closes #940
2015-03-13 17:24:14 +01:00
Pawel Kozlowski d35fdfcd40 refactor: return copy of DOM attributes in Dart
This alligns with JS-version behaviour
2015-03-13 17:24:13 +01:00
Rado Kirov f7963e1ea6 fix(shadowdom): allow conditional content tags.
Distribution is triggered on the host element injector after each new
view creation.
2015-03-12 12:06:47 -07:00
Victor Berchet a82e20889d feat(Injector): Support binding to null 2015-03-12 19:52:08 +01:00
Victor Berchet 951a808e0e refactor(PropertySetter): use the global reflector 2015-03-12 19:49:34 +01:00
Marc Laval c67194a3ef fix(test_lib): remove getDistributedNodes emulation in NodeJS 2015-03-12 11:16:47 +01:00
Rado Kirov dd3e6271c2 chore(services): rename services.
Closes #711
2015-03-11 18:30:37 -07:00
Tim Blasi f4e0f51f5a feat(dart/transform) Register parameter metadata information
Adds any metadata attached to a parameter to the "parameters" value
passed in to `registerType`.

For example:
`MyComponent(@Inject(Foo) foo)` generates
`"parameters": const [const [const Inject(Foo)]]`

Also reorganizes the testing code.

Closes #7
2015-03-11 17:21:49 -07:00
Tobias Bosch e1a1dd07e4 fix(test): add `v8` category to server spec 2015-03-11 16:35:23 -07:00
Rado Kirov f1593ebca5 feat(shadowdom): turn on ShadowDom Emulated Mode by default.
Closes: #526
2015-03-11 12:46:15 -07:00
Marc Laval 1d4ff9bcdc feat(compiler): parse5 DOM adapter
Closes #841
2015-03-11 14:42:54 +01:00
Marc Laval 537f943f57 refactor(compiler): remove direct accesses to DOM
Closes #898
2015-03-11 11:58:18 +01:00
Tim Blasi d0aceef4e0 perf(dart/transform) Restructure transform to independent phases
Update summary:
- Removes the need for resolution, gaining transform speed at the cost
  of some precision and ability to detect errors
- Generates type registrations in the package alongside their declarations
- Ensures that line numbers do not change in transformed user code
2015-03-10 19:19:02 -07:00
vsavkin 08bd3a4443 feat(forms): add form builder 2015-03-10 18:12:50 -07:00
vsavkin 10fb7bb05f refactor(forms): make form group responsible for supporting optional controls 2015-03-10 18:12:30 -07:00
Marc Laval 5acde20c7d refactor(compiler): remove direct accesses to DOM in tests
Closes #899
2015-03-10 22:08:27 +01:00
Marc Laval f1f06018c1 fix(compiler): workaround for circular dependencies in nodejs
Closes #897
2015-03-10 21:58:13 +01:00
Brian Ford e0feeaf973 fix(CompileStep): use namespace to resolve circular dep issue 2015-03-10 11:35:52 -07:00
Victor Berchet 370643539f refactor(EventHandler): have a single instance of event handlers per ProtoView 2015-03-10 15:26:06 +01:00
Victor Berchet bfa18ffd9b feat(Directives): add the ability to declaratively bind events
relates to #621
2015-03-10 08:14:24 +01:00
Victor Berchet 86e9dd68a4 refactor(ElementBinderBuilder): refactor pipes support 2015-03-10 07:23:17 +01:00
Pawel Kozlowski 0d1dece7b4 feat: introduce Title service
Closes #612

Closes #900
2015-03-09 22:17:28 +01:00
Dylan Johnson 7e93c54603 docs(12_zones.md): Fix typos and inconsistent capitalization
Closes #893
2015-03-09 18:58:56 +01:00
Victor Berchet b349c35678 feat(ElementInjector): implement @PropertySetter
relates to #621
2015-03-09 18:28:39 +01:00
Victor Berchet c3873be295 fix(Compiler): asynchronous error reporting 2015-03-09 16:42:37 +01:00
Tobias Bosch f9dcfa3ba5 feat(benchpress): add a file reporter 2015-03-06 12:50:05 -08:00
Tobias Bosch 146d731e73 feat(bench press): detect major gcs 2015-03-04 17:34:29 -08:00
Alex Eagle 91426a8efe fix: remove one more use of for..of 2015-03-04 08:35:41 -08:00
Tobias Bosch 043b8c6d2e feat(bench press): add microIterations option 2015-03-03 14:41:03 -08:00
Victor Berchet 03793d0714 feat(CssProcessor): add support for CssTransformers
Closes #860
2015-03-03 11:24:08 -08:00
Victor Berchet 9982520a23 refactor(Compiler): make shadow DOM stragegy support more flexible 2015-03-03 11:24:08 -08:00
Victor Berchet bcf4a96a84 refactor(Compiler): simplify the code
Closes #862
2015-03-03 11:21:02 -08:00
Tobias Bosch 8adac5332a fix(benchmarks): prepare publish to pub 2015-03-02 16:34:32 -08:00
Tobias Bosch 81a5ae8f6e fix(build): report and fail on errors
tree benchmark was broken and we didn’t know it…

also changes reporting to not include messages from `console.time()`, …
2015-03-02 16:34:32 -08:00
vsavkin 733915d99b feat(forms): add support for nested forms 2015-03-02 14:53:03 -08:00
Tobias Bosch 7ddfbf8bea refactor(tests): move files from `angular2/e2e_test` to `angular2/src/test_lib`
The `e2e_test` folder in `angular2` never contained e2e tests but was
used to store utilities for writing e2e/perf tests. A better place for
them is `angular2/src/test_lib`.

Closes #855
2015-03-02 14:38:02 -08:00
vsavkin ba0a1ec459 feat(di): add support for optional dependencies 2015-03-02 14:38:02 -08:00
Victor Berchet 23786aaa92 feat(DomAdapter): add types
Closes #842
2015-03-02 14:38:02 -08:00
Caitlin Potter 749a75812c fix(browser_adapter): work around WebKit bug with importing template elements
Closes #851

Closes #853
2015-03-02 14:38:02 -08:00
Bertrand Laporte 3059104e8d add compilation error test for dart
Closes #812
2015-03-02 14:38:02 -08:00
vsavkin 21f24d19dd feat(change_detection): implement hydration/dehydration 2015-03-02 13:28:39 -08:00
Tobias Bosch 821d01ab34 refactor(benchpress): export webdriver adapters in benchpress/benchpress
Also adds default bindings for protractor.
Also removes sync web driver adapter for Dart as we don’t have tests
for it yet.
2015-03-02 11:31:06 -08:00
Richard Harrington f30e3e59b5 fix(docs): fix typo in compiler integration_spec.js
Closes #834
2015-02-28 12:00:49 +01:00
Yegor Jbanov cbe7b8c671 chore(refactor): easier to make sense of attr-to-prop map (even if a bit reduntant) 2015-02-27 22:11:08 -08:00
Yegor Jbanov 757eae8ad3 feat(compiler): DOM adapters + html5lib implementation; misc fixes 2015-02-27 16:49:14 -08:00
Alex Eagle ab42664e76 Don't use the for..of syntax in AtScript. 2015-02-27 15:26:53 -08:00
Tim Blasi ccb306cce7 docs(di): Fix typos, add some clarification.
Or maybe expose my lack of understanding, we'll see!
2015-02-27 14:54:16 -08:00
Tobias Bosch 3b40052dc7 feat(build): enforce mobile layout during e2e tests
This is important as we run our benchmarks on
mobile devices as web driver tests fails if buttons
are not visible / overlaid by other content.
2015-02-27 11:11:32 -08:00
Pawel Kozlowski 7e6f536cf5 fix(compiler): properly bind to properties that don't have matching attr name
Fixes #619
Closes #783
2015-02-27 16:10:16 +01:00
Tobias Bosch 5cbb174a6d fix(bench press): Don’t use unicode in console reporter to prevent problems 2015-02-26 13:15:17 -08:00
Victor Berchet 8541cfd26d feat(ShadowDomStrategy): implemented EmulatedUnscopedShadowDomStrategy
- The new strategy do not scope component styles but make them global,
- The former EmulatedShadowStrategy has been renamed to
EmulatedScopedShadowDomStrategy. It does scope the styles.
2015-02-26 20:00:23 +01:00
Victor Berchet 9f181f39e9 fix(StyleUrlResolver): add support for media query in import rules 2015-02-26 20:00:23 +01:00
Victor Berchet 4d8d17ce3d fix(StyleInliner): add support for url(url) format 2015-02-26 20:00:23 +01:00
Victor Berchet 06f7481141 feat(RegExp): expose match indexes in Dart 2015-02-26 19:32:49 +01:00
Victor Berchet 009e11a6be fix: Static DI init 2015-02-26 19:31:44 +01:00
Pawel Kozlowski 8d2720775c chore: re-add dependency on zone.js
Closes #811
2015-02-26 19:20:02 +01:00
vsavkin cf9cb61665 clean(forms): cleanup 2015-02-26 09:35:30 -08:00
vsavkin f27e538e2c feat(forms): add optional controls 2015-02-26 09:31:02 -08:00
vsavkin a73c643322 feat(forms): remove support for declaring forms in html 2015-02-26 09:31:02 -08:00
vsavkin ded83e589b feat(forms): add support for validations 2015-02-26 09:31:01 -08:00
Tobias Bosch 65ebff056a refactor(benchpress): make tests for error cases also work in Dart
Also introduces `PromiseWrapper.catchError`.
Could not use `PromiseWrapper.catch` as a name as Dart would not allow
this method name.
2015-02-26 09:24:40 -08:00
Victor Berchet dd1898c132 fix(compiler): add a missing ; 2015-02-26 15:24:21 +01:00
Victor Berchet 929fc65493 refactor(template loading): add support for base URLs, css rewriting
fixes #654
2015-02-26 09:36:04 +01:00
Victor Berchet 26872f60e6 feat(ComponentUrlMapper): retrieve the base URL for components 2015-02-26 09:04:00 +01:00
Victor Berchet 9250cd6a78 fix(ShimShadowCss): preserve attribute on style elements 2015-02-26 09:04:00 +01:00
Victor Berchet edb797e191 feat(StyleUrlResolver): rewrite url in styles 2015-02-26 09:04:00 +01:00
Victor Berchet ff406e65dc feat(UrlResolver): combine a base URL with an URL 2015-02-26 09:04:00 +01:00
Victor Berchet e0cf1c7ab5 feat(StyleInliner): StyleInliner inlines @import css rules 2015-02-26 09:04:00 +01:00
Victor Berchet e8bec99aa6 feat(test_lib): support not.toBePromise() for Dart 2015-02-26 09:04:00 +01:00
Victor Berchet 41c61e5bc7 refactor(Completer): rename complete() to resolve() 2015-02-26 08:46:32 +01:00
Rado Kirov 6ad2c18277 feat(events): adds support for bubbling native events (^event).
Refactor - move DomEventManager into its own plugin.
2015-02-25 19:08:16 -08:00
Rado Kirov 2f015cc336 fix(view_container): fixes injection on dynamically added views.
Closes #777
2015-02-25 18:05:57 -08:00
Alex Eagle 56906db4d5 fix es6 compilation for Element.remove.
Use DOM facade to delete an Element since the remove method is only in Dart.
2015-02-25 15:56:08 -08:00
Alex Eagle 642e9a36b7 fix es6 compilation for Map.remove.
In dart, Map has a remove method,but in ES6 it is delete.
2015-02-25 15:44:29 -08:00
vsavkin 6b2650996c fix(parser): parse pipes in template bindings 2015-02-25 14:39:44 -08:00
Pawel Kozlowski 85abfa943d feat: add keyValDiff to default pipes 2015-02-25 13:24:59 -08:00
Pawel Kozlowski 4a5d53c549 feat: allow using KeyValueChanges as a pipe 2015-02-25 13:24:59 -08:00
Bertrand Laporte 33b503720a fix rebase glitch in PR #570
Closes #787
2015-02-25 10:04:48 -08:00
Tim Blasi 50a74b1d91 feat(dart/transform): Generate setter stubs.
Generate calls to Reflector#registerSetters from the information in
provided `Directive#bind` values.

This is only an initial attempt - it covers only the most basic values
of `bind`.

Closes #780
2015-02-25 09:54:13 -08:00
Victor Berchet 1376e49ea0 fix(Injector): fix dependencies in static injectors
Closes #784
2015-02-25 09:52:56 -08:00
Bertrand Laporte 94e203b9df feat(DirectiveParser): throw errors when expected directives are not present
closes #527
Closes #570
2015-02-24 20:57:21 -08:00
Tobias Bosch 715ee14ced release: release 2.0.0-alpha.11 which includes benchpress 2015-02-24 17:01:48 -08:00
Tobias Bosch b0c6db1efb fix(benchpress): support `tdur` in events 2015-02-24 16:53:44 -08:00
Tobias Bosch cde8ffd6d9 feat(publish): update files to publish to npm 2015-02-24 16:53:44 -08:00
Yegor Jbanov cfe71def7e chore(packaging): 0.0.0-alpha.9; pubspec cleanup 2015-02-24 11:42:05 -08:00
Victor Berchet e05079f4a8 feat(rtts_assert): avoid deep recursion in prettyPrint 2015-02-24 19:40:27 +01:00
Pawel Kozlowski 908a0aa7dc test: introduce TemplateResolver mock
Closes #768
2015-02-24 10:34:52 -08:00
Sekib Omazic 4d35dd4d45 docs(02_directives.md): Change the description of bind property
Also add attribute open to the html

Closes #767
2015-02-24 10:34:26 -08:00
Tim Blasi 3b6aaf9054 feat(dart/transform) Remove import of dart:mirrors
+ Precede the call to `new ReflectionCapabilities()` with our generated
code which populates the reflection map statically.
+ Add the import of our generated code.
+ Once we are generating all necessary code, we will remove the
import of reflection_capabilities.dart and the instantiation of
`ReflectionCapabilities`, cutting the dependency on dart:mirrors.

Closes #761
2015-02-23 18:36:29 -08:00
Kevin Moore fad25c2b10 chore: Adding return types to Dart facades
Closes #758
2015-02-23 14:26:55 -08:00