31975 Commits

Author SHA1 Message Date
Angular Robot df474f3900 build: update babel dependencies (#59127)
See associated pull request for more information.

PR Close #59127
2024-12-12 14:58:34 -08:00
Angular Robot 019fc59309 build: update dependency https-proxy-agent to v7.0.6 (#59125)
See associated pull request for more information.

PR Close #59125
2024-12-12 14:57:14 -08:00
Jessica Janiuk cf89f14766 fix(core): Fix nested timer serialization (#59173)
There were type mismatches and or unintended any types that were preventing nested timers from accessing the delay value during hydration annotation processing.

PR Close #59173
2024-12-12 14:55:28 -08:00
Alan Agius 1f1fff3a4f perf(docs-infra): improve app firebase configuration (#59170)
- Remove trailing slash redirect (e.g., /overview no longer redirects to /overview/).
- Update static file matching: Resolves an issue where hashed files were being cached for up to 1 hour.

PR Close #59170
2024-12-12 14:54:50 -08:00
Jessica Janiuk 6fa8622851 refactor(core): replace regexp in incremental hydration (#59158)
This swaps the regular expression for a string split instead.

PR Close #59158
2024-12-12 14:53:59 -08:00
Kristiyan Kostadinov c9b8319774 refactor(core): allow tracing service to wrap event listeners (#59134)
Allows the tracing service to wrap event listeners bound by the framework.

PR Close #59134
2024-12-12 14:52:42 -08:00
Jamie Rees cb685d8571 refactor(common): update the NgOptimizedImage message to use @if instead of *ngIf (#59131)
This commit updates an error message to mention `@if` rather than the `*ngIf` directive.
PR Close #59131
2024-12-12 14:51:43 -08:00
Jessica Janiuk d8f08f44c1 refactor(core): incremental hydration TODO cleanup (#59032)
This adds a few helper functions and ensures we call complete fns when error state is rendered. It also eliminates serialized views from being copied.

PR Close #59032
2024-12-12 14:48:24 -08:00
kirjs 300b141cc8 fix(platform-server): Warn user when transfer state happens more than once (#58935)
This can happen if server providers are provided more than twice. We detect it on the state transfer phase by flagging app id as transferred in a set.

Resolves #58531

PR Close #58935
2024-12-12 14:47:28 -08:00
Enea Jahollari 5088b37db3 refactor(docs-infra): improve API reference page loading time and drop blocking time (#58911)
By scheduling the focus of the input, we can drop the blocking time that is caused by the blocking task of rendering.

PR Close #58911
2024-12-12 14:45:46 -08:00
Andrew Kushnir d6fdfb1f86 release: cut the v19.1.0-next.3 release 19.1.0-next.3 2024-12-12 14:42:23 -08:00
Alex Rickabaugh cfc1679714 docs: release notes for the v19.0.4 release (#59168)
PR Close #59168
2024-12-12 14:33:07 -08:00
Jessica Janiuk f3729cec87 ci: Update caretaker config for merge queue (#59095)
This updates the caretaker query for merge queue
to remove status: success, since skipped workflows
are considered failed by Github and omitted from
the query results.

PR Close #59095
2024-12-10 13:48:07 -08:00
AleksanderBodurri 33167d9989 refactor(core): implement experimental getSignalGraph debug API (#57074)
Creates a debug api that returns an arrays of nodes and edges that represents a signal graph in the context of a particular injector.

Starts by discovering the consumer nodes for each injector, and then traverses their dependencies to discover each producer.

PR Close #57074
2024-12-10 13:47:03 -08:00
Jens Kuehlers 47b4b3efe0 docs: add approximate v19.x and v20 release dates (#59130)
PR Close #59130
2024-12-10 13:46:17 -08:00
Angular Robot 29f1cc79fe build: update github/codeql-action action to v3.27.7 (#59126)
See associated pull request for more information.

PR Close #59126
2024-12-10 13:45:34 -08:00
Alan Agius 24e317cb15 refactor: replace ɵPendingTasks with ɵPendingTasksInternal (#59138)
This commits remove usage of the old export.

PR Close #59138
2024-12-10 13:45:07 -08:00
Rafael Camara 2d49c36871 docs: improve docs on NgModule providers (#59111)
PR Close #59111
2024-12-10 13:44:10 -08:00
Angular Robot 2beb374524 build: lock file maintenance (#59110)
See associated pull request for more information.

PR Close #59110
2024-12-10 13:43:27 -08:00
Matthieu Riegler a88b899f52 docs: fix mermaid DI diagram. (#59105)
We need to use `<br>` for linebreakes.

fixes #59104

PR Close #59105
2024-12-10 13:42:03 -08:00
Ahmad Shabeer K de9fb8aeb8 docs(docs-infra): removed confusing extra single quote (#59101)
PR Close #59101
2024-12-10 13:40:39 -08:00
Kristiyan Kostadinov 5b5418c893 refactor(docs-infra): fix build-time warnings (#59100)
Fixes a bunch of warnings around an upcoming Sass breaking change https://sass-lang.com/documentation/breaking-changes/mixed-decls/. Also fixes one unused standalone import.

PR Close #59100
2024-12-10 13:40:11 -08:00
Kristiyan Kostadinov d010e11b73 feat(core): add event listener options to renderer (#59092)
Updates the `Renderer2.listen` signature to accept event options, as well as all adjacent types to it.

PR Close #59092
2024-12-10 13:39:47 -08:00
Angular Robot 46f00f9518 build: update actions/cache digest to 1bd1e32 (#59077)
See associated pull request for more information.

PR Close #59077
2024-12-06 14:38:27 -08:00
arielbackenroth 30e676098d fix(core): Fix a bug where snapshotted functions are being run twice if they return a nullish/falsey value. (#59073)
Snapshots can return nullish values; don't run the snapshotted function if the snapshotted function returns a nullish/falsey value.

PR Close #59073
2024-12-05 16:16:49 -08:00
Kristiyan Kostadinov 0dee2681f7 fix(compiler-cli): consider pre-release versions when detecting feature support (#59061)
Fixes that the logic which checks whether a feature is supported didn't account for pre-releases.

Fixes https://github.com/angular/vscode-ng-language-service/issues/2123.

PR Close #59061
2024-12-05 16:15:12 -08:00
Kristiyan Kostadinov 1b9492edf8 fix(compiler-cli): error in unused standalone imports diagnostic (#59064)
Fixes a null pointer error in the unused standalone imports diagnostic. It was caused by an inconsistency in TypeScript's built-in types.

Fixes #58872.

PR Close #59064
2024-12-05 16:14:02 -08:00
Matthieu Riegler 0034ce5583 refactor(http): Don't log fetch warning in tests. (#59049)
Prior to this commit, we were logging the `NOT_USING_FETCH_BACKEND_IN_SSR` error when `provideHttpTestingClient` and `PLATFORM_ID` were provided.

fixes #59028

PR Close #59049
2024-12-05 16:12:55 -08:00
Charles Lyding 52be35118f fix(platform-browser): collect external component styles from server rendering (#59031)
SSR generated component styles used in development environments will add
external styles via link elements to the HTML. However, the runtime would
previously not collect these link elements for reuse with rendered components.
This would result in two copies of the link elements present in the DOM. In
isolation this is not problematic as it is only present in development mode.
Unfortunately, the Vite-based CSS HMR functionality used by the Angular CLI
only updates the first stylesheet it finds and leaves other instances of the
stylesheet in place. This behavior causes the styles to be left in an
inconsistent state. This could be considered a defect within Vite as it should
update all relevant styles to maintain consistency but ideally there should
not be two instances in the Angular SSR case. To avoid the Vite issue, the
runtime will now collect SSR generated external styles and reuse them.

PR Close #59031
2024-12-05 16:12:22 -08:00
Kristiyan Kostadinov 6fd8a20978 refactor(compiler-cli): move two-way binding fix behind flag (#59002)
Moves the fix for type checking the event side of two-way bindings behind a compiler flag so that we can roll it out in v20.

PR Close #59002
2024-12-05 16:11:02 -08:00
Kristiyan Kostadinov c5c20e9d86 fix(compiler-cli): check event side of two-way bindings (#59002)
In the past two-way bindings used to be interpreted as `foo = $event` at the parser level. In #54065 it was changed to preserve the actual expression, because it was problematic for supporting two-way binding to signals. This unintentionally ended up causing the TCB to two-way bindings to look something like `someOutput.subscribe($event => expr);` which does nothing. It largely hasn't been a problem, because the input side of two-way bindings was still being checked, except for the case where the input side of the two-way binding has a wider type than the output side.

These changes re-add type checking for the output side by generating the following TCB instead:

```
someOutput.subscribe($event => {
  var _t1 = unwrapSignalValue(this.someField);
  _t1 = $event;
});
```

PR Close #59002
2024-12-05 16:11:02 -08:00
Kristiyan Kostadinov 68c5e02548 refactor(compiler-cli): rename misleading function (#59002)
The `isSplitTwoWayBinding` function was a bit misleading, because it has side effects. Renames the function make it a bit more explicit.

PR Close #59002
2024-12-05 16:11:02 -08:00
Matthieu Riegler 2a7103ac48 docs: remove inline docs-code in table (#58992)
Having a code block yields the correct result.

Fixes #58989

PR Close #58992
2024-12-05 16:10:27 -08:00
Kristiyan Kostadinov 4559e125f0 refactor(compiler): generate debug location instruction (#58982)
Adds the logic that will generate the `ɵɵattachSourceLocations` instruction.

Fixes #42530.

PR Close #58982
2024-12-05 16:09:55 -08:00
Kristiyan Kostadinov 90896b858b refactor(core): add runtime logic for attaching source locations (#58982)
Adds the implementation of the `ɵɵattachSourceLocations` instruction that will add the `data-ng-source-location` attribute to nodes to indicate where they were defined.

PR Close #58982
2024-12-05 16:09:55 -08:00
Kristiyan Kostadinov c9b3bd8409 refactor(compiler): capture template path (#58982)
Captures the template path in the component's metadata so it can be used later on.

PR Close #58982
2024-12-05 16:09:55 -08:00
Kristiyan Kostadinov 00d5b0dfd3 refactor(compiler-cli): rework path normalization function (#58982)
Tweaks the `getProjectRelativePath` function so it's not as dependent on the TypeScript AST.

PR Close #58982
2024-12-05 16:09:55 -08:00
Matthieu Riegler f15ccb94b9 docs(docs-infra): enable tslint (#58961)
PR Close #58961
2024-12-05 16:03:35 -08:00
Sheik Althaf fe40143813 refactor(router): remove standalone true (#58950)
removed the standalone true from router package.

PR Close #58950
2024-12-05 16:02:37 -08:00
Matthieu Riegler f6bed7519e docs: fix formating for NG0913 (#58869)
fixes #58868

PR Close #58869
2024-12-05 16:01:55 -08:00
Alex Rickabaugh 4a0c6cd435 refactor(router): remove circular dep in router navigation code (#59083)
Use `import type` to break phantom circular imports for the router
navigation implementation.

PR Close #59083
2024-12-05 16:01:15 -08:00
Alex Rickabaugh e61a19957f refactor(router): remove circular dep in router model definitions (#59083)
Use `import type` to break phantom circular imports for router model
definitions.

PR Close #59083
2024-12-05 16:01:15 -08:00
Alex Rickabaugh ee53dc07de refactor(router): remove circular dep in RouterOutletContext (#59083)
Use `import type` to break phantom circular imports for
`RouterOutletContext`.

PR Close #59083
2024-12-05 16:01:15 -08:00
Alex Rickabaugh 9d3ced6636 refactor(core): remove circular dep in LView & LContainer definitions (#59083)
Use `import type` to break phantom circular imports in the runtime
definitions of `LView` and `LContainer`.

PR Close #59083
2024-12-05 16:01:14 -08:00
Alex Rickabaugh 8cea383cc1 refactor(core): remove circular dep in JIT decorator definitions (#59083)
Use `import type` to break phantom circular imports in the runtime
definitions of JIT decorators.

PR Close #59083
2024-12-05 16:01:14 -08:00
Alex Rickabaugh e6503f8bea refactor(core): remove circular dep in ComponentFactoryResolver (#59083)
Use `import type` to break a phantom circular import in the runtime
definition of `ComponentFactory` and `ComponentFactoryResolver`.

PR Close #59083
2024-12-05 16:01:14 -08:00
Alex Rickabaugh 587d4011a4 refactor(core): remove circular dep in DI code (#59083)
Use `import type` to break a phantom circular import in the DI code.

PR Close #59083
2024-12-05 16:01:14 -08:00
Alex Rickabaugh 039bcad76a refactor(core): remove circular dep in iterable differs. (#59083)
Use `import type` to break a phantom circular import in iterable differs.

PR Close #59083
2024-12-05 16:01:14 -08:00
Alex Rickabaugh 5a4ac89376 refactor(core): remove circular dep in ViewRef definition (#59083)
Use `import type` to break a phantom circular import in the runtime
definition of `ViewRef`.

PR Close #59083
2024-12-05 16:01:14 -08:00
Alex Rickabaugh 8b02d11fbb refactor(compiler): remove circular dep in the output ast (#59083)
Use `import type` to break a phantom circular import in the output AST in
the compiler.

PR Close #59083
2024-12-05 16:01:14 -08:00