Commit Graph

3381 Commits

Author SHA1 Message Date
JiaLiPassion 17b862cf82 feat: add an tickOptions parameter with property processNewMacroTasksSynchronously. (#33838)
This option will control whether to invoke the new macro tasks when ticking.

Close #33799

PR Close #33838
2020-02-20 15:14:59 -08:00
Sonu Kapoor d2a112fa72 docs: clarify getting started deployment guide (#35510)
PR Close #35510
2020-02-20 15:12:28 -08:00
Esteban Gehring c91304f191 docs: add downgraded output kebab-case example (#35581)
PR Close #35581
2020-02-20 10:55:34 -08:00
George Kalpakas 2aa940f55c fix(docs-infra): highlight the currently active node in top-bar (#33351)
Related to #33239 and #33255.

PR Close #33351
2020-02-20 10:52:54 -08:00
George Kalpakas 34b84f61e0 fix(docs-infra): use `.tooltip` in `aio-top-menu` items (#33351)
The top-menu items have both a `title` and a `tooltip` property. The
`title` is used as text content, so there is little point in using it as
"tooltip" (via the HTMLElement's `title` property) too.

This commit switches to using the `tooltip` property to populate the
`title`. Note that in many cases, the `tooltip` property is derived from
`title` anyway (so there is no practical change in behavior in these
cases).

PR Close #33351
2020-02-20 10:52:53 -08:00
Judy Bogart 1b72fc10eb docs: edit displaying-data page to introduce section (#35507)
PR Close #35507
2020-02-20 10:50:05 -08:00
George Kalpakas 4c693ea817 build(docs-infra): upgrade cli command docs sources to 6aa3c134c (#35578)
Updating [angular#master](https://github.com/angular/angular/tree/master) from [cli-builds#master](https://github.com/angular/cli-builds/tree/master).

##
Relevant changes in [commit range](d452f0873...6aa3c134c):

**Modified**
- help/e2e.json

PR Close #35578
2020-02-20 10:47:26 -08:00
Stefanie Fluin 1997b86a00 fix(docs-infra): improve focus styles in topnav and footer (#33255)
Fixes #33239

PR Close #33255
2020-02-19 12:51:27 -08:00
Andrew Kushnir d0d36a5ebf ci: increase AIO payload size limit (#35538)
This commit updates AIO payload size limit that is triggering a problem after merging f95b8ce07e. That commit added some payload size, but all checks were "green" for the PR (https://github.com/angular/angular/pull/34481) after rebase that happened a couple hours before the merge, so this is an accumulated payload size increase from multiple changes. The goal of this commit is to bring the master and patch branches back to "green" state.

PR Close #35538
2020-02-19 09:07:20 -08:00
Pawel Kozlowski 3f4e02b8c7 fix(ivy): queries should match elements inside ng-container with the descendants: false option (#35384)
Before this change content queries with the `descendants: false` option, as implemented in ivy,
would not descendinto `<ng-container>` elements. This behaviour was different from the way the
View Engine worked. This change alligns ngIvy and VE behaviours when it comes to queries and the
`<ng-container>` elements and fixes a common bugs where a query target was placed inside the
`<ng-container>` element with a * directive on it.

Before:

```html
<needs-target>
  <ng-container *ngIf="condition">
    <div #target>...</div>  <!-- this node would NOT match -->
  </ng-container>
</needs-target>
```

After:

```html
<needs-target>
  <ng-container *ngIf="condition">
    <div #target>...</div>  <!-- this node WILL match -->
  </ng-container>
</needs-target>
```

Fixes #34768

PR Close #35384
2020-02-18 17:17:46 -08:00
Sonu Kapoor 183a8629a4 fix(docs-infra): set `th`/`td` to proper width (#35437)
Previously, the tables on the event page were misaligned. This commit
fixes this by setting the width of all `td`'s and `th`'s.

PR Close #35437
2020-02-18 12:48:31 -08:00
Sonu Kapoor 2f18e8565e style(docs-infra): properly format files (#35318)
PR Close #35318
2020-02-18 12:45:07 -08:00
Sonu Kapoor a788d585f8 fix(docs-infra): preserves query and hash when switching angular versions (#35318)
Previously, when switching angular versions through the
version selector in the sidenav, the query and hash is lost.
The user has to manually navigate to the original location again.

This commit fixes this issue and preserves the query and hash
when navigating between different versions.

Closes #24495

PR Close #35318
2020-02-18 12:45:07 -08:00
ajitsinghkaler 7b56daffe6 fix(docs-infra): add fallback to web fonts so downloading does not block rendering (#35352)
Light house was reporting that 'Ensure text remains visible during webfont load' solution to this problem was adding &swap to the end of web fonts this leads to our first text showing before web-font download and improves the performance of site link to article: https://web.dev/font-display/\?utm_source\=lighthouse\&utm_medium\=lr

PR Close #35352
2020-02-18 12:43:16 -08:00
George Kalpakas bdfe71ae93 build(docs-infra): use `puppeteer` to get a browser for docs examples tests (#35381)
In #35049, integration and AIO tests were changed to use the browser
provided by `puppeteer` in tests. This commit switches the docs examples
tests to use the same setup.

IMPLEMENTATION NOTE:
The examples are used to create ZIP archives that docs users can
download to experiment with. Since we want the downloaded projects to
resemble an `@angular/cli` generated project, we do not want to affect
the project's Protractor configuration in order to use `puppeteer`.

To achieve this, a second Protractor configuration is created (which is
ignored when creating the ZIP archives) that extends the original one
and passes the approperiate arguments to use the browser provided by
`puppeteer`. This new configuration (`protractor-puppeteer.conf.js`) is
used when running the docs examples tests (on CI or locally during
development).

PR Close #35381
2020-02-18 12:42:47 -08:00
George Kalpakas ab8199f7c9 build: several minor fixes related to using `puppeteer` (#35381)
This is a follow-up to #35049 with a few minor fixes related to using
the browser provided by `puppeteer` to run tests. Included fixes:

- Make the `webdriver-manager-update.js` really portable. (Previously,
  it needed to be run from the directory that contained the
  `node_modules/` directory. Now, it can be executed from a subdirectory
  and will correctly resolve dependencies.)

- Use the `puppeteer`-based setup in AIO unit and e2e tests to ensure
  that the downloaded ChromeDriver version matches the browser version
  used in tests.

- Use the `puppeteer`-based setup in the `aio_monitoring_stable` CI job
  (as happens with `aio_monitoring_next`).

- Use the [recommended way][1] of getting the browser port when using
  `puppeteer` with `lighthouse` and avoid hard-coding the remote
  debugging port (to be able to handle multiple instances running
  concurrently).

[1]: https://github.com/GoogleChrome/lighthouse/blame/51df179a0/docs/puppeteer.md#L49

PR Close #35381
2020-02-18 12:42:47 -08:00
Chives d7c4f40171 docs(upgrade): separate AngularJS Material typings to its own block (#35514)
PR Close #35514
2020-02-18 12:42:19 -08:00
Chives 99fdba0165 docs(upgrade): add instructions for more AngularJS related typings (#35514)
angular-aria is a core AngularJS module packaged separately, and
angular-material is its own thing entirely.

PR Close #35514
2020-02-18 12:42:19 -08:00
Sonu Kapoor be5e75c804 docs: change `item` to `items` to match the code (#35433)
Closes #35368

PR Close #35433
2020-02-14 11:15:07 -08:00
Aristeidis Bampakos 9ca1faf865 docs: Fix minor typos and coding styles (#35325)
- Fix minor typos in the Getting Started, Forms and AOT Compiler guide.
- Fix minor typo in the Tour of Heroes app.
- Fix coding styles in the Getting Started guide and the Tour of Heroes app

PR Close #35325
2020-02-13 13:31:30 -08:00
Pete Bacon Darwin e09abc5b5a ci(docs-infra): update payload limits (#35379)
The update to Angular 9.0.0 appears to have lowered the main.js
file slightly, while the current master build of Angular appears
to have gone up slightly.

PR Close #35379
2020-02-13 10:07:56 -08:00
Pete Bacon Darwin a7ee2bcaba build(docs-infra): update to latest Angular Material (#35379)
PR Close #35379
2020-02-13 10:07:56 -08:00
Pete Bacon Darwin 417ed3aa85 build(docs-infra): pin @webcomponents/custom-elements to 1.2.1 (#35379)
The previous range (^1.2.0) allowed the version 1.3.2 to be
installed which caused the ES2015 polyfills.js file to increase
in size unwantedly.

PR Close #35379
2020-02-13 10:07:56 -08:00
Pete Bacon Darwin e34c7da830 build(docs-infra): update AIO to Angular 9.0.0 (#35379)
PR Close #35379
2020-02-13 10:07:55 -08:00
Pete Bacon Darwin e2b8b7c0be build(docs-infra): update to latest dgeni-packages (#35379)
After the previous update to yarn.lock a problem surfaced
with the `mkdir-promise` package. The latest version of
dgeni-packages (0.28.3) fixes this problem.

PR Close #35379
2020-02-13 10:07:55 -08:00
Pete Bacon Darwin 5a219e2588 build(docs-infra): refresh yarn.lock (#35379)
This file had not been updated for some time and lots of
the dependencies have new versions.

This is actually necessary because (at least on OS/X) there
is a problem with `chokidar` and `fsevent` that is solved by
bumping the versions here.

PR Close #35379
2020-02-13 10:07:55 -08:00
Sonu Kapoor f015d99117 docs: Update doc to use `ng` firebase schematics for deployment (#35355)
Previously, the `deployment` section, was using the `firebase`
CLI to deploy the angular project into firebase. With the better
integration through the `fire` schematics, it is now easier to
deploy angular applications into firebase. This commit takes
care of this, by outlined the required steps for deployment.

Closes #35274

PR Close #35355
2020-02-13 10:07:26 -08:00
Igor Minar dc63ceb5a3 docs: update release.md and rename 'beta' releases to 'next' (#35276)
also clarify what 'next' releases are.

PR Close #35276
2020-02-13 10:00:50 -08:00
ajitsinghkaler e8ea3be843 docs: remove service from region where it was added before it was created (#35354)
The message service was added in a section create message service but was impoted much before it removed those imports because they can be confusing

Fixes #35259

PR Close #35354
2020-02-12 16:46:22 -08:00
Sonu Kapoor 6091039223 docs: Rename FAQ to Useful Tips (#35316)
Previously, a section in the FAQ was not clear when discussing a
simple unit test. We also want to move away from question-based
sections. This commit clarified the confusing section and
changed all question-based sections.

Closes #35056

PR Close #35316
2020-02-12 16:40:17 -08:00
Santosh Yadav b9b38f0ad2 docs: Repetition on getting started tutorial (#35290)
Fixes #35286
PR Close #35290
2020-02-11 13:20:16 -08:00
Greg Magolan afdd405995 test: use puppeteer in aio build instead to remove CI_CHROMEDRIVER_VERSION_ARG (#35049)
PR Close #35049
2020-02-11 13:16:53 -08:00
Judy Bogart dcb8d6740e docs: fix nav to match new toh titles (#35126)
PR Close #35126
2020-02-10 16:12:54 -08:00
ajitsinghkaler 2d5bb26b02 fix(docs-infra): lighthouse reporting links to cross-origin destinations are unsafe (#35253)
Light house was reporting in best practices that our cross origin links are a unsafe so aded rel=noopener according to light houe suggestion link to the article https://web.dev/external-anchors-use-rel-noopener/\?utm_source\=lighthouse\&utm_medium\=lr

PR Close #35253
2020-02-10 09:23:30 -08:00
Judy Bogart 26b17aee14 docs: add asset info to library guide (#34217)
PR Close #34217
2020-02-07 13:57:18 -08:00
Sonu Kapoor f7e1c21596 docs: fix awkard space due to margin in sections with `alert` class (#35113)
PR Close #35113
2020-02-07 11:36:58 -08:00
Sachin Grover 843b3a2197 docs: missing item variable in structural directives example (#35213)
PR Close #34762
PR Close #35213
2020-02-07 11:32:37 -08:00
Oleg Teterin 79742a397f fix(docs-infra): fix parameters with @Optional() decorator do not match declared, optional type (#35150)
PR Close #35150
2020-02-07 09:58:31 -08:00
David Shevitz 5b80e944be docs: Minor updates to Updating to Angular version 9 topic (#35135)
PR Close #35135
2020-02-07 09:57:56 -08:00
Schneider 53193c9779 docs: fix typo in glossary (#35108)
PR Close #35108
2020-02-07 09:57:25 -08:00
Misko Hevery 16eb691e7f docs(ivy): add anchor-node insert before/after difference (#35207)
PR Close #35207
2020-02-07 09:56:37 -08:00
George Kalpakas d3650ce3d8 build(docs-infra): upgrade cli command docs sources to d452f0873 (#35185)
Updating [angular#master](https://github.com/angular/angular/tree/master) from [cli-builds#master](https://github.com/angular/cli-builds/tree/master).

##
Relevant changes in [commit range](94d07909c...d452f0873):

**Modified**
- help/generate.json

##

PR Close #35185
2020-02-06 15:37:36 -08:00
JiaLiPassion dc5ac88a19 docs: fix wrong link of tick() (#35168)
PR Close #35168
2020-02-06 15:35:50 -08:00
Sonu Kapoor 10ad984334 docs: Clarifies code section is a continuation from the section above (#35111)
PR Close #35111
2020-02-06 15:31:41 -08:00
Stephen Fluin 532ccb647c docs: remove the release schedule from docs (#34474)
Removing for now, since the info is stale, and we need to determine how to adjust the schedule due to the unexpected and significant version 9 delay.

PR Close #34474
2020-02-06 14:29:21 -08:00
Igor Minar ba0cdd3010 feat(docs-infra): add v8 to the version picker in the navbar (#35196)
The v8.angular.io should be ready shortly.

PR Close #35196
2020-02-06 14:28:08 -08:00
Igor Minar 86db592b5c docs(ivy): add a not about compile-time constants to the ivy compatibility guide (#35194)
PR Close #35194
2020-02-06 13:53:50 -08:00
Kara Erickson c286fbb9dc docs(ivy): add size debugging section (#35178)
PR Close #35178
2020-02-06 09:34:36 -08:00
Kara Erickson 7526ef77b7 docs(ivy): add docs for styling priority order (#35066)
PR Close #35066
2020-02-06 09:33:28 -08:00
Kara Erickson 4e9d62ff81 docs(ivy): update style binding docs to v9 behavior (#35066)
PR Close #35066
2020-02-06 09:33:28 -08:00
Kara Erickson a08f6d9795 docs(ivy): clean up class binding docs and update to v9 behavior (#35066)
PR Close #35066
2020-02-06 09:33:28 -08:00
Kara Erickson 4fc2678438 docs(ivy): document breaking change with host attribute priority (#35175)
PR Close #35175
2020-02-05 18:22:16 -08:00
Filipe Silva c73d7181ae build: update @angular/cli to rc 14 (#35162)
PR Close #35162
2020-02-05 17:20:31 -08:00
Sasha Rudan 1f6da8c7d5 docs: fix typo in router animation (#35100)
`output directive` should be written: `outlet directive`

PR Close #35100
2020-02-04 15:58:26 -08:00
ajitsinghkaler 491654d882 fix(docs-infra): fix CSS issues on home page and search results (#35098)
On home page, image size set to 400px, which make the page not render
properly on devices below the size of 400px width.

Also, when search results were scrolled, they interfered with the top
nav items. Added border at the top of the search results container so
that the results are not visible under the nav items during scrolling.

PR Close #35098
2020-02-04 15:57:58 -08:00
ajitsinghkaler 12b49167b8 fix(docs-infra): size footer links to appropriate size for SEO (#35098)
Footer links did not have enough space between them, so lighthouse was
reporting that tap targets are not appropriately sized. Added the
required 8px space between links.

Also updated the margin of group headers accordingly.

Fixes #34901

PR Close #35098
2020-02-04 15:57:58 -08:00
Joey Perrott 960e5e25e5 docs(animations): increase wait time for status-slider animation (#35089)
Because the animation completes in 2000ms, and browser.wait checks
every 100ms, there can be a race condition of if the final state has
actually been reached to read the color. By moving to 2101ms, we ensure
that we cheack after the 2000ms of the animation has completed.

PR Close #35089
2020-02-04 15:57:37 -08:00
ajitsinghkaler aed5c7caad feat(docs-infra): add stable to the list of api statuses (#34981)
Earlier api can be filtered based on security risk and deprecated now added stable as a status for better user experience

Fixes #30396

PR Close #34981
2020-02-04 15:57:14 -08:00
Sonu Kapoor 7fb66eca25 docs: changes AoT to AOT for consistency (#35112)
PR Close #35112
2020-02-04 10:43:33 -08:00
Stephen Fluin e6cb60ee22 docs: update typescript version reference (#35120)
PR Close #35120
2020-02-04 10:22:48 -08:00
Kapunahele Wong 7369dd6f24 docs: fix animations example/remove 1st person (#35046)
Fixes #34940 and removes first person from transitions-triggers.md

PR Close #35046
2020-02-04 08:58:04 -08:00
Judy Bogart 0e3eeb4e71 docs: restructure nav for beginner concepts (#34681)
PR Close #34681
2020-02-04 08:57:31 -08:00
ajitsinghkaler e672b1f2ac feat(docs-infra): change navigation in resources page (#34756)
https://angular.io/resources needs to be sturctured to be able to navigate to all resources with improved user experience. A lone scroll bar in this page will not help the reader a great deal in exploring the resources

Fixes #33526

PR Close #34756
2020-01-31 11:27:09 -08:00
ajitsinghkaler 7431206247 refactor(docs-infra): remove unused functions in resources component page (#34756)
In resources component there were unused functions removed unused funtions

PR Close #34756
2020-01-31 11:27:09 -08:00
陈旭 6b710f7ae1 docs: update awade jigsaw's web site url of the resources (#35025)
PR Close #35025
2020-01-31 11:25:57 -08:00
crisbeto 471375adbe docs(ivy): document global debugging utilities and clean up API (#34453)
Cleans up the public API of the global debugging utilities, documents them and exposes them in the API docs.

PR Close #34453
2020-01-30 11:30:32 -08:00
Kapunahele Wong d72cfc9d57 docs: remove deployment section on golang because of errors (#34099)
The golang section was recently added to the deployment guide
but has been reported as returning errors, where it had previously
worked. After discussion and testing with
Stephen Fluin, we are removing this section because of
inconsistency in functionality.

PR Close #34099
2020-01-30 10:20:19 -08:00
Misko Hevery ee8b8f52aa feat(ivy): Change static priority resolution to be same level as directive it belongs to (#34938)
This change changes the priority order of static styling.

Current priority:
```
(least priority)
- Static
  - Component
  - Directives
  - Template
- Dynamic Binding
  - Component
    - Map/Interpolation
    - Property
  - Directives
    - Map/Interpolation
    - Property
  - Template
    - Map/Interpolation
    - Property
(highest priority)
```

The issue with the above priority is this use case:

```
<div style="color: red;" directive-which-sets-color-blue>
```
In the above case the directive will win and the resulting color will be `blue`. However a small change of adding interpolation to the example like so. (Style interpolation is coming in https://github.com/angular/angular/pull/34202)
```
<div style="color: red; width: {{exp}}px" directive-which-sets-color-blue>
```
Changes the priority from static binding to interpolated binding which means now the resulting color is `red`. It is very surprising that adding an unrelated interpolation and style can change the `color` which was not changed. To fix that we need to make sure that the static values are associated with priority of the source (directive or template) where they were declared. The new resulting priority is:

```
(least priority)
- Component
  - Static
  - Map/Interpolation
  - Property
- Directives
  - Static
  - Map/Interpolation
  - Property
- Template
  - Static
  - Map/Interpolation
  - Property
(highest priority)
```

PR Close #34938
2020-01-29 15:41:47 -08:00
Igor Minar a3de110b52 build(docs-infra): update aio to @angular/cli@9.0.0-rc.11 (#35043)
PR Close #35043
2020-01-29 14:12:15 -08:00
Stephen Fluin a892054448 docs: remove named node version (#35014)
PR Close #35014
2020-01-29 13:10:26 -08:00
Judy Bogart 3822455928 docs: modify toh titles and intro (#34758)
PR Close #34758
2020-01-29 12:11:07 -08:00
frosty 8fd2a97c44 docs: ng-conf 2020 date change (#35019)
Update the range of dates where ng-conf will appear on angular.io.

PR Close #35019
2020-01-29 10:52:38 -08:00
George Kalpakas d43187f7ef ci(docs-infra): ignore node version in `aio_monitoring_stable` CI job (for real) (#35033)
In #35004, we started ignoring yarn's engines check for `yarn install`
in AIO's `test-production.sh` script to fix a failure in the
`aio_monitoring_stable` CI job. (See #35004 for details.)

It turns out that the version of yarn used on the stable branch (1.17.3)
`--ignore-engines` is needed on all yarn commands (including `yarn
run`). Thus, #35004 is not enough to fix the failures.
New example failure: https://circleci.com/gh/angular/angular/604341

This commit turns of the engines check for the whole
`aio_monitoring_stable` CI job to fix the failure and make the job more
robust.

PR Close #35033
2020-01-29 09:25:46 -08:00
George Kalpakas 669df70da5 fix(ivy): ensure `DebugNode`/`DebugElement` are tree-shakeable in Ivy (#35003)
There are different `DebugNode`/`DebugElement` implementations (and
associated helper functions) for ViewEngine and Ivy. Additionally, these
classes/functions, which are defined inside the `core` package, are
imported by the `platform-browser` package.

Previously, this code was not tree-shaken as expected in Ivy. #30130
partially addressed the issue, but only for the case where `core` and
`platform-browser` end up in the same closure after webpack's scope
hoisting. In cases where this is not the case, our webpack/terser based
tooling is not capable of tree-shaking it.

This commit fixes the problem, by ensuring that the code retained in Ivy
mode (due to the cross-package import) does not unnecessarily reference
`DebugNode`/`DebugElement`, allowing the code to be tree-shaken away.
This results in a 7.6KB reduction in the size of the main angular.io
bundle.

Jira issue: [FW-1802](https://angular-team.atlassian.net/browse/FW-1802)

PR Close #35003
2020-01-28 15:57:57 -08:00
George Kalpakas c8eb164f01 ci(docs-infra): update payload size limits (#35003)
PR Close #35003
2020-01-28 15:57:57 -08:00
George Kalpakas 98a6fb9192 ci(docs-infra): ignore node version in `aio_monitoring_stable` CI job (#35004)
In #34955, we switched to Node.js v12 on master and 9.0.x. This causes
the `aio_monitoring_job` CI job (which checks out files from the stable
branch; currently 8.2.x) to start failing yarn's engines check (since
the 8.2.x branch expects Node.js version <11).
Example failure: https://circleci.com/gh/angular/angular/602499

Since the job is expected to run with files from both the stable and the
master branches (and since the version of Node.js is not important
here), this commit uses the `--ignore-engines` option to prevent
failures due to Node.js version mismatch.

NOTE:
Typically, the stable and master branch are on the same Node.js version,
because related PRs land on both master and the patch branch. One
exception is during RC periods, when the stable branch is different than
the patch branch. These periods are usually short, but in the case of
9.0.0 the period has lasted several months causing the CI environments
between master and the stable branch to get significantly out-of-sync.

PR Close #35004
2020-01-28 13:50:31 -08:00
ajitsinghkaler a5a598104f docs: change p to pointer for better understanding (#34927)
earlier p sigly was used to define a paragraph element which was not clear what we want to refer changed it to paragrapg element for better understanding

Fixes #34922

PR Close #34927
2020-01-28 13:04:25 -08:00
Alan Agius 36ff0dba1c docs: add link to publish a library in ivy guide (#34986)
PR Close #34986
2020-01-27 10:50:52 -08:00
Turtuvshin Byambaa c485c8a8c0 docs(core): fix typo in hierarchical injectors doc (#34968)
Fixes #34953

PR Close #34968
2020-01-27 10:50:07 -08:00
Judy Bogart 549ab2ecc3 build(docs-infra): add words to ignore in snippets (#34915)
PR Close #34915
2020-01-27 10:49:03 -08:00
Igor Minar 0a1af2ff36 docs: drop support for Android Marshmallow and older Android versions (#34540)
We no longer test against these.

PR Close #34540
2020-01-27 10:46:26 -08:00
philonor 53b7bbf3ff docs: update Android versions (#34540)
Include Android versions 8, 9 and 10 in supported browsers.

PR Close #34540
2020-01-27 10:46:26 -08:00
Igor Minar 724ce8c22b build(docs-infra): update to @angular/material 9.0.0-rc.8 (#34966)
This update increases the main bundle by ~0.6KB

payload size snapshot:

456581 Jan 24 22:07 dist/main-es2015.38c39f92eab2fcc8c835.js
541321 Jan 24 22:06 dist/main-es5.38c39f92eab2fcc8c835.js
 52487 Jan 24 22:05 dist/polyfills-es2015.b374ef3555a700a97add.js
146193 Jan 24 22:05 dist/polyfills-es5.c7dc569e6c646e42fade.js
  2987 Jan 24 22:05 dist/runtime-es2015.29be4028399ae41ba25e.js
  2981 Jan 24 22:05 dist/runtime-es5.29be4028399ae41ba25e.js

PR Close #34966
2020-01-27 09:24:48 -08:00
Igor Minar 2f36f17fc0 build(docs-infra): update fw to 9.0.0-rc.11 (#34966)
payload size snapshot:
455991 Jan 24 21:55 dist/main-es2015.2bcbba5871038ad608cd.js
540529 Jan 24 21:55 dist/main-es5.2bcbba5871038ad608cd.js
 52487 Jan 24 21:53 dist/polyfills-es2015.b374ef3555a700a97add.js
146193 Jan 24 21:53 dist/polyfills-es5.c7dc569e6c646e42fade.js
  2987 Jan 24 21:53 dist/runtime-es2015.3f56366a23f559d1feff.js
  2981 Jan 24 21:53 dist/runtime-es5.3f56366a23f559d1feff.js

PR Close #34966
2020-01-27 09:24:48 -08:00
Igor Minar be8d06c6ea build(docs-infra): update CLI to 9.0.0-rc.10
payloadsizes:

464800 Jan 24 21:44 dist/main-es2015.082aa200328274a7d604.js
549547 Jan 24 21:44 dist/main-es5.082aa200328274a7d604.js
 52487 Jan 24 21:42 dist/polyfills-es2015.b374ef3555a700a97add.js
146193 Jan 24 21:43 dist/polyfills-es5.c7dc569e6c646e42fade.js
  2987 Jan 24 21:42 dist/runtime-es2015.b7e0148b707ec640c171.js
  2981 Jan 24 21:42 dist/runtime-es5.b7e0148b707ec640c171.js
2020-01-24 21:46:31 -08:00
Miško Hevery 9bd9590767 refactor(ivy): change styling to use programmatic API on updates (#34804)
Previously we would write to class/style as strings `element.className` and `element.style.cssText`. Turns out that approach is good for initial render but not good for updates. Updates using this approach are problematic because we have to check to see if there was an out of bound write to style and than perform reconciliation. This also requires the browser to bring up CSS parser which is expensive.

Another problem with old approach is that we had to queue the DOM writes and flush them twice. Once on element advance instruction and once in `hostBindings`. The double flushing is expensive but it also means that a directive can observe that styles are not yet written (they are written after directive executes.)

The new approach uses `element.classList.add/remove` and `element.style.setProperty/removeProperty` API for updates only (it continues to use `element.className` and `element.style.cssText` for initial render as it is cheaper.) The other change is that the styling changes are applied immediately (no queueing). This means that it is the instruction which computes priority. In some circumstances it may result in intermediate writes which are than overwritten with new value. (This should be rare)

Overall this change deletes most of the previous code and replaces it with new simplified implement. The simplification results in code savings.

PR Close #34804
2020-01-24 12:23:19 -08:00
Miško Hevery 5aabe93abe refactor(ivy): Switch styling to new reconcile algorithm (#34616)
NOTE: This change must be reverted with previous deletes so that it code remains in build-able state.

This change deletes old styling code and replaces it with a simplified styling algorithm.

The mental model for the new algorithm is:
- Create a linked list of styling bindings in the order of priority. All styling bindings ere executed in compiled order and than a linked list of bindings is created in priority order.
- Flush the style bindings at the end of `advance()` instruction. This implies that there are two flush events. One at the end of template `advance` instruction in the template. Second one at the end of `hostBindings` `advance` instruction when processing host bindings (if any).
- Each binding instructions effectively updates the string to represent the string at that location. Because most of the bindings are additive, this is a cheap strategy in most cases. In rare cases the strategy requires removing tokens from the styling up to this point. (We expect that to be rare case)S Because, the bindings are presorted in the order of priority, it is safe to resume the processing of the concatenated string from the last change binding.

PR Close #34616
2020-01-24 12:23:00 -08:00
Miško Hevery 2961bf06c6 refactor(ivy): move `hostVars`/`hostAttrs` from instruction to `DirectiveDef` (#34683)
This change moves information from instructions to declarative position:
- `ɵɵallocHostVars(vars)` => `DirectiveDef.hostVars`
- `ɵɵelementHostAttrs(attrs)` => `DirectiveDef.hostAttrs`

When merging directives it is necessary to know about `hostVars` and `hostAttrs`. Before this change the information was stored in the `hostBindings` function. This was problematic, because in order to get to the information the `hostBindings` would have to be executed. In order for `hostBindings` to be executed the directives would have to be instantiated. This means that the directive instantiation would happen before we had knowledge about the `hostAttrs` and as a result the directive could observe in the constructor that not all of the `hostAttrs` have been applied. This further complicates the runtime as we have to apply `hostAttrs` in parts over many invocations.

`ɵɵallocHostVars` was unnecessarily complicated because it would have to update the `LView` (and Blueprint) while existing directives are already executing. By moving it out of `hostBindings` function we can access it statically and we can create correct `LView` (and Blueprint) in a single pass.

This change only changes how the instructions are generated, but does not change the runtime much. (We cheat by emulating the old behavior by calling `ɵɵallocHostVars` and `ɵɵelementHostAttrs`) Subsequent change will refactor the runtime to take advantage of the static information.

PR Close #34683
2020-01-24 12:22:10 -08:00
Alex Rickabaugh 0c8d085666 fix(ivy): use any for generic context checks when !strictTemplates (#34649)
Previously, the template type-checker would always construct a generic
template context type with correct bounds, even when strictTemplates was
disabled. This meant that type-checking of expressions involving that type
was stricter than View Engine.

This commit introduces a 'strictContextGenerics' flag which behaves
similarly to other 'strictTemplates' flags, and switches the inference of
generic type parameters on the component context based on the value of this
flag.

PR Close #34649
2020-01-23 10:31:48 -08:00
Andrew Kushnir 92c411f86d docs: update payload size limits for angular.io application (#34913)
This commit increases payload size limits for angular.io application that triggered an error after merging another commit (00f13cc074). The goal of this commit is to bring master back to a "green" state and separate investigation is required to identify the root cause for size increase.

PR Close #34913
2020-01-22 15:01:01 -08:00
Aravind 1be5b69174 docs: fix typo on router guide (#34911)
closes #34907
PR Close #34911
2020-01-22 14:32:56 -08:00
Sonu Kapoor f49b45832c build(docs-infra): always specify a landing file for StackBlitz projects (#34553)
The StackBlitz API (which we use to generate StackBlitz projects on the
fly, when a user clicks on a live example link in the docs) allows
specifying the file to open in the editor by passing a query param. If
no file is specified, StackBlitz opens a default one. In the past, it
used to be `main.ts` and nowadays it seems to be `app.component.ts`.

StackBlitz builder, the tool that we use to generate the StackBlitz
projects, allows specifying the primary file by setting the `file`
property in the corresponding `stackblitz.json`.

Previously, if the `file` property was not set, StackBlitz builder would
not specify a file, thus falling back on StackBlitz's default behavior.
This was not great, because the default behavior may change unexpectedly
is the future to something that is less useful for our users.

This commit change StackBlitz builder to always specify a primary file.
If no file is specified in `stackblitz.json`, the builder will look
for the first file that exists in the example from a list of predefined
files.

Partially addresses #22357.

PR Close #34553
2020-01-22 13:45:23 -08:00
Sonu Kapoor 77c53559d0 build(docs-infra): specify more relevant landing files for StackBlitz projects (#34553)
The StackBlitz API (which we use to generate StackBlitz projects on the
fly, when a user clicks on a live example link in the docs) allows
specifying the file to open in the editor by passing a query param. If
no file is specified, StackBlitz opens a default one.

This commit specifies relevant landing files for some of the examples to
make it easier to engage with the examples more quickly, and to see what
the example is attempting to demonstrate.

Fixes #22357.

PR Close #34553
2020-01-22 13:45:23 -08:00
Judy Bogart 13ce3756c2 docs: add differential loading term to glossary (#34884)
PR Close #34884
2020-01-22 13:37:35 -08:00
ajitsinghkaler 61ad50d40a docs: add message on click of hero in toh-4 (#34496)
First we used a messages array to display messages toh-4 but it dsplayed only one message added additional messages on click of a hero

Fixes #28739

PR Close #34496
2020-01-22 14:42:55 -05:00
Sonu Kapoor e7cf37d99f docs: clarify where the `async` utility function is coming from (#34876)
inside the `beforeEach` for out testing guide.

Fixes #34833

PR Close #34876
2020-01-22 14:40:17 -05:00
George Kalpakas 2954a14c3d ci(docs-infra): do not output build progress for e2e tests on CI (#34840)
When running the e2e tests on CI, it is desirable that the build
progress is not logged, because that clutters the logs and makes it
difficult to get to the useful info in case of failures.

The previous config to achieve that doesn't work any more.

This commit update the `ci` configuration for e2e tests to suppress
build progress logging.

PR Close #34840
2020-01-22 14:37:32 -05:00
Kapunahele Wong a3b2d6735a build(docs-infra): add auto-link-filter for generic words (#34835)
Fixes #34794

PR Close #34835
2020-01-21 15:08:01 -05:00
Sonu Kapoor def4127bf1 fix(docs-infra): convert hard-coded `comparing-observables` examples into a proper mini-app (#34327)
Previously, the examples in the `comparing-observables` guide were hard-coded.
This made it impossible to test them and verify they are correct.

This commit fixes this by converting them into a proper mini-app. In a
subsequent commit, tests will be added to verify that the source code
works as expected (and guard against regressions).

Fixes #31024

PR Close #34327
2020-01-21 13:14:46 -05:00
Sonu Kapoor 15ae924035 fix(docs-infra): convert hard-coded `cli-builder` examples into a proper mini-app (#34362)
Previously, the examples in the `cli-builder` guide were hard-coded.
This made it impossible to test them and verify they are correct.

This commit fixes this by converting them into a proper mini-app. In a
subsequent commit, tests will be added to verify that the source code
works as expected (and guard against regressions).

Fixes #34314

PR Close #34362
2020-01-21 13:12:18 -05:00