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
ef37d2ae0b
example(router): add an example app for the new router
2016-06-21 23:19:26 -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