22921 Commits

Author SHA1 Message Date
Pete Bacon Darwin bba0a87055 fix(compiler): support i18n interpolated only attribute bindings (#43815)
While fully dynamic bound properties (and attributes) cannot be marked for localization, properties that only contain interpolation can.

This commit ensure that attribute bindings that only contain interpolation can also be marked for localization.

Closes #43260

PR Close #43815
2021-10-18 09:24:39 -07:00
Pete Bacon Darwin c85bcb0c63 feat(compiler): reference ICU message IDs from their placeholders (#43534)
When extracting i18n messages from templates, ICU messages are split out from the
message that contains them. This can make it difficult in the translation files to match up
the two messages, especially if the ICU is reused in multiple placeholders.

This commit builds on top of the previous one to expose the message ID of ICU messages
from the ICU placeholders as additional metadata in the `$localize` tagged strings.
Now the metablock following any placeholder can also contain the associated ID
delimited from the placeholder name by `@@`.

Fixes #17506

PR Close #43534
2021-10-18 09:23:59 -07:00
Pete Bacon Darwin d3cf222a81 feat(localize): support "associated message ids" for placeholders (#43534)
When extracting i18n messages, the Angular compiler needs to split ICU expressions
into their own message.  Currently there is no guaranteed way to re-associate
the ICU message with the original message where the ICU was found.

This change adds support in the localize tooling so that associated ids can be
stored as metadata in the `$localize` tagged strings. These ids can then be
used in generated translation files to provide a link between the two messages.

The XLIFF 1.2 and 2.0 formats have been updated to render these relationships,
via the `xid` and `subFlows` attributes respectively.

PR Close #43534
2021-10-18 09:23:59 -07:00
dario-piotrowicz efeb5adf95 fix(docs-infra): add paddings to docs-card titles (#43859)
improve the aio docs-card title by adding some padding
so that it doesn't get too close to the card's edges

PR Close #43859
2021-10-18 09:23:15 -07:00
dario-piotrowicz 67a7c48683 fix(docs-infra): move security anchors outside callout elements (#43865)
two callout elements in the security guide have anchors
as their first child element instead of the callout's header
causing ugly/unwanted spacing, move the anchors above the
callout elements to fix such issue

PR Close #43865
2021-10-18 09:22:35 -07:00
Pete Bacon Darwin 9a6bd264ab build(docs-infra): add a box around CLI command line reference syntax (#43850)
This commit helps to make the section that describes an overview of the syntax of a CLI command stand out from the surrounding text.

Closes #26574

PR Close #43850
2021-10-15 11:35:44 -07:00
Andrew Scott e79e3cafec fix(router): fix Router's public API for canceledNavigationResolution (#43842)
The commit which made the `canceledNavigationResolution` property on the `Router`
public did not add the corresponding configuration in the `ExtraOptions`.
https://github.com/angular/angular/commit/3c6b653089837459809a370ebcaf8911c3bab9ed
This was a mistake and is being corrected in this commit. We should not
encourage changing the properties post-setup (i.e.
`inject(Router).canceledNavigationResolution = 'computed'`). This manner
of configuration makes the options non-tree shakeable because we have to
keep both implementations in case the value changes at runtime.

PR Close #43842
2021-10-15 11:35:01 -07:00
Younes Jaaidi e78c7cc239 docs: add younes jaaidi to GDE resources (#43721)
PR Close #43721
2021-10-15 10:49:22 -07:00
Paul Gschwendtner 6783977d21 build: update bazel integration test to rules_nodejs v4.4.1 (#43838)
Updates the Bazel integration test to `rules_nodejs` v4.4.1. Renovate
could not complete this update automatically because it is unable
to update the `package.json` and `lock` file due to there being
relative `file:` references.

PR Close #43838
2021-10-15 10:45:02 -07:00
Renovate Bot ba4e18b096 build: update all non-major dependencies (#43838)
PR Close #43838
2021-10-15 10:45:02 -07:00
Doug Parker b2b597279e fix(compiler-cli): updates ngc to pass the build when only warnings are emitted (#43673)
Refs #42966.

Previously, a build when emitted one warning and no errors would fail with a non-zero exit code. This is not what users would expect, but had not been an issue before since the compiler did not actually emit any warnings. With upcoming extended template diagnostics and other warnings, this is now a case that needs to be supported. Warnings are printed to `stderr` as before, but `ngc` now exits with code `0` and the build is considered successful.

Implemented this by adding a new `expectedExitCode` parameter to `driveDiagnostics()` which asserts against the real exit code. Most importantly, it does not **require** the the build to pass since any exit code can be given, so it is up to the test to assert this as well as many messages printed to make sure they are acceptable. This is useful for testing warnings and ensuring the build still passes.

PR Close #43673
2021-10-15 10:17:39 -07:00
JoostK 5b9b740c20 docs: include WrappedValue as removed API on deprecation page (#43685)
A rebase of #43507 seems to have inadvertently dropped the note about
the removed `WrappedValue` API from the deprecations page, so this
commit reintroduces the text.

PR Close #43685
2021-10-15 10:16:03 -07:00
dario-piotrowicz 17c9f67e21 fix(docs-infra): apply minor style fixes to aio contributor cards (#43844)
improve the aio contributors card by aligning centrally the
contributor's name and adding some padding so that it doesn't
get too close to the card's edges

Note: the name's aligning was already present by wrongly removed in
PR #43355

PR Close #43844
2021-10-15 10:12:55 -07:00
Joe Martin (Crowdstaffing) bd0d7c15c1 docs: internationalization topics (#43819)
Update links and code-examples.  Remove redundant comments.

PR Close #43819
2021-10-14 15:53:24 -07:00
Andrew Scott 892158f769 Revert "refactor(router): clean up internal hooks (#43804)" (#43845)
This reverts commit 5cc51880db.

PR Close #43845
2021-10-14 14:43:41 -07:00
Renovate Bot c0a439927b build: update dependency @typescript-eslint/parser to v5 (#43807)
PR Close #43807
2021-10-14 10:14:49 -07:00
Andrew Scott 5cc51880db refactor(router): clean up internal hooks (#43804)
* beforePreactivation hook is unused
* The only place that uses afterPreactivation does not use the arguments

Not to say we won't want to provide hooks similar to this in the future,
but the current state is over-engineered for what it's being used for.

PR Close #43804
2021-10-14 10:04:01 -07:00
Alan Agius 41cf9e9768 docs: add missing value types to optimization configuration (#43839)
It appears that when the tables were changed from HTML to markdown some value types were lost. With this change we add the missing types and remove the commented out HTML content.

PR Close #43839
2021-10-14 10:01:54 -07:00
Alan Agius c5dc79dc56 docs: remove no longer relevant sections in build page (#43837)
`Backward compatibility with Lighthouse` and `Backward compatibility with CSS grid` sections are no longer relevant since Internet Explorer is no longer supported.

PR Close #43837
2021-10-14 10:01:20 -07:00
Natalia Venditto 7ff6f7ff70 docs: add natalia venditto to GDE resources (#43825)
PR Close #43825
2021-10-14 09:59:59 -07:00
Joey Perrott 9591310085 docs: add missing split marker (#43830)
Due to an outdated version of ng-dev running during release the changelog generated did not include a split marker,
it should be added to avoid issues in the future.

PR Close #43830
2021-10-13 18:48:00 +00:00
Andrew Scott ae44c8550c docs: release notes for the v13.0.0-rc.0 release (#43829) 2021-10-13 11:31:24 -07:00
Andrew Scott da49e83f74 docs: release notes for the v12.2.10 release (#43827) 2021-10-13 11:08:08 -07:00
Alan Agius 6b85519a80 ci: remove rollup from renovate ignoreDeps (#43737)
We can now update to the latest rollup version.

PR Close #43737
2021-10-13 16:56:42 +00:00
Alan Agius 607f14db74 build: update rollup dependencies (#43737)
With this change we update `rollup` and remove the usage of no longer maintained `rollup-plugin-commonjs` and `rollup-plugin-node-resolve` plugins.

PR Close #43737
2021-10-13 16:56:42 +00:00
dario-piotrowicz 68d18a0422 refactor(docs-infra): remove unnecessary tsconfig.json file (#43818)
the tsconfig.json file in aio/content/examples does not seem necessary
anymore as it was only used for tslinting and tslint has been removed
from the examples in PR #43592 and PR #43746

PR Close #43818
2021-10-13 16:51:10 +00:00
Renovate Bot 512f6438ab build: update dependency @typescript-eslint/eslint-plugin to v5 (#43806)
PR Close #43806
2021-10-13 16:49:49 +00:00
Joey Perrott b5da715d9f build: update to cldr@39 (#43820)
Update repository to use cldr version 39 as it is the latest available.

PR Close #43820
2021-10-13 16:49:24 +00:00
Renovate Bot 49a0b60dc7 build: update dependency @rollup/plugin-commonjs to v21 (#43675)
PR Close #43675
2021-10-13 16:48:46 +00:00
dario-piotrowicz f04a7c1d4d docs(core): apply minor improvements to the InjectionToken's api docs (#43693)
PR Close #43693
2021-10-13 16:46:26 +00:00
Joe Martin (Crowdstaffing) 85c0ce793b docs: update internationalization topics (#43722)
Add new $localize and Ivy content.  Clean up navigation.

PR Close #43722
2021-10-12 21:38:37 +00:00
Andrew Scott 657ce1d911 docs: remove mention of router API that 'may be deprecated' (#43765)
The `params` and `queryParams` properties are listed in the deprecations as
properties that "may be deprecated in the future". We should not
document "maybe" deprecations. They are either deprecated or they are
not deprecated. For this case, there is no value in the deprecation
without a plan for how we will remove them. Once that is in place, we
can truly deprecate them.

PR Close #43765
2021-10-12 17:56:05 +00:00
dario-piotrowicz eec3839e83 fix(docs-infra): improve cancel icon in top-menu search (#43600)
webkit browsers show a cancel X icon in the input search on focus/hover
which allows to clear the content of the input, such icon has small
glitches/imperfections so use a mat-icon instead

(this also adds such icon to non-webkit browsers)

PR Close #43600
2021-10-12 17:50:29 +00:00
Joey Perrott 325c6e4e7a docs: update CHANGELOG.md readme to include entry separators (#43799)
Add `<!-- CHANGELOG SPLIT MARKER -->` between changelog entries to match the expected
format of the CHANGELOG.md file for the repository tooling.

PR Close #43799
2021-10-12 17:49:20 +00:00
Renovate Bot 16e5a314b1 build: lock file maintenance (#43793)
PR Close #43793
2021-10-12 17:48:28 +00:00
dario-piotrowicz 8671055a16 docs(animations): fix wrong code links present in the animations guide (#43787)
fix the links present in the animations guide under td elements written as
`<code>[text](link)()</code>` which are not rendered properly

Note:
  - the bug was introduced in PR #42885
  - the bug is only present for code blocks inside html block elements,
    the aforementioned format can be used in the inline html elements without issues

PR Close #43787
2021-10-12 17:47:59 +00:00
mgechev fde329da80 docs: update ngUpgrade support message (#43704)
PR Close #43704
2021-10-12 17:46:14 +00:00
Doug Parker d151a3c375 refactor(language-service): enable extended template diagnostics when strict templates is forced. (#43708)
This effectively enables extended template diagnostics in the VSCode extension in google3. This uses the existing `forceStrictTemplates` option to enable since that is already a prerequisite for extended template diagnostics and we don't distinguish between them at the configuration-level in google3 anyways.

PR Close #43708
2021-10-12 17:45:50 +00:00
Alan Agius 62494c9f2a docs: update how to remove a configuration item (#43795)
To remove a configuration item, `undefined` needs to be used as value.
PR Close #43795
2021-10-12 17:44:54 +00:00
Alan Agius 24e4fce127 docs: update config path in per user tracking section (#43795)
`cli.analyticsSharing.user` is not a valid config path. `cli.analyticsSharing.uuid` is the correct one.

Partially addresses https://github.com/angular/angular-cli/issues/21916

PR Close #43795
2021-10-12 17:44:54 +00:00
Alan Agius 17f5299967 ci: use Node.js browsers image (#43810)
Spinning up a Node.js browsers image has little to no overhead when the image is not cached on the host. `install_chrome_libs` however takes takes ~13s everytime.

PR Close #43810
2021-10-12 17:43:15 +00:00
Alan Agius 9e27494e3e build(docs-infra): update min range of node versions (#43810)
Eslint 8 which is used in AIO requires Node.js `14.17.x` or later.

PR Close #43810
2021-10-12 17:43:15 +00:00
Alan Agius 6411128284 ci: update default circle ci image to cimg/node:14.17.6 (#43810)
With this change we update Node.js version to 14.17 which is needed because of Eslint 8. Also, we replace the legacy images `circleci/node` with the new images `cimg/node`.

See: https://circleci.com/developer/images/image/cimg/node

PR Close #43810
2021-10-12 17:43:15 +00:00
Paul Gschwendtner baf8da0f0f ci: re-enable dev-app building in components-repo-unit-tests job (#43798)
Re-enables the building of the `src/dev-app` package in the components
repo when the components-repo-unit-test job runs. We previously disabled
the dev-app because it was not compatible with template typechecking of
ngtsc. This should be fixed now and can re-enable it.

This could be valuable for having some actual real test scenarios of
type checking.

PR Close #43798
2021-10-12 17:42:46 +00:00
Paul Gschwendtner 167fb2b37f ci: re-enable components-repo-unit-tests job after APF v13 adjustments (#43798)
The APF v13 changes have landed in the `angular/components` repository
so that the CI check can be re-enabled.

PR Close #43798
2021-10-12 17:42:46 +00:00
David Shevitz a82c55ff2f docs: add redirect from angular.io/guide to angular.io/docs (#43341)
PR Close #43341
2021-10-12 17:41:48 +00:00
Daniel Díaz 86aa721d8f docs: fix typo in hierarchical injectors file (#43652)
PR Close #43652
2021-10-12 17:41:24 +00:00
Kristiyan Kostadinov 08caeadddb fix(core): avoid duplicating comments in TestBed teardown migration (#43776)
Currently the TestBed teardown migration is set up in a similar way to all other migrations where we take a `CallExpression`, add a parameter to it, print it, and replace the existing call. The problem is that doing so while preserving the `expression` of the original `CallExpression` can cause comments to be duplicated. This can happen quite frequently, because by default the CLI generates comments before `initTestModule` calls.

To work around it, these changes make the migration more precise by inserting a new parameter or replacing and existing one using string manipulation.

This requires a bit more code, but it's more reliable than the following alternatives:
1. Using `getFullStart` and `getFullWidth` to replace the node. This would work with our current setup, but the problem is that `getFullStart` also includes whitespace and newlines before the leading comment. This can cause us to mess up the user's formatting and figuring out which whitespace to keep and which one to remove is tricky.
2. Recreating the `CallExpression.expression` when constructing the new node. This would also work since it'll drop any existing comments, but the problem is that `CallExpression.expression` can be a wide variety of nodes which we would have to account for. We can't use `getMutableClone`, because it preserves the comments.

Fixes #43739.

PR Close #43776
2021-10-11 17:18:55 +00:00
dario-piotrowicz 919d7dc233 refactor(docs-infra): remove tslint from cli systemjs examples (#43746)
remove the deprecated tslint from the examples of type systemjs

note: eslint hasn't be applied and linting has been removed entirely
to follow angular's unopinionated view on linting

PR Close #43746
2021-10-11 17:14:30 +00:00
Renovate Bot 4daf6318bc build: update dependency jsdom to v18 (#43786)
PR Close #43786
2021-10-11 16:44:47 +00:00