Commit Graph

745 Commits

Author SHA1 Message Date
Tobias Bosch ad9f02a73e chore: enable cyclic dependency check
Closes #9742
2016-06-30 14:28:22 -07:00
Tobias Bosch 2d73583253 chore(compiler): fix cyclic dependency 2016-06-30 14:28:22 -07:00
Alex Eagle 73f017bad9 fix(typescript): make router compile with typescript@next
fixes #9731
2016-06-30 11:51:52 -07:00
vsavkin 055282f156 chore(router): bump up version number 2016-06-30 11:45:31 -07:00
vsavkin fe7de53b89 chore(router): update router change log 2016-06-30 11:45:31 -07:00
Tobias Bosch 17e4cfc748 feat(core): introduce `@AppModule`
Main part for #9726
Closes #9730
2016-06-30 11:34:40 -07:00
vsavkin a3b90411aa fix(router): fix RouterLinkActive to handle the case when the link has extra paths 2016-06-30 09:26:57 -07:00
vsavkin 5781b96490 fix(router): redirect should not add unnecessary brackets 2016-06-30 09:26:57 -07:00
vsavkin f208ee0d57 fix(router): reexport router directives 2016-06-30 09:26:57 -07:00
ipinak 8aa388de6c doc(directive): fixes incorrect example code (#9635) 2016-06-29 22:16:43 -07:00
Tobias Bosch 51d4c9dcbd fix(compiler): make code easier to type check
These changes are needed for the G3 sync as we use a different version/settings of Typescript than on Github.

closes #9701
2016-06-29 10:43:58 -07:00
Tobias Bosch e81dea695c fix(compiler): report not existing files as errors
Closes #9690
2016-06-29 07:35:34 -07:00
Miško Hevery 3fec27961e fix: support *directive on <template> (#9691)
fixes #7315
2016-06-28 21:53:41 -07:00
vsavkin 3784696b9e fix(router): make the contstructor of the router service public 2016-06-28 18:39:37 -07:00
vsavkin 8c45aebc18 fix(router): make router links work on non-a tags 2016-06-28 18:39:37 -07:00
Martin Probst 810c722413 docs(security): point users to docs when sanitization fails. (#9680) 2016-06-28 18:13:46 -07:00
Igor Minar e2116c53f3 fix(upgrade): add peerDependency on platform-browser-dynamic (#9674)
Closes #9623
2016-06-28 17:27:28 -07:00
vsavkin 296a447e3c docs(router): add api docs 2016-06-28 14:49:29 -07:00
Kara 0961bd1eff feat(forms): use formControlName on radio buttons when name is absent (#9681) 2016-06-28 15:21:53 -06:00
Naomi Black 9340e1b065 docs(security): security api doc update and fix stability marker for Type 2016-06-28 14:01:48 -07:00
Martin Probst 2d9d7f1310 fix(security): allow empty CSS values. (#9675) 2016-06-28 11:45:02 -07:00
Victor Berchet 5ee84fe0f6 refactor: add types (#9606)
relates to #9100
2016-06-28 11:35:59 -07:00
Jeff Cross 1620426393 fix(http): don't encode values that are allowed in query (#9651)
This implements a new class, QueryEncoder, that provides
methods for encoding keys and values of query parameter.
The encoder encodes with encodeURIComponent, and then
decodes a whitelist of allowed characters back to their
unencoded form.

BREAKING CHANGE:

The changes to Http's URLSearchParams serialization now 
prevent encoding of these characters inside query parameters
which were previously converted to percent-encoded values:

@ : $ , ; + ; ? /

The default encoding behavior can be overridden by extending
QueryEncoder, as documented in the URLSearchParams service.

Fixes #9348
2016-06-28 11:31:35 -07:00
Tobias Bosch bf598d6b8b feat(compiler): support sync runtime compile
Adds new abstraction `Compiler` with methods
`compileComponentAsync` and `compileComponentSync`.
This is in preparation of deprecating `ComponentResolver`.

`compileComponentSync` is able to compile components
synchronously given all components either have an inline
template or they have been compiled before.

Also changes `TestComponentBuilder.createSync` to
take a `Type` and use the new `compileComponentSync` method.

Also supports overriding the component metadata even if
the component has already been compiled.

Also fixes #7084 in a better way.

BREAKING CHANGE:
`TestComponentBuilder.createSync` now takes a component type
and throws if not all templates are either inlined
are compiled before via `createAsync`.

Closes #9594
2016-06-28 10:26:16 -07:00
Igor Minar 24eb8389d2 fix: public api surface fixes + stability markers
- ts-api-guardian will now error if a new public symbol is added with a stability marker (`@stable`, `@experimental`, `@deprecated`)
- DomEventsPlugin and KeyEventsPlugin were removed from public api surface - these classes is an implementation detail
- deprecated BROWSER_PROVIDERS was removed completely
- `@angular/compiler` was removed from the ts-api-guardian check since this package shouldn't contain anything that users need to directly import
- the rest of the api surface was conservatively marked as stable or experimental

BREAKING CHANGES: DomEventsPlugin and KeyEventsPlugin previously exported from core are no longer public - these classes are implementation detail.

Previously deprecated BROWSER_PROVIDERS was completely removed from platform-browser.

Closes #9236
Closes #9235
Ref #9234
2016-06-28 07:39:40 -07:00
vsavkin fcfddbf79c feat(router): add pathMatch property to replace terminal 2016-06-27 20:21:30 -07:00
vsavkin dc64e90ab9 feat(router): use componentFactoryResolver 2016-06-27 20:21:30 -07:00
vsavkin e12b1277df feat(core): split ChangeDetectorStrategy into ChangeDetectionStrategy and ChangeDetectorStatus 2016-06-27 20:19:20 -07:00
Kara 797914e948 fix(forms): emit statusChange when child controls have async validator (#9652) 2016-06-27 21:01:24 -06:00
Matias Niemelä e0b0a594bb fix(animations): ensure void => * animations are triggered when an expression is omitted
Closes #9327
Closes #9381
2016-06-27 18:55:10 -07:00
Kara ed0ade6f34 fix(forms): make radio button selection logic more flexible (#9646)
Closes #9558
2016-06-27 15:29:33 -06:00
Tobias Bosch 5cc7b41f39 Revert "fix(Compiler): relax childIsRecursive check (#8705)"
This fix prevented waiting for child components even if the cycle was only introduced via the `directives` array, i.e. without actually having a cycle. This easily causes issues for applications that have one shared list of directives for all components.

This reverts commit 3d5bb23184.

Closes #9647
2016-06-27 14:27:03 -07:00
vsavkin f2f1ec0117 feat(router): implement data and resolve 2016-06-27 14:25:56 -07:00
Alex Eagle e913d9954d chore(typings): restrict Angular to es5+collections+promise 2016-06-27 13:58:59 -07:00
vsavkin d20488752b fix(router): top-levels do not work in ngIf 2016-06-27 13:34:54 -07:00
vsavkin 855f3afb28 fix(router): canceled navigations should return a promise that is resolved with false 2016-06-27 13:34:54 -07:00
vsavkin 3f44377f2f fix(router): handle empty path with query params 2016-06-27 13:34:54 -07:00
vsavkin 90295e3252 fix(router): preserve fragment on initial load 2016-06-27 13:34:54 -07:00
Martin Probst db66509e66 test(security): tests for HTML5 elements, srcset.
Part of #9572.
2016-06-27 12:19:03 -07:00
Cyrille Tuzi 6605eb30e9 feat(security): allow more HTML5 elements and attributes in sanitizers
Allow more elements and attributes from the HTML5 spec which were stripped by the htmlSanitizer.

fixes #9438

feat(security): allow audio data URLs in urlSanitizer

test(security) : add test for valid audio data URL

feat(security): allow and sanitize srcset attributes

test(security): test for srcset sanitization
2016-06-27 12:19:03 -07:00
Gion Kunz 3644eef860 feat(DomRenderer): Adding support for document fragments in SVG foreign objects (#9458) 2016-06-27 08:26:45 -07:00
choeller eef9512ce6 fix(forms): async validator-directives process Observables correctly (#8186)
Closes #/8022
2016-06-26 16:52:50 -06:00
Marek Buko 9f00a1b902 fix(forms): add select multiple accessor as built-in accessor 2016-06-26 16:24:27 -06:00
Jesús Rodríguez c369bc747d docs: update cheatsheet import lines (#9614) 2016-06-26 07:31:35 -07:00
Kara Erickson c03e1f2f59 feat(forms): add support for formArrayName
Closes #9251
2016-06-25 13:30:53 -07:00
Kara Erickson 17dcbf66b9 feat(forms): expose ValidatorFn and AsyncValidatorFn
Closes #8834
2016-06-24 18:24:11 -07:00
Julie Ralph 40b907a657 refactor(testing): remove wrapping of Jasmine functions (#9564)
Instead, the async function now determines whether it should return a promise
or instead call a done function parameter. Importing Jasmine functions
from `@angular/core/testing` is no longer necessary and is now deprecated.

Additionally, beforeEachProviders is also deprecated, as it is specific
to the testing framework. Instead, use the new addProviders method directly.

Before:
```js
import {beforeEachProviders, it, describe, inject} from 'angular2/testing/core';

describe('my code', () => {
  beforeEachProviders(() => [MyService]);

  it('does stuff', inject([MyService], (service) => {
    // actual test
  });
});
```

After:
```js
import {addProviders, inject} from 'angular2/testing/core';

describe('my code', () => {
  beforeEach(() => {
    addProviders([MyService]);
  });

  it('does stuff', inject([MyService], (service) => {
    // actual test
  });
});
```
2016-06-24 17:48:35 -07:00
Julie Ralph a33195dcf3 fix(core/testing compiler/testing): move TestComponentBuilder to core/testing (#9590)
TestComponentBuilder now lives in core/testing. compiler/testing contains a private
OverridingTestComponentBuilder implementation which handles the private behavior
we need to override templates. This is part of the effort to simplify the testing
imports and hide compiler APIs.

Closes #9585

BREAKING CHANGE:

`TestComponentBuilder` is now imported from `@angular/core/testing`. Imports
from `@angular/compiler/testing` are deprecated.

Before:

```
import {TestComponentBuilder, TestComponentRenderer, ComponentFixtureAutoDetect} from '@angular/compiler/testing';
```

After:
```
import {TestComponentBuilder, TestComponentRenderer, ComponentFixtureAutoDetect} from '@angular/core/testing';
```
2016-06-24 17:35:01 -07:00
Kara Erickson de127109f9 feat(forms): make valueChanges and statusChanges available on abstract control directives 2016-06-24 14:37:19 -07:00
vsavkin 83208983b3 chore(router): bump up version number 2016-06-24 13:07:42 -07:00
vsavkin 327d04c9c6 chore(router): clang-format 2016-06-24 12:44:32 -07:00
vsavkin 54edce2bab fix(router): wildcard don't get notified on url changes 2016-06-24 12:44:32 -07:00
vsavkin 1a145ac500 fix(router): default exact to false in routerLinkActiveOptions 2016-06-24 12:44:32 -07:00
vsavkin 9f978cf49d test(router): add a test checking that you can use a slash in query params 2016-06-24 12:44:32 -07:00
vsavkin 41b781107b fix(router): doen't throw on canDeactive when route hasn't advanced 2016-06-24 12:44:32 -07:00
Julie Ralph dcf75126bf fix(common/testing): remove internal MockLocationStrategy from common/testing (#9562)
BREAKING CHANGE:

MockLocationStrategy was intended to be internal only and is now removed
from the `@angular/common/testing` public api.

Use `SpyLocation` from `@angular/common/testing` for location testing.
2016-06-24 12:41:57 -07:00
Julie Ralph 1143b0389a fix(core/testing): move ComponentFixture to core (#9386)
BREAKING CHANGE:

`ComponentFixture` will be moving out of `@angular/compiler/testing` to `@angular/core/testing` in
this release. For now, it is deprecated from `@angular/compiler/testing`.
2016-06-24 12:41:49 -07:00
Kara Erickson 97a2119596 fix(forms): ngModel should emit valueChanges and statusChanges asynchronously 2016-06-24 12:37:46 -07:00
vsavkin fbd2dd9ca2 fix(router): handle path:'' redirects and matches 2016-06-24 11:39:41 -07:00
Julie Ralph 8a9e9c7bd3 fix(core/testing): clean up the core testing public API (#9466)
Previously, we were exporting internal mocks and helpers. Move these
to core/testing/testing_internal or remove them if they were
never used.

Remove deprecated items - injectAsync, clearPendingTimers.

BREAKING CHANGE:

Remove the following APIs from `@angular/core/testing`, which have been deprecated or were
never intended to be publicly exported:

```
injectAsync
clearPendingTimers
Log
MockAppliacationHref
MockNgZone
clearPendingTimers
getTypeOf
instantiateType
```

Instead of `injectAsync`, use `async(inject())`.

`clearPendingTimers` is no longer required.
2016-06-23 17:10:22 -07:00
Julie Ralph 3d8eb8cbca fix(platform-browser/testing): clean up public api for platform-browser/testing (#9519)
Mostly, removing things that were never intended to be exported publicy.

BREAKING CHANGE:

The following are no longer publicly exported APIs. They were intended as internal
utilities and you should use your own util:

```
browserDetection,
dispatchEvent,
el,
normalizeCSS,
stringifyElement,
expect (and custom matchers for Jasmine)
```
2016-06-23 16:42:25 -07:00
Julie Ralph 894747c34c fix(platform-browser/testing-e2e): clean up unused exports from e2e testing helpers (#9387) 2016-06-23 16:14:31 -07:00
Julie Ralph 8d5a312585 chore(api): clean up compiler/testing api (#9520)
Do not export MockXHR, which is a private helper.
2016-06-23 15:52:18 -07:00
Jason Choi 22d8f73bc9 test: add public api golden files
Includes a few style fixes on "* as foo" imports.
2016-06-23 14:26:40 -07:00
Martin Probst 3ad81b1beb test(security): simplify integration test. 2016-06-23 13:57:51 -07:00
Martin Probst 5ab0534164 test(security): Ensure xlink:href is not bindable.
The DOM schema does not allow binding any properties to dangerous SVG
attributes/properties. This change adds a smoke test to verify that
behaviour, by testing that `xlink:href` (a sample dangerous property)
is not bindable.

Fixes #9510.
2016-06-23 13:57:51 -07:00
Igor Minar 5150344213 fix(common): add license header to localization.ts 2016-06-23 13:27:43 -07:00
Wojciech Kwiatek 98cef76931 fix(security): no warning when sanitizing escaped html (#9392) (#9413) 2016-06-23 13:06:19 -07:00
Tobias Bosch 6c5b653593 feat(core): add `@Component.precompile` and `ComponentFactoryResolver`
Part to #9467
Closes #9543
2016-06-23 12:10:04 -07:00
Tobias Bosch 9ed8f2d26e fix(compiler): don't inject `viewProviders` into content child elements
E.g. in the following scenario,
`some-directive` should not be able to inject
any view provider that `my-comp-with-view-providers`
declares.

```
<my-comp-with-view-providers>
  <div some-directive></div>
</my-comp-with-view-providers>
```
2016-06-23 12:10:04 -07:00
Tobias Bosch 33a2f86b28 chore: remove stale tsconfig.json
This tsconfig.json prevents fast round trip cycles in VsCode
as it relies on the package-dist folders to be filled.
2016-06-23 12:10:04 -07:00
Victor Berchet fed1672a43 refactor(i18n): I18nPipe uses NgLocalization (#9313)
and some refactoring
2016-06-23 11:44:05 -07:00
Pawel Kozlowski df759b8d4b fix(core): improve error message for broken bindings
Fixes #6820

Closes #9536
2016-06-23 19:28:56 +02:00
Kara Erickson 6edf0474cc feat(forms): add support for standalone ngModel dirs inside forms
Closes #9230
2016-06-23 10:16:47 -07:00
Josh Thomas 826f89f862 fix(ngc): correct dependencies for compiler-cli
Update compiler-cli dependencies to include minimist and also increment tsc-wrapped to 0.2.0.  There is signature mismatch between tsc-wrapped (v0.1.0) collector.js#getMetadata and compiler-cli reflector_host.js#getMetadataFor that caused an error anytime ngc was executed. The error received was as follows.

`TypeError: Cannot read property 'getSymbolsInScope' of undefined`

After forcing NPM to install @angular/tsc-wrapped@latest the error was resolved.

Fixes #9540
2016-06-23 10:16:04 -07:00
Matias Niemelä c43aec2182 fix(animations): make sure the easing value is passed into the web-animations player
Closes #9517
Closes #9523
2016-06-23 10:14:18 -07:00
ScottSWu ae75e3640a chore(lint): Added license headers to most TypeScript files
Relates to #9380
2016-06-23 09:47:54 -07:00
Victor Berchet e1e5c40ef7 fix(testing): remove the `toThrowErrorWith` matcher (jasmine has `toThrowError`)
BREAKING CHANGE:

Before:

    expect(...).toThrowErrorWith(msg);

After:

    expect(...).toThrowError(msg);
2016-06-23 08:58:52 -07:00
Victor Berchet 6420f75320 fix(testing): remove the `toMatchPattern` matcher (jasmine has `toMatch`)
BREAKING CHANGE:

Before:

    expect(...).toMatchPattern(pattern);

After:

    expect(...).toMatch(pattern);
2016-06-23 08:58:28 -07:00
Victor Berchet 5face35ae5 refactor: misc cleanup 2016-06-23 08:56:10 -07:00
Victor Berchet 398060d5ff fix(NgSwitch): display deprecation message only once 2016-06-23 08:56:10 -07:00
Torgeir Helgevold 638fd744aa feat(forms): support updating of validators on exiting controls (#9516)
lint

fix

async

d

test

test
2016-06-23 08:18:07 -07:00
Pawel Kozlowski 098b461b69 fix(core): report duplicate template bindings in templates
Fixes #7315

BREAKING CHANGES:

Previously multiple template bindings on one element
(ex. `<div *ngIf='..' *ngFor='...'>`) were allowed but most of the time
were leading to undesired result. It is possible that a small number
of applications will see template parse errors that shuld be fixed by
nesting elements or using `<template>` tags explicitly.

Closes #9462
2016-06-23 15:59:07 +02:00
Dmitry Zamula a5f2e205ef fix(http): add search param escaping for keys (#9166) 2016-06-22 18:23:15 -07:00
ScottSWu 8899b83927 chore(typescript): Enabled noFallthroughCasesInSwitch
Turned on the noFallthroughCasesInSwitch flag in tsconfig and fixed
a few cases where there were fallthroughs.
2016-06-22 16:08:55 -07:00
Victor Berchet f6a410a4a8 feat(QueryList): implement some() (#9464)
closes #9443
2016-06-22 13:13:31 -07:00
tycho01 3d5bb23184 fix(Compiler): relax childIsRecursive check (#8705)
Fix how the compiler checks for recursive components by also considering
component descendants. Previously, it only checked if the current
component was evaluated previously. This failed in certain cases of
mutually recursive components, causing `createAsync` in tests to not
resolve.

closes [7084](https://github.com/angular/angular/issues/7084)
2016-06-22 07:02:11 -07:00
vsavkin 758ee95880 fix(router): fix tsconfig to use es2015 modules 2016-06-21 23:19:26 -07:00
vsavkin 40e1112a8e chore(router): test karma config to rerun tests on change 2016-06-21 23:19:26 -07:00
Victor Berchet 397f5e2390 refactor(HtmlLexer): simplify the code 2016-06-21 18:03:22 -07:00
Victor Berchet 1a212259af refactor: cleanup lexers & parsers 2016-06-21 18:03:22 -07:00
Pawel Kozlowski f114dd300b fix(core): properly report missing providers and viewProviders (#9411)
Fixes #8237
2016-06-21 17:27:27 -07:00
vsavkin 15911367a2 refactor(router): removes a circualr dep 2016-06-21 12:17:30 -07:00
vsavkin 8dd3f59c81 chore(router): changes the router setup to align with other modules 2016-06-21 12:17:30 -07:00
vsavkin c9d28492b7 chore(router): remove lint and format tasks from router 2016-06-21 12:17:30 -07:00
vsavkin d1f93072a8 chore(router): clang-format 2016-06-21 12:17:30 -07:00
vsavkin 92d8bf9619 feat(router): add support for componentless routes 2016-06-21 12:17:30 -07:00
vsavkin bd2281e32d fix(resolve): change resolve not to resolve root activate route 2016-06-21 12:17:30 -07:00
vsavkin 0c50bc6449 fix(router): url serializer should handle segments without primary children 2016-06-21 12:17:30 -07:00
vsavkin f164715678 chore(README): fix a typo 2016-06-21 12:17:30 -07:00
vsavkin 2aa615b4ae chore(router): bump up version 2016-06-21 12:17:30 -07:00
vsavkin 42c89b1b9b docs(router): add a README to include a link to the guide 2016-06-21 12:17:30 -07:00
Dimitrios Loukadakis f6b75f56ad fix(router): typo in starts with slash validation error 2016-06-21 12:17:30 -07:00
vsavkin 280540e4a2 fix(router): change serialize not to require parenthesis in query string to be encoded 2016-06-21 12:17:30 -07:00
vsavkin fea216db12 fix(router): fixes a type issue in a test 2016-06-21 12:17:30 -07:00
vsavkin b260eb06f6 fix(router): change postinstall hook to devsetup to not require having 'typings' installed 2016-06-21 12:17:30 -07:00
vsavkin 1c937a10f9 chore(router): add changelog 2016-06-21 12:17:30 -07:00
vsavkin ca23b4c55f feat(router): add route config validation 2016-06-21 12:17:30 -07:00
vsavkin 7e12208ca6 feat(router): do not support paths starting with / 2016-06-21 12:17:30 -07:00
vsavkin 2773281338 feat(router): drop index property
Use path: '/' instead of 'index: true'
2016-06-21 12:17:30 -07:00
vsavkin f8e8d22e4e fix(router): stringify positional parameters when using routerLink 2016-06-21 12:17:30 -07:00
vsavkin cf4a9236b9 chore(router): bump up version number 2016-06-21 12:17:30 -07:00
vsavkin 4450e7b246 cleanup(router): enable noImplicitAny and noImplicntReturns 2016-06-21 12:17:30 -07:00
vsavkin cdbf67ee05 test(router): add a test checking that guards work for child routes 2016-06-21 12:17:30 -07:00
Dimitrios Loukadakis 9a67f38728 fix(router): port fixes done on angular current router to the new one
The bugs were fixed on current angular router in the following commits:
angular/angular@b2a7fd05cb
angular/angular@fa2ce8100b
angular/angular@595bcdd1ac

Closes #12
2016-06-21 12:17:30 -07:00
vsavkin 25560ed048 feat(router): implement RouterLinkActive 2016-06-21 12:17:30 -07:00
vsavkin 2aa19fd078 feat(router): support navigating by url tree 2016-06-21 12:17:30 -07:00
vsavkin cca9a58ded chore(router): bump up version number 2016-06-21 12:17:30 -07:00
Rob Wormald d6a25325c7 chore(package): unpin version 2016-06-21 12:17:30 -07:00
vsavkin a717da2d3e chore(router): bump up version number 2016-06-21 12:17:30 -07:00
vsavkin b3e801ed9e feat(router): make it work with TypeScript 1.8 2016-06-21 12:17:30 -07:00
vsavkin 3683fb6886 refactor(router): minor refactoring 2016-06-21 12:17:30 -07:00
vsavkin 3bd0ce291e feat(router): mark the index property as deprecated
Use {path: '', component: A} instead of {index: true, component: A}

}#
2016-06-21 12:17:30 -07:00
vsavkin 523fc5536c fix(router): fix Params type to allow passing any value types when calling router.navigate 2016-06-21 12:17:30 -07:00
vsavkin f5efccfb44 test(router): test update location when route does not change 2016-06-21 12:17:30 -07:00
vsavkin b6ec22de6b test(router): test empty url with global redirect 2016-06-21 12:17:30 -07:00
Rob Wormald 15f27b5455 fix(providers): make providers static analysis friendly 2016-06-21 12:17:30 -07:00
vsavkin 127401598b feat(router): implement terminal 2016-06-21 12:17:30 -07:00
vsavkin 503b07f698 docs(router): add a README 2016-06-21 12:17:30 -07:00
vsavkin f0a6329005 fix(router): fixes a typo 2016-06-21 12:17:30 -07:00
vsavkin 2982892acc cleanup(router): clang-format 2016-06-21 12:17:30 -07:00
vsavkin 9de56481f1 feat(router): add enableTracing option 2016-06-21 12:17:30 -07:00
vsavkin 777eb2f159 feat(router): emit an event when routes are recognized 2016-06-21 12:17:30 -07:00
vsavkin 05eebe0fed feat(router): provide meaningful toString impls 2016-06-21 12:17:30 -07:00
vsavkin fdfbbd5bac chore(router): bump up version number 2016-06-21 12:17:30 -07:00
vsavkin 1f3f8ef6c8 fix(router): fix nested deactivation 2016-06-21 12:17:30 -07:00
vsavkin 820eeb49d1 chore(router): bump up version number 2016-06-21 12:17:30 -07:00
vsavkin 2d4be1c9eb fix(router): init is not triggered in certain scenarios 2016-06-21 12:17:30 -07:00
vsavkin 2fef30f619 fix(router): make stringify handle nulls 2016-06-21 12:17:30 -07:00
vsavkin 10113b63b5 chore(router): bump up version number 2016-06-21 12:17:30 -07:00
vsavkin 545caab433 fix(router): use bootstrap listener to trigger initial navigation 2016-06-21 12:17:30 -07:00
vsavkin 3f90659cc1 fix(router): supports index routes with path 2016-06-21 12:17:30 -07:00
vsavkin 131914ac94 fix(router): fix lazy loading issues 2016-06-21 12:17:30 -07:00
vsavkin 29a7c4538c Revert "fix(provider): fix a circular dependency & remove common providers"
This reverts commit 6375fdd4f2928d5ddeccaf11a8589a7668bc9049.
2016-06-21 12:17:30 -07:00
vsavkin f195bb608c chore(router): update config before publishing to npm 2016-06-21 12:17:30 -07:00
vsavkin 66caabca0c feat(router): implement redirectTo 2016-06-21 12:17:30 -07:00
Victor Berchet 25c6a3715d fix(provider): fix a circular dependency & remove common providers 2016-06-21 12:17:30 -07:00
Mike Ryan 97cf0e40d5 fix(guards): Cancel in-flight guards if one returns false 2016-06-21 12:17:30 -07:00
vsavkin 6988a550ea cleanup(router): fix tslint errors 2016-06-21 12:17:30 -07:00
Victor Berchet 8a1cdc2dd5 chore: install typings with npm i 2016-06-21 12:17:30 -07:00
Victor Berchet dadd5ddded chore: add lint and clang-format 2016-06-21 12:17:30 -07:00
vsavkin 56f8c95ee9 tests(router): add tests verifying that updating secondary segments using router link works 2016-06-21 12:17:30 -07:00
vsavkin ed50e17e5b refactor(router): rename queryParameters into queryParams 2016-06-21 12:17:30 -07:00
vsavkin 33b518ad21 feat(router): update RouterLink to support query params and fragment 2016-06-21 12:17:30 -07:00
vsavkin b0e7c14545 fix(router): add an app initializer to trigger initial navigation
Closes #10
2016-06-21 12:17:30 -07:00
vsavkin 5742d4720a fix(router): fix router to handle guards that return observable
Closes #19
2016-06-21 12:17:30 -07:00
vsavkin 9b356d9b86 fix(router): traverse route config in depth-first order
Closes #17
2016-06-21 12:17:30 -07:00
Brandon Roberts 793ac3f6b4 Configure router with provided routes
Closes #9
2016-06-21 12:17:30 -07:00
vsavkin 9b094e42a3 chore(router): update the npm dist 2016-06-21 12:17:30 -07:00
vsavkin 6ce7a5a1ea docs(router): add docs 2016-06-21 12:17:30 -07:00
vsavkin 88920bfee1 feat(router): add support for basic events 2016-06-21 12:17:30 -07:00
vsavkin 2717bcc3af feat(router): implement cancelation 2016-06-21 12:17:30 -07:00
vsavkin 5d386dc426 chore(router): update build dir 2016-06-21 12:17:30 -07:00
vsavkin f34af4f249 feat(router): add support for using classes as guard 2016-06-21 12:17:30 -07:00
vsavkin f04b6978fb cleanup(router): add @internal to constructors where needed 2016-06-21 12:17:30 -07:00
vsavkin ab958598d7 feat(router): implement CandDeactivate 2016-06-21 12:17:30 -07:00
vsavkin 1914847e72 cleanup(router): make strictNullChecks happy 2016-06-21 12:17:30 -07:00
vsavkin d95f0fd83d fix(router): fix index routes 2016-06-21 12:17:30 -07:00
vsavkin 243612e36d refactor(router): rename candidate into snapshot 2016-06-21 12:17:30 -07:00
vsavkin c5cca8e098 feat(router): add support for CanActivate guard 2016-06-21 12:17:30 -07:00
vsavkin 99f7404d8b refactor(router): remove rootNode function 2016-06-21 12:17:30 -07:00
vsavkin 9ff6b0828f feat(router): make activation sync 2016-06-21 12:17:30 -07:00
vsavkin 6f052d1daf feat(router): add a function to resolve components 2016-06-21 12:17:30 -07:00
vsavkin 63c194b71f feat(router): change recognize to return a router state candidate 2016-06-21 12:17:30 -07:00
vsavkin 46911117f1 feat(router): implement a function create router state out of a candidate 2016-06-21 12:17:30 -07:00
vsavkin 2de1030413 feat(router): add RouterStateCandidate 2016-06-21 12:17:30 -07:00
vsavkin 1f6ade894e cleanup(router): fix a typo 2016-06-21 12:17:30 -07:00
vsavkin 8407cfeac7 fix(router): fix router to take root component type instead of instance 2016-06-21 12:17:30 -07:00
vsavkin 91d64a2855 feat(router): export provideRouter via index 2016-06-21 12:17:30 -07:00
vsavkin 40a06af79b feat(router): add provideRouter to configure the router when bootstrapping an app 2016-06-21 12:17:30 -07:00
vsavkin 8aef86f4a0 feat(router): export all public api tokens via index 2016-06-21 12:17:30 -07:00
vsavkin 5bdc6ecec8 chore: adds the build dir to use with 'npm install' 2016-06-21 12:17:30 -07:00
vsavkin c179b5033b feat(router): implement relative navigation 2016-06-21 12:17:30 -07:00
vsavkin 86f47273bc feat(router): changes router config not to use names 2016-06-21 12:17:30 -07:00
vsavkin 2e1bd46bb1 feat(router): add createUrlTree 2016-06-21 12:17:30 -07:00
vsavkin a9e773b47b feat(router): serialize outlet names into the url 2016-06-21 12:17:30 -07:00
vsavkin 10d38cbb72 chore(router): change karma reporter 2016-06-21 12:17:30 -07:00
vsavkin a5371bfb8a cleanup: cleanup tsconfig files 2016-06-21 12:17:30 -07:00
vsavkin 4b2740f270 refactor: move index.ts into src 2016-06-21 12:17:30 -07:00
vsavkin 5b371736b2 feat: add RouterLink 2016-06-21 12:17:30 -07:00
vsavkin c9b4bcf689 refactor: move all utility functions into the utils dir 2016-06-21 12:17:30 -07:00
vsavkin 013f9a2bbc feat: add tree.siblings 2016-06-21 12:17:30 -07:00
vsavkin 5bf1c93ead docs: adds missing api docs 2016-06-21 12:17:30 -07:00
vsavkin 4f6ec01932 feat: implement a simple version of the router service 2016-06-21 12:17:30 -07:00
vsavkin 0f79e504c9 test: set up karma to support fakeAsync 2016-06-21 12:17:30 -07:00
vsavkin 1a4e911b8b cleanup: fix type errors when compiling with strictNullChecks enabled 2016-06-21 12:17:30 -07:00
vsavkin 1f98519380 feat: implement RouterOutletMap 2016-06-21 12:17:30 -07:00
vsavkin aad7010952 feat: add RouterOutlet 2016-06-21 12:17:30 -07:00
vsavkin 1be9ea681b fix: fix source maps 2016-06-21 12:17:30 -07:00
vsavkin f259a2204b feat: implement recognizer 2016-06-21 12:17:30 -07:00
vsavkin 4b1db0e61c feat: implement default url serializer 2016-06-21 12:17:30 -07:00
vsavkin aee764d14d chore: update TS to enable non-nullable types 2016-06-21 12:17:30 -07:00
vsavkin 47585498af chore: updates typings to head 2016-06-21 12:17:30 -07:00
vsavkin 37c5320e33 feat: implement Tree 2016-06-21 12:17:30 -07:00
vsavkin 01111a1122 cleanup: removes a fake test 2016-06-21 12:17:30 -07:00
Rob Wormald 0b2bb1b6f5 chore(typings): use typings instead of tsd 2016-06-21 12:17:30 -07:00
vsavkin f57df3cf8a chore: set up test and build infrastructure 2016-06-21 12:17:30 -07:00
Victor Berchet c9c81e1fbc fix(XmbSerializer): add meaning attribute, escape attribute values 2016-06-21 11:52:11 -07:00
Victor Berchet e38e04c1c2 refactor(MessageExtractor): pass the interpolationConfig around 2016-06-21 11:52:11 -07:00
Victor Berchet 99587ea4ed refactor(i18n): misc 2016-06-21 11:52:11 -07:00
Victor Berchet 58b18d7fe7 fix(partition): fix partition when `<!-- i18n -->` is the only child 2016-06-21 11:52:11 -07:00
Victor Berchet 04a50f5832 feat(MessageExtractor): do not expand ICU messages before extraction 2016-06-21 11:52:11 -07:00
Rob Wormald e157a065b0 fix(compiler): codegen view query generic types 2016-06-21 11:51:54 -07:00
James Ward 41ef4b3d4a chore(npm): add repository metadata 2016-06-21 11:21:04 -07:00
Edd Hannay 262650ab39 docs(test_injector): Fix documentation typo (#9403)
- Change 'teh' for 'the'
2016-06-21 11:19:08 -07:00
Igor Minar 8c076d5a73 fix(upgrade): fix bundling issue and fix e2e test
the previous demo app was broken and is missing an e2e test.

I fixed the app, but was not able to get protractor to properly test
this app. Julie and I are looking into that. For now I manually verified
that the app works and that the original issue was fixed.

Closes #9244
2016-06-21 11:12:42 -07:00
Victor Berchet c5c456120c refactor: delete containsRegexp() (there is escapeRegExp() in the lang facade)
BREAKING CHANGES:

`containsRegexp` is no more exported from `@angular/core/testing`. It should not have been part of the public API in the first place.
2016-06-21 09:15:21 -07:00
Pawel Kozlowski fdf6bc18dd fix(compiler): properly report unresolved dependencies
Fixes #9332

Closes #9341
2016-06-21 16:36:57 +02:00
PatrickJS 297f0fd2c3 fix(core/testing): show full error
test(platform-browser): update fail capture

test(platform-browser-dynamic): update fail capture
2016-06-20 19:36:37 -07:00
Victor Berchet 12c49042ab fix(HTTP/XhrBackend): correctly set the status code on errors (#9355)
fixes #9329
fixes angular/http#54
2016-06-20 15:02:14 -07:00
Matias Niemelä ba46ca683b fix(animations): ensure starting styles are applied when a delay is present
Closes #9326
Closes #9328
2016-06-20 11:16:39 -07:00
Victor Berchet ca42b49fa2 refactor: misc cleanup (#9369) 2016-06-20 10:55:29 -07:00
Victor Berchet 1b28cf71f5 feat(compiler): make interpolation symbols configurable (`@Component` config) (#9367)
closes #9158
2016-06-20 09:52:41 -07:00
vsavkin af2f5c3d7d cleanup(router): removes router 2016-06-20 08:47:54 -07:00
Jesús Rodríguez 65be81baf8 doc(CheatSheet): update ngSwitch syntax in the cheatsheet (#9361) 2016-06-20 08:05:50 -07:00
Misko Hevery 7a3689f175 chore: formating 2016-06-19 22:27:29 +02:00
Misko Hevery 8675b8dc48 fix: cleanup public api of platform-server
BREAKING CHANGE: Parse5Adapter is no longer exported as public API, use serverBootstrap()

Parse5Adapter is an implementation detail not a public API

Closes #9237

Closes #9205
2016-06-19 09:03:01 -07:00
Misko Hevery 279e816ea7 chore: Remove unnecessary calls to Parse5DomAdapter
This reverts commit 80deac5cde.
2016-06-19 08:42:00 -07:00
Andrei Tserakhau 2d60ff14ae bug(datePipe): date format pipe's 2-digit interpretation of minutes and seconds (#9338)
Closes #9333
2016-06-18 09:03:58 -07:00
Tobias Bosch c0f2a22a08 fix(perf): support prod mode again
After splitting the facades into multiple modules,
enabling prod mode for code had no effect for the compiler.

Also in a change between RC1 and RC2 we created the `CompilerConfig`
via a provider with `useValue` and not via a `useFactory`, which reads
the prod mode too early.

Closes #9318
Closes #8508
Closes #9318
2016-06-17 15:59:27 -07:00
Andrei Tserakhau 5c8d3154d7 feat(datePipe): numeric string support 2016-06-17 15:58:06 -07:00
Victor Berchet 40f8a45b95 test(DatePipe): fixes 2016-06-17 15:48:26 -07:00
Victor Berchet 76a418760e fix(BrowserUtil): fix `supportsIntlApi()` 2016-06-17 15:34:12 -07:00
Victor Berchet 49bf3f5b3a fix(NumberPipe): fix broken RegExp
introduced in 7498050421 (#9308)
2016-06-17 15:33:25 -07:00
Alfonso Presa 773c34900f fix(change_detection): ChangeDetectorRef reattach should restore original mode
After using ChangeDetectorRef detach, it should keep the ChangeDetector mode so that it is restored after calling reattach.

closes #7078
closes #7080
2016-06-17 15:00:41 -07:00
Chuck Jazdzewski 791153c93c fix(compiler): StaticReflector ignores unregistered decorators. (#9266)
Also modified static reflector to allow writing tests in using
the .ts and using the MetadataCollector.

Also made MetadataCollector be able to use SourceFiles that have
not been bound (that is, don't have the parent property set).

Fixes #9182
Fixes #9265
2016-06-17 13:11:00 -07:00
Victor Berchet 721f53f0d6 feat(I18N Expander): do not add extra `<ul>` & `<li>` around ICU messages (#9283)
fixes #9072
2016-06-17 11:38:24 -07:00
Victor Berchet 7498050421 refactor: misc (#9308) 2016-06-17 10:57:50 -07:00
Victor Berchet 5e3ccbcea9 refactor: add types (#9288) 2016-06-17 10:57:32 -07:00
Martin Probst 8879aa1df4 feat(security): fail more detectably when using a safe value in an interpolation.
If a user ends up with a safe value in an interpolation context, that's probably
a bug. Returning `"SafeValue must use [property]= binding"` will make it easier
to detect and correct the situation. Detecting the situation and throwing an
error for it could cause performance issues, so we're not doing this at this
point (but might revisit later).

Part of #8511 and #9253.
2016-06-17 10:00:30 -07:00
Victor Berchet 44e0ad4987 refactor(forms): remove the facade local copy (#9276) 2016-06-17 08:53:17 -07:00
Pawel Kozlowski 5fe60759f9 feat(QueryList): support index in callbacks
Closes #9278
2016-06-17 08:09:42 -07:00
Matias Niemelä 45549cda61 refactor(core): get rid of the bitwise operator facade helpers 2016-06-16 14:31:55 -07:00
Matias Niemelä a13052fc73 refactor(core): rename css_parser and css_lexer files
Closes #9273
2016-06-16 14:31:48 -07:00
Matias Niemelä 4e7bb03e81 refactor(core): rename `AST` to `Ast` for all CSS parser code 2016-06-16 14:31:41 -07:00
Matias Niemelä 935c39a7e2 feat(core): ensure CSS parser tracks start/end values and understands complex pseudo selectors 2016-06-16 14:31:34 -07:00
Victor Berchet c08ca22dba refactor(HtmlParser): clang format 2016-06-16 13:54:00 -07:00
Alex Eagle 37b617dccf chore(tsickle): add @Annotation annotations
This lets users continue using runtime-sideeffect Decorators if they choose,
only down-leveling the marked ones to Annotations.

Also remove the "skipTemplateCodegen" option, which is no longer needed
since Angular compiles with tsc-wrapped rather than ngc. The former doesn't
include any codegen.
2016-06-16 12:29:46 -07:00
Victor Berchet c60ef45bc8 fix(HtmlParser): add missing ; 2016-06-16 10:23:02 -07:00
Victor Berchet 1eaa193c51 feat(compiler-cli): add a `debug` option to control the output
fixes #9208
2016-06-15 18:13:57 -07:00