32345 Commits

Author SHA1 Message Date
ahmadhakeem18 23ec69f8e4 docs(docs-infra): Fix the borders of Cards header to match its parent (#58704)
PR Close #58704
2024-11-18 13:35:14 -08:00
Matthieu Riegler 6f1d583fca docs: update version compatibility. (#58720)
TS 5.4 support was dropped by #57577
TS 5.6 support was added by #57749

PR Close #58720
2024-11-18 13:34:35 -08:00
marktechson 7d161b9e5c docs: add v19 developer event banner (#58721)
PR Close #58721
2024-11-18 12:48:44 -08:00
Jeremy Elbourn 92f30a749d docs: reorganize NgModule and Animations guides (#58694)
* Move the NgModules and Animations guide under "Extended Ecosystem"
* Remove all NgModule topics except for the (newly written) overview.
  All of the content in these topics was inherently written on the idea
  that your application was organized around NgModules. I went through
  all of it, moved the important parts to the overview, and deemed the
  rest obsolete (though it will always remain in archived versions).

PR Close #58694
2024-11-15 14:36:39 -08:00
hawkgs 0deb6f9ffb docs(docs-infra): remove Featured section from the API reference list page (#58659)
Remove the Featured/Most Common section from the reference list and stylize and position the filter appropriately.

PR Close #58659
2024-11-15 10:32:21 -08:00
Andrew Kushnir e01aa1002b docs: update location of REQUEST-related tokens in docs content (#58693)
Since https://github.com/angular/angular/commit/a55341b1ab8d2bc4285a4cce59df7fc0b23c0125 commit, the `REQUEST`, `RESPONSE_INIT` and `REQUEST_CONTEXT` tokens became a part of the `@angular/core` pcakage. This commit updates the docs to mention `@angular/core` as a primary location of those tokens.

PR Close #58693
2024-11-15 10:30:11 -08:00
Jessica Janiuk ea020692a2 docs: add incremental hydration guide (#58671)
This adds a guide for incremental hydration. It also updates the navigation and adds links to it from the hydration guide.

PR Close #58671
2024-11-15 09:50:13 -08:00
Jeremy Elbourn cd4907d93c docs: initial resource docs (#58687)
Adding an initial pass of docs for `resource` under the Signals heading.

PR Close #58687
2024-11-15 09:48:10 -08:00
Andrew Kushnir d62a3f8480 docs: release notes for the v19.0.0-rc.3 release 2024-11-15 09:39:55 -08:00
Pawel Kozlowski 2a767a306e refactor(core): mark linkedSignal as developer preview (#58684)
This commit bumps up the stability status of the linkedSignal
to developer preview - clearly expressing our highier confidence
in this API.

PR Close #58684
2024-11-15 14:15:20 +01:00
cexbrayat 2eb4afe2b3 fix(migrations): do not migrate next calls in template if not an EventEmitter (#58631)
Fixes #58630

```html
<button (click)="someSubject.next()">Click</button>
```

was migrated to an `.emit` call, even if `someSubject` was not an `EventEmitter`.

The issue was the same in host listeners.

PR Close #58631
2024-11-15 14:13:52 +01:00
Kristiyan Kostadinov ff71af7f02 fix(bazel): allow strictStandalone to be passed through tsconfig (#58683)
Allows users to pass the `strictStandalone` compiler option through the tsconfig.

PR Close #58683
2024-11-15 12:53:10 +01:00
Georgy Serga 549a00d18b fix(compiler): fix multiline selectors (#58681)
multiline selectors where not correctly recognized by the regexp, fix it to fetch newlines as well

Fixes #58399

PR Close #58681
2024-11-15 11:30:27 +01:00
Georgy Serga 58a84b2f79 fix(compiler): resolve :host:host-context(.foo) (#58681)
fix results which had to parse several `-shadowcsshost-no-combinator` occurrences in a single selector

PR Close #58681
2024-11-15 11:30:27 +01:00
Georgy Serga 9587437e60 fix(compiler): transform chained pseudo-selectors (#58681)
fix transformation logic for `:where` and `:is` pseudo-selectors
when these selectors were used in a chain. results were often broken,
the last letter of the selector was incorrectly trimmed.
see tests for examples

Fixes #58226

PR Close #58681
2024-11-15 11:30:27 +01:00
Georgy Serga 70e800ecec fix(compiler): fix :host parsing in pseudo-selectors (#58681)
fix several use-cases where `:host` was used in or around pseudo-selectors
- `:host` followed by a comma inside pseudo-selectors
- `:host` outside of pseudo-selectors when another `:host` is present within
see tests for examples

PR Close #58681
2024-11-15 11:30:27 +01:00
Andrew Kushnir a55341b1ab refactor(core): add REQUEST, RESPONSE_INIT and REQUEST_CONTEXT tokens (#58669)
This commit introduces the `REQUEST`, `RESPONSE_INIT` and `REQUEST_CONTEXT` tokens, which will replace similar ones from https://github.com/angular/angular-cli/blob/28503186230b5e22b84499641d56c9c981fdab1d/packages/angular/ssr/tokens/src/tokens.ts, so those tokens would be imported in application code via `@angular/core` package.

PR Close #58669
2024-11-14 14:21:21 -08:00
Guillaume MOREAU 8ac02ec696 docs: fix typo in build system migration doc (#58668)
PR Close #58668
2024-11-14 14:18:11 -08:00
Jeremy Elbourn 3337ee4f79 docs: correct SSR guide landing page (#58667)
A previous change updated the navigation from "Performance" to "Server-side & hybrid rendering", but the landing page was missed.

PR Close #58667
2024-11-14 14:17:13 -08:00
Matthieu Riegler 70ec4c5044 docs: remove mention of allowSignalWrites (#57974)
PR Close #57974
2024-11-14 14:16:28 -08:00
Jeremy Elbourn 64cfe18dbc docs: remove standalone: true across content (#58660)
This change removes `standalone: true` from documentation and examples now that it is the default.

PR Close #58660
2024-11-14 16:40:12 +00:00
Angular Robot 648c845c50 build: update cross-repo angular dependencies (#58654)
See associated pull request for more information.

PR Close #58654
2024-11-14 16:39:37 +00:00
Jessica Janiuk 68d76b3326 docs: release notes for the v19.0.0-rc.2 release 2024-11-14 08:37:26 -08:00
Jessica Janiuk 666a2a4a73 docs: release notes for the v18.2.12 release 2024-11-14 08:13:48 -08:00
Jessica Janiuk 0dc87575a0 refactor(core): add performance feature flag for incremental hydration (#58658)
This adds a flag for incremental hydration to get usage statistics.

PR Close #58658
2024-11-14 15:07:39 +00:00
Jessica Janiuk 292d819e92 fix(core): fixes issues with control flow and incremental hydration (#58644)
If a defer block is nested inside control flow while also being nested
underneath a defer block all using incremental hydration, timing issues
prevented the child nodes from being properly hydrated. This ensures
hydration happens on next render.

PR Close #58644
2024-11-14 14:59:53 +00:00
Paul Gschwendtner 0675a243f4 refactor(compiler-cli): parse angularCompilerOptions from bazel options as a fallback (#58637)
This commit is only useful to Google. It fixes that some code relies on
`readConfiguration`, but doesn't properly parse Angular compiler options
as those are part of `bazelOptions.angularCompilerOptions` if the
1P-generated tsconfig's are used.

PR Close #58637
2024-11-14 14:55:54 +00:00
cexbrayat ecd107b2e3 refactor(migrations): typos in signal migration incompatibility reasons (#58636)
A dot was appearing in the middle of the comment for `DerivedIsIncompatible`.
While at it, a dot was missing in `ClassManuallyInstantiated`.

PR Close #58636
2024-11-14 14:55:04 +00:00
Paul Gschwendtner 42557312e8 build: update ng-dev to fix release tool (#58651)
Includes: https://github.com/angular/dev-infra/pull/2446

PR Close #58651
2024-11-14 14:54:05 +00:00
Jens Kuehlers 8af0cd0e17 docs: add State of JS 2024 banner (#58649)
PR Close #58649
2024-11-14 14:53:18 +00:00
Jeremy Elbourn 275b3c315e docs: add topic for linkedSignal (#58647)
Adds a topic to the Signals guide for `linkedSignal`. Also fixes a few broken links.

PR Close #58647
2024-11-14 14:52:33 +00:00
Jeremy Elbourn 709d05b33f docs: rename "Performance" guide to "Server-side & Hybrid rendering" (#58638)
* This makes it easier for developers discover SSR docs
* Deletes the original `@defer` guide now that there's a new `@defer` topic in the template guide
* Moves the Image optimization topic to the Directives guide. This isn't my _favorite_ place for this guide and I may revisit in a follow-up PR.

PR Close #58638
2024-11-14 14:51:51 +00:00
Jeremy Elbourn 7b95747733 docs: update essentials guide to include signals (#58603)
This change updates the _Essentials_ topic with the following changes:
* Change the "Managing dynamic data" topic to "Reactivity with signals",
  largely replacing the existing content to focus specifically on
  signals.
* Replace the "to-do" examples with examples for building a
  `UserProfile` component. I made this change because the todo-item
  component had an accessibility problem: it was a list item component
  that rendered an `li` into its own template. This meant that the
  component's host element was in between the `ul` and the `li`, which
  is invalid. The "right" way to do this would have been to use a
  component with an attribute selector, but this isn't something that
  fits into the _Essentials_ guide.
* Reorder some of the concepts in the components topic
* Combine "Rendering dynamic templates", "Conditionals and loops", and
  "Handling user interaction" into one topic, "Dynamic interfaces with
  templates". Having these as separate topics meant that there was more
  preamble/scaffolding around these relatively straightforward ideas.
* Renamed the "Sharing logic" topic to "Modular design with dependency
  injection". Aside from this, I have made no meaningful changes to the
  DI topic; I may come back for another edit pass here, but this is not
  necesary for v19.
* Add a link to the in-depth guide for each essentials topic.
* Add a new introduction to the _Essentials_ overview that explains what
  this guide is and what it's trying to accomplish.

PR Close #58603
2024-11-14 14:51:19 +00:00
Julio Massano Santos 6674130e80 docs: adds interceptor testing (#57568)
PR Close #57568
2024-11-14 14:50:41 +00:00
Angular Robot 190b4d7763 build: update cross-repo angular dependencies (#58641)
See associated pull request for more information.

PR Close #58641
2024-11-13 20:45:11 +00:00
Jeremy Elbourn 84c543a241 docs: update NgModule overview for standalone default (#58606)
This is the first commit towards updating the NgModule guide to reflect
the fact that v19+ is standalone by default. This PR focuses on:
* Updating the overview to give an actual overview of the most
  important/common uses of `NgModule`
* Add callouts recommending standalone APIs over `NgModule`
* Remove several stale docs that no longer make sense in v19+

This guide (directory) needs additional follow up work; I plan to
address the remaining content in follow-up changes.

PR Close #58606
2024-11-13 20:04:24 +00:00
Angular Robot 4f7ad3a8e6 build: update io_bazel_rules_sass digest to b442a44 (#58617)
See associated pull request for more information.

PR Close #58617
2024-11-13 18:49:20 +00:00
Angular Robot ee320ee68a build: update cross-repo angular dependencies (#58639)
See associated pull request for more information.

PR Close #58639
2024-11-13 18:37:47 +00:00
Charles Lyding 9b309c129a refactor(language-service): suppress inline TCB required diagnostic for syncs (#58619)
The NG8900 diagnostic is a non-actionable error code that does not affect
the build result of a component.

PR Close #58619
2024-11-13 18:36:08 +00:00
Kristiyan Kostadinov 89256e6868 fix(migrations): replace removed NgModules in tests with their exports (#58627)
In #57684 the standalone migration was changed so that it replaces any leftover modules with their `exports`, in an attempt to preserve more working code. These changes expand that logic to also cover tests since it's somewhat common internally to only import a component's module without having any references to the component.

Note that tests are a bit of a special case, because we don't have access to the template type checker, so instead we copy over all of the `exports` of that module.

PR Close #58627
2024-11-13 18:04:31 +00:00
Kristiyan Kostadinov 731e3ea883 refactor(compiler-cli): broaden type of getPotentialImportsFor (#58627)
Currently the `getPotentialImportsFor` only accepts a `ClassDeclaration` as the context for generating an import, but that's not necessary because it doesn't require any class-specific information. These changes expand it to any `Node` so that it can be used when generating imports in testing declarations.

PR Close #58627
2024-11-13 18:04:31 +00:00
cexbrayat 579f613a58 fix(migrations): include the output migration in the defaults of the signal migration (#58635)
Running `ng g @angular/core:signals` prompts for the question on which migration to run and offers 3 options (inputs, outputs, queries).
Running with `--defaults` skips the prompts, but only runs 2 of them.
This fixes it by including the `outputs` migration in the default ones.

PR Close #58635
2024-11-13 18:03:58 +00:00
Angular Robot 28be388e6c build: update cross-repo angular dependencies (#58634)
See associated pull request for more information.

PR Close #58634
2024-11-13 18:03:09 +00:00
Jeremy Elbourn 8f558b6e98 docs: update components guide for default standalone (#58605)
This change updates the components guide to reflect the fact that
standalone is now the default.

PR Close #58605
2024-11-13 15:40:21 +00:00
Jeremy Elbourn 3a6f44bd52 docs: show component signal APIs as the standard approach (#58572)
This change updates the docs to show the signal-based APIs for inputs
and queries as the primary way to do things (and also the `output`
function).

Specifically, this means:
* Component guide
   * Show `input` and `model` as the main approach, moving `@Input` lower on the same page
   * Show signal-based queries as the main approach, moving the
     decorator-based queries lower on the same page
   * Show `output` as the main approach, moving `@Output` lower on the
     same page
   * Delete the separate topic for the `output` function
* Signals guide
   * Delete the topics for input, model, and queries, as they are not in
     the components guide.
   * Move all rxjs-interop content to a new guide under "Extended
     ecosystem"

I plan to further update the "Essentials" guide and the "Signals" guide
in follow-up PRs.

PR Close #58572
2024-11-13 15:39:50 +00:00
Jessica Janiuk f3d9316275 refactor(core): moves incremental hydration codebase to better locations (#58616)
This eliminates the extra incremental.ts codepath and moves its functions to appropriate locations.

PR Close #58616
2024-11-12 22:25:27 +00:00
Joey Perrott 9fced64146 ci: remove circleci as we no longer rely on it (#58615)
Remove CircleCI artifacts and configuration

PR Close #58615
2024-11-12 18:39:25 +00:00
Kristiyan Kostadinov c421ffdbfb fix(compiler): control flow nodes with root at the end projected incorrectly (#58607)
Fixes an edge case where a control flow node that has non-projectable nodes followed by an element node at the end would cause the entire control flow node to be project. For example if we have a projection target of `Main: <ng-content/> Slot: <ng-content select="[foo]"/>`, inserting a node of `@if (true) {Hello <span foo>world</span>}` would project the entire `Hello world` into the `[foo]` slot.

In the process of working on the issue, I also found that `@let` declarations at the root of the control flow node would prevent content projection as well.

PR Close #58607
2024-11-12 18:05:00 +00:00
Jessica Janiuk f2bda8e3fc fix(core): prevent errors on contract cleanup (#58614)
If contract cleanup is called more than once, the assertion that the container manager will be present results in exceptions.

PR Close #58614
2024-11-12 17:25:50 +00:00
arturovt 4df352b77e fix(core): clean up event contract once hydration is done (#58174)
In this commit, we clean up the event contract once hydration is complete, which removes event
listeners registered through the container manager. If we do not clean up the contract, the listeners
will remain on the `document.body`. When incremental hydration is enabled, we cannot clean up the event
contract immediately; instead, we schedule its cleanup when the app is destroyed. This is because the
event contract is required for deferred blocks, of which we are unaware, that need to be hydrated.

PR Close #58174
2024-11-12 15:05:45 +00:00