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
vsavkin
34d75e8918
feat(reflector): added a method to get type's interfaces
2015-05-27 15:50:08 -07:00
Marc Laval
c6335c128e
feat(test_lib): add method to compare stringified DOM element
...
Closes #2106
2015-05-27 16:19:39 +02:00
Marc Laval
fb42d5908e
fix(test): solve CSS discrepancies across browsers
...
Closes #2177
2015-05-27 14:54:00 +02:00
Ian Riley
8609543ad0
refactor (test/facade): Ts'ify test/facade
...
Translate AtScript in test/facade to TypeScript
2015-05-27 08:10:11 +02:00
Tobias Bosch
79f564be46
refactor(core): ts’ify tests
2015-05-26 17:01:31 -07:00
Tobias Bosch
23d59df81a
feat(test_lib): add `containsRegex`
2015-05-26 17:01:31 -07:00
Ian Riley
ef3e12e803
refactor (test/directives): ts'ify test/directives
...
Translate all of the AtScript code in .../test/directives to TypeScript.
Closes #2167
2015-05-26 16:51:38 -07:00
Victor Berchet
bb7ffce7eb
test(ShadowCss): add tests for keyframe rules
2015-05-26 19:42:17 +02:00
Victor Berchet
551586ced0
feat(RegExpWrapper): implement a test method
2015-05-26 19:42:17 +02:00
Tobias Bosch
1dc8ba6920
refactor(render): ts’ify tests
2015-05-26 09:38:26 -07:00
vsavkin
df59e969cf
chore(di): moved tests to typescript
2015-05-22 17:32:21 -07:00
vsavkin
d27e5512c0
chore(reflection): tsfy tests
2015-05-22 17:03:40 -07:00
yjbanov
d48fae3566
fix(core): resurrect OnChange interface
2015-05-22 16:48:00 -07:00
vsavkin
3525c9c074
chore(forms): moved tests/forms to typescript
2015-05-22 14:44:57 -07:00
Martin Probst
15f1eb28a2
fix(deps): Update clang-format to 1.0.14.
2015-05-22 09:39:15 -07:00
Victor Berchet
10bc7e948c
feat(key_event): alias esc to escape
...
fixes #2010
2015-05-22 15:39:21 +02:00
Victor Berchet
9988471fb8
test(fakeAsync): renable a test blocked on jasmine 2.3.3
2015-05-22 15:36:12 +02:00
Victor Berchet
b1c9bf14b2
feat(ElementInjector): support an arbitrary number of bindings
...
fixes #1853
2015-05-22 13:42:53 +02:00
Marc Laval
588fbfd848
fix(test): use a not expandable CSS rule in ShadowCSS spec (Firefox)
...
Closes #2061
2015-05-22 13:32:24 +02:00
Marc Laval
661a04798e
fix(test): adds longer timers for NgZone and PromisePipe tests (IE11)
...
Closes #2055
2015-05-22 13:30:49 +02:00
Marc Laval
9802debf71
fix(test): native shadow DOM is required (IE11, Firefox)
2015-05-22 13:30:45 +02:00
Marc Laval
2287938f5a
fix(router): event.defaultPrevented is not reliable (IE11)
2015-05-22 13:30:44 +02:00
gdi2290
d61a0dfa22
test(ObservablePipe): onDestroy shouldn't throw
2015-05-22 12:31:46 +02:00
Tobias Bosch
cc2c8f6b00
refactor(test): ts’if compiler integration tests.
2015-05-21 17:53:53 -07:00
vsavkin
30c3e5a84e
fix(forms): changed forms to create only one value accessor instead of always creating DefaultValueAccessor
2015-05-21 17:31:25 -07:00
yjbanov
c5996529c3
chore(expressions): add explicit test for map vs property access
2015-05-21 14:41:26 -07:00
vsavkin
00c3693daa
feat(forms): migrated forms to typescript
2015-05-21 13:55:15 -07:00
vsavkin
fed86fc8ac
feat(injector): support forwardRef in toAlias
2015-05-21 09:52:43 -07:00
vsavkin
705ee46f31
fix(di): changed host and view injector to respect visibility
2015-05-21 09:17:56 -07:00
vsavkin
f210c41c1f
feat(di): changed toFactory to support dependency annotations
2015-05-21 08:34:48 -07:00
vsavkin
b6b52e62b2
fix(element_injector): fixed element injector to inject view dependencies into its components
2015-05-20 17:48:04 -07:00
Tobias Bosch
e61d82b9be
refactor(core): ts’ify core
2015-05-20 16:30:41 -07:00
gdi2290
4afd2b4138
feat(PromisePipe): remove ref onDestroy
2015-05-20 14:00:57 -07:00
Rado Kirov
c45283216f
fix(router): router link should navigate to non-base Url.
...
While still displaying full base + custom part of url in the href.
2015-05-20 11:01:09 -07:00
vsavkin
28c2b8f432
fix(element_injector): fixed element injector to resolve dependencies of regular services
2015-05-20 10:56:33 -07:00
Victor Berchet
91ccc9af98
fix(XHRImpl): fix errors, add a spec
...
fixes #1715
2015-05-20 08:31:50 +02:00
Misko Hevery
a664f5a6de
fix: don't call onAllChangesDone on checkNoChanges
2015-05-20 08:27:48 +02:00
Victor Berchet
0ae89ac096
feat(CD): add support for === and !==
...
relates to #1500
2015-05-20 07:50:43 +02:00
Victor Berchet
6ec5d5daaf
refactor(async): extract timer related functions into a TimerWrapper
2015-05-20 07:47:46 +02:00
vsavkin
62b1a08f06
refactor(reflection): improved error message
2015-05-19 21:17:52 -07:00
Tobias Bosch
1beadb8607
refactor(render): ts’ify render api
2015-05-19 15:12:59 -07:00
Brian Ford
791caf0037
fix(router): use appRootComponentToken to get root route configs
...
Closes #1947
2015-05-19 14:36:45 -07:00
Yegor Jbanov
8ab773538b
fix(errors): require passing stack traces explicitly in ng2 own code
2015-05-19 12:48:00 -07:00
Victor Berchet
0f002a5b18
feat(fakeAsync): allow simulating the passage of time
2015-05-19 06:51:15 +02:00
vsavkin
b066b8d15a
feat(di): added hostInjector and viewInjector to the Directive annotation
2015-05-18 18:30:53 -07:00
vsavkin
7b511462af
refactor(core): renamed injectables into appInjector
...
BREAKING CHANGES
Before:
@Component({injectables: [Type]} class MyCmp{}
After:
@Component({appInjector: [Type]} class MyCmp{}
2015-05-18 18:30:52 -07:00
vsavkin
3a53f67911
feat(di): removed publishAs
...
BREAKING CHANGES
Removes the publishAs property from the Component annotation.
2015-05-18 18:30:52 -07:00
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
986038242a
feat(change_detection): json pipe
...
Closes #1957
2015-05-18 14:34:37 -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
Jeremy Elbourn
bb2eda2d15
feat(element_injector): allow @Optional for ProtoViewRef
2015-05-18 12:48:33 -07: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
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
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
25cd6e4321
fix(Compiler): add an error when a directive is null or undefined
...
fixes #1908
2015-05-15 19:26:06 +02: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
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
c20060d259
fix(directives): fix import path
2015-05-13 11:56:50 +02: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
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
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
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
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
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
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
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
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
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
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
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
Jacob MacDonald
0e2047f9ca
chore(benchmarks): add transform benchmark runner and clean up benchmark output
2015-05-07 10:36:04 -07:00
vsavkin
cb87fa0970
chore(build): migrated di to TypeScript
2015-05-06 19:00:56 -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
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
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
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
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
68ed8f1b6b
refactor(router): rename LocationMock to LocationSpy
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