11 Commits

Author SHA1 Message Date
Joey Perrott
d1ea1f4c7f build: update license headers to reference Google LLC ()
Update the license headers throughout the repository to reference Google LLC
rather than Google Inc, for the required license headers.

PR Close 
2020-05-26 14:26:58 -04:00
Alex Rickabaugh
83a9159063 style(compiler): reformat of codebase with new clang-format version ()
This commit reformats the packages/compiler tree using the new version of
clang-format.

PR Close 
2020-04-08 14:51:08 -07:00
crisbeto
9d54679e66 test: clean up explicit dynamic query usages ()
Cleans up all the places where we explicitly set `static: false` on queries.

PR Close 
2019-10-17 16:10:10 -04:00
Kara Erickson
214ae0ea4c test(compiler): update examples and compiler tests ()
PR Close 
2019-05-23 10:31:32 -07:00
Misko Hevery
47e251a80a build: remove main() from specs ()
PR Close 
2017-12-22 13:10:51 -08:00
Chuck Jazdzewski
e7d9cb3e4c feat(compiler): narrow types of expressions used in *ngIf ()
Structural directives can now specify a type guard that describes
what types can be inferred for an input expression inside the
directive's template.

NgIf was modified to declare an input guard on ngIf.

After this change, `fullTemplateTypeCheck` will infer that
usage of `ngIf` expression inside it's template is truthy.

For example, if a component has a property `person?: Person`
and a template of `<div *ngIf="person"> {{person.name}} </div>`
the compiler will no longer report that `person` might be null or
undefined.

The template compiler will generate code similar to,

```
  if (NgIf.ngIfTypeGuard(instance.person)) {
    instance.person.name
  }
```

to validate the template's use of the interpolation expression.
Calling the type guard in this fashion allows TypeScript to infer
that `person` is non-null.

Fixes: ?

PR Close 
2017-12-08 10:24:26 -08:00
Tobias Bosch
0cc77b4a69 refactor(compiler): split compiler and core ()
After this, neither @angular/compiler nor @angular/comnpiler-cli depend
on @angular/core.

This add a duplication of some interfaces and enums which is stored
in @angular/compiler/src/core.ts

BREAKING CHANGE:
- `@angular/platform-server` now additionally depends on
  `@angular/platform-browser-dynamic` as a peer dependency.


PR Close 
2017-08-16 17:58:53 -05:00
Pawel Kozlowski
d2c0d986d4 perf(core): add option to remove blank text nodes from compiled templates 2017-08-14 13:26:16 -07:00
Tobias Bosch
a80ac0a8d3 fix(core): make decorators closure safe ()
This is required as e.g. `token` from `@Inject` is
accessed in string form via makeParamDecorator
but as a property in the `ReflectiveInjector`.

Closes  as this is a more general fix.
2017-05-23 11:52:40 -06:00
Tobias Bosch
50abca4583 refactor(compiler): don’t rely on global reflector ()
Using the global reflector made it impossible
to compile multiple programs at the same time.
2017-05-23 10:41:23 -06:00
Jason Aden
3e51a19983 refactor: move angular source to /packages rather than modules/@angular 2017-03-08 16:29:27 -08:00