Commit Graph

3564 Commits

Author SHA1 Message Date
Sonu Kapoor 22d80a6780 refactor(docs-infra): refactors `createOverviewDump` (#37141)
This commit removes the dependency on the `lodash` module and refactors
the `createOverviewDump` method.

PR Close #37141
2020-05-18 10:31:06 -07:00
George Kalpakas 593e07bd21 build(docs-infra): upgrade cli command docs sources to dbde51375 (#37154)
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](15edb0231...dbde51375):

**Modified**
- help/e2e.json

PR Close #37154
2020-05-18 10:28:44 -07:00
Sonu Kapoor 89995075e6 refactor(docs-infra): refactors `extractDecoratedClasses` (#37135)
This commit removes the dependency on the `lodash` module and refactors
the `extractDecoratedClasses` method.

PR Close #37135
2020-05-18 10:25:30 -07:00
thefliik c2fa65640c docs: supply correct manifest.webmanifest filename (#37146)
Previously, the docs incorrectly identified the generated manifest file as "manifest.json" when it is actually "manifest.webmanifest".
PR Close #37146
2020-05-18 10:24:54 -07:00
George Kalpakas 2d065a32ec docs(docs-infra): improve docs on creating/updating the preview server Docker image (#37015)
This commit includes the following improvements:

- Document that the `create-image.sh` script (and by extention the
  `update-preview-server.sh` script) need to have access to a `yarn`
  executable.

- Add a note on cron jobs running in non-interactive, non-login shells
  (which affects their execution context and have different behavior vs
  running the same commands in an interactive, login shell).

- Change the Node.js and `yarn` installation instructions to ensure the
  `yarn` executable will be available on the `PATH` and not require an
  interactive, login shell (as happens, for example, when installing it
  via [nvm](https://github.com/nvm-sh/nvm)). This makes it easier to set
  up a cron job that runs the `update-preview-server.sh` script.

NOTE: The equivalent updates have been made on the GCE VM that hosts the
      PR preview server.

PR Close #37015
2020-05-18 10:24:20 -07:00
George Kalpakas fcb68cc139 fix(docs-infra): better detect failed attempts to update the preview server Docker container (#37015)
In order to avoid unnecessary operations, the `update-preview-server.sh`
script, that is used to update the PR preview server Docker container,
will only try to update the Docker container if either any files in the
`aio/aio-builds-setup/` directory have changed since the last update or
if a previous update failed. A failed previous update is detected by
checking whether the temporary `aio-builds:provisional` Docker image
still exists. This temporary image is created during the update
operation and is renamed to `aio-builds:latest` if the update goes well.

Previously, the update script was not able to detect a previous failed
attempt if the operation failed before creating the
`aio-builds:provisional` Docker image, such as if the `create-image.sh`
script failed. This could lead to a situation where the preview server
Docker container would not be updated after a failed attempt.

This commit improves the logic for detecting failed attempts to account
for this type of failures. It does this by not removing an older
`aio-builds:provisional` Docker image until a new one is successfully
created.

NOTE: While this is not full-proof, it is an improvement as it
      eliminates a certain kind of failures.

PR Close #37015
2020-05-18 10:24:20 -07:00
Ajit Singh 01d1c1a9ab docs: grammatical error in ngcc (#37156)
The glossary.md file had a gramatical mistake. Added a that in ngcc definition to make the grammatical mistake right

PR Close #37156
2020-05-18 10:23:51 -07:00
Alan Agius 1689f9378b test: fix AIO doc-viewer.component tests (#37129)
Some tests currently fail with a TS error
```
TS2783: 'id' is specified more than once, so this usage will be overwritten.
```

This changes fixes that.

PR Close #37129
2020-05-18 09:13:38 -07:00
Alan Agius 011fdfa94f build: improve types of `animateProp` (#37129)
Some properties in the DOM lib interface `CSSStyleDeclaration` are not assignable such as `getPropertyPriority` and `getPropertyValue`. With this change we filter out properties which type is not `string` to fix the below error;

```ts
ERROR in src/app/layout/doc-viewer/doc-viewer.component.ts:202:43 - error TS2322: Type 'string' is not assignable to type 'string & ((property: string) => string) & ((property: string) => string) & ((index: number) => string) & ((property: string) => string) & ((property: string, value: string | null, priority?: string | undefined) => void)'.
  Type 'string' is not assignable to type '(property: string) => string'.

202               ? this.void$.pipe(tap(() => elem.style[prop] = to))
                                              ~~~~~~~~~~~~~~~~
```

PR Close #37129
2020-05-18 09:13:38 -07:00
Sonu Kapoor 03afa36334 refactor(docs-infra): refactors `checkUnbalancedBackTicks` (#37065)
This commit removes the dependency on the `lodash` module and refactors
the `checkUnbalancedBackTicks` method.

PR Close #37065
2020-05-15 10:13:19 -07:00
crisbeto 05f1df3224 build: remove skipLibCheck from AIO examples (#37128)
`skipLibCheck` had to be added to a few AIO examples, because of a breaking change in master. These changes update to a newer version of `angular-in-memory-web-api` that accounts for the breaking change.

PR Close #37128
2020-05-15 10:05:26 -07:00
Pete Bacon Darwin 901db0e730 build(docs-infra): remove `{@searchKeywords}` from content when rendering (#37132)
Previously this inline-tag-def was returning the `doc` which is rendered
to the output as `[Object Object]` - obviously not what is intended.

Now it returns `''` which effectively strips the tag handler from the
rendered output.

PR Close #37132
2020-05-15 10:04:45 -07:00
Kapunahele Wong 2c5e873da0 docs: move lazy loading and preloading tasks from router to lazy loading doc (#36748)
After rewriting much of the router doc, it became apparent that the lazy loading/preloading information should be in the lazy loading doc rather than in the router doc. There is now instead a short section that touches on lazy loading but links to the lazy learning document instead of covering it in detail in the router doc.

PR Close #36748
2020-05-15 10:01:52 -07:00
Andrew Scott 8a56c99f87 docs(router): Update router guide to use UrlTree for guard redirects (#37100)
The current implementation for redirecting users inside guards was in place
before the feature was added to allow `CanActivate` and `CanActivateChild` guards
to return `UrlTree` for redirecting users.

Returning `UrlTree` should be the default method, as it provides a more desirable
redirecting experience. When using `router.navigate` followed by `return false`,
the `Router` calls `resetUrlToCurrentUrlTree` (in the `finalize` operator) before
processing the navigation to the new route.  This can result in an undesirable
history if the navigation was the first navigation in the application - that is,
the route will briefly be reset to just `/` (see #36187).

Fixes #36187

PR Close #37100
2020-05-14 12:23:35 -07:00
Sonu Kapoor 5f64e52ed4 docs: clarifies the service limitation (#36349)
Closes #36332

PR Close #36349
2020-05-14 11:59:44 -07:00
cexbrayat b2a3325258 docs: remove the note about @angular/http from the deprecations guide (#37070)
This was originally pushed by @igorminar in #36944, but later reverted in #35621
This commit reintroduces the original changes, and remove the `@angular/http` secion from the deprecations guide.

PR Close #37070
2020-05-14 11:01:18 -07:00
Pete Bacon Darwin f16ca1ce46 build(docs-infra): correctly handle "pseudo" classes (#36989)
In the code base there are cases where there is, conceptually, a class
that is represented by a combination of an `interface`
(type declaration) and a `const` (value declaration).

For example:

```
export interface SomeClass {
  count(a?: string): number;
}
export const: SomeClass = class {
  someMethod(a: string = ''): number { ... }
};
```

These were being rendered as interfaces and also not
correctly showing the descriptions and default parameter
values.

In this commit such concepts are now rendered as classes.
The classes that are affected by this are:

* `DebugElement`
* `DebugNode`
* `Type`
* `EventEmitter`
* `TestBed`

Note that while decorators are also defined in this form
they have their own rendering type (`decorator`) and so
are not affecte by this.

PR Close #36989
2020-05-14 10:50:30 -07:00
Sonu Kapoor 2418c6aca1 refactor(docs-infra): refactors `addImageDimensionsImpl` (#37046)
This commit changes the `addImageDimensionsImpl` method to reduce
nesting. It will exit early, if the conditions are not matched.

PR Close #37046
2020-05-14 10:48:01 -07:00
Paul Gschwendtner 57a868627f test(docs-infra): re-enable upgrade-phonecat-2-hybrid example e2e tests (#36969)
We recently disabled the e2e tests for `upgrade-phonecat-2-hybdrid`
because the switch to APF 10 caused it to fail with an uglify
error. More details in a dedicated issue here:

https://github.com/angular/angular/issues/36957.

We can re-enable the test by switching to Terser that properly
handles ES2015 syntax. Previously the rollup bundle consisted
only of ES5 output as the Angular framework packages provided
ES5 output. With APF 10, there is no ES5 output except for the
non-optimizable UMD format.

Hence we either need to downlevel code to ES5, or use Terser
that supports ES2015 syntax.

Closes #36957.

PR Close #36969
2020-05-13 16:02:29 -07:00
Judy Bogart 2cacab92e6 docs: correct typos in doc for template type guards (#37090)
correct some small typos in new feature recommendation in stuctural-directives.md and reference from aot-compiler.md

PR Close #37090
2020-05-13 16:01:20 -07:00
Kara Erickson 0520ecb7d0 docs: add Cindy to contributors (#37076)
Cindy has been working with us for a while now
and should be listed on AIO as a part of our team.
This commit adds her image / bio to the Angular
contributors page.

PR Close #37076
2020-05-13 16:01:00 -07:00
Sonu Kapoor ce39755937 docs: Remove duplicate `and` (#37067)
This commit removes the duplicate `and` found in the
`Support for the development cycle` section part of the
getting started guide.

Fixes #37060

PR Close #37067
2020-05-13 15:59:41 -07:00
Sonu Kapoor 352b9c78e0 docs: replaces on with of (#36773)
Closes #36770
PR Close #36773
2020-05-13 15:52:08 -07:00
Sonu Kapoor 019835c721 docs: minor typos (#36772)
Closes #36771
PR Close #36772
2020-05-13 15:51:47 -07:00
Judy Bogart 255c2b2ff0 docs: refactor lifecycle hooks doc topic for task orientation (#36353)
rework lifecycle-hooks.md to meet current documentation standards and conventions
add "content projection" to glossary

PR Close #36353
2020-05-13 15:51:21 -07:00
Sonu Kapoor 2cddeabce0 docs: fixes `ngOnit` routing variable (#36905)
This commit fixes the routing variable in the `ngOnit` life-cyle event from
`activatedRoute` to `route`.

Closes #36885

PR Close #36905
2020-05-12 14:40:24 -07:00
Judy Bogart 7addc9f1a9 docs: add doc for template type guards to stuctural-directives.md (#34549)
add new feature recommendation to existing content
include references from aot-compiler.md and template-typecheck.md

PR Close #34549
2020-05-12 14:40:01 -07:00
Michiel Kikkert 8d8e419664 fix(core): correct "development mode" console message (#36571)
The message can be improved by removing the unneeded ‘the’ (x2).

Before:
Angular is running in the development mode. Call enableProdMode() to enable the production mode.

After:
Angular is running in development mode. Call enableProdMode() to enable production mode.

Closes #36570

PR Close #36571
2020-05-12 10:50:12 -07:00
Judy Bogart 1e208e8c87 docs: refactor dynamic forms topic as tutorial (#36465)
rework content to meet current documentation standards and conventions, structure as tutorial document

PR Close #36465
2020-05-12 10:49:23 -07:00
Judy Bogart 7eb1a58b26 docs: refactor form validation doc to be task-oriented (#36374)
rework content to meet current documentation standards and conventions, structure as task-oriented document

PR Close #36374
2020-05-11 10:59:50 -07:00
Ajit Singh ed1b4a8f19 docs: add migration guides to sidenav in updating to Version 9 (#34979)
All migration guides did not have a direct link to access them so added them to the side nav in the section updating to version 9 for direct access, it also helps to add right side nav to these migration guides

Fixes #33582

PR Close #34979
2020-05-08 14:45:17 -07:00
ajitsinghkaler bd30c37040 fix(docs-infra): add visual signal for external links (#36601)
Clicking on a link may take us to an extenal source, which may lead to user leaving angular.io unintentionally.

Added visual cues on external links so that user knows which links are external and which are intenal to angular.io.

Fixes #17620

PR Close #36601
2020-05-08 14:43:19 -07:00
Alan Agius eca2246fbc docs: add FireFox ESR to the supported list (#36973)
With this change we add FireFox Extended Support Release (ESR) to the list of supported browsers. The ESR latest version is used mainly in corporate environments (intranet applications, etc.) due to its support and stability guarantees.

PR Close #36973
2020-05-08 14:41:26 -07:00
George Kalpakas df71c7c617 build(docs-infra): upgrade cli command docs sources to 15edb0231 (#37005)
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](b7d7ee9bd...15edb0231):

**Modified**
- help/generate.json
- help/new.json

**Removed**
- help/get.json
- help/set.json

##
Relevant changes in [commit range](440275c34...15edb0231) since PR #36981:

**Removed**
- help/get.json
- help/set.json

##
Closes #36950
Closes #36981

PR Close #37005
2020-05-08 14:40:50 -07:00
Ajit Singh 39e066add1 refactor(docs-infra): change class to interface where class properties not used (#36958)
In resource.model.ts the interfaces of the resources were defined as classes, these do not use any class properties and are only used for type checking. So, changed them from class to interface.

PR Close #36958
2020-05-08 09:41:56 -07:00
David Shevitz 🔵 178e750f16 docs: Fix typo in navigation.json (#36955)
While creating the new tutorial section, I hit o instead of i when
typing the word 'tooltip.' This is understandable, as they are right
next to each other on the keyboard. I might move to the Dvorak
keyboard layout to avoid such errors in the future.

PR Close #36955
2020-05-08 09:41:23 -07:00
Sonu Kapoor fdd61152c5 docs: replace into with in (#36778)
Closes #36775
PR Close #36778
2020-05-08 09:39:26 -07:00
Santosh Yadav 7cc332efe6 docs: update aot compiler docs (#35487)
change to aot docs to include changes after angular 9
aot is true for new applications created, also it will
be updated to aot true once app is updated using ng update

PR Close #35487
2020-05-08 09:38:55 -07:00
Paul Gschwendtner 854bd7d0c8 build(docs-infra): do not require abstract directives to declare a @ngModule (#36921)
Abstract directives cannot be part of a `@NgModule`, but the AIO dgeni
setup currently enforces this. This commit updates the logic so that
abstract directives are skipped.

PR Close #36921
2020-05-06 15:06:10 -07:00
Paul Gschwendtner e17fe90aaa refactor: fix undecorated classes with angular features in repo (#36921)
A few instances of undecorated classes with Angular features
have been discovered in the framework repo. This commit fixes
those.

PR Close #36921
2020-05-06 15:06:10 -07:00
Kara Erickson 20cc3ab37e refactor(core): make generic mandatory for ModuleWithProviders (#36892)
In v9, we deprecated the use of ModuleWithProviders
without a generic. In v10, we will be requiring the
generic when using ModuleWithProviders. You can read
more about the reasoning behind this change in the
migration guide:
http://v9.angular.io/guide/migration-module-with-providers

PR Close #36892
2020-05-06 15:01:34 -07:00
Matias Niemelä 420b9be1c1 refactor: disable sanitization for [style] and [style.prop] bindings (#35621)
This patch is the first of many commits to disable sanitization for
[stlye.prop] and [style] bindings in Angular.

Historically, style-based sanitization has only been required for old
IE browsers (IE6 and IE7). Since Angular does not support these old
browsers at all, there is no reason for the framework to support
style-based sanitization.

PR Close #35621
2020-05-06 15:00:22 -07:00
Igor Minar 3c6c00d1d4 docs: remove the note about @angular/http from the deprecations guide (#36944)
We stopped publishing @angular/http to npm a while back (v7?), so from the perspective of our
customer @angular/http has been removed a long time ago and mentioninig it now that we actually
removed the code from our repo is just confusing.

PR Close #36944
2020-05-06 13:54:27 -07:00
Igor Minar 6fa36e387f test(docs-infra): temporarily disable the 'upgrade-phonecat-2-hybrid' docs example test (#36944)
This is due to issue described in: https://github.com/angular/angular/issues/36957

This commit works around the problem rather than trying to solve it in order to unblock the big APF v10 change.

PR Close #36944
2020-05-06 13:54:27 -07:00
Igor Minar 9dbb30f884 feat(bazel): simplify ng_package by dropping esm5 and fesm5 (#36944)
esm5 and fesm5 are no longer needed and have been deprecated in the past.

https://v9.angular.io/guide/deprecations#esm5-and-fesm5-code-formats-in-angular-npm-packages

This commit modifies ng_package to no longer distribute these two formats in npm packages
built by ng_package (e.g. @angular/core).

This commit intentionally doesn't fully clean up the ng_package rule to remove all traces of esm5 and fems5
build artifacts as that is a bigger cleanup and currently we are narrowing down the scope of this change
to the MVP needed for v10, which in this case is 'do not put esm5 and fesm5' into the npm packages.

More cleanup to follow: https://angular-team.atlassian.net/browse/FW-2143

BREAKING CHANGE: esm5 and fesm5 format is no longer distributed in
Angular's npm packages e.g. @angular/core

If you are not using Angular CLI to build your application or library,
and you need to be able to build es5 artifacts, then you will need to
downlevel the distributed Angular code to es5 on your own.

Angular CLI will automatically downlevel the code to es5 if differential
loading is enabled in the Angular project, so no action is required from
Angular CLI users.

PR Close #36944
2020-05-06 13:54:26 -07:00
Misko Hevery c9e0db55f7 refactor(core): deprecate `WrappedValue` (#36819)
The purpose of the `WrappedValue` is to allow same object instance to be treated as different for the purposes of change detection. It is currently used with `async` pipe and only with `Observables`. The use case which it covers is if the `Observable` produces the same instance of the value but it is desirable to still try to mark it as changed for the purposes of change detection.

We believe tha the above use case is too rare to warrant special handling in the framework. (Having special handling causes application slowdown for the users and mental load for the developers.) No replacement is planned for this deprecation.

PR Close #36819
2020-05-06 11:49:57 -07:00
George Kalpakas 1b8752e595 refactor(docs-infra): take advantage of latest Jasmine features in preview server tests (#36837)
This commit updates the preview server tests to take advantage of
features supported in the latest version of Jasmine that were not
supported when the rests were first written.

Changes include:

- Use [async/await] in tests.
- Use the new [toBeInstanceOf()] and [toHaveBeenCalledBefore()] matchers.
- Use the new [toBeResolved()] and [toBeRejected()] async matchers (and
  their variants).
- Use the new [withArgs()] method of `Spy` to simplify "trained"
  responses.
- Use the new [resolveTo()]/[rejectWith()] methods of `SpyStrategy` (and
  their variants) to simplify promise-based spies.
- Implement custom async matchers (via [addAsyncMatchers()]) to simplify
  certain tests.

[addAsyncMatchers()]: https://jasmine.github.io/api/3.5/jasmine.html#.addAsyncMatchers
[async/await]: https://jasmine.github.io/tutorials/async
[rejectWith()]: https://jasmine.github.io/api/3.5/SpyStrategy.html#rejectWith
[resolveTo()]: https://jasmine.github.io/api/3.5/SpyStrategy.html#resolveTo
[toBeInstanceOf()]: https://jasmine.github.io/api/3.5/matchers.html#toBeInstanceOf
[toBeRejected()]: https://jasmine.github.io/api/3.5/async-matchers.html#toBeRejected
[toBeResolved()]: https://jasmine.github.io/api/3.5/async-matchers.html#toBeResolved
[toHaveBeenCalledBefore()]: https://jasmine.github.io/api/3.5/matchers.html#toHaveBeenCalledBefore
[withArgs()]: https://jasmine.github.io/api/3.5/Spy.html#withArgs

PR Close #36837
2020-05-05 17:46:46 -07:00
George Kalpakas b3cf5b246f test(docs-infra): enable accidentally disabled preview server tests (#36837)
Previously, some preview server tests were only running for public
builds. In the past, these tests were run for both public and non-public
builds. The non-public builds tests were disabled in #23576, probably
during debugging some failure.

This commit fixes it by ensuring the tests are run for both public and
non-public builds.

PR Close #36837
2020-05-05 17:46:46 -07:00
George Kalpakas 0a695e181e test(docs-infra): remove incorrect preview server test (#36837)
The test was introduced in #23576, but the behavior the test was
verifying does not match the actual behavior of
`BuildCleaner#getOpenPrNumbers()`.

The reason that the test did not fail is that the verification happened
asynchronously, but the test completed synchronously (by accident).

PR Close #36837
2020-05-05 17:46:46 -07:00
George Kalpakas a5d1d1161b fix(docs-infra): exit with an error when cleaning up the preview server fails (#36837)
Previously, when the preview server `build-cleanup` script failed, the
error was logged but not reflected to the commands exit code. This seems
to have been accidentally broken in #23576.

This commit fixes it by ensuring the error is re-thrown from the
`BuildCleaner#cleanUp()` method to allow the process to exit with an
error exit code.

PR Close #36837
2020-05-05 17:46:46 -07:00