Commit Graph

5817 Commits

Author SHA1 Message Date
Alex Rickabaugh da58801f95 feat(router): auto-unwrap default exports when lazy loading (#47586)
When using `loadChildren` or `loadComponent`, a common pattern is to pass
a function that returns a `Promise` from a dynamic import:

```typescript
{
  path: 'lazy',
  loadComponent: () => import('./lazy-file').then(m => m.LazyCmp),
}
```

The `.then` part of the expression selects the particular exported
component symbol from the dynamically imported ES module.

ES modules can have a "default export", created with the `export default`
modifier:

```typescript
@Component({...})
export default class LazyCmp { ... }
```

This default export is made available to dynamic imports under the well-
known key of `'default'`, per the ES module spec:
https://tc39.es/ecma262/#table-export-forms-mapping-to-exportentry-records

This commit adds a feature to the router to automatically dereference such
default exports. With this logic, when `export default` is used, a `.then`
operation to select the particular exported symbol is no longer required:

```typescript
{
  path: 'lazy',
  loadComponent: () => import('./lazy-file'),
}
```

The above `loadComponent` operation will automatically use the `default`
export of the `lazy-file` ES module.

This functionality works for `loadChildren` as well.

PR Close #47586
2022-10-04 14:40:58 -07:00
Alex Rickabaugh e3cef4a784 docs(core): deprecate providedIn: NgModule and providedIn: 'any' (#47616)
This commit deprecates the above two forms of `providedIn`.

DEPRECATED:

- The ability to pass an `NgModule` to the `providedIn` option for
`@Injectable` and `InjectionToken` is now deprecated.

`providedIn: NgModule` was intended to be a tree-shakable alternative to
NgModule providers. It does not have wide usage, and in most cases is used
incorrectly, in circumstances where `providedIn: 'root'` should be
preferred. If providers should truly be scoped to a specific NgModule, use
`NgModule.providers` instead.

- The ability to set `providedIn: 'any'` for an `@Injectable` or
`InjectionToken` is now deprecated.

`providedIn: 'any'` is an option with confusing semantics and is almost
never used apart from a handful of esoteric cases internal to the framework.

PR Close #47616
2022-10-04 11:52:38 -07:00
Jordan 7ab10a5031 docs: add Jordan Powell to GDE resources (#47598)
PR Close #47598
2022-10-04 11:52:04 -07:00
Dmytro Mezhenskyi 4ba2d3d6b6 docs: add missing link to canMatch guard (#47602)
PR Close #47602
2022-10-03 08:47:27 -07:00
George Kalpakas 382330cd6b build(docs-infra): upgrade cli command docs sources to 77c70052e (#47590)
Updating [angular#main](https://github.com/angular/angular/tree/main) from
[cli-builds#main](https://github.com/angular/cli-builds/tree/main).

##
Relevant changes in
[commit range](https://github.com/angular/cli-builds/compare/556a775f3...77c70052e):

**Modified**
- help/completion.json

PR Close #47590
2022-09-30 10:54:00 -07:00
Alexander Wiebe 89006b1025 fix(docs-infra): add punctuation to dr iq (#47525)
add punctuation to dr iq name to aid in clarity

Fixes #46011

PR Close #47525
2022-09-29 16:43:55 -07:00
Ciprian Sauliuc 752e2245f4 docs: add oxford commas and rephrase sentences (#47540)
PR Close #47540
2022-09-29 16:41:32 -07:00
Angular Robot d90e76054f build: update cross-repo angular dependencies (#47454)
See associated pull request for more information.

PR Close #47454
2022-09-29 15:51:08 -07:00
George Kalpakas c39a3a1539 build(docs-infra): upgrade cli command docs sources to 556a775f3 (#47554)
Updating [angular#main](https://github.com/angular/angular/tree/main) from
[cli-builds#main](https://github.com/angular/cli-builds/tree/main).

##
Relevant changes in
[commit range](https://github.com/angular/cli-builds/compare/4a6e62d46...556a775f3):

**Modified**
- help/build.json
- help/test.json

PR Close #47554
2022-09-29 10:53:50 -07:00
Joe Martin (Crowdstaffing) 7809e3a405 docs: Add topics for lifecycle directory (#47392)
Add empty topics to lifecycle directory.

PR Close #47392
2022-09-29 10:51:00 -07:00
Joe Martin (Crowdstaffing) ee0c7161dd docs: add new files (#47391)
Add new files for component content.

PR Close #47391
2022-09-29 10:50:14 -07:00
mgechev d8f1f63860 docs: temporarily hide banner to improve survey visibility (#47564)
PR Close #47564
2022-09-29 10:49:35 -07:00
Simona Cotin 551c641a64 docs: update broken link (#47532)
PR Close #47532
2022-09-27 10:18:00 -07:00
Alan Agius a4167c8854 docs: update what what the CLI collects in analytics (#47529)
This commit adds more information on what is collected by the Angular CLI as with https://github.com/angular/angular-cli/pull/23718 we will collect additional information.

PR Close #47529
2022-09-27 10:17:35 -07:00
Andrew Kushnir 120555a626 feat(core): support object-based DI flags in TestBed.inject() (#46761)
This commit applies the changes similar to the ones performed for the `inject()` function in https://github.com/angular/angular/pull/46649/commits/df246bb2358794e3aad53870f1554d84bbe390b2.

The `TestBed.inject` function is updated to use previously added object-based API for options: now the flags argument supports passing an object which configures injection flags.

DEPRECATED:

The bit field signature of `TestBed.inject()` has been deprecated, in favor of the new options object.

PR Close #46761
2022-09-27 10:09:53 -07:00
Ashley Hunter f9e21d36bd docs: fixing standalone components sample code (#47542)
PR Close #47542
2022-09-26 09:56:57 -07:00
Rokas Brazdžionis 291a5b35bd docs: visualize keyboard shortcut for search (#47507)
PR Close #47507
2022-09-23 14:04:42 -07:00
Doug Parker ddef448cf3 docs: add v15 scheduled release dates (#47513)
These dates are week-specific to give some flexibility during the release process which frequently happens. I back-dated the most recent minors mainly to make sure we include them when we eventually update to v16 and beyond.

PR Close #47513
2022-09-23 14:00:04 -07:00
Angular Robot 8cef5dd7c1 build: update all non-major dependencies (#47487)
See associated pull request for more information.

PR Close #47487
2022-09-21 16:00:46 +02:00
famzila 150dd3092b docs: add fatima amzil to contributors (#47097)
PR Close #47097
2022-09-19 18:58:15 +02:00
Bob Watson 53db8ab246 docs: add standalone component intro video (#47359)
Fix: #47358

PR Close #47359
2022-09-19 17:19:09 +02:00
Bob Watson 58e3d79fe6 docs: add link to YouTube video of Typed Forms (#47361)
Fix: #47360

PR Close #47361
2022-09-19 17:12:34 +02:00
Angular Robot 247181f67d docs: update events (#47462)
Generated `events.json` with the latest events retrieved from the Firebase DB.

PR Close #47462
2022-09-19 17:08:06 +02:00
dario-piotrowicz a192c2de73 fix(docs-infra): apply text-top instead of top for table alignment (#47457)
use `text-top` instead of `top` for table cells verical alignment
so that the texts are correctly vertially aligned regardless on
the dom structure

resolves #47423

PR Close #47457
2022-09-19 13:14:09 +02:00
dario-piotrowicz 14cb9fb005 test(docs-infra): add mocks for missing mat-icons (#47469)
add mocks for missing mat-icons in order to reduce noise when running
aio tests

PR Close #47469
2022-09-19 13:12:21 +02:00
Mauro Mattos ad098d82a8 docs(docs-infra): add missing decorator in tutorial step (#47456)
PR Close #47456
2022-09-19 09:40:12 +02:00
Andrew Kushnir 7f637e1873 docs: move Image Directive guide link to the Feature Preview section (#47466)
This commit updates the location of the Image Directive guide link in the left navigation menu. Now the link is located under the Feature Preview section.

Also, this commit updates the Image Directive guides to add a highlighted message that the directive is in the developer preview mode.

PR Close #47466
2022-09-19 09:37:37 +02:00
dario-piotrowicz 5fb7ae20a2 fix(docs-infra): initialize events arrays in EventsComponent (#47458)
initialize the events fields of the EventsComponent so that
they are always defined

PR Close #47458
2022-09-16 11:14:56 +02:00
Angular Robot 8deedc58a6 build: update cross-repo angular dependencies (#47407)
See associated pull request for more information.

PR Close #47407
2022-09-15 09:21:20 -07:00
George Kalpakas 19f189fa41 docs(docs-infra): add documentation on debugging the events generation process (#47449)
PR Close #47449
2022-09-15 09:20:14 -07:00
Angular Robot ebc0135239 build: update all non-major dependencies (#47415)
See associated pull request for more information.

PR Close #47415
2022-09-13 09:19:51 -07:00
Benjamin Chanudet f0f809c561 docs: replace deprecated --outFile option for ng extract-i18n (#47397)
replace deprecated --outFile option for ng extract-i18n

The `--outFile` command option was last used in Angular v10 (back when it was still `ng xi18n`), yet there are still references to it in the documentation, alongside the up-to-date option `--out-file`. This commit replaces all mentions to the incorrect option with the correct writing.
PR Close #47397
2022-09-12 13:25:20 -07:00
Abhishek Rawat 0d4594a53e docs: fix angle brackets in details code block (#47400)
Angle brackets are not showing inside the markdown code block by writing like < >.
PR Close #47400
2022-09-12 13:24:56 -07:00
George Kalpakas c9241fdeb0 build(docs-infra): introduce new process for generating data for the events page (#45588)
This commit introduces a new process for generating data for the AIO
[events page](https://angular.io/events), which streamlines the process
and minimizes duplication and manual work. For more details, see
`aio/scripts/generate-events/README.md`.

PR Close #45588
2022-09-12 12:25:44 -07:00
abergquist 678c7f1841 docs: Removed unnecessary blank line (#47329)
PR Close #47329
2022-09-09 14:26:23 -07:00
Andrew Kushnir ca7bf65933 fix(common): rename rawSrc -> ngSrc in NgOptimizedImage directive (#47362)
As an ongoing effort to stabilize the NgOptimizedImage API before existing the Developer Preview, this commit renames the `rawSrc` attribute used for the NgOptimizedImage selector matching to `ngSrc`. The `rawSrcset` is also renamed to `ngSrcset` for consistency.

The motivation for this change is to align the attribute name better with other built-in directives, such as `ngFor`, `ngIf`, `ngClass`, `ngStyle`, etc.

Note: this is technically a breaking change, but since the NgOptimizedImage directive is in the Developer Preview mode, we land the change in a patch branch.

PR Close #47362
2022-09-09 14:25:37 -07:00
Ikko Ashimine 7e0de5b8be docs: fix typo in app.component.ts (#47384)
identifer -> identifier

PR Close #47384
2022-09-09 14:04:25 -07:00
Bob Watson c377f5713c docs: increase aio-preview size limit (#47395)
The current limit of ~24MB is now too small to allow preview builds.
This update increases the limit to 35MB.

PR Close #47395
2022-09-09 14:01:00 -07:00
vyom1611 bd66f49261 docs: updates es version based on issue #47335 (#47379)
- Updates the documentation for typescript-configuration.md by updating target version from 'es2017' to 'es2020'

PR Close #47379
2022-09-08 09:33:52 -07:00
Mariia Subkov 6dec750e4b docs: fix linter errors for accessibility page (#47327)
This addresses a part of the issue #47179.

PR Close #47327
2022-09-07 10:49:05 -07:00
Marc Wrobel eca3db5692 docs(docs-infra): fix minor typos in angular.io (#47295) (#47295)
PR Close #47295

PR Close #47295
2022-09-07 10:47:21 -07:00
Angular Robot bea953a5cf build: update dependency typescript to ~4.8.0 (#47293)
See associated pull request for more information.

PR Close #47293
2022-09-06 13:10:36 -07:00
Bob Watson 1edb8e5c45 docs: add new words to vocabulary (#47344)
docs: add VMWare to spell check dictionary
docs: add rebase, rebases, rebased to spell check dictionary
docs: add repos to spell check dictionary
docs: change repeated string regex

PR Close #47344
2022-09-06 11:33:14 -07:00
Joe Martin (Crowdstaffing) e810402ffc docs: Update markdown and formatting in image-directive topic. (#47259)
PR Close #47259
2022-09-06 11:30:50 -07:00
George Kalpakas a0c3326485 fix(service-worker): only consider GET requests as navigation requests (#47263)
Previously, the criteria for determining if a request was a
[navigation request][1] did not account for the request method. This
incorrectly identified HTML form submit POST requests as navigation
requests and served `index.html` instead of passing them through to the
server, thus breaking the form submission.

This commit fixes this by ensuring that only GET requests are considered
navigation requests.

> **Note**
> HTML forms with their method set to `GET` will still be affected by
> the issue. This is not a big concern, because using `GET` for form
> submission is quite uncommon and generally discouraged (due to
> limitations and security considerations).

[1]: https://angular.io/guide/service-worker-config#handling-navigation-requests

Fixes #36368

PR Close #47263
2022-09-06 10:02:10 -07:00
Angular Robot 4cafd08866 build: update all non-major dependencies (#47225)
See associated pull request for more information.

PR Close #47225
2022-09-06 09:53:29 -07:00
George Kalpakas dba71a1873 build(docs-infra): upgrade cli command docs sources to 4a6e62d46 (#47305)
Updating [angular#main](https://github.com/angular/angular/tree/main) from
[cli-builds#main](https://github.com/angular/cli-builds/tree/main).

##
Relevant changes in
[commit range](https://github.com/angular/cli-builds/compare/14d4d528c...4a6e62d46):

**Modified**
- help/generate.json

PR Close #47305
2022-09-06 09:51:15 -07:00
Sabareesh Kappagantu 94ea8700d7 docs: fix linting errors in component overview guide (#47352)
PR Close #47352
2022-09-06 09:41:12 -07:00
Sabareesh Kappagantu 385471d0c0 docs: add substitution entry for camel case (#47351)
PR Close #47351
2022-09-06 09:40:39 -07:00
Sabareesh Kappagantu 81e41717a3 docs: fix linting errors in class binding guide (#47351)
PR Close #47351
2022-09-06 09:40:39 -07:00