Alex Eagle
cd8cbd3762
fix(ngc): don't codegen foo.d.ngfactory.ts from foo.d.ts ( #10833 )
2016-08-18 10:11:06 -07:00
Alex Rickabaugh
c4fd862e15
fix(metadata): throw better errors when components are passed to imports or modules are passed to declarations. ( #10888 )
...
Closes #10823
2016-08-17 15:57:02 -07:00
Hans
40e160c22c
fix(platform-browser-dynamic): Rename CACHED_TEMPLATE_PROVIDER to RESOURCE_CACHE_PROVIDER ( #10866 )
...
* fix(platform-browser-dynamic): Rename CACHED_TEMPLATE_PROVIDER to RESOURCE_CACHE_PROVIDER
Closes #9741
BREAKING CHANGE:
`CACHED_TEMPLATE_PROVIDER` is now renamed to `RESOURCE_CACHE_PROVIDER`
Before:
```js
import {CACHED_TEMPLATE_PROVIDER} from '@angular/platform-browser-dynamic';
```
After:
```js
import {RESOURCE_CACHE_PROVIDER} from '@angular/platform-browser-dynamic';
```
* Rename XHR -> ResourceLoader
2016-08-17 09:24:44 -07:00
Matias Niemelä
f12d51992d
fix(animations): report errors for missing host-level referenced animations ( #10650 )
...
Closes #10650
2016-08-17 08:00:49 -07:00
Igor Minar
73a9ee4a05
Remove component resolver ( #10858 )
...
* refactor(core): remove deprecated ComponentResolver
BREAKING CHANGE: deprecated ComponentResolver was removed
Please follow deprecation instruction and migrate your code to use ComponentFactoryResolver.
* refactor(common): remove deprecated NgSwitchWhen directive
BREAKING CHANGE: previously deprecated NgSwitchWhen directive was removed, use NgSwitchCase instead
2016-08-16 16:48:32 -07:00
Matias Niemelä
9adf80385b
fix(animations): remove deprecated trigger APIs ( #10825 )
...
BREAKING CHANGE: Animations defined using an at-symbol prefix that are
not property bound are now invalid.
```html
<!-- this is now invalid -->
<div @flip="flipState"></div>
<!-- change that to -->
<div [@flip]="flipState"></div>
```
BREAKING CHANGE: Animations that are not bound using the at-symbol
prefix using `animate-` must now be preixed using `bind-animate-`.
```html
<!-- this is now invalid -->
<div animate-flip="flipState"></div>
<!-- is valid now -->
<div bind-animate-flip="flipState"></div>
```
Closes #10825
2016-08-16 14:09:21 -07:00
Victor Savkin
f7ff6c5a12
refactor(core): remove deprecated 'bootstrap' ( #10831 )
2016-08-16 11:15:01 -07:00
Victor Berchet
f6a7d6504c
feat(i18n): xliff integration
2016-08-15 22:28:38 -07:00
Victor Berchet
96bf42261b
fix(XmlHelper): declaration
2016-08-15 22:21:40 -07:00
Victor Berchet
72bb38f83b
feat(i18n): xliff
2016-08-15 22:21:40 -07:00
Miško Hevery
bec5c5fdad
refactor(Provider): remove deprecated provider/bind API ( #10652 )
...
Closes #9751
BREAKING CHANGE:
These forms of providers are no longer accepted:
bind(MyClass).toFactory(...)
new Provider(MyClass, toFactory: ...)
We now only accept:
{provider: MyClass, toFactory: ...}
2016-08-15 19:37:42 -07:00
Victor Savkin
60b10134df
cleanup(platform): removed webworker and server deprecated apis ( #10745 )
2016-08-15 13:44:01 -07:00
Zhicheng Wang
398bbb6aa9
refactor(core): replace some for statements with map/reduce
2016-08-14 10:10:07 -07:00
Zhicheng Wang
05d1312306
refactor(core): Replace all var with const and let
2016-08-14 10:10:07 -07:00
Zhicheng Wang
bc6d1c87a6
fix(core): don't strip sourceMappingURL ( #9664 )
...
fix #9664
2016-08-14 10:10:07 -07:00
Victor Berchet
e9479b30e8
refactor(OutputAst): BuiltinMethod.bind renamed to Bind ( #10739 )
2016-08-14 10:04:37 -07:00
Matias Niemelä
6580d67875
feat(i18n): pass translation config directly into ngc ( #10622 )
2016-08-12 14:45:36 -07:00
Victor Berchet
39c0f9ebb3
fix(ExtractorMerger): returns errors together with nodes (as a ParseTreeResult)
2016-08-11 23:24:22 -07:00
Victor Berchet
91dd672aa4
style(xmb): add a space after ICU message cases
2016-08-11 23:24:22 -07:00
Chuck Jazdzewski
2d520ae7e7
fix(compiler): Generate temporary variables for guarded expressions ( #10657 )
...
Fixes : #10639
2016-08-11 21:20:54 -07:00
Victor Berchet
50345b8c36
feat(i18n): add an HtmlParser decorator ( #10645 )
...
* fix(i18n): merge retains attributes w/o value
* feat(i18n): allow attributes on ng-container (i.e. i18n)
* feat(i18n): add an HtmlParser decorator
* style: clang format
2016-08-11 21:00:35 -07:00
Alex Eagle
7fac4efede
chore(facades): missed a couple places in #10620 ( #10661 )
...
This lets us skip src/facade/exception* when compiling modules other than core
2016-08-11 08:39:13 -07:00
Miško Hevery
b96869afd2
refactor(Type): merge Type and ConcreType<?> into Type<?> ( #10616 )
...
Closes #9729
BREAKING CHANGE:
`Type` is now `Type<T>` which means that in most cases you have to
use `Type<any>` in place of `Type`.
We don't expect that any user applications use the `Type` type.
2016-08-10 18:21:28 -07:00
Alex Eagle
6f4ee6101c
chore(imports): don't import ExceptionHandler from facade ( #10620 )
...
This lets us skip src/facade/exception* when compiling modules other than core.
It prevents having many conflicting declarations
2016-08-10 15:55:18 -07:00
Victor Berchet
43512aa5eb
fix(i18n): ICU placeholders are replaced by their translations ( #10586 )
...
They were replaced by the original message.
2016-08-09 21:05:04 -07:00
Victor Berchet
b65f66feff
feat(i18n): switch to sha1 for message fingerprinting
2016-08-09 09:52:11 -07:00
Victor Berchet
dd68ae3ef1
feat(ExtractorMerger): ignore implicit tags in translatable sections
2016-08-09 09:52:11 -07:00
Victor Berchet
1b04d70626
feat(ExtractorMerger): allow nested implicit tags
2016-08-09 09:52:11 -07:00
Matias Niemelä
0b08dd8674
chore(animations): make sure host-prop animation deprecation is correctly emitted
...
Closes #10581
2016-08-08 23:39:22 -07:00
Pawel Kozlowski
46bbcefb36
fix(linker): prevent pollution of empty embeddedView context ( #10548 )
...
Fixes #10045
2016-08-08 09:11:35 -07:00
Victor Berchet
74b57dfa7d
refactor(i18n): remove circular dep
2016-08-05 13:39:54 -07:00
Victor Berchet
8c9c0986e9
refatcor(digestMessage): takes a i18n.Message
2016-08-05 13:39:54 -07:00
Victor Berchet
4028fcaa51
refactor(i18n): Drop html.Message and create i18n.Message right away
2016-08-05 13:39:54 -07:00
Victor Berchet
7a8ef1eae5
feat(i18n): merge translations
2016-08-05 13:39:54 -07:00
Victor Berchet
e811a5d97f
refactor(i18n): misc updates
2016-08-05 13:39:54 -07:00
Victor Berchet
df44e3e425
fix(i18n extractor): array manipulation
2016-08-05 13:39:54 -07:00
Victor Berchet
cdb1a237e5
refactor(compiler): html_parser -> ml_parser
2016-08-05 13:39:54 -07:00
Jason Choi
99989f5d3f
chore(facade): remove most facade/async functions
2016-08-05 12:26:28 -07:00
Jason Choi
83e2d3d1cb
refactor(RegExpWrapper): remove the facade ( #10512 )
2016-08-05 09:50:49 -07:00
Victor Berchet
b4613ab2d2
fix(ExpressionParser): undefined is undefined (was null)
2016-08-05 09:45:13 -07:00
Victor Berchet
0ca05eee45
feat(ExpressionParser): add support for this
2016-08-05 09:45:13 -07:00
Patrice Chalin
2b704f0586
fix(linker/compiler): rename const to avoid duplicate declaration ( #10457 )
...
Currently in the `linker/compiler.ts` file, the **same identifier** is used in **two declarations**:
```typescript
export type CompilerOptions = { … }
…
export const CompilerOptions = new OpaqueToken('compilerOptions');
```
This breaks the API doc generation. I’m surprised that this was not flagged by the tsc.
The duplicate declaration was introduced in 46b212706b .
2016-08-04 11:31:58 -07:00
Marc Laval
cd18de7a21
refactor(compiler): use Object.keys instead of Object.getOwnPropertyNames ( #10498 )
2016-08-04 10:35:41 -07:00
Miško Hevery
790362e243
fix: put all ngc files into a single directory ( #10486 )
...
Prior to this change `ngc` would place generated files which refer
to components in the node_modules into the node_module. This is an
issue. Now all of the files are forced into a single directory
as specified in `tsconfig.json` by the `genDir` option.
see: https://docs.google.com/document/d/1OgP1RIpZ-lWUc4113J3w13HTDcW-1-0o7TuGz0tGx0g
2016-08-03 21:34:03 -07:00
Tobias Bosch
8efbcc996a
fix(compiler): allow to use pipes inside of *ngIf ( #10452 )
...
Fixes #9746
2016-08-02 12:19:34 -07:00
Tobias Bosch
3d53b33391
chore: update public api and integrate minor review comments
2016-08-02 11:23:26 -07:00
Tobias Bosch
7e4fd7d7da
refactor(core): introduce @NgModule.bootstrap and ngDoBootstrap method
...
If a `@NgModule` has a `bootstrap` property, `PlatformRef.bootstrapModule` /
`PlatformRef.bootstrapModuleFactory` will automatically bootstrap the components
listed in there.
If such a property does not exist, `PlatformRef.bootstrapModule` /
`PlatformRef.bootstrapModuleFactory` will try to call the method `ngDoBootstrap(appRef: ApplicationRef)` on the module class.
Otherwise an error is reported.
2016-08-02 11:23:26 -07:00
Tobias Bosch
ecdaded25f
feat(core): introduce NgModuleRef.destroy and call ngOnDestroy on all providers
2016-08-02 11:23:26 -07:00
Tobias Bosch
c161ed415d
feat(core): support ngOnDestroy on providers of a directive.
...
Such providers also become eager as they will be instantiated
anyways on destruction.
2016-08-02 11:23:26 -07:00
Tobias Bosch
ff3b71f7b3
refactor(core): collect lifecycle hooks for all injectable classes
2016-08-02 11:23:26 -07:00
Misko Hevery
a55d796c4b
fix: Better error message in case of unknown property binding
2016-08-02 09:28:04 -07:00
Victor Berchet
2dfc9c653b
refactor: dart
2016-08-01 11:34:51 -07:00
Victor Berchet
106db0aba8
refactor: IS_DART === false
2016-08-01 11:34:51 -07:00
Victor Berchet
28c4852cd6
refactor: remove ts2dart annotations
2016-08-01 11:34:51 -07:00
Victor Berchet
13c8211065
fix: String.split(str, n) stops after n separator ( #10408 )
2016-08-01 11:33:35 -07:00
Victor Berchet
e73d0511cf
fix(TemplateParser): report empty expression ( #10391 )
...
fixes #3754
2016-08-01 11:24:49 -07:00
Hans
4df7b1cfbc
chore: fixes some issues that happen with closure compiler. ( #10392 )
2016-08-01 09:47:49 -07:00
Victor Berchet
e34a04d2ad
feat(xmb/xtb): support dtd
2016-07-29 14:18:34 -07:00
Victor Berchet
3e2900f74b
refactor(i18n): move code around
2016-07-29 13:40:58 -07:00
Victor Berchet
0eee1d5de3
feat(i18n): xtb serializer
2016-07-29 13:40:58 -07:00
Victor Berchet
1b77604ee2
refactor(compiler): re-arrange files
2016-07-29 13:40:58 -07:00
Victor Berchet
cc5cfe87c3
feat(i18n): xmb serializer
2016-07-29 13:40:58 -07:00
Victor Berchet
48f230a951
feat(I18nAst): introduce an intermediate AST
2016-07-29 13:40:58 -07:00
Victor Berchet
2be50bdbb0
refactor(i18n): message extractor
...
fixes #8802
2016-07-29 13:40:58 -07:00
Victor Berchet
28e8b2faab
feat(ICU): extract ICU messages
2016-07-29 13:40:58 -07:00
Tobias Bosch
d0a95e35af
refactor(testing): introduce new testing api to support ng modules
...
BREAKING CHANGE:
- deprecations:
* `withProviders`, use `TestBed.withModule` instead
* `addProviders`, use `TestBed.configureTestingModule` instead
* `TestComponentBuilder`, use `TestBed.configureTestModule` / `TestBed.override...` / `TestBed.createComponent` instead.
Closes #10354
2016-07-29 04:47:18 -07:00
Tobias Bosch
3dbc66c1ac
refactor(core): introduce interfaces for constructor arguments of decorators
...
For @Directive, @Component, @Pipe, @NgModule
2016-07-29 04:47:18 -07:00
Tobias Bosch
0988cc82b0
refactor(core): remove ViewResolver and ViewResolverMock
...
The methods on `ViewResolverMock` have been merged into `DirectiveResolver`.
BREAKING CHANGE:
- ES5 users can no longer use the `View(…)` function to provide `ViewMetadata`.
This mirrors the removal of the `@View` decorator a while ago.
2016-07-29 04:47:17 -07:00
Tobias Bosch
a32c4ad2f0
fix(compiler): auto declare entryComponents recursively
...
Closes #10348
2016-07-28 12:03:34 -07:00
Tobias Bosch
fb3608aa5d
fix(compiler): report better error messages for host bindings
...
Closes #10346
2016-07-28 11:21:50 -07:00
Tobias Bosch
9b39e499ac
fix(core): support components without a selector ( #10331 )
...
Components without a selector now get the selector `ng-component`.
Directives without a selector will throw an error message.
Closes #3464
Closes #10216
2016-07-28 10:39:10 -07:00
Hans
a67cc8229d
chore: move injector to being non-internal but private ( #10339 )
...
* chore: move injector to being non-internal but private
* Add the new non-internal method to the public API.
2016-07-28 10:38:29 -07:00
Tobias Bosch
e44e8668ea
fix(core): only warn and auto declare undeclared entryComponents.
...
This is needed to support existing applications.
After final these warnings will become errors.
Closes #10316
2016-07-27 10:56:12 -07:00
Tobias Bosch
553344739c
fix(core): allow module providers to overwrite providers from ModuleWithProviders
...
Fixes #10313
Closes #10317
2016-07-27 10:51:58 -07:00
Tobias Bosch
fc83bbbe98
fix(compiler): treat custom elements as unknown elements by default
...
Closes #10300
2016-07-26 12:31:22 -07:00
Tobias Bosch
5a21f168d6
refactor(core): change bootstrap of modules and names of platforms
...
BREAKING CHANGES:
- `browserPlatform`/`browserDynamicPlatform`/... have been deprecated and renamed into `platformBrowser`/`platformBrowserDynamic`/....
- `bootstrapModule` and `bootstrapModuleFactory` have been moved to be members of `PlaformRef`.
E.g. `platformBrowserDynamic().bootstrapModule(MyModule)`.
2016-07-26 07:28:55 -07:00
Tobias Bosch
00b726f695
refactor(core): introduce NgModule.schemas
...
This allows Angular to error on unknown properties,
allowing applications that don’t use custom elements
to get better error reporting.
Part of #10043
BREAKING CHANGE:
- By default, Angular will error during parsing
on unknown properties,
even if they are on elements with a `-` in their name
(aka custom elements). If you application is using
custom elements, fill the new parameter `@NgModule.schemas`
with the value `[CUSTOM_ELEMENTS_SCHEMA]`.
E.g. for bootstrap:
```
bootstrap(MyComponent, {schemas: [CUSTOM_ELEMENTS_SCHEMA]});
```
2016-07-26 07:04:36 -07:00
Tobias Bosch
f02da4e91a
feat(core): introduce ModuleWithProviders.
...
Modules can now provider helper functions that allow
to import a module together with an array of providers.
Part of #10043
2016-07-26 07:04:36 -07:00
Tobias Bosch
6f4e49ed53
refactor(core): rename precompile into entryComponents.
...
Part of #10043
BREAKING CHANGE:
- `@Component.precompile` was renamed to `@Component.entryComponents`
(old property still works but is deprecated)
- `ANALYZE_FOR_PRECOMPILE` was renamed to `ANALYZE_FOR_ENTRY_COMPONENTS` (no deprecations)
2016-07-26 07:04:36 -07:00
Tobias Bosch
46b212706b
refactor(core): change module semantics
...
This contains major changes to the compiler, bootstrap of the platforms
and test environment initialization.
Main part of #10043
Closes #10164
BREAKING CHANGE:
- Semantics and name of `@AppModule` (now `@NgModule`) changed quite a bit.
This is actually not breaking as `@AppModules` were not part of rc.4.
We will have detailed docs on `@NgModule` separately.
- `coreLoadAndBootstrap` and `coreBootstrap` can't be used any more (without migration support).
Use `bootstrapModule` / `bootstrapModuleFactory` instead.
- All Components listed in routes have to be part of the `declarations` of an NgModule.
Either directly on the bootstrap module / lazy loaded module, or in an NgModule imported by them.
2016-07-26 07:04:10 -07:00
Victor Berchet
41178367d1
feat(HtmlLexer): better hint on unclosed ICU message errors
...
fixes #10227
2016-07-22 17:27:15 -07:00
Victor Berchet
b652a7fc9f
chore: remove obsolete files ( #10240 )
2016-07-22 16:18:31 -07:00
Martin Probst
a441b5b8fe
feat(security): categorize <track src> as a regular URL.
...
After security review, it turns out we were too paranoid about <track src>. Its content is not actually active or dangerous.
Fixes #10089 .
2016-07-21 13:53:35 -07:00
Chuck Jazdzewski
961c9d48ae
fix(compiler): Query expression lambdas should have dynamic type
...
Fixes : #9875
2016-07-13 15:41:30 -07:00
Chuck Jazdzewski
9229bbbc80
Revert "fix(compiler): Generates function expressions as returning any ( #9980 )"
...
This reverts commit eb5763c23f .
2016-07-13 15:41:30 -07:00
Alex Eagle
4c762a6be3
chore(lint): enable lint check for duplicate vars
2016-07-13 12:33:39 -07:00
Victor Berchet
42b0c1d8a2
refactor: misc cleanup ( #10046 )
2016-07-13 11:01:32 -07:00
Victor Berchet
0ccb6e0dfc
refactor: code cleanup
2016-07-12 16:57:39 -07:00
Victor Berchet
3050ae155c
feat(ICU): enable ICU extraction even when when in is not used
...
BREAKING CHANGES:
"{" is used a a delimiter for ICU messages then it could not be used in text nodes.
"{" should be escaped as "{{ '{' }}"
Before:
<span>some { valid } text</span>
After:
<span>some { invalid } text<span> <!-- throw parse error -->
<span>some {{ '{' }} valid } text</span>
2016-07-12 16:57:39 -07:00
Victor Berchet
402fd934d0
refactor: code cleanup
2016-07-12 15:26:03 -07:00
Victor Berchet
60e6f91a53
refactor(HmtlLexer): cleanup
2016-07-12 15:26:03 -07:00
Victor Berchet
e676fded21
refactor(Lexer): add types
...
relates to #9100
2016-07-12 15:26:03 -07:00
Victor Berchet
25e070dd65
fix(HtmlParser): correctly propagate the interpolation config across layers
2016-07-12 15:26:03 -07:00
Matias Niemelä
806a25413c
feat(animations): allow animation integration support into host params
...
Closes #9044
Closes #9933
2016-07-12 14:55:36 -07:00
Matias Niemelä
5af1e891cd
fix(animations): throw errors when duplicate component trigger names are registered
2016-07-12 14:55:31 -07:00
Matias Niemelä
79eda30f0f
refactor(animations): collect parser / lookup errors in the same place
2016-07-12 14:55:27 -07:00
Victor Berchet
6d02d2f107
fix(SyncAsyncResult): fix default async value ( #10013 )
2016-07-12 13:55:06 -07:00
Victor Berchet
27436270fd
fix(Compiler): Catch exceptions in the logging of binding update
...
fixes #9994
2016-07-12 11:21:32 -07:00
Chuck Jazdzewski
eb5763c23f
fix(compiler): Generates function expressions as returning any ( #9980 )
...
Function expressions are used in an expression context so untyped
function expressions should have any as the result type.
Fixes : #9877
2016-07-11 17:19:38 -07:00
Victor Berchet
d1a3e3aff1
fix(DirectiveResolver): throw on duplicate Input & Output names
2016-07-11 16:38:06 -07:00