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