diff --git a/.aspect/rules/external_repository_action_cache/npm_translate_lock_MzA5NzUwNzMx b/.aspect/rules/external_repository_action_cache/npm_translate_lock_MzA5NzUwNzMx
index d0c28d1bd4f0..da7b1bb3bcbf 100755
--- a/.aspect/rules/external_repository_action_cache/npm_translate_lock_MzA5NzUwNzMx
+++ b/.aspect/rules/external_repository_action_cache/npm_translate_lock_MzA5NzUwNzMx
@@ -1,8 +1,11 @@
# @generated
# Input hashes for repository rule npm_translate_lock(name = "npm2", pnpm_lock = "@//:pnpm-lock.yaml").
# This file should be checked into version control along with the pnpm-lock.yaml file.
-.npmrc=-203833057
-package.json=55884910
-pnpm-lock.yaml=-459300859
-pnpm-workspace.yaml=1711114604
-yarn.lock=-84247839
+.npmrc=-1406867100
+package.json=-1524251762
+packages/compiler-cli/package.json=571832290
+packages/compiler/package.json=-426903429
+pnpm-lock.yaml=953621251
+pnpm-workspace.yaml=353334404
+tools/bazel/rules_angular_store/package.json=-239561259
+yarn.lock=1749115294
diff --git a/.bazelignore b/.bazelignore
index 15acb77b79de..7ac843e60051 100644
--- a/.bazelignore
+++ b/.bazelignore
@@ -36,3 +36,9 @@ integration/trusted-types/node_modules
integration/typings_test_rxjs7/node_modules
integration/typings_test_ts58/node_modules
modules/ssr-benchmarks/node_modules
+
+
+# For rules_js
+packages/compiler/node_modules
+packages/compiler-cli/node_modules
+tools/bazel/rules_angular_store/node_modules
diff --git a/.github/actions/saucelabs-legacy/action.yml b/.github/actions/saucelabs-legacy/action.yml
index 634c8dab2b36..6cfb0ae82a57 100644
--- a/.github/actions/saucelabs-legacy/action.yml
+++ b/.github/actions/saucelabs-legacy/action.yml
@@ -5,9 +5,9 @@ runs:
using: 'composite'
steps:
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Saucelabs Variables
- uses: angular/dev-infra/github-actions/saucelabs@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/saucelabs@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Starting Saucelabs tunnel service
shell: bash
run: ./tools/saucelabs/sauce-service.sh run &
diff --git a/.github/workflows/adev-preview-build.yml b/.github/workflows/adev-preview-build.yml
index 4fe4f275557c..feed053bacc1 100644
--- a/.github/workflows/adev-preview-build.yml
+++ b/.github/workflows/adev-preview-build.yml
@@ -21,16 +21,16 @@ jobs:
(github.event.action == 'synchronize' && contains(github.event.pull_request.labels.*.name, 'adev: preview'))
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel RBE
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Build adev to ensure it continues to work
run: yarn bazel build //adev:build --full_build_adev --config=release
- - uses: angular/dev-infra/github-actions/previews/pack-and-upload-artifact@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ - uses: angular/dev-infra/github-actions/previews/pack-and-upload-artifact@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
workflow-artifact-name: 'adev-preview'
pull-number: '${{github.event.pull_request.number}}'
diff --git a/.github/workflows/adev-preview-deploy.yml b/.github/workflows/adev-preview-deploy.yml
index ef90f969bdac..b6ee677786c2 100644
--- a/.github/workflows/adev-preview-deploy.yml
+++ b/.github/workflows/adev-preview-deploy.yml
@@ -40,7 +40,7 @@ jobs:
npx -y firebase-tools@latest target:clear --config adev/firebase.json --project ${{env.PREVIEW_PROJECT}} hosting angular-docs
npx -y firebase-tools@latest target:apply --config adev/firebase.json --project ${{env.PREVIEW_PROJECT}} hosting angular-docs ${{env.PREVIEW_SITE}}
- - uses: angular/dev-infra/github-actions/previews/upload-artifacts-to-firebase@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ - uses: angular/dev-infra/github-actions/previews/upload-artifacts-to-firebase@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
github-token: '${{secrets.GITHUB_TOKEN}}'
workflow-artifact-name: 'adev-preview'
diff --git a/.github/workflows/assistant-to-the-branch-manager.yml b/.github/workflows/assistant-to-the-branch-manager.yml
index 0753d9c05b1e..002152cbe6b1 100644
--- a/.github/workflows/assistant-to-the-branch-manager.yml
+++ b/.github/workflows/assistant-to-the-branch-manager.yml
@@ -16,6 +16,6 @@ jobs:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false
- - uses: angular/dev-infra/github-actions/branch-manager@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ - uses: angular/dev-infra/github-actions/branch-manager@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
angular-robot-key: ${{ secrets.ANGULAR_ROBOT_PRIVATE_KEY }}
diff --git a/.github/workflows/benchmark-compare.yml b/.github/workflows/benchmark-compare.yml
index c8c066776d95..3c23daaa5fa4 100644
--- a/.github/workflows/benchmark-compare.yml
+++ b/.github/workflows/benchmark-compare.yml
@@ -38,7 +38,7 @@ jobs:
- uses: ./.github/actions/yarn-install
- - uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ - uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
bazelrc: ./.bazelrc.user
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 29914278b725..7a50b9faa6fc 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -21,7 +21,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Install node modules
@@ -41,13 +41,13 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel RBE
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
google_credential: ${{ secrets.RBE_TRUSTED_BUILDS_USER }}
- name: Install node modules
@@ -61,13 +61,13 @@ jobs:
runs-on: ubuntu-latest-4core
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel Remote Caching
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
google_credential: ${{ secrets.RBE_TRUSTED_BUILDS_USER }}
- name: Install node modules
@@ -79,13 +79,13 @@ jobs:
runs-on: ubuntu-latest-4core
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel Remote Caching
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
google_credential: ${{ secrets.RBE_TRUSTED_BUILDS_USER }}
- name: Install node modules
@@ -98,11 +98,11 @@ jobs:
labels: ubuntu-latest-4core
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel RBE
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
google_credential: ${{ secrets.RBE_TRUSTED_BUILDS_USER }}
- name: Install node modules
@@ -117,13 +117,13 @@ jobs:
labels: ubuntu-latest
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel RBE
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn install --frozen-lockfile
- run: echo "https://${{secrets.SNAPSHOT_BUILDS_GITHUB_TOKEN}}:@github.com" > ${HOME}/.git_credentials
@@ -135,7 +135,7 @@ jobs:
labels: ubuntu-latest-4core
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
node-module-directories: |
@@ -143,9 +143,9 @@ jobs:
./packages/zone.js/node_modules
./packages/zone.js/test/typings/node_modules
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel RBE
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
google_credential: ${{ secrets.RBE_TRUSTED_BUILDS_USER }}
- name: Install node modules
@@ -184,7 +184,7 @@ jobs:
SAUCE_TUNNEL_IDENTIFIER: angular-framework-${{ github.run_number }}
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Install node modules
@@ -197,11 +197,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel RBE
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Build adev to ensure it continues to work
diff --git a/.github/workflows/dev-infra.yml b/.github/workflows/dev-infra.yml
index 4e7ca92ff208..ca9b6cd07e02 100644
--- a/.github/workflows/dev-infra.yml
+++ b/.github/workflows/dev-infra.yml
@@ -13,13 +13,13 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- - uses: angular/dev-infra/github-actions/commit-message-based-labels@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ - uses: angular/dev-infra/github-actions/commit-message-based-labels@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
angular-robot-key: ${{ secrets.ANGULAR_ROBOT_PRIVATE_KEY }}
post_approval_changes:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- - uses: angular/dev-infra/github-actions/post-approval-changes@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ - uses: angular/dev-infra/github-actions/post-approval-changes@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
angular-robot-key: ${{ secrets.ANGULAR_ROBOT_PRIVATE_KEY }}
diff --git a/.github/workflows/google-internal-tests.yml b/.github/workflows/google-internal-tests.yml
index e0e3acdea6c3..5d156994858a 100644
--- a/.github/workflows/google-internal-tests.yml
+++ b/.github/workflows/google-internal-tests.yml
@@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- - uses: angular/dev-infra/github-actions/google-internal-tests@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ - uses: angular/dev-infra/github-actions/google-internal-tests@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
run-tests-guide-url: http://go/angular-g3sync-start
github-token: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/manual.yml b/.github/workflows/manual.yml
index 1967cf6ce66d..91ec843009b5 100644
--- a/.github/workflows/manual.yml
+++ b/.github/workflows/manual.yml
@@ -13,17 +13,17 @@ jobs:
JOBS: 2
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel Remote Caching
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Saucelabs Variables
- uses: angular/dev-infra/github-actions/saucelabs@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/saucelabs@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Set up Sauce Tunnel Daemon
run: yarn bazel run //tools/saucelabs-daemon/background-service -- $JOBS &
env:
diff --git a/.github/workflows/merge-ready-status.yml b/.github/workflows/merge-ready-status.yml
index b003a5853d96..eb855e8babcc 100644
--- a/.github/workflows/merge-ready-status.yml
+++ b/.github/workflows/merge-ready-status.yml
@@ -9,6 +9,6 @@ jobs:
status:
runs-on: ubuntu-latest
steps:
- - uses: angular/dev-infra/github-actions/unified-status-check@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ - uses: angular/dev-infra/github-actions/unified-status-check@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
angular-robot-key: ${{ secrets.ANGULAR_ROBOT_PRIVATE_KEY }}
diff --git a/.github/workflows/perf.yml b/.github/workflows/perf.yml
index d8b28ca87622..22a41f660fe7 100644
--- a/.github/workflows/perf.yml
+++ b/.github/workflows/perf.yml
@@ -21,7 +21,7 @@ jobs:
workflows: ${{ steps.workflows.outputs.workflows }}
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn -s install --frozen-lockfile
- id: workflows
@@ -36,9 +36,9 @@ jobs:
workflow: ${{ fromJSON(needs.list.outputs.workflows) }}
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn -s install --frozen-lockfile
# We utilize the google-github-actions/auth action to allow us to get an active credential using workflow
diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml
index 1f554d2b460e..fb5bd00675db 100644
--- a/.github/workflows/pr.yml
+++ b/.github/workflows/pr.yml
@@ -19,7 +19,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Install node modules
@@ -39,7 +39,7 @@ jobs:
- name: Check code format
run: yarn ng-dev format changed --check ${{ github.event.pull_request.base.sha }}
- name: Check Package Licenses
- uses: angular/dev-infra/github-actions/linting/licenses@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/linting/licenses@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
allow-dependencies-licenses: 'pkg:npm/google-protobuf@'
@@ -47,13 +47,13 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel RBE
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Run unit tests
@@ -65,13 +65,13 @@ jobs:
runs-on: ubuntu-latest-4core
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel Remote Caching
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn install --frozen-lockfile --network-timeout 100000
- name: Run CI tests for framework
@@ -87,13 +87,13 @@ jobs:
runs-on: ubuntu-latest-4core
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel Remote Caching
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn install --frozen-lockfile --network-timeout 100000
- name: Run integration CI tests for framework
@@ -105,16 +105,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel Remote Caching
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn install --frozen-lockfile --network-timeout 100000
- - name: Run CI tests for framework
+ - name: Build artifacts
run: yarn tsx ./scripts/build/build-packages-dist.mts
- name: Archive build artifacts
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
@@ -127,11 +127,11 @@ jobs:
labels: ubuntu-latest-4core
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel RBE
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn install --frozen-lockfile
- name: Run tests
@@ -144,7 +144,7 @@ jobs:
labels: ubuntu-latest-4core
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
node-module-directories: |
@@ -152,9 +152,9 @@ jobs:
./packages/zone.js/node_modules
./packages/zone.js/test/typings/node_modules
- name: Setup Bazel
- uses: angular/dev-infra/github-actions/bazel/setup@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/setup@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Setup Bazel RBE
- uses: angular/dev-infra/github-actions/bazel/configure-remote@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/bazel/configure-remote@43b8195028f62c7a10f793a0f7c48893531a32dc
- name: Install node modules
run: yarn install --frozen-lockfile
- run: |
@@ -191,7 +191,7 @@ jobs:
SAUCE_TUNNEL_IDENTIFIER: angular-framework-${{ github.run_number }}
steps:
- name: Initialize environment
- uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/npm/checkout-and-setup-node@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
cache-node-modules: true
- name: Install node modules
diff --git a/.github/workflows/sync-angular-robot-forked-repo.yml b/.github/workflows/sync-angular-robot-forked-repo.yml
new file mode 100644
index 000000000000..f117b5945688
--- /dev/null
+++ b/.github/workflows/sync-angular-robot-forked-repo.yml
@@ -0,0 +1,46 @@
+# This workflow addresses a limitation with Renovate's behavior in fork mode.
+# Renovate does not automatically sync non-default branches in forked repositories.
+
+name: Sync angular-robot Forked Repository
+on:
+ workflow_dispatch:
+ inputs: {}
+ push:
+ branches:
+ # We do no run this on the default branch (main), as this is done by Renovate.
+ - '[0-9]+.[0-9]+.x'
+
+permissions:
+ contents: read
+
+jobs:
+ sync_to_upstream:
+ runs-on: ubuntu-latest
+ # Prevents multiple concurrent runs of this workflow for the same branch
+ concurrency:
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: true
+
+ steps:
+ - name: Checkout the repository
+ uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
+ with:
+ ref: ${{ github.ref }} # Checks out the branch that triggered the push
+ fetch-depth: 100
+ persist-credentials: false
+
+ - name: Push to angular-robot upstream remote
+ run: |
+ CURRENT_BRANCH="${{ github.ref_name }}"
+ UPSTREAM_TOKEN="${{ secrets.ANGULAR_ROBOT_ACCESS_TOKEN }}"
+ UPSTREAM_OWNER="angular-robot"
+ UPSTREAM_REPO="angular"
+ UPSTREAM_URL="https://x-access-token:${UPSTREAM_TOKEN}@github.com/${UPSTREAM_OWNER}/${UPSTREAM_REPO}.git"
+
+ # The UPSTREAM_TOKEN is automatically masked by GitHub Actions for security.
+ echo "Adding upstream remote: $UPSTREAM_URL"
+ git remote add upstream "$UPSTREAM_URL"
+ git remote -v
+
+ echo "Pushing $CURRENT_BRANCH from origin to $UPSTREAM_OWNER upstream..."
+ git push upstream "$CURRENT_BRANCH"
diff --git a/.github/workflows/update-cdk-apis.yml b/.github/workflows/update-cdk-apis.yml
index 6403755a03e5..2e09a914ec52 100644
--- a/.github/workflows/update-cdk-apis.yml
+++ b/.github/workflows/update-cdk-apis.yml
@@ -13,7 +13,7 @@ permissions:
contents: read
jobs:
- update_cli_help:
+ update_cdk_apis:
name: Update Angular CDK apis (if necessary)
if: github.repository == 'angular/angular'
runs-on: ubuntu-latest
@@ -32,13 +32,13 @@ jobs:
env:
ANGULAR_CDK_BUILDS_READONLY_GITHUB_TOKEN: ${{ secrets.ANGULAR_CDK_BUILDS_READONLY_GITHUB_TOKEN }}
- name: Create a PR (if necessary)
- uses: angular/dev-infra/github-actions/create-pr-for-changes@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/create-pr-for-changes@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
branch-prefix: update-cdk-apis
pr-title: 'docs: update Angular CDK apis [${{github.ref_name}}]'
pr-description: |
Updated Angular CDK api files.
pr-labels: |
- action: review
+ action: merge
area: docs
angular-robot-token: ${{ secrets.ANGULAR_ROBOT_ACCESS_TOKEN }}
diff --git a/.github/workflows/update-cli-help.yml b/.github/workflows/update-cli-help.yml
index 71290c68cc58..bf44daa95cb2 100644
--- a/.github/workflows/update-cli-help.yml
+++ b/.github/workflows/update-cli-help.yml
@@ -32,7 +32,7 @@ jobs:
env:
ANGULAR_CLI_BUILDS_READONLY_GITHUB_TOKEN: ${{ secrets.ANGULAR_CLI_BUILDS_READONLY_GITHUB_TOKEN }}
- name: Create a PR (if necessary)
- uses: angular/dev-infra/github-actions/create-pr-for-changes@a4538b2474d3c551f0217c3d1f5f3a99cf4f8eb7
+ uses: angular/dev-infra/github-actions/create-pr-for-changes@43b8195028f62c7a10f793a0f7c48893531a32dc
with:
branch-prefix: update-cli-help
pr-title: 'docs: update Angular CLI help [${{github.ref_name}}]'
diff --git a/.ng-dev/format.mts b/.ng-dev/format.mts
index 62d2028c1f3f..99a938486a07 100644
--- a/.ng-dev/format.mts
+++ b/.ng-dev/format.mts
@@ -7,8 +7,8 @@ export const format: FormatConfig = {
'prettier': {
'matchers': [
'**/*.{yaml,yml}',
- '**/*.{js,ts}',
- 'devtools/**/*.{js,ts,html,scss}',
+ '**/*.{js,ts,mjs,mts,cjs,cts}',
+ 'devtools/**/*.{js,ts,mjs,mts,cjs,cts,html,scss}',
// Do not format d.ts files as they are generated
'!**/*.d.ts',
@@ -22,7 +22,7 @@ export const format: FormatConfig = {
'!packages/common/locales/closure-locale.ts',
'!packages/common/src/i18n/currencies.ts',
// Test cases contain non valid code.
- '!packages/compiler-cli/test/compliance/test_cases/**/*.{js,ts}',
+ '!packages/compiler-cli/test/compliance/test_cases/**/*.{js,ts,mjs,mts,cjs,cts}',
// Ignore generated javascript file(s)
'!.github/actions/deploy-docs-site/main.js',
diff --git a/.npmrc b/.npmrc
index 57879aee6f1d..7c7738880a15 100644
--- a/.npmrc
+++ b/.npmrc
@@ -4,4 +4,9 @@ engine-strict = false
# Disabling pnpm [hoisting](https://pnpm.io/npmrc#hoist) by setting `hoist=false` is recommended on
# projects using rules_js so that pnpm outside of Bazel lays out a node_modules tree similar to what
# rules_js lays out under Bazel (without a hidden node_modules/.pnpm/node_modules)
-hoist=false
\ No newline at end of file
+hoist=false
+
+# Avoid pnpm auto-installing peer dependencies. We want to be explicit about our versions used
+# for peer dependencies, avoiding potential mismatches. In addition, it ensures we can continue
+# to rely on peer dependency placeholders substituted via Bazel.
+auto-install-peers=false
diff --git a/.pullapprove.yml b/.pullapprove.yml
index 6253c4e685dd..a87d5a339ee4 100644
--- a/.pullapprove.yml
+++ b/.pullapprove.yml
@@ -336,7 +336,6 @@ groups:
'scripts/**/{*,.*}',
'third_party/**/{*,.*}',
'tools/bazel-repo-patches/**/{*,.*}',
- 'tools/circular_dependency_test/**/{*,.*}',
'tools/contributing-stats/**/{*,.*}',
'tools/esm-interop/**/{*,.*}',
'tools/gulp-tasks/**/{*,.*}',
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 89d1ccf71e18..3bec5593241f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,21 @@
+
+# 20.0.0-rc.1 (2025-05-15)
+### compiler
+| Commit | Type | Description |
+| -- | -- | -- |
+| [e0d378d20e7](https://github.com/angular/angular/commit/e0d378d20e768d353b01bc28e10ad53c5485b426) | fix | incorrectly handling let declarations inside i18n ([#60512](https://github.com/angular/angular/pull/60512)) |
+| [768239a89cb](https://github.com/angular/angular/commit/768239a89cba7e7cf1f497e15589705b1446f8a6) | perf | reduce allocations for let declarations only used in the same view ([#60512](https://github.com/angular/angular/pull/60512)) |
+### compiler-cli
+| Commit | Type | Description |
+| -- | -- | -- |
+| [9ec9c7e1b84](https://github.com/angular/angular/commit/9ec9c7e1b8473c76661ad09a3961016ccc4ddfc7) | fix | avoid fatal diagnostics for invalid module schemas ([#61220](https://github.com/angular/angular/pull/61220)) |
+### core
+| Commit | Type | Description |
+| -- | -- | -- |
+| [4fe34f4cfea](https://github.com/angular/angular/commit/4fe34f4cfea2aa0e355afa04c7183545637283c3) | fix | enable stashing only when `withEventReplay()` is invoked ([#61077](https://github.com/angular/angular/pull/61077)) |
+
+
+
# 20.0.0-rc.0 (2025-05-07)
### common
diff --git a/README.md b/README.md
index 2ef3bf9db9f7..24ef3fefd385 100644
--- a/README.md
+++ b/README.md
@@ -26,9 +26,6 @@
-
-
-
diff --git a/WORKSPACE b/WORKSPACE
index 21bcde8d3790..03fdbb531f68 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -85,7 +85,7 @@ yarn_install(
"//:tools/npm-patches/@angular+ng-dev+0.0.0-a6dcd24107d12114198251ee5d20cda814a1986a.patch",
"//:tools/npm-patches/@bazel+jasmine+5.8.1.patch",
"//tools:postinstall-patches.js",
- "//tools/esm-interop:patches/npm/@angular+build-tooling+0.0.0-d30a56c19bafaac67cf44e605ed8c2c0e45b0a51.patch",
+ "//tools/esm-interop:patches/npm/@angular+build-tooling+0.0.0-2670abf637fa155971cdd1f7e570a7f234922a65.patch",
"//tools/esm-interop:patches/npm/@bazel+concatjs+5.8.1.patch",
"//tools/esm-interop:patches/npm/@bazel+esbuild+5.7.1.patch",
"//tools/esm-interop:patches/npm/@bazel+protractor+5.7.1.patch",
@@ -108,6 +108,9 @@ npm_translate_lock(
data = [
"//:package.json",
"//:pnpm-workspace.yaml",
+ "//packages/compiler:package.json",
+ "//packages/compiler-cli:package.json",
+ "//tools/bazel/rules_angular_store:package.json",
],
npmrc = "//:.npmrc",
pnpm_lock = "//:pnpm-lock.yaml",
@@ -142,6 +145,17 @@ http_archive(
url = "https://github.com/aspect-build/rules_rollup/releases/download/v2.0.0/rules_rollup-v2.0.0.tar.gz",
)
+http_archive(
+ name = "aspect_rules_jasmine",
+ sha256 = "0d2f9c977842685895020cac721d8cc4f1b37aae15af46128cf619741dc61529",
+ strip_prefix = "rules_jasmine-2.0.0",
+ url = "https://github.com/aspect-build/rules_jasmine/releases/download/v2.0.0/rules_jasmine-v2.0.0.tar.gz",
+)
+
+load("@aspect_rules_jasmine//jasmine:dependencies.bzl", "rules_jasmine_dependencies")
+
+rules_jasmine_dependencies()
+
load("@aspect_bazel_lib//lib:repositories.bzl", "aspect_bazel_lib_dependencies")
aspect_bazel_lib_dependencies()
@@ -244,7 +258,7 @@ yarn_install(
git_repository(
name = "devinfra",
- commit = "c4f7d3cdec164044284139182b709dfd4be339ed",
+ commit = "43b8195028f62c7a10f793a0f7c48893531a32dc",
remote = "https://github.com/angular/dev-infra.git",
)
@@ -258,7 +272,7 @@ setup_dependencies_2()
git_repository(
name = "rules_angular",
- commit = "f47fe935fecac02f02fe1337274207f00146a765",
+ commit = "ad3a2d652f41c953fad8f55c3959fde628fa8ebf",
remote = "https://github.com/devversion/rules_angular.git",
)
@@ -273,6 +287,6 @@ rules_angular_step2()
load("@rules_angular//setup:step_3.bzl", "rules_angular_step3")
rules_angular_step3(
- angular_compiler_cli = "@angular//packages/compiler-cli",
- typescript = "//:node_modules/typescript",
+ angular_compiler_cli = "@angular//tools/bazel/rules_angular_store:node_modules/@angular/compiler-cli",
+ typescript = "@angular//:node_modules/typescript",
)
diff --git a/adev/BUILD.bazel b/adev/BUILD.bazel
index f03321e6b364..845857885c37 100644
--- a/adev/BUILD.bazel
+++ b/adev/BUILD.bazel
@@ -37,6 +37,7 @@ TEST_FILES = APPLICATION_FILES + [
APPLICATION_ASSETS = [
"//adev/src/assets/images",
+ "//adev/src/assets/others",
"//adev/src/assets/previews",
"//adev/src/assets:tutorials",
"//adev/src/assets/icons",
diff --git a/adev/shared-docs/BUILD.bazel b/adev/shared-docs/BUILD.bazel
index ba820b83e79c..c6f88d3bc7a1 100644
--- a/adev/shared-docs/BUILD.bazel
+++ b/adev/shared-docs/BUILD.bazel
@@ -1,7 +1,28 @@
+load("@aspect_rules_ts//ts:defs.bzl", rules_js_tsconfig = "ts_config")
load("//tools:defaults.bzl", "ng_module", "ng_package")
package(default_visibility = ["//visibility:private"])
+rules_js_tsconfig(
+ name = "tsconfig_build",
+ src = "tsconfig.json",
+ visibility = [
+ "//adev/shared-docs:__subpackages__",
+ ],
+)
+
+rules_js_tsconfig(
+ name = "tsconfig_test",
+ src = "tsconfig-test.json",
+ visibility = [
+ "//adev/shared-docs:__subpackages__",
+ ],
+ deps = [
+ ":tsconfig_build",
+ "//:node_modules/@types/jasmine",
+ ],
+)
+
ng_module(
name = "docs",
srcs = [
diff --git a/adev/shared-docs/components/BUILD.bazel b/adev/shared-docs/components/BUILD.bazel
index f8e0b95cd265..d0a64b960599 100644
--- a/adev/shared-docs/components/BUILD.bazel
+++ b/adev/shared-docs/components/BUILD.bazel
@@ -1,16 +1,13 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
-ts_library(
+ts_project(
name = "components",
srcs = [
"index.ts",
],
- visibility = [
- "//adev/shared-docs:__pkg__",
- ],
- deps = [
+ interop_deps = [
"//adev/shared-docs/components/algolia-icon",
"//adev/shared-docs/components/breadcrumb",
"//adev/shared-docs/components/cookie-popup",
@@ -25,4 +22,8 @@ ts_library(
"//adev/shared-docs/components/top-level-banner",
"//adev/shared-docs/components/viewers",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
+ visibility = [
+ "//adev/shared-docs:__pkg__",
+ ],
)
diff --git a/adev/shared-docs/components/breadcrumb/BUILD.bazel b/adev/shared-docs/components/breadcrumb/BUILD.bazel
index d236106f078b..06b02b93b348 100644
--- a/adev/shared-docs/components/breadcrumb/BUILD.bazel
+++ b/adev/shared-docs/components/breadcrumb/BUILD.bazel
@@ -1,5 +1,6 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -30,13 +31,13 @@ sass_binary(
src = "breadcrumb.component.scss",
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":breadcrumb",
"//adev/shared-docs/interfaces",
"//adev/shared-docs/services",
@@ -46,6 +47,7 @@ ts_library(
"//packages/router",
"//packages/router/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/components/cookie-popup/BUILD.bazel b/adev/shared-docs/components/cookie-popup/BUILD.bazel
index 1ae91a5bbb9d..1c0e72485309 100644
--- a/adev/shared-docs/components/cookie-popup/BUILD.bazel
+++ b/adev/shared-docs/components/cookie-popup/BUILD.bazel
@@ -1,5 +1,6 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -28,19 +29,20 @@ sass_binary(
src = "cookie-popup.component.scss",
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":cookie-popup",
"//adev/shared-docs/providers",
"//adev/shared-docs/testing",
"//packages/core",
"//packages/core/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/components/copy-source-code-button/BUILD.bazel b/adev/shared-docs/components/copy-source-code-button/BUILD.bazel
index 56d0e95b4930..e5c7bb1b393d 100644
--- a/adev/shared-docs/components/copy-source-code-button/BUILD.bazel
+++ b/adev/shared-docs/components/copy-source-code-button/BUILD.bazel
@@ -1,4 +1,5 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -22,18 +23,21 @@ ng_module(
],
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":copy-source-code-button",
"//packages/core",
"//packages/core/testing",
"//packages/platform-browser",
- "@npm//@angular/cdk",
+ ],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
+ deps = [
+ "//:node_modules/@angular/cdk",
],
)
diff --git a/adev/shared-docs/components/navigation-list/BUILD.bazel b/adev/shared-docs/components/navigation-list/BUILD.bazel
index 986d0f97bc6d..0aba956c1aca 100644
--- a/adev/shared-docs/components/navigation-list/BUILD.bazel
+++ b/adev/shared-docs/components/navigation-list/BUILD.bazel
@@ -1,5 +1,6 @@
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -35,13 +36,13 @@ sass_binary(
],
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":navigation-list",
"//adev/shared-docs/interfaces",
"//adev/shared-docs/services",
@@ -51,6 +52,7 @@ ts_library(
"//packages/router",
"//packages/router/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/components/navigation-list/navigation-list.component.spec.ts b/adev/shared-docs/components/navigation-list/navigation-list.component.spec.ts
index c71e5fae0b2e..8c3dc8ee58bf 100644
--- a/adev/shared-docs/components/navigation-list/navigation-list.component.spec.ts
+++ b/adev/shared-docs/components/navigation-list/navigation-list.component.spec.ts
@@ -43,7 +43,7 @@ describe('NavigationList', () => {
{provide: NavigationState, useClass: FakeNavigationListState},
provideZonelessChangeDetection(),
],
- }).compileComponents();
+ });
fixture = TestBed.createComponent(NavigationList);
fixture.componentRef.setInput('navigationItems', []);
diff --git a/adev/shared-docs/components/search-dialog/BUILD.bazel b/adev/shared-docs/components/search-dialog/BUILD.bazel
index 8869aae4975e..3abd302b3060 100644
--- a/adev/shared-docs/components/search-dialog/BUILD.bazel
+++ b/adev/shared-docs/components/search-dialog/BUILD.bazel
@@ -1,5 +1,6 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -34,13 +35,13 @@ sass_binary(
src = "search-dialog.component.scss",
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":search-dialog",
"//adev/shared-docs/components/algolia-icon",
"//adev/shared-docs/interfaces",
@@ -53,6 +54,7 @@ ts_library(
"//packages/router",
"//packages/router/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/components/search-dialog/search-dialog.component.html b/adev/shared-docs/components/search-dialog/search-dialog.component.html
index 397e35fdb5c3..7f8cc4e45c71 100644
--- a/adev/shared-docs/components/search-dialog/search-dialog.component.html
+++ b/adev/shared-docs/components/search-dialog/search-dialog.component.html
@@ -3,7 +3,7 @@
>('searchDialog');
items = viewChildren(SearchItem);
+ textField = viewChild(TextField);
private readonly search = inject(Search);
private readonly relativeLink = new RelativeLink();
@@ -67,7 +68,18 @@ export class SearchDialog implements OnDestroy {
searchQuery = this.search.searchQuery;
searchResults = this.search.searchResults;
+ // We use a FormControl instead of relying on NgModel+signal to avoid
+ // the issue https://github.com/angular/angular/issues/13568
+ // TODO: Use signal forms when available
+ searchControl = new FormControl(this.searchQuery(), {nonNullable: true});
+
constructor() {
+ this.searchControl.valueChanges.pipe(takeUntilDestroyed()).subscribe((value) => {
+ this.searchQuery.set(value);
+ });
+
+ // Thinkig about refactoring this to a single afterRenderEffect ?
+ // Answer: It won't have the same behavior
effect(() => {
this.items();
afterNextRender(
@@ -87,6 +99,9 @@ export class SearchDialog implements OnDestroy {
if (!this.dialog().nativeElement.open) {
this.dialog().nativeElement.showModal?.();
}
+ // We want to select the pre-existing text on opening
+ // In order to change the search input with minimal user interaction.
+ this.textField()?.input().nativeElement.select();
},
});
diff --git a/adev/shared-docs/components/select/BUILD.bazel b/adev/shared-docs/components/select/BUILD.bazel
index eeeebfefeca0..b0bb4eb00bf1 100644
--- a/adev/shared-docs/components/select/BUILD.bazel
+++ b/adev/shared-docs/components/select/BUILD.bazel
@@ -1,5 +1,6 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -27,17 +28,18 @@ sass_binary(
src = "select.component.scss",
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":select",
"//packages/core",
"//packages/core/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/components/slide-toggle/BUILD.bazel b/adev/shared-docs/components/slide-toggle/BUILD.bazel
index 4b77114bee3c..eb0beb89228a 100644
--- a/adev/shared-docs/components/slide-toggle/BUILD.bazel
+++ b/adev/shared-docs/components/slide-toggle/BUILD.bazel
@@ -1,5 +1,6 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -27,17 +28,18 @@ sass_binary(
src = "slide-toggle.component.scss",
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":slide-toggle",
"//packages/core",
"//packages/core/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/components/table-of-contents/BUILD.bazel b/adev/shared-docs/components/table-of-contents/BUILD.bazel
index 5a78168cc860..d196733e63e1 100644
--- a/adev/shared-docs/components/table-of-contents/BUILD.bazel
+++ b/adev/shared-docs/components/table-of-contents/BUILD.bazel
@@ -1,5 +1,6 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -31,13 +32,13 @@ sass_binary(
src = "table-of-contents.component.scss",
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":table-of-contents",
"//adev/shared-docs/interfaces",
"//adev/shared-docs/providers",
@@ -47,6 +48,7 @@ ts_library(
"//packages/router",
"//packages/router/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/components/table-of-contents/table-of-contents.component.scss b/adev/shared-docs/components/table-of-contents/table-of-contents.component.scss
index 87a79502dfd3..76014d29cbe4 100644
--- a/adev/shared-docs/components/table-of-contents/table-of-contents.component.scss
+++ b/adev/shared-docs/components/table-of-contents/table-of-contents.component.scss
@@ -2,11 +2,11 @@
display: flex;
flex-direction: column;
position: fixed;
- right: 16px;
+ right: 1rem;
top: 0;
height: fit-content;
width: 14rem;
- padding-inline: 1rem;
+ padding-right: 2rem;
max-height: 100vh;
overflow-y: scroll;
box-sizing: border-box;
diff --git a/adev/shared-docs/components/table-of-contents/table-of-contents.component.spec.ts b/adev/shared-docs/components/table-of-contents/table-of-contents.component.spec.ts
index fe98e89329e9..d1f29517e328 100644
--- a/adev/shared-docs/components/table-of-contents/table-of-contents.component.spec.ts
+++ b/adev/shared-docs/components/table-of-contents/table-of-contents.component.spec.ts
@@ -49,7 +49,7 @@ describe('TableOfContents', () => {
useValue: fakeWindow,
},
],
- }).compileComponents();
+ });
const tableOfContentsLoaderSpy = TestBed.inject(TableOfContentsLoader);
spyOn(tableOfContentsLoaderSpy, 'buildTableOfContent').and.returnValue();
diff --git a/adev/shared-docs/components/text-field/BUILD.bazel b/adev/shared-docs/components/text-field/BUILD.bazel
index 84ad42e6607e..f6c10d393d31 100644
--- a/adev/shared-docs/components/text-field/BUILD.bazel
+++ b/adev/shared-docs/components/text-field/BUILD.bazel
@@ -1,5 +1,6 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -29,17 +30,18 @@ sass_binary(
src = "text-field.component.scss",
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":text-field",
"//packages/core",
"//packages/core/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/components/text-field/text-field.component.html b/adev/shared-docs/components/text-field/text-field.component.html
index c436af5b8677..34941c460c09 100644
--- a/adev/shared-docs/components/text-field/text-field.component.html
+++ b/adev/shared-docs/components/text-field/text-field.component.html
@@ -6,8 +6,8 @@
type="text"
[attr.placeholder]="placeholder()"
[attr.name]="name()"
- [ngModel]="value()"
- (ngModelChange)="setValue($event)"
+ [value]="value()"
+ (input)="setValue(inputRef.value)"
class="docs-text-field"
/>
diff --git a/adev/shared-docs/components/text-field/text-field.component.spec.ts b/adev/shared-docs/components/text-field/text-field.component.spec.ts
index 5562d9c32caa..467cfe268713 100644
--- a/adev/shared-docs/components/text-field/text-field.component.spec.ts
+++ b/adev/shared-docs/components/text-field/text-field.component.spec.ts
@@ -28,4 +28,13 @@ describe('TextField', () => {
it('should create', () => {
expect(component).toBeTruthy();
});
+
+ it('should update DOM when setting the value via the CVA', () => {
+ component.setValue('test');
+ fixture.detectChanges();
+
+ expect(fixture.nativeElement.querySelector('input').value).toBe('test');
+ // If we were using ngModel instead of the value binding, we would get an empty string
+ // because of https://github.com/angular/angular/issues/13568
+ });
});
diff --git a/adev/shared-docs/components/top-level-banner/BUILD.bazel b/adev/shared-docs/components/top-level-banner/BUILD.bazel
index f1bd2433456e..3b7795da5cb0 100644
--- a/adev/shared-docs/components/top-level-banner/BUILD.bazel
+++ b/adev/shared-docs/components/top-level-banner/BUILD.bazel
@@ -1,5 +1,6 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -29,18 +30,19 @@ sass_binary(
src = "top-level-banner.component.scss",
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":top-level-banner",
"//adev/shared-docs/providers",
"//packages/core",
"//packages/core/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/components/viewers/BUILD.bazel b/adev/shared-docs/components/viewers/BUILD.bazel
index 575d0e65975d..9126d682992f 100644
--- a/adev/shared-docs/components/viewers/BUILD.bazel
+++ b/adev/shared-docs/components/viewers/BUILD.bazel
@@ -1,5 +1,6 @@
load("@io_bazel_rules_sass//:defs.bzl", "sass_binary")
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -44,13 +45,13 @@ sass_binary(
],
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["**/*.spec.ts"],
),
- deps = [
+ interop_deps = [
":viewers",
"//adev/shared-docs/components/breadcrumb",
"//adev/shared-docs/components/copy-source-code-button",
@@ -65,8 +66,11 @@ ts_library(
"//packages/platform-browser/animations",
"//packages/router",
"//packages/router/testing",
- "@npm//@angular/cdk",
- "@npm//@angular/material",
+ ],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
+ deps = [
+ "//:node_modules/@angular/cdk",
+ "//:node_modules/@angular/material",
],
)
diff --git a/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.scss b/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.scss
index baa0fb27bec4..86ee4cd153b3 100644
--- a/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.scss
+++ b/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.scss
@@ -1,5 +1,6 @@
@use '../../../styles/links' as links;
@use '../../../styles/anchor' as anchor;
+@use '../../../styles/media-queries' as mq;
:host {
--translate-y: clamp(5px, 0.25em, 7px);
@@ -8,23 +9,27 @@
.docs-viewer {
display: flex;
flex-direction: column;
- padding: var(--layout-padding);
- max-width: var(--page-width);
- width: 100%;
+ padding: 0px;
box-sizing: border-box;
+ padding-inline: var(--layout-padding);
@media only screen and (max-width: 1430px) {
container: docs-content / inline-size;
}
- // If rendered on the docs page, accommodate width for TOC
- docs-docs & {
- @media only screen and (min-width: 1430px) and (max-width: 1550px) {
- width: calc(100% - 195px - var(--layout-padding));
- max-width: var(--page-width);
- }
+ @include mq.for-big-desktop-up {
+ max-width: var(--page-width);
}
+
+ //applying styles when TOC position got translated to the top right
+ @media only screen and (min-width: 1431px) {
+ // take the available space except a reserved area for TOC
+ margin-left: -16rem;
+ width: calc(100% - 16rem);
+ }
+
+
pre {
margin-block: 0;
}
@@ -79,6 +84,7 @@
}
a:not(.docs-github-links):not(.docs-card):not(.docs-pill):not(.docs-example-github-link) {
+
&[href^='http:'],
&[href^='https:'] {
@include links.external-link-with-icon();
@@ -86,6 +92,7 @@
}
&-scroll-margin-large {
+
h2,
h3 {
scroll-margin: 5em;
@@ -95,7 +102,8 @@
.docs-header {
margin-block-end: 1rem;
- & > p:first-child {
+
+ &>p:first-child {
color: var(--quaternary-contrast);
font-weight: 500;
margin: 0;
@@ -126,4 +134,4 @@
}
}
}
-}
+}
\ No newline at end of file
diff --git a/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.spec.ts b/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.spec.ts
index 00e362d35233..3c544bcd7de4 100644
--- a/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.spec.ts
+++ b/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.spec.ts
@@ -86,7 +86,7 @@ describe('DocViewer', () => {
{provide: EXAMPLE_VIEWER_CONTENT_LOADER, useValue: exampleContentSpy},
{provide: NavigationState, useValue: navigationStateSpy},
],
- }).compileComponents();
+ });
fixture = TestBed.createComponent(DocViewer);
fixture.detectChanges();
diff --git a/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.ts b/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.ts
index 05c6b031afdc..e68b23dd097b 100644
--- a/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.ts
+++ b/adev/shared-docs/components/viewers/docs-viewer/docs-viewer.component.ts
@@ -58,6 +58,7 @@ export const GITHUB_CONTENT_URL = 'https://github.com/angular/angular/blob/main/
encapsulation: ViewEncapsulation.None,
host: {
'[class.docs-animate-content]': 'animateContent',
+ '[class.docs-with-TOC]': 'hasToc',
},
})
export class DocViewer implements OnChanges {
diff --git a/adev/shared-docs/components/viewers/example-viewer/example-viewer.component.spec.ts b/adev/shared-docs/components/viewers/example-viewer/example-viewer.component.spec.ts
index 0db6fca76922..3dc67474d005 100644
--- a/adev/shared-docs/components/viewers/example-viewer/example-viewer.component.spec.ts
+++ b/adev/shared-docs/components/viewers/example-viewer/example-viewer.component.spec.ts
@@ -40,7 +40,7 @@ describe('ExampleViewer', () => {
{provide: EXAMPLE_VIEWER_CONTENT_LOADER, useValue: exampleContentSpy},
{provide: ActivatedRoute, useValue: {snapshot: {fragment: 'fragment'}}},
],
- }).compileComponents();
+ });
fixture = TestBed.createComponent(ExampleViewer);
component = fixture.componentInstance;
componentRef = fixture.componentRef;
diff --git a/adev/shared-docs/directives/BUILD.bazel b/adev/shared-docs/directives/BUILD.bazel
index 759ea98aab8f..9c861488bd3e 100644
--- a/adev/shared-docs/directives/BUILD.bazel
+++ b/adev/shared-docs/directives/BUILD.bazel
@@ -1,18 +1,19 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
-ts_library(
+ts_project(
name = "directives",
srcs = [
"index.ts",
],
- visibility = [
- "//adev/shared-docs:__subpackages__",
- ],
- deps = [
+ interop_deps = [
"//adev/shared-docs/directives/click-outside",
"//adev/shared-docs/directives/external-link",
"//adev/shared-docs/directives/search-item",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
+ visibility = [
+ "//adev/shared-docs:__subpackages__",
+ ],
)
diff --git a/adev/shared-docs/directives/click-outside/BUILD.bazel b/adev/shared-docs/directives/click-outside/BUILD.bazel
index 32bed5e4047e..4cbc63a9f7d6 100644
--- a/adev/shared-docs/directives/click-outside/BUILD.bazel
+++ b/adev/shared-docs/directives/click-outside/BUILD.bazel
@@ -1,4 +1,5 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -16,13 +17,13 @@ ng_module(
],
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":click-outside",
"//packages/core",
"//packages/core/testing",
@@ -30,6 +31,7 @@ ts_library(
"//packages/router",
"//packages/router/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/directives/external-link/BUILD.bazel b/adev/shared-docs/directives/external-link/BUILD.bazel
index f95035631f91..0d4d2644ea72 100644
--- a/adev/shared-docs/directives/external-link/BUILD.bazel
+++ b/adev/shared-docs/directives/external-link/BUILD.bazel
@@ -1,4 +1,5 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
@@ -19,13 +20,13 @@ ng_module(
],
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":external-link",
"//adev/shared-docs/providers",
"//packages/core",
@@ -34,6 +35,7 @@ ts_library(
"//packages/router",
"//packages/router/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/directives/search-item/search-item.directive.ts b/adev/shared-docs/directives/search-item/search-item.directive.ts
index 7e8f185baa45..c7e8c9e6a8e4 100644
--- a/adev/shared-docs/directives/search-item/search-item.directive.ts
+++ b/adev/shared-docs/directives/search-item/search-item.directive.ts
@@ -17,6 +17,8 @@ import {SearchResultItem} from '../../interfaces';
},
})
export class SearchItem implements Highlightable {
+ // Those inputs are required by the Highlightable interface
+ // We can't migrate them to signals yet
@Input() item?: SearchResultItem;
@Input() disabled = false;
diff --git a/adev/shared-docs/interfaces/BUILD.bazel b/adev/shared-docs/interfaces/BUILD.bazel
index a3e17437296c..e1a5c55e0966 100644
--- a/adev/shared-docs/interfaces/BUILD.bazel
+++ b/adev/shared-docs/interfaces/BUILD.bazel
@@ -1,19 +1,20 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
-ts_library(
+ts_project(
name = "interfaces",
srcs = [
"index.ts",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = ["//adev/shared-docs:__subpackages__"],
deps = [
- ":lib",
+ ":lib_rjs",
],
)
-ts_library(
+ts_project(
name = "lib",
srcs = glob(
[
@@ -24,10 +25,13 @@ ts_library(
"**/*.spec.ts",
],
),
- deps = [
+ interop_deps = [
"//packages/core",
"//packages/router",
- "@npm//@types/node",
- "@npm//@webcontainer/api",
+ ],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
+ deps = [
+ "//:node_modules/@types/node",
+ "//:node_modules/@webcontainer/api",
],
)
diff --git a/adev/shared-docs/pipeline/BUILD.bazel b/adev/shared-docs/pipeline/BUILD.bazel
index 3917ca7e35a4..b65c77a61182 100644
--- a/adev/shared-docs/pipeline/BUILD.bazel
+++ b/adev/shared-docs/pipeline/BUILD.bazel
@@ -12,7 +12,7 @@ esbuild_esm_bundle(
define = {
"HANDLE_MERMAID": "true",
},
- entry_point = "//adev/shared-docs/pipeline/guides:index.ts",
+ entry_point = "//adev/shared-docs/pipeline/guides:index.mts",
# JSDOM should not be bundled because it has workers and dynamic imports.
# playwright-core cannot be bundled because of its cjs usage.
external = [
@@ -33,7 +33,7 @@ esbuild_esm_bundle(
define = {
"HANDLE_MERMAID": "false",
},
- entry_point = "//adev/shared-docs/pipeline/guides:index.ts",
+ entry_point = "//adev/shared-docs/pipeline/guides:index.mts",
# JSDOM should not be bundled because it has workers and dynamic imports.
external = [
"jsdom",
@@ -49,7 +49,7 @@ esbuild_esm_bundle(
esbuild_esm_bundle(
name = "stackblitz-bundle",
- entry_point = "//adev/shared-docs/pipeline/examples/stackblitz:index.ts",
+ entry_point = "//adev/shared-docs/pipeline/examples/stackblitz:index.mts",
# JSDOM should not be bundled because it has workers and dynamic imports.
external = ["jsdom"],
output = "stackblitz.mjs",
@@ -63,7 +63,7 @@ esbuild_esm_bundle(
esbuild_esm_bundle(
name = "previews-bundle",
- entry_point = "//adev/shared-docs/pipeline/examples/previews:index.ts",
+ entry_point = "//adev/shared-docs/pipeline/examples/previews:index.mts",
external = [
"typescript",
],
@@ -79,7 +79,7 @@ esbuild_esm_bundle(
esbuild_esm_bundle(
name = "zip-bundle",
- entry_point = "//adev/shared-docs/pipeline/examples/zip:index.ts",
+ entry_point = "//adev/shared-docs/pipeline/examples/zip:index.mts",
output = "zip.mjs",
platform = "node",
target = "es2022",
@@ -91,7 +91,7 @@ esbuild_esm_bundle(
esbuild_esm_bundle(
name = "playground-bundle",
- entry_point = "//adev/shared-docs/pipeline/tutorials:playground.ts",
+ entry_point = "//adev/shared-docs/pipeline/tutorials:playground.mts",
output = "playground.mjs",
platform = "node",
target = "es2022",
@@ -103,7 +103,7 @@ esbuild_esm_bundle(
esbuild_esm_bundle(
name = "tutorial-bundle",
- entry_point = "//adev/shared-docs/pipeline/tutorials:tutorial.ts",
+ entry_point = "//adev/shared-docs/pipeline/tutorials:tutorial.mts",
output = "tutorial.mjs",
platform = "node",
target = "es2022",
@@ -115,7 +115,7 @@ esbuild_esm_bundle(
esbuild_esm_bundle(
name = "navigation-bundle",
- entry_point = "//adev/shared-docs/pipeline/navigation:index.ts",
+ entry_point = "//adev/shared-docs/pipeline/navigation:index.mts",
output = "navigation.mjs",
platform = "node",
target = "es2022",
diff --git a/adev/shared-docs/pipeline/api-gen/extraction/BUILD.bazel b/adev/shared-docs/pipeline/api-gen/extraction/BUILD.bazel
index 1d5cd25ee3a4..fab88e937500 100644
--- a/adev/shared-docs/pipeline/api-gen/extraction/BUILD.bazel
+++ b/adev/shared-docs/pipeline/api-gen/extraction/BUILD.bazel
@@ -1,12 +1,12 @@
load("@angular//tools/esm-interop:index.bzl", "nodejs_binary")
-load("@npm//@angular/build-tooling/bazel:defaults.bzl", "ts_library")
load("@npm//@angular/build-tooling/bazel/esbuild:index.bzl", "esbuild_esm_bundle")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages__"])
esbuild_esm_bundle(
name = "bin",
- entry_point = ":index.ts",
+ entry_point = ":index.mts",
external = [
"@angular/compiler-cli",
"typescript",
@@ -16,27 +16,26 @@ esbuild_esm_bundle(
target = "es2022",
deps = [
":extract_api_to_json_lib",
- "@angular//packages/compiler-cli",
- "@npm//typescript",
],
)
-ts_library(
+ts_project(
name = "extract_api_to_json_lib",
srcs = glob(
- ["**/*.ts"],
+ ["**/*.mts"],
exclude = [
- "**/*.spec.ts",
+ "**/*.spec.mts",
],
),
- devmode_module = "commonjs",
- tsconfig = "//adev:tsconfig.json",
- deps = [
+ interop_deps = [
"@angular//packages/compiler",
"@angular//packages/compiler-cli",
- "@npm//@bazel/runfiles",
- "@npm//@types/node",
- "@npm//typescript",
+ ],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
+ deps = [
+ "//:node_modules/@bazel/runfiles",
+ "//:node_modules/@types/node",
+ "//:node_modules/typescript",
],
)
@@ -44,17 +43,11 @@ ts_library(
nodejs_binary(
name = "extract_api_to_json",
data = [
- ":bin",
"@angular//packages/compiler",
- "@angular//packages/compiler-cli",
+ "@angular//packages/compiler-cli:npm_package",
"@npm//typescript",
],
entry_point = "bin.mjs",
- # Note: Using the linker here as we need it for ESM. The linker is not
- # super reliably when running concurrently on Windows- but we have existing
- # actions using the linker. An alternative would be to:
- # - bundle the Angular compiler into a CommonJS bundle
- # - use the patched resolution- but also patch the ESM imports (similar to how FW does it).
visibility = ["//visibility:public"],
)
diff --git a/adev/shared-docs/pipeline/api-gen/extraction/index.ts b/adev/shared-docs/pipeline/api-gen/extraction/index.mts
similarity index 99%
rename from adev/shared-docs/pipeline/api-gen/extraction/index.ts
rename to adev/shared-docs/pipeline/api-gen/extraction/index.mts
index 3c255a79f3b9..92c24917953b 100644
--- a/adev/shared-docs/pipeline/api-gen/extraction/index.ts
+++ b/adev/shared-docs/pipeline/api-gen/extraction/index.mts
@@ -19,7 +19,7 @@ import {
NgtscProgram,
} from '@angular/compiler-cli';
import ts from 'typescript';
-import {EXAMPLES_PATH, interpolateCodeExamples} from './interpolate_code_examples';
+import {EXAMPLES_PATH, interpolateCodeExamples} from './interpolate_code_examples.mjs';
function main() {
const [paramFilePath] = process.argv.slice(2);
diff --git a/adev/shared-docs/pipeline/api-gen/extraction/interpolate_code_examples.ts b/adev/shared-docs/pipeline/api-gen/extraction/interpolate_code_examples.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/extraction/interpolate_code_examples.ts
rename to adev/shared-docs/pipeline/api-gen/extraction/interpolate_code_examples.mts
diff --git a/adev/shared-docs/pipeline/api-gen/extraction/test/BUILD.bazel b/adev/shared-docs/pipeline/api-gen/extraction/test/BUILD.bazel
index 1b73461e5623..fb1c11aae620 100644
--- a/adev/shared-docs/pipeline/api-gen/extraction/test/BUILD.bazel
+++ b/adev/shared-docs/pipeline/api-gen/extraction/test/BUILD.bazel
@@ -1,17 +1,18 @@
load("//adev/shared-docs/pipeline/api-gen/extraction:extract_api_to_json.bzl", "extract_api_to_json")
-load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
+load("//tools:defaults.bzl", "jasmine_node_test")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages__"])
extract_api_to_json(
name = "test",
srcs = [
- "fake-source.ts",
+ "fake-source.mts",
"//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:dummy_package",
],
- entry_point = "fake-source.ts",
+ entry_point = "fake-source.mts",
import_map = {
- "//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.ts": "@angular/dummy-package",
+ "//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.mts": "@angular/dummy-package",
},
module_name = "@angular/core",
output_name = "api.json",
@@ -22,15 +23,15 @@ extract_api_to_json(
extract_api_to_json(
name = "test_with_extra_entries",
srcs = [
- "fake-source.ts",
+ "fake-source.mts",
"//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:dummy_package",
],
- entry_point = "fake-source.ts",
+ entry_point = "fake-source.mts",
extra_entries = [
"extra.json",
],
import_map = {
- "//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.ts": "@angular/dummy-package",
+ "//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.mts": "@angular/dummy-package",
},
module_name = "@angular/core",
output_name = "extra_api.json",
@@ -40,20 +41,24 @@ extract_api_to_json(
filegroup(
name = "source_files",
- srcs = ["fake-source.ts"],
+ srcs = ["fake-source.mts"],
)
-ts_library(
+ts_project(
name = "unit_test_lib",
testonly = True,
srcs =
- glob(["*.spec.ts"]) + [
- "fake-examples.ts",
+ glob(["*.spec.mts"]) + [
+ "fake-examples.mts",
],
- deps = [
- "//adev/shared-docs/pipeline/api-gen/extraction:extract_api_to_json_lib",
+ interop_deps = [
"@angular//packages/compiler-cli",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
+ deps = [
+ "//:node_modules/@types/node",
+ "//adev/shared-docs/pipeline/api-gen/extraction:extract_api_to_json_lib_rjs",
+ ],
)
jasmine_node_test(
diff --git a/adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point/BUILD.bazel b/adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point/BUILD.bazel
index 2a400dc097d1..1ee51a8aaeb5 100644
--- a/adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point/BUILD.bazel
+++ b/adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point/BUILD.bazel
@@ -2,5 +2,5 @@ package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages
filegroup(
name = "dummy_package",
- srcs = ["index.ts"],
+ srcs = ["index.mts"],
)
diff --git a/adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point/index.ts b/adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point/index.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point/index.ts
rename to adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point/index.mts
diff --git a/adev/shared-docs/pipeline/api-gen/extraction/test/fake-examples.ts b/adev/shared-docs/pipeline/api-gen/extraction/test/fake-examples.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/extraction/test/fake-examples.ts
rename to adev/shared-docs/pipeline/api-gen/extraction/test/fake-examples.mts
diff --git a/adev/shared-docs/pipeline/api-gen/extraction/test/fake-source.ts b/adev/shared-docs/pipeline/api-gen/extraction/test/fake-source.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/extraction/test/fake-source.ts
rename to adev/shared-docs/pipeline/api-gen/extraction/test/fake-source.mts
diff --git a/adev/shared-docs/pipeline/api-gen/extraction/test/interpolate_code_examples.spec.ts b/adev/shared-docs/pipeline/api-gen/extraction/test/interpolate_code_examples.spec.mts
similarity index 98%
rename from adev/shared-docs/pipeline/api-gen/extraction/test/interpolate_code_examples.spec.ts
rename to adev/shared-docs/pipeline/api-gen/extraction/test/interpolate_code_examples.spec.mts
index 480913193897..6f6be39944bf 100644
--- a/adev/shared-docs/pipeline/api-gen/extraction/test/interpolate_code_examples.spec.ts
+++ b/adev/shared-docs/pipeline/api-gen/extraction/test/interpolate_code_examples.spec.mts
@@ -7,9 +7,9 @@
*/
import fs from 'fs';
-import {interpolateCodeExamples} from '../interpolate_code_examples';
+import {interpolateCodeExamples} from '../interpolate_code_examples.mjs';
import {DocEntry} from '@angular/compiler-cli';
-import {mockReadFileSync} from './fake-examples';
+import {mockReadFileSync} from './fake-examples.mjs';
const tsMdBlock = (code: string) => '```angular-ts\n' + code + '\n```';
const htmlMdBlock = (code: string) => '```angular-html\n' + code + '\n```';
diff --git a/adev/shared-docs/pipeline/api-gen/manifest/BUILD.bazel b/adev/shared-docs/pipeline/api-gen/manifest/BUILD.bazel
index 8040989a39db..596075d05330 100644
--- a/adev/shared-docs/pipeline/api-gen/manifest/BUILD.bazel
+++ b/adev/shared-docs/pipeline/api-gen/manifest/BUILD.bazel
@@ -1,12 +1,12 @@
-load("@npm//@angular/build-tooling/bazel:defaults.bzl", "ts_library")
load("@angular//tools/esm-interop:index.bzl", "nodejs_binary")
load("@npm//@angular/build-tooling/bazel/esbuild:index.bzl", "esbuild_esm_bundle")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages__"])
esbuild_esm_bundle(
name = "bin",
- entry_point = ":index.ts",
+ entry_point = ":index.mts",
external = [
"@angular/compiler-cli",
],
@@ -19,15 +19,16 @@ esbuild_esm_bundle(
],
)
-ts_library(
+ts_project(
name = "generate_api_manifest_lib",
- srcs = glob(["**/*.ts"]),
- devmode_module = "commonjs",
- tsconfig = "//adev:tsconfig.json",
- deps = [
+ srcs = glob(["**/*.mts"]),
+ interop_deps = [
"@angular//packages/compiler-cli",
- "@npm//@bazel/runfiles",
- "@npm//@types/node",
+ ],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
+ deps = [
+ "//:node_modules/@bazel/runfiles",
+ "//:node_modules/@types/node",
],
)
diff --git a/adev/shared-docs/pipeline/api-gen/manifest/generate_manifest.ts b/adev/shared-docs/pipeline/api-gen/manifest/generate_manifest.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/manifest/generate_manifest.ts
rename to adev/shared-docs/pipeline/api-gen/manifest/generate_manifest.mts
diff --git a/adev/shared-docs/pipeline/api-gen/manifest/index.ts b/adev/shared-docs/pipeline/api-gen/manifest/index.mts
similarity index 93%
rename from adev/shared-docs/pipeline/api-gen/manifest/index.ts
rename to adev/shared-docs/pipeline/api-gen/manifest/index.mts
index 0f4f968ee165..90e80b4cf33e 100644
--- a/adev/shared-docs/pipeline/api-gen/manifest/index.ts
+++ b/adev/shared-docs/pipeline/api-gen/manifest/index.mts
@@ -7,7 +7,7 @@
*/
import {readFileSync, writeFileSync} from 'fs';
-import {generateManifest} from './generate_manifest';
+import {generateManifest} from './generate_manifest.mjs';
import type {EntryCollection} from '@angular/compiler-cli';
function main() {
diff --git a/adev/shared-docs/pipeline/api-gen/manifest/test/BUILD.bazel b/adev/shared-docs/pipeline/api-gen/manifest/test/BUILD.bazel
index f14ac680a0a1..d558578db341 100644
--- a/adev/shared-docs/pipeline/api-gen/manifest/test/BUILD.bazel
+++ b/adev/shared-docs/pipeline/api-gen/manifest/test/BUILD.bazel
@@ -1,6 +1,7 @@
load("//adev/shared-docs/pipeline/api-gen/extraction:extract_api_to_json.bzl", "extract_api_to_json")
load("//adev/shared-docs/pipeline/api-gen/manifest:generate_api_manifest.bzl", "generate_api_manifest")
-load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
+load("//tools:defaults.bzl", "jasmine_node_test")
+load("//tools:defaults2.bzl", "ts_project")
generate_api_manifest(
name = "test",
@@ -12,28 +13,34 @@ generate_api_manifest(
extract_api_to_json(
name = "another_extraction",
- srcs = ["another-fake-source.ts"],
- entry_point = "another-fake-source.ts",
+ srcs = ["another-fake-source.mts"],
+ entry_point = "another-fake-source.mts",
module_name = "@angular/router",
output_name = "api.json",
private_modules = [""],
repo = "angular/angular",
)
-ts_library(
+ts_project(
name = "unit_test_lib",
testonly = True,
srcs = [
- "manifest.spec.ts",
+ "manifest.spec.mts",
],
+ interop_deps = [
+ "//packages/compiler-cli",
+ ],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
deps = [
- "//adev/shared-docs/pipeline/api-gen/manifest:generate_api_manifest_lib",
- "@angular//packages/compiler-cli",
+ "//adev/shared-docs/pipeline/api-gen/manifest:generate_api_manifest_lib_rjs",
],
)
jasmine_node_test(
name = "unit_tests",
- data = ["@angular//packages/compiler-cli"],
+ data = [
+ "//packages:package_json",
+ "//packages/compiler-cli",
+ ],
deps = [":unit_test_lib"],
)
diff --git a/adev/shared-docs/pipeline/api-gen/manifest/test/another-fake-source.ts b/adev/shared-docs/pipeline/api-gen/manifest/test/another-fake-source.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/manifest/test/another-fake-source.ts
rename to adev/shared-docs/pipeline/api-gen/manifest/test/another-fake-source.mts
diff --git a/adev/shared-docs/pipeline/api-gen/manifest/test/manifest.spec.ts b/adev/shared-docs/pipeline/api-gen/manifest/test/manifest.spec.mts
similarity index 99%
rename from adev/shared-docs/pipeline/api-gen/manifest/test/manifest.spec.ts
rename to adev/shared-docs/pipeline/api-gen/manifest/test/manifest.spec.mts
index 866b0a065858..c67ddfe6283a 100644
--- a/adev/shared-docs/pipeline/api-gen/manifest/test/manifest.spec.ts
+++ b/adev/shared-docs/pipeline/api-gen/manifest/test/manifest.spec.mts
@@ -8,7 +8,7 @@
// @ts-ignore This compiles fine, but Webstorm doesn't like the ESM import in a CJS context.
import {DocEntry, EntryType, FunctionEntry, JsDocTagEntry} from '@angular/compiler-cli';
-import {generateManifest, Manifest} from '../generate_manifest';
+import {generateManifest, Manifest} from '../generate_manifest.mjs';
describe('api manifest generation', () => {
it('should generate a manifest from multiple collections', () => {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/BUILD.bazel b/adev/shared-docs/pipeline/api-gen/rendering/BUILD.bazel
index fe4fac016d4b..7789138e0e14 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/BUILD.bazel
+++ b/adev/shared-docs/pipeline/api-gen/rendering/BUILD.bazel
@@ -1,12 +1,12 @@
-load("@npm//@angular/build-tooling/bazel:defaults.bzl", "ts_library")
load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary")
load("@npm//@angular/build-tooling/bazel/esbuild:index.bzl", "esbuild_esm_bundle")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//adev/shared-docs/pipeline/api-gen:__subpackages__"])
esbuild_esm_bundle(
name = "bin",
- entry_point = ":index.ts",
+ entry_point = ":index.mts",
output = "bin.mjs",
platform = "node",
target = "es2022",
@@ -15,37 +15,37 @@ esbuild_esm_bundle(
],
)
-ts_library(
+ts_project(
name = "render_api_to_html_lib",
srcs = glob(
[
- "**/*.ts",
+ "**/*.mts",
"**/*.tsx",
+ "shiki.d.ts",
],
exclude = [
- "entities.ts",
+ "entities.mts",
],
),
- devmode_module = "commonjs",
- tsconfig = "//adev:tsconfig.json",
+ tsconfig = "//adev/shared-docs:tsconfig_build",
deps = [
- ":entities",
- "@npm//@bazel/runfiles",
- "@npm//@types/node",
- "@npm//html-entities",
- "@npm//marked",
- "@npm//preact",
- "@npm//preact-render-to-string",
- "@npm//shiki",
+ ":entities_rjs",
+ "//:node_modules/@bazel/runfiles",
+ "//:node_modules/@types/node",
+ "//:node_modules/html-entities",
+ "//:node_modules/marked",
+ "//:node_modules/preact",
+ "//:node_modules/preact-render-to-string",
+ "//:node_modules/shiki",
],
)
-ts_library(
+ts_project(
name = "entities",
srcs = [
- "entities.ts",
+ "entities.mts",
],
- tsconfig = "//adev:tsconfig.json",
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = [
"//adev/shared-docs/pipeline/api-gen/rendering:__pkg__",
"//docs/pipeline/guides:__pkg__",
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/cli-entities.ts b/adev/shared-docs/pipeline/api-gen/rendering/cli-entities.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/cli-entities.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/cli-entities.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/entities.ts b/adev/shared-docs/pipeline/api-gen/rendering/entities.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/entities.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/entities.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/entities/categorization.ts b/adev/shared-docs/pipeline/api-gen/rendering/entities/categorization.mts
similarity index 97%
rename from adev/shared-docs/pipeline/api-gen/rendering/entities/categorization.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/entities/categorization.mts
index 637c1772e0b0..7d57d9226c51 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/entities/categorization.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/entities/categorization.mts
@@ -22,13 +22,12 @@ import {
MethodEntry,
PropertyEntry,
TypeAliasEntry,
-} from '../entities';
+} from '../entities.mjs';
-import {CliCommand} from '../cli-entities';
+import {CliCommand} from '../cli-entities.mjs';
import {
ClassEntryRenderable,
- CliCommandRenderable,
ConstantEntryRenderable,
DecoratorEntryRenderable,
DocEntryRenderable,
@@ -39,8 +38,8 @@ import {
MemberEntryRenderable,
MethodEntryRenderable,
TypeAliasEntryRenderable,
-} from './renderables';
-import {HasJsDocTags} from './traits';
+} from './renderables.mjs';
+import {HasJsDocTags} from './traits.mjs';
/** Gets whether the given entry represents a class */
export function isClassEntry(entry: DocEntryRenderable): entry is ClassEntryRenderable;
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/entities/renderables.ts b/adev/shared-docs/pipeline/api-gen/rendering/entities/renderables.mts
similarity index 97%
rename from adev/shared-docs/pipeline/api-gen/rendering/entities/renderables.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/entities/renderables.mts
index 5774b16fbcd3..43116cea52ce 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/entities/renderables.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/entities/renderables.mts
@@ -20,11 +20,11 @@ import {
ParameterEntry,
PipeEntry,
TypeAliasEntry,
-} from '../entities';
+} from '../entities.mjs';
-import {CliCommand, CliOption} from '../cli-entities';
+import {CliCommand, CliOption} from '../cli-entities.mjs';
-import {HasRenderableToc} from './traits';
+import {HasRenderableToc} from './traits.mjs';
/** JsDoc tag info augmented with transformed content for rendering. */
export interface JsDocTagRenderable extends JsDocTagEntry {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/entities/traits.ts b/adev/shared-docs/pipeline/api-gen/rendering/entities/traits.mts
similarity index 98%
rename from adev/shared-docs/pipeline/api-gen/rendering/entities/traits.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/entities/traits.mts
index c3319d1c1bf8..ad5c727a5692 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/entities/traits.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/entities/traits.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {JsDocTagEntry, MemberEntry, ParameterEntry} from '../entities';
+import {JsDocTagEntry, MemberEntry, ParameterEntry} from '../entities.mjs';
import {
CodeLineRenderable,
@@ -14,7 +14,7 @@ import {
LinkEntryRenderable,
MemberEntryRenderable,
ParameterEntryRenderable,
-} from './renderables';
+} from './renderables.mjs';
/** A doc entry that has jsdoc tags. */
export interface HasJsDocTags {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/index.ts b/adev/shared-docs/pipeline/api-gen/rendering/index.mts
similarity index 93%
rename from adev/shared-docs/pipeline/api-gen/rendering/index.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/index.mts
index e69fb2621975..fcd3234240b3 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/index.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/index.mts
@@ -8,14 +8,14 @@
import {existsSync, mkdirSync, readFileSync, writeFileSync} from 'fs';
import path from 'path';
-import {CliCommand} from './cli-entities';
-import {DocEntry} from './entities';
-import {isCliEntry, isHiddenEntry} from './entities/categorization';
-import {configureMarkedGlobally} from './marked/configuration';
-import {getRenderable} from './processing';
-import {renderEntry} from './rendering';
-import {initHighlighter} from './shiki/shiki';
-import {setCurrentSymbol, setSymbols} from './symbol-context';
+import {CliCommand} from './cli-entities.mjs';
+import {DocEntry} from './entities.mjs';
+import {isCliEntry, isHiddenEntry} from './entities/categorization.mjs';
+import {configureMarkedGlobally} from './marked/configuration.mjs';
+import {getRenderable} from './processing.mjs';
+import {renderEntry} from './rendering.mjs';
+import {initHighlighter} from './shiki/shiki.mjs';
+import {setCurrentSymbol, setSymbols} from './symbol-context.mjs';
/** The JSON data file format for extracted API reference info. */
interface EntryCollection {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/marked/configuration.ts b/adev/shared-docs/pipeline/api-gen/rendering/marked/configuration.mts
similarity index 90%
rename from adev/shared-docs/pipeline/api-gen/rendering/marked/configuration.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/marked/configuration.mts
index e682bd54d06d..40a708e2c4cf 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/marked/configuration.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/marked/configuration.mts
@@ -7,7 +7,7 @@
*/
import {marked} from 'marked';
-import {renderer} from './renderer';
+import {renderer} from './renderer.mjs';
/** Globally configures marked for rendering JsDoc content to HTML. */
export function configureMarkedGlobally() {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/marked/renderer.ts b/adev/shared-docs/pipeline/api-gen/rendering/marked/renderer.mts
similarity index 97%
rename from adev/shared-docs/pipeline/api-gen/rendering/marked/renderer.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/marked/renderer.mts
index b801c486de86..2568b7e25efe 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/marked/renderer.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/marked/renderer.mts
@@ -7,8 +7,8 @@
*/
import {Renderer, Tokens} from 'marked';
-import {codeToHtml} from '../shiki/shiki';
-import {SECTION_HEADING, SECTION_SUB_HEADING} from '../styling/css-classes';
+import {codeToHtml} from '../shiki/shiki.mjs';
+import {SECTION_HEADING, SECTION_SUB_HEADING} from '../styling/css-classes.mjs';
/**
* Custom renderer for marked that will be used to transform markdown files to HTML
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/processing.ts b/adev/shared-docs/pipeline/api-gen/rendering/processing.mts
similarity index 78%
rename from adev/shared-docs/pipeline/api-gen/rendering/processing.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/processing.mts
index e10c64eee6bb..de44a31e6721 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/processing.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/processing.mts
@@ -6,9 +6,9 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {DocEntry} from './entities';
+import {DocEntry} from './entities.mjs';
-import {CliCommand} from './cli-entities';
+import {CliCommand} from './cli-entities.mjs';
import {
isClassEntry,
isCliEntry,
@@ -19,26 +19,26 @@ import {
isInitializerApiFunctionEntry,
isInterfaceEntry,
isTypeAliasEntry,
-} from './entities/categorization';
-import {CliCommandRenderable, DocEntryRenderable} from './entities/renderables';
-import {getClassRenderable} from './transforms/class-transforms';
-import {getCliRenderable} from './transforms/cli-transforms';
-import {getConstantRenderable} from './transforms/constant-transforms';
-import {getDecoratorRenderable} from './transforms/decorator-transforms';
-import {getEnumRenderable} from './transforms/enum-transforms';
-import {getFunctionRenderable} from './transforms/function-transforms';
-import {getInitializerApiFunctionRenderable} from './transforms/initializer-api-functions-transform';
-import {getInterfaceRenderable} from './transforms/interface-transforms';
+} from './entities/categorization.mjs';
+import {CliCommandRenderable, DocEntryRenderable} from './entities/renderables.mjs';
+import {getClassRenderable} from './transforms/class-transforms.mjs';
+import {getCliRenderable} from './transforms/cli-transforms.mjs';
+import {getConstantRenderable} from './transforms/constant-transforms.mjs';
+import {getDecoratorRenderable} from './transforms/decorator-transforms.mjs';
+import {getEnumRenderable} from './transforms/enum-transforms.mjs';
+import {getFunctionRenderable} from './transforms/function-transforms.mjs';
+import {getInitializerApiFunctionRenderable} from './transforms/initializer-api-functions-transform.mjs';
+import {getInterfaceRenderable} from './transforms/interface-transforms.mjs';
import {
addHtmlAdditionalLinks,
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './transforms/jsdoc-transforms';
-import {addModuleName} from './transforms/module-name';
-import {addRepo} from './transforms/repo';
-import {getTypeAliasRenderable} from './transforms/type-alias-transforms';
+} from './transforms/jsdoc-transforms.mjs';
+import {addModuleName} from './transforms/module-name.mjs';
+import {addRepo} from './transforms/repo.mjs';
+import {getTypeAliasRenderable} from './transforms/type-alias-transforms.mjs';
export function getRenderable(
entry: DocEntry | CliCommand,
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/block-c.ts b/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/block-c.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/block-c.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/block-c.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/html.ts b/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/html.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/html.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/html.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-c-only.ts b/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-c-only.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-c-only.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-c-only.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-c.ts b/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-c.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-c.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-c.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-hash.ts b/adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-hash.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-hash.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/regions/region-matchers/inline-hash.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/regions/region-parser.ts b/adev/shared-docs/pipeline/api-gen/rendering/regions/region-parser.mts
similarity index 94%
rename from adev/shared-docs/pipeline/api-gen/rendering/regions/region-parser.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/regions/region-parser.mts
index 8d7ca4de4894..36faecf7db90 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/regions/region-parser.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/regions/region-parser.mts
@@ -6,12 +6,12 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import * as blockC from './region-matchers/block-c';
-import * as html from './region-matchers/html';
-import * as inlineC from './region-matchers/inline-c';
-import * as inlineCOnly from './region-matchers/inline-c-only';
-import * as inlineHash from './region-matchers/inline-hash';
-import {FileType, removeEslintComments} from './remove-eslint-comments';
+import * as blockC from './region-matchers/block-c.mjs';
+import * as html from './region-matchers/html.mjs';
+import * as inlineC from './region-matchers/inline-c.mjs';
+import * as inlineCOnly from './region-matchers/inline-c-only.mjs';
+import * as inlineHash from './region-matchers/inline-hash.mjs';
+import {FileType, removeEslintComments} from './remove-eslint-comments.mjs';
const WHOLE_FILE_REGION_NAME = '';
const DEFAULT_PLASTER = '. . .';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/regions/remove-eslint-comments.ts b/adev/shared-docs/pipeline/api-gen/rendering/regions/remove-eslint-comments.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/regions/remove-eslint-comments.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/regions/remove-eslint-comments.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/rendering.ts b/adev/shared-docs/pipeline/api-gen/rendering/rendering.mts
similarity index 94%
rename from adev/shared-docs/pipeline/api-gen/rendering/rendering.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/rendering.mts
index a054ba5ade09..bb4a2b1de849 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/rendering.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/rendering.mts
@@ -18,8 +18,8 @@ import {
isInitializerApiFunctionEntry,
isInterfaceEntry,
isTypeAliasEntry,
-} from './entities/categorization';
-import {CliCommandRenderable, DocEntryRenderable} from './entities/renderables';
+} from './entities/categorization.mjs';
+import {CliCommandRenderable, DocEntryRenderable} from './entities/renderables.mjs';
import {ClassReference} from './templates/class-reference';
import {CliCommandReference} from './templates/cli-reference';
import {ConstantReference} from './templates/constant-reference';
@@ -28,7 +28,7 @@ import {EnumReference} from './templates/enum-reference';
import {FunctionReference} from './templates/function-reference';
import {InitializerApiFunction} from './templates/initializer-api-function';
import {TypeAliasReference} from './templates/type-alias-reference';
-import {setCurrentSymbol} from './symbol-context';
+import {setCurrentSymbol} from './symbol-context.mjs';
/** Given a doc entry, get the transformed version of the entry for rendering. */
export function renderEntry(renderable: DocEntryRenderable | CliCommandRenderable): string {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/index.d.ts b/adev/shared-docs/pipeline/api-gen/rendering/shiki.d.ts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/index.d.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/shiki.d.ts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/shiki/shiki.ts b/adev/shared-docs/pipeline/api-gen/rendering/shiki/shiki.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/shiki/shiki.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/shiki/shiki.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/styling/css-classes.ts b/adev/shared-docs/pipeline/api-gen/rendering/styling/css-classes.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/styling/css-classes.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/styling/css-classes.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/symbol-context.ts b/adev/shared-docs/pipeline/api-gen/rendering/symbol-context.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/symbol-context.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/symbol-context.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/class-member-list.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/class-member-list.tsx
index b9e84e5c9686..a59efd4dc558 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/class-member-list.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/class-member-list.tsx
@@ -7,7 +7,7 @@
*/
import {h} from 'preact';
-import {MemberEntryRenderable} from '../entities/renderables';
+import {MemberEntryRenderable} from '../entities/renderables.mjs';
import {ClassMember} from './class-member';
export function ClassMemberList(props: {members: MemberEntryRenderable[]}) {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/class-member.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/class-member.tsx
index 11483a1cc370..c2d0548c56ba 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/class-member.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/class-member.tsx
@@ -12,15 +12,15 @@ import {
isGetterEntry,
isPropertyEntry,
isSetterEntry,
-} from '../entities/categorization';
-import {MemberEntryRenderable, MethodEntryRenderable} from '../entities/renderables';
+} from '../entities/categorization.mjs';
+import {MemberEntryRenderable, MethodEntryRenderable} from '../entities/renderables.mjs';
import {
REFERENCE_MEMBER_CARD,
REFERENCE_MEMBER_CARD_BODY,
REFERENCE_MEMBER_CARD_HEADER,
REFERENCE_MEMBER_CARD_ITEM,
-} from '../styling/css-classes';
-import {getFunctionMetadataRenderable} from '../transforms/function-transforms';
+} from '../styling/css-classes.mjs';
+import {getFunctionMetadataRenderable} from '../transforms/function-transforms.mjs';
import {ClassMethodInfo} from './class-method-info';
import {CodeSymbol} from './code-symbols';
import {DeprecatedLabel} from './deprecated-label';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/class-method-info.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/class-method-info.tsx
index b572fa1d444b..c471b64a6a9b 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/class-method-info.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/class-method-info.tsx
@@ -7,13 +7,8 @@
*/
import {Fragment, h} from 'preact';
-import {
- FunctionEntryRenderable,
- FunctionSignatureMetadataRenderable,
- MethodEntryRenderable,
- ParameterEntryRenderable,
-} from '../entities/renderables';
-import {PARAM_KEYWORD_CLASS_NAME, REFERENCE_MEMBER_CARD_ITEM} from '../styling/css-classes';
+import {FunctionSignatureMetadataRenderable, ParameterEntryRenderable} from '../entities/renderables.mjs';
+import {PARAM_KEYWORD_CLASS_NAME, REFERENCE_MEMBER_CARD_ITEM} from '../styling/css-classes.mjs';
import {DeprecatedLabel} from './deprecated-label';
import {Parameter} from './parameter';
import {RawHtml} from './raw-html';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/class-reference.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/class-reference.tsx
index eeab10f2b0d9..273db4f21901 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/class-reference.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/class-reference.tsx
@@ -7,25 +7,25 @@
*/
import {Fragment, h} from 'preact';
-import {PipeEntry} from '../entities';
+import {PipeEntry} from '../entities.mjs';
import {
ClassEntryRenderable,
DecoratorEntryRenderable,
PipeEntryRenderable,
-} from '../entities/renderables';
-import {codeToHtml} from '../shiki/shiki';
+} from '../entities/renderables.mjs';
+import {ClassMemberList} from './class-member-list';
+import {HeaderApi} from './header-api';
import {
API_REFERENCE_CONTAINER,
REFERENCE_MEMBERS,
SECTION_CONTAINER,
-} from '../styling/css-classes';
-import {ClassMemberList} from './class-member-list';
-import {HeaderApi} from './header-api';
-import {RawHtml} from './raw-html';
-import {SectionApi} from './section-api';
+} from '../styling/css-classes.mjs';
import {SectionDescription} from './section-description';
-import {SectionHeading} from './section-heading';
import {SectionUsageNotes} from './section-usage-notes';
+import {SectionApi} from './section-api';
+import {SectionHeading} from './section-heading';
+import {codeToHtml} from '../shiki/shiki.mjs';
+import {RawHtml} from './raw-html';
/** Component to render a class API reference document. */
export function ClassReference(
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/cli-card.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/cli-card.tsx
index d4cfb69392aa..8551d1f8530e 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/cli-card.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/cli-card.tsx
@@ -7,9 +7,9 @@
*/
import {Fragment, h} from 'preact';
-import {CliCardRenderable} from '../entities/renderables';
+import {CliCardRenderable} from '../entities/renderables.mjs';
import {DeprecatedLabel} from './deprecated-label';
-import {REFERENCE_MEMBER_CARD, REFERENCE_MEMBER_CARD_BODY} from '../styling/css-classes';
+import {REFERENCE_MEMBER_CARD, REFERENCE_MEMBER_CARD_BODY} from '../styling/css-classes.mjs';
export function CliCard(props: {card: CliCardRenderable}) {
return (
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/cli-reference.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/cli-reference.tsx
index 30e7d1c2654e..ac87bd4673c4 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/cli-reference.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/cli-reference.tsx
@@ -7,8 +7,8 @@
*/
import {Fragment, h} from 'preact';
-import {CliCommandRenderable} from '../entities/renderables';
-import {REFERENCE_MEMBERS} from '../styling/css-classes';
+import {CliCommandRenderable} from '../entities/renderables.mjs';
+import {REFERENCE_MEMBERS} from '../styling/css-classes.mjs';
import {CliCard} from './cli-card';
import {HeaderCli} from './header-cli';
import {RawHtml} from './raw-html';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/code-line-group.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/code-line-group.tsx
index 36c1a0dd410f..2bf288fa1928 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/code-line-group.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/code-line-group.tsx
@@ -7,7 +7,7 @@
*/
import {h} from 'preact';
-import {CodeLineRenderable} from '../entities/renderables';
+import {CodeLineRenderable} from '../entities/renderables.mjs';
import {CodeLine} from './code-line';
export function CodeLineGroup(props: {lines: CodeLineRenderable[]}) {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/code-line.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/code-line.tsx
index 77cb934a3635..64b2ae498f8b 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/code-line.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/code-line.tsx
@@ -7,7 +7,7 @@
*/
import {h} from 'preact';
-import {CodeLineRenderable} from '../entities/renderables';
+import {CodeLineRenderable} from '../entities/renderables.mjs';
export function CodeLine(props: {line: CodeLineRenderable}) {
const line = props.line;
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/code-symbols.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/code-symbols.tsx
index 3adfee7a2d51..6e98e5c20630 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/code-symbols.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/code-symbols.tsx
@@ -7,8 +7,8 @@
*/
import {h} from 'preact';
-import {getModuleName} from '../symbol-context';
-import {getLinkToModule} from '../transforms/url-transforms';
+import {getModuleName} from '../symbol-context.mjs';
+import {getLinkToModule} from '../transforms/url-transforms.mjs';
const symbolRegex = /([a-zA-Z_$][a-zA-Z_$0-9\.]*)/;
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/code-table-of-contents.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/code-table-of-contents.tsx
index 6ff8254a88dd..42488c84ada9 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/code-table-of-contents.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/code-table-of-contents.tsx
@@ -9,7 +9,7 @@
import {h} from 'preact';
import {renderToString} from 'preact-render-to-string';
import {CodeLineGroup} from './code-line-group';
-import {HasRenderableToc} from '../entities/traits';
+import {HasRenderableToc} from '../entities/traits.mjs';
export function CodeTableOfContents(props: {entry: HasRenderableToc}) {
const html = `${props.entry.beforeCodeGroups}
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/constant-reference.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/constant-reference.tsx
index 3819c4562b9d..e1c638557e03 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/constant-reference.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/constant-reference.tsx
@@ -7,12 +7,12 @@
*/
import {h} from 'preact';
-import {ConstantEntryRenderable} from '../entities/renderables';
+import {ConstantEntryRenderable} from '../entities/renderables.mjs';
import {HeaderApi} from './header-api';
import {SectionDescription} from './section-description';
import {SectionUsageNotes} from './section-usage-notes';
import {SectionApi} from './section-api';
-import {API_REFERENCE_CONTAINER} from '../styling/css-classes';
+import {API_REFERENCE_CONTAINER} from '../styling/css-classes.mjs';
/** Component to render a constant API reference document. */
export function ConstantReference(entry: ConstantEntryRenderable) {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/deprecated-label.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/deprecated-label.tsx
index 26fbcaa6bfaa..882d684f2352 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/deprecated-label.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/deprecated-label.tsx
@@ -7,7 +7,7 @@
*/
import {Fragment, h} from 'preact';
-import {PARAM_KEYWORD_CLASS_NAME} from '../styling/css-classes';
+import {PARAM_KEYWORD_CLASS_NAME} from '../styling/css-classes.mjs';
export function DeprecatedLabel(props: {
entry:
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/docs-pill-row.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/docs-pill-row.tsx
index 10578b44b708..2dbe55de6b93 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/docs-pill-row.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/docs-pill-row.tsx
@@ -7,7 +7,7 @@
*/
import {Fragment, h} from 'preact';
-import {LinkEntryRenderable} from '../entities/renderables';
+import {LinkEntryRenderable} from '../entities/renderables.mjs';
/** Component to render a function or method parameter reference doc fragment. */
export function DocsPillRow(props: {links: LinkEntryRenderable[]}) {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/docs-reference.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/docs-reference.tsx
index f226ad1a7aef..49ee9f886b21 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/docs-reference.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/docs-reference.tsx
@@ -7,10 +7,10 @@
*/
import {h} from 'preact';
-import {DocEntryRenderable} from '../entities/renderables';
+import {DocEntryRenderable} from '../entities/renderables.mjs';
import {HeaderApi} from './header-api';
import {SectionDescription} from './section-description';
-import {API_REFERENCE_CONTAINER} from '../styling/css-classes';
+import {API_REFERENCE_CONTAINER} from '../styling/css-classes.mjs';
/** Component to render a block or element API reference document. */
export function DocsReference(entry: DocEntryRenderable) {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/enum-reference.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/enum-reference.tsx
index 6aa74e642d13..de0499e0b232 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/enum-reference.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/enum-reference.tsx
@@ -7,11 +7,11 @@
*/
import {h, Fragment} from 'preact';
-import {EnumEntryRenderable, MemberEntryRenderable} from '../entities/renderables';
+import {EnumEntryRenderable, MemberEntryRenderable} from '../entities/renderables.mjs';
import {HeaderApi} from './header-api';
import {SectionDescription} from './section-description';
import {SectionApi} from './section-api';
-import {API_REFERENCE_CONTAINER, REFERENCE_MEMBERS} from '../styling/css-classes';
+import {API_REFERENCE_CONTAINER, REFERENCE_MEMBERS} from '../styling/css-classes.mjs';
import {ClassMember} from './class-member';
/** Component to render a enum API reference document. */
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/function-reference.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/function-reference.tsx
index ddd182b1d9d6..1b202fd76a05 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/function-reference.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/function-reference.tsx
@@ -10,16 +10,16 @@ import {Fragment, h} from 'preact';
import {
FunctionEntryRenderable,
FunctionSignatureMetadataRenderable,
-} from '../entities/renderables';
+} from '../entities/renderables.mjs';
import {
API_REFERENCE_CONTAINER,
REFERENCE_MEMBERS,
REFERENCE_MEMBER_CARD,
REFERENCE_MEMBER_CARD_BODY,
REFERENCE_MEMBER_CARD_HEADER,
-} from '../styling/css-classes';
-import {printInitializerFunctionSignatureLine} from '../transforms/code-transforms';
-import {getFunctionMetadataRenderable} from '../transforms/function-transforms';
+} from '../styling/css-classes.mjs';
+import {printInitializerFunctionSignatureLine} from '../transforms/code-transforms.mjs';
+import {getFunctionMetadataRenderable} from '../transforms/function-transforms.mjs';
import {ClassMethodInfo} from './class-method-info';
import {CodeSymbol} from './code-symbols';
import {HeaderApi} from './header-api';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/header-api.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/header-api.tsx
index da2de4ae9c03..f9d0cd3aedb0 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/header-api.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/header-api.tsx
@@ -7,14 +7,14 @@
*/
import {Fragment, h} from 'preact';
-import {EntryType, isDocEntryWithSourceInfo, PipeEntry} from '../entities';
-import {DocEntryRenderable, PipeEntryRenderable} from '../entities/renderables';
+import {EntryType, isDocEntryWithSourceInfo, PipeEntry} from '../entities.mjs';
+import {DocEntryRenderable, PipeEntryRenderable} from '../entities/renderables.mjs';
import {
HEADER_CLASS_NAME,
HEADER_ENTRY_CATEGORY,
HEADER_ENTRY_LABEL,
HEADER_ENTRY_TITLE,
-} from '../styling/css-classes';
+} from '../styling/css-classes.mjs';
import {DocsPillRow} from './docs-pill-row';
/** Component to render a header of the API page. */
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/header-cli.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/header-cli.tsx
index dd2c475b62b7..1493f55d2f4a 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/header-cli.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/header-cli.tsx
@@ -7,8 +7,8 @@
*/
import {h} from 'preact';
-import {CliCommandRenderable} from '../entities/renderables';
-import {HEADER_CLASS_NAME, HEADER_ENTRY_CATEGORY, HEADER_ENTRY_LABEL, HEADER_ENTRY_TITLE} from '../styling/css-classes';
+import {CliCommandRenderable} from '../entities/renderables.mjs';
+import {HEADER_CLASS_NAME, HEADER_ENTRY_CATEGORY, HEADER_ENTRY_LABEL, HEADER_ENTRY_TITLE} from '../styling/css-classes.mjs';
/** Component to render a header of the CLI page. */
export function HeaderCli(props: {command: CliCommandRenderable}) {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/highlight-ts.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/highlight-ts.tsx
index 5de0ab288341..aeaaed344b68 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/highlight-ts.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/highlight-ts.tsx
@@ -8,7 +8,7 @@
import {h} from 'preact';
import {RawHtml} from './raw-html';
-import {codeToHtml} from '../shiki/shiki';
+import {codeToHtml} from '../shiki/shiki.mjs';
/** Component to render a header of the CLI page. */
export function HighlightTypeScript(props: {code: string}) {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/initializer-api-function.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/initializer-api-function.tsx
index 4d38268eaee7..dce391ee959a 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/initializer-api-function.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/initializer-api-function.tsx
@@ -7,9 +7,9 @@
*/
import {h, JSX} from 'preact';
-import {InitializerApiFunctionRenderable} from '../entities/renderables';
-import {API_REFERENCE_CONTAINER, REFERENCE_MEMBERS} from '../styling/css-classes';
-import {getFunctionMetadataRenderable} from '../transforms/function-transforms';
+import {InitializerApiFunctionRenderable} from '../entities/renderables.mjs';
+import {API_REFERENCE_CONTAINER, REFERENCE_MEMBERS} from '../styling/css-classes.mjs';
+import {getFunctionMetadataRenderable} from '../transforms/function-transforms.mjs';
import {signatureCard} from './function-reference';
import {HeaderApi} from './header-api';
import {SectionApi} from './section-api';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/parameter.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/parameter.tsx
index 103df6875455..55e86703ca16 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/parameter.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/parameter.tsx
@@ -7,9 +7,9 @@
*/
import {h} from 'preact';
-import {ParameterEntryRenderable} from '../entities/renderables';
+import {ParameterEntryRenderable} from '../entities/renderables.mjs';
import {RawHtml} from './raw-html';
-import {PARAM_GROUP_CLASS_NAME} from '../styling/css-classes';
+import {PARAM_GROUP_CLASS_NAME} from '../styling/css-classes.mjs';
import {CodeSymbol} from './code-symbols';
/** Component to render a function or method parameter reference doc fragment. */
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/section-api.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/section-api.tsx
index 3aebe12eb8c4..6ee422c43520 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/section-api.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/section-api.tsx
@@ -7,10 +7,10 @@
*/
import {h} from 'preact';
-import {DocEntryRenderable} from '../entities/renderables';
-import {HasRenderableToc} from '../entities/traits';
+import {DocEntryRenderable} from '../entities/renderables.mjs';
+import {HasRenderableToc} from '../entities/traits.mjs';
import {CodeTableOfContents} from './code-table-of-contents';
-import {SECTION_CONTAINER} from '../styling/css-classes';
+import {SECTION_CONTAINER} from '../styling/css-classes.mjs';
import {SectionHeading} from './section-heading';
const API_SECTION_NAME = 'API';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/section-description.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/section-description.tsx
index d2d741896ed5..a940809840b3 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/section-description.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/section-description.tsx
@@ -7,10 +7,10 @@
*/
import {Fragment, h} from 'preact';
-import {DocEntryRenderable} from '../entities/renderables';
+import {DocEntryRenderable} from '../entities/renderables.mjs';
import {RawHtml} from './raw-html';
import {CodeSymbol} from './code-symbols';
-import {SECTION_CONTAINER} from '../styling/css-classes';
+import {SECTION_CONTAINER} from '../styling/css-classes.mjs';
import {SectionHeading} from './section-heading';
const DESCRIPTION_SECTION_NAME = 'Description';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/section-heading.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/section-heading.tsx
index 2984b2a5eb4a..2963acb1833f 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/section-heading.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/section-heading.tsx
@@ -7,8 +7,8 @@
*/
import {h} from 'preact';
-import {convertSectionNameToId} from '../transforms/reference-section-id';
-import {SECTION_HEADING} from '../styling/css-classes';
+import {convertSectionNameToId} from '../transforms/reference-section-id.mjs';
+import {SECTION_HEADING} from '../styling/css-classes.mjs';
/** Component to render the API section. */
export function SectionHeading(props: {name: string}) {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/section-usage-notes.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/section-usage-notes.tsx
index b38470ea77a9..1af6b33c3964 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/section-usage-notes.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/section-usage-notes.tsx
@@ -7,9 +7,9 @@
*/
import {Fragment, h} from 'preact';
-import {DocEntryRenderable} from '../entities/renderables';
+import {DocEntryRenderable} from '../entities/renderables.mjs';
import {RawHtml} from './raw-html';
-import {SECTION_CONTAINER} from '../styling/css-classes';
+import {SECTION_CONTAINER} from '../styling/css-classes.mjs';
import {SectionHeading} from './section-heading';
const USAGE_NOTES_SECTION_NAME = 'Usage Notes';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/templates/type-alias-reference.tsx b/adev/shared-docs/pipeline/api-gen/rendering/templates/type-alias-reference.tsx
index d4a70a3c68bc..caa00654f2c9 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/templates/type-alias-reference.tsx
+++ b/adev/shared-docs/pipeline/api-gen/rendering/templates/type-alias-reference.tsx
@@ -7,12 +7,12 @@
*/
import {h} from 'preact';
-import {TypeAliasEntryRenderable} from '../entities/renderables';
+import {TypeAliasEntryRenderable} from '../entities/renderables.mjs';
import {HeaderApi} from './header-api';
import {SectionDescription} from './section-description';
import {SectionUsageNotes} from './section-usage-notes';
import {SectionApi} from './section-api';
-import {API_REFERENCE_CONTAINER} from '../styling/css-classes';
+import {API_REFERENCE_CONTAINER} from '../styling/css-classes.mjs';
/** Component to render a type alias API reference document. */
export function TypeAliasReference(entry: TypeAliasEntryRenderable) {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/test/BUILD.bazel b/adev/shared-docs/pipeline/api-gen/rendering/test/BUILD.bazel
index 64ed90d96f84..124de29eaabd 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/test/BUILD.bazel
+++ b/adev/shared-docs/pipeline/api-gen/rendering/test/BUILD.bazel
@@ -1,5 +1,5 @@
load("//adev/shared-docs/pipeline/api-gen/rendering:render_api_to_html.bzl", "render_api_to_html")
-load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
+load("//tools:defaults2.bzl", "jasmine_test", "ts_project")
render_api_to_html(
name = "test",
@@ -9,28 +9,29 @@ render_api_to_html(
],
)
-ts_library(
+ts_project(
name = "unit_test_lib",
testonly = True,
srcs = glob(
[
- "**/*.spec.ts",
+ "**/*.spec.mts",
],
),
+ tsconfig = "//adev/shared-docs:tsconfig_test",
deps = [
- "//adev/shared-docs/pipeline/api-gen/rendering:render_api_to_html_lib",
- "@npm//@bazel/runfiles",
- "@npm//@types/jsdom",
- "@npm//jsdom",
+ "//:node_modules/@bazel/runfiles",
+ "//:node_modules/@types/jsdom",
+ "//:node_modules/jsdom",
+ "//adev/shared-docs/pipeline/api-gen/rendering:render_api_to_html_lib_rjs",
],
)
-jasmine_node_test(
+jasmine_test(
name = "unit_tests",
data = [
- "@npm//jsdom",
+ ":unit_test_lib_rjs",
+ "//:node_modules/jsdom",
] + glob([
"**/*.json",
]),
- deps = [":unit_test_lib"],
)
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/test/cli.spec.ts b/adev/shared-docs/pipeline/api-gen/rendering/test/cli.spec.mts
similarity index 86%
rename from adev/shared-docs/pipeline/api-gen/rendering/test/cli.spec.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/test/cli.spec.mts
index ef7437484108..5f8ccde7bac7 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/test/cli.spec.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/test/cli.spec.mts
@@ -9,10 +9,10 @@
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
-import {configureMarkedGlobally} from '../marked/configuration';
-import {getRenderable} from '../processing';
-import {renderEntry} from '../rendering';
-import {initHighlighter} from '../shiki/shiki';
+import {configureMarkedGlobally} from '../marked/configuration.mjs';
+import {getRenderable} from '../processing.mjs';
+import {renderEntry} from '../rendering.mjs';
+import {initHighlighter} from '../shiki/shiki.mjs';
describe('CLI docs to html', () => {
let fragment: DocumentFragment;
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/test/marked.spec.ts b/adev/shared-docs/pipeline/api-gen/rendering/test/marked.spec.mts
similarity index 92%
rename from adev/shared-docs/pipeline/api-gen/rendering/test/marked.spec.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/test/marked.spec.mts
index 31ed4c4c7224..bc7906642858 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/test/marked.spec.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/test/marked.spec.mts
@@ -9,11 +9,11 @@
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
-import {configureMarkedGlobally} from '../marked/configuration';
-import {getRenderable} from '../processing';
-import {renderEntry} from '../rendering';
-import {initHighlighter} from '../shiki/shiki';
-import {setSymbols} from '../symbol-context';
+import {configureMarkedGlobally} from '../marked/configuration.mjs';
+import {getRenderable} from '../processing.mjs';
+import {renderEntry} from '../rendering.mjs';
+import {initHighlighter} from '../shiki/shiki.mjs';
+import {setSymbols} from '../symbol-context.mjs';
// Note: The tests will probably break if the schema of the api extraction changes.
// All entries in the fake-entries are extracted from Angular's api.
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/test/renderable.spec.ts b/adev/shared-docs/pipeline/api-gen/rendering/test/renderable.spec.mts
similarity index 88%
rename from adev/shared-docs/pipeline/api-gen/rendering/test/renderable.spec.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/test/renderable.spec.mts
index cbc9f2e6cb53..c0980734bda2 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/test/renderable.spec.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/test/renderable.spec.mts
@@ -8,11 +8,11 @@
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
-import {DocEntryRenderable} from '../entities/renderables';
-import {configureMarkedGlobally} from '../marked/configuration';
-import {getRenderable} from '../processing';
-import {initHighlighter} from '../shiki/shiki';
-import {setSymbols} from '../symbol-context';
+import {DocEntryRenderable} from '../entities/renderables.mjs';
+import {configureMarkedGlobally} from '../marked/configuration.mjs';
+import {getRenderable} from '../processing.mjs';
+import {initHighlighter} from '../shiki/shiki.mjs';
+import {setSymbols} from '../symbol-context.mjs';
// Note: The tests will probably break if the schema of the api extraction changes.
// All entries in the fake-entries are extracted from Angular's api.
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/test/transforms/code-transforms.spec.ts b/adev/shared-docs/pipeline/api-gen/rendering/test/transforms/code-transforms.spec.mts
similarity index 99%
rename from adev/shared-docs/pipeline/api-gen/rendering/test/transforms/code-transforms.spec.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/test/transforms/code-transforms.spec.mts
index f5438b7e8bbc..4e18042ce0fe 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/test/transforms/code-transforms.spec.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/test/transforms/code-transforms.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {makeGenericsText} from '../../transforms/code-transforms';
+import {makeGenericsText} from '../../transforms/code-transforms.mjs';
describe('makeGenericsText', () => {
it('should return an empty string if no generics are provided', () => {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/test/transforms/jsdoc-transforms.spec.ts b/adev/shared-docs/pipeline/api-gen/rendering/test/transforms/jsdoc-transforms.spec.mts
similarity index 99%
rename from adev/shared-docs/pipeline/api-gen/rendering/test/transforms/jsdoc-transforms.spec.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/test/transforms/jsdoc-transforms.spec.mts
index 6f8a07ec64de..0444b227d284 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/test/transforms/jsdoc-transforms.spec.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/test/transforms/jsdoc-transforms.spec.mts
@@ -6,8 +6,8 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {setCurrentSymbol, setSymbols} from '../../symbol-context';
-import {addHtmlAdditionalLinks} from '../../transforms/jsdoc-transforms';
+import {setCurrentSymbol, setSymbols} from '../../symbol-context.mjs';
+import {addHtmlAdditionalLinks} from '../../transforms/jsdoc-transforms.mjs';
// @ts-ignore This compiles fine, but Webstorm doesn't like the ESM import in a CJS context.
describe('jsdoc transforms', () => {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/class-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/class-transforms.mts
similarity index 71%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/class-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/class-transforms.mts
index c83cd27218f3..c5f226f5ca0e 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/class-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/class-transforms.mts
@@ -6,19 +6,19 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {ClassEntry} from '../entities';
-import {ClassEntryRenderable} from '../entities/renderables';
-import {addRenderableCodeToc} from './code-transforms';
+import {ClassEntry} from '../entities.mjs';
+import {ClassEntryRenderable} from '../entities/renderables.mjs';
+import {addRenderableCodeToc} from './code-transforms.mjs';
import {
addHtmlAdditionalLinks,
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './jsdoc-transforms';
-import {addRenderableMembers} from './member-transforms';
-import {addModuleName} from './module-name';
-import {addRepo} from './repo';
+} from './jsdoc-transforms.mjs';
+import {addRenderableMembers} from './member-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
+import {addRepo} from './repo.mjs';
/** Given an unprocessed class entry, get the fully renderable class entry. */
export function getClassRenderable(
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/cli-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/cli-transforms.mts
similarity index 95%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/cli-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/cli-transforms.mts
index c56b5be0c0d1..be99e34f4d58 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/cli-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/cli-transforms.mts
@@ -8,12 +8,12 @@
import {marked} from 'marked';
-import {CliCommand, CliOption} from '../cli-entities';
+import {CliCommand, CliOption} from '../cli-entities.mjs';
import {
CliCardRenderable,
CliCommandRenderable,
CliOptionRenderable,
-} from '../entities/renderables';
+} from '../entities/renderables.mjs';
/** Given an unprocessed CLI entry, get the fully renderable CLI entry. */
export function getCliRenderable(command: CliCommand): CliCommandRenderable {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/code-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/code-transforms.mts
similarity index 98%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/code-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/code-transforms.mts
index 1a87f865f419..b405763d978b 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/code-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/code-transforms.mts
@@ -14,7 +14,7 @@ import {
MemberTags,
ParameterEntry,
PropertyEntry,
-} from '../entities';
+} from '../entities.mjs';
import {
isClassEntry,
@@ -29,14 +29,14 @@ import {
isInterfaceEntry,
isSetterEntry,
isTypeAliasEntry,
-} from '../entities/categorization';
-import {CodeLineRenderable} from '../entities/renderables';
-import {HasModuleName, HasRenderableToc} from '../entities/traits';
-import {getModuleName} from '../symbol-context';
-import {codeToHtml, replaceKeywordFromShikiHtml} from '../shiki/shiki';
-
-import {filterLifecycleMethods, mergeGettersAndSetters} from './member-transforms';
-import {getLinkToModule} from './url-transforms';
+} from '../entities/categorization.mjs';
+import {CodeLineRenderable} from '../entities/renderables.mjs';
+import {HasModuleName, HasRenderableToc} from '../entities/traits.mjs';
+import {getModuleName} from '../symbol-context.mjs';
+import {codeToHtml, replaceKeywordFromShikiHtml} from '../shiki/shiki.mjs';
+
+import {filterLifecycleMethods, mergeGettersAndSetters} from './member-transforms.mjs';
+import {getLinkToModule} from './url-transforms.mjs';
// Allows to generate links for code lines.
interface CodeTableOfContentsData {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/constant-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/constant-transforms.mts
similarity index 73%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/constant-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/constant-transforms.mts
index 51094f15b9b9..6c2d77a3c1e0 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/constant-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/constant-transforms.mts
@@ -6,18 +6,18 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {ConstantEntry} from '../entities';
-import {ConstantEntryRenderable} from '../entities/renderables';
-import {addRenderableCodeToc} from './code-transforms';
+import {ConstantEntry} from '../entities.mjs';
+import {ConstantEntryRenderable} from '../entities/renderables.mjs';
+import {addRenderableCodeToc} from './code-transforms.mjs';
import {
addHtmlAdditionalLinks,
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './jsdoc-transforms';
-import {addModuleName} from './module-name';
-import {addRepo} from './repo';
+} from './jsdoc-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
+import {addRepo} from './repo.mjs';
/** Given an unprocessed constant entry, get the fully renderable constant entry. */
export function getConstantRenderable(
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/decorator-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/decorator-transforms.mts
similarity index 71%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/decorator-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/decorator-transforms.mts
index 7d88cba974b6..6f099cf60e91 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/decorator-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/decorator-transforms.mts
@@ -6,19 +6,19 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {DecoratorEntry} from '../entities';
-import {DecoratorEntryRenderable} from '../entities/renderables';
-import {addRenderableCodeToc} from './code-transforms';
+import {DecoratorEntry} from '../entities.mjs';
+import {DecoratorEntryRenderable} from '../entities/renderables.mjs';
+import {addRenderableCodeToc} from './code-transforms.mjs';
import {
addHtmlAdditionalLinks,
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './jsdoc-transforms';
-import {addRenderableMembers} from './member-transforms';
-import {addModuleName} from './module-name';
-import {addRepo} from './repo';
+} from './jsdoc-transforms.mjs';
+import {addRenderableMembers} from './member-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
+import {addRepo} from './repo.mjs';
/** Given an unprocessed class entry, get the fully renderable class entry. */
export function getDecoratorRenderable(
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/enum-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/enum-transforms.mts
similarity index 71%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/enum-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/enum-transforms.mts
index cc07ee11c05e..f4f5e6df2048 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/enum-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/enum-transforms.mts
@@ -6,19 +6,19 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {EnumEntry} from '../entities';
-import {EnumEntryRenderable} from '../entities/renderables';
-import {addRenderableCodeToc} from './code-transforms';
+import {EnumEntry} from '../entities.mjs';
+import {EnumEntryRenderable} from '../entities/renderables.mjs';
+import {addRenderableCodeToc} from './code-transforms.mjs';
import {
addHtmlAdditionalLinks,
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './jsdoc-transforms';
-import {addRenderableMembers} from './member-transforms';
-import {addModuleName} from './module-name';
-import {addRepo} from './repo';
+} from './jsdoc-transforms.mjs';
+import {addRenderableMembers} from './member-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
+import {addRepo} from './repo.mjs';
/** Given an unprocessed enum entry, get the fully renderable enum entry. */
export function getEnumRenderable(
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/function-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/function-transforms.mts
similarity index 82%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/function-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/function-transforms.mts
index 9daa94a05843..083ed3c2c9e6 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/function-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/function-transforms.mts
@@ -6,22 +6,22 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {FunctionEntry, FunctionSignatureMetadata} from '../entities';
+import {FunctionEntry, FunctionSignatureMetadata} from '../entities.mjs';
import {
FunctionEntryRenderable,
FunctionSignatureMetadataRenderable,
-} from '../entities/renderables';
-import {addRenderableCodeToc} from './code-transforms';
+} from '../entities/renderables.mjs';
+import {addRenderableCodeToc} from './code-transforms.mjs';
import {
addHtmlAdditionalLinks,
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './jsdoc-transforms';
-import {addModuleName} from './module-name';
-import {addRenderableFunctionParams} from './params-transforms';
-import {addRepo} from './repo';
+} from './jsdoc-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
+import {addRenderableFunctionParams} from './params-transforms.mjs';
+import {addRepo} from './repo.mjs';
/** Given an unprocessed function entry, get the fully renderable function entry. */
export function getFunctionRenderable(
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/initializer-api-functions-transform.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/initializer-api-functions-transform.mts
similarity index 76%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/initializer-api-functions-transform.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/initializer-api-functions-transform.mts
index 336583880ce2..ab51eb1e8210 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/initializer-api-functions-transform.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/initializer-api-functions-transform.mts
@@ -6,20 +6,20 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {InitializerApiFunctionEntry} from '../entities';
+import {InitializerApiFunctionEntry} from '../entities.mjs';
-import {InitializerApiFunctionRenderable} from '../entities/renderables';
+import {InitializerApiFunctionRenderable} from '../entities/renderables.mjs';
-import {addRenderableCodeToc} from './code-transforms';
+import {addRenderableCodeToc} from './code-transforms.mjs';
import {
addHtmlAdditionalLinks,
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './jsdoc-transforms';
-import {addModuleName} from './module-name';
-import {addRepo} from './repo';
+} from './jsdoc-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
+import {addRepo} from './repo.mjs';
export function getInitializerApiFunctionRenderable(
entry: InitializerApiFunctionEntry,
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/interface-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/interface-transforms.mts
similarity index 70%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/interface-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/interface-transforms.mts
index 2145f8ee8ab2..dfadd7cb7547 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/interface-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/interface-transforms.mts
@@ -6,19 +6,19 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {InterfaceEntry} from '../entities';
-import {InterfaceEntryRenderable} from '../entities/renderables';
-import {addRenderableCodeToc} from './code-transforms';
+import {InterfaceEntry} from '../entities.mjs';
+import {InterfaceEntryRenderable} from '../entities/renderables.mjs';
+import {addRenderableCodeToc} from './code-transforms.mjs';
import {
addHtmlAdditionalLinks,
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './jsdoc-transforms';
-import {addRenderableMembers} from './member-transforms';
-import {addModuleName} from './module-name';
-import {addRepo} from './repo';
+} from './jsdoc-transforms.mjs';
+import {addRenderableMembers} from './member-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
+import {addRepo} from './repo.mjs';
/** Given an unprocessed interface entry, get the fully renderable interface entry. */
export function getInterfaceRenderable(
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/jsdoc-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/jsdoc-transforms.mts
similarity index 95%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/jsdoc-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/jsdoc-transforms.mts
index 4c33048653a0..88d0c02b0be3 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/jsdoc-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/jsdoc-transforms.mts
@@ -7,10 +7,10 @@
*/
import {marked} from 'marked';
-import {JsDocTagEntry} from '../entities';
+import {JsDocTagEntry} from '../entities.mjs';
-import {getDeprecatedEntry, getTagSinceVersion} from '../entities/categorization';
-import {LinkEntryRenderable} from '../entities/renderables';
+import {getDeprecatedEntry, getTagSinceVersion} from '../entities/categorization.mjs';
+import {LinkEntryRenderable} from '../entities/renderables.mjs';
import {
HasAdditionalLinks,
HasDeprecatedFlag,
@@ -23,11 +23,11 @@ import {
HasRenderableJsDocTags,
hasExperimentalFlag,
HasStableFlag,
-} from '../entities/traits';
+} from '../entities/traits.mjs';
-import {getLinkToModule} from './url-transforms';
-import {addApiLinksToHtml} from './code-transforms';
-import {getCurrentSymbol, getModuleName, unknownSymbolMessage} from '../symbol-context';
+import {getLinkToModule} from './url-transforms.mjs';
+import {addApiLinksToHtml} from './code-transforms.mjs';
+import {getCurrentSymbol, getModuleName, unknownSymbolMessage} from '../symbol-context.mjs';
const JS_DOC_USAGE_NOTE_TAGS: Set = new Set(['remarks', 'usageNotes', 'example']);
export const JS_DOC_SEE_TAG = 'see';
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/member-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/member-transforms.mts
similarity index 88%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/member-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/member-transforms.mts
index 70599bfefac2..668fe6f5bda1 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/member-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/member-transforms.mts
@@ -6,19 +6,19 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {MemberEntry, MemberTags, MemberType} from '../entities';
-import {isHiddenEntry} from '../entities/categorization';
+import {MemberEntry, MemberTags, MemberType} from '../entities.mjs';
+import {isHiddenEntry} from '../entities/categorization.mjs';
-import {HasMembers, HasModuleName, HasRenderableMembers, HasRepo} from '../entities/traits';
+import {HasMembers, HasModuleName, HasRenderableMembers, HasRepo} from '../entities/traits.mjs';
import {
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './jsdoc-transforms';
-import {addModuleName} from './module-name';
-import {addRepo} from './repo';
+} from './jsdoc-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
+import {addRepo} from './repo.mjs';
const lifecycleMethods = [
'ngAfterContentChecked',
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/module-name.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/module-name.mts
similarity index 86%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/module-name.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/module-name.mts
index 0ec85b9303f3..1c71d3dd2dbc 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/module-name.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/module-name.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {HasModuleName} from '../entities/traits';
+import {HasModuleName} from '../entities/traits.mjs';
export function addModuleName(entry: T, moduleName: string): T & HasModuleName {
return {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/params-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/params-transforms.mts
similarity index 80%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/params-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/params-transforms.mts
index ac3e51226c34..3048b70cef0f 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/params-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/params-transforms.mts
@@ -6,9 +6,9 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {HasModuleName, HasParams, HasRenderableParams} from '../entities/traits';
-import {addHtmlDescription} from './jsdoc-transforms';
-import {addModuleName} from './module-name';
+import {HasModuleName, HasParams, HasRenderableParams} from '../entities/traits.mjs';
+import {addHtmlDescription} from './jsdoc-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
export function addRenderableFunctionParams(
entry: T,
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/reference-section-id.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/reference-section-id.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/reference-section-id.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/reference-section-id.mts
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/repo.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/repo.mts
similarity index 86%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/repo.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/repo.mts
index 9d5bbd0b51ff..b110571aedca 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/repo.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/repo.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {HasRepo} from '../entities/traits';
+import {HasRepo} from '../entities/traits.mjs';
export function addRepo(entry: T, repo: string): T & HasRepo {
return {
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/type-alias-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/type-alias-transforms.mts
similarity index 73%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/type-alias-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/type-alias-transforms.mts
index e87fb8e4d5d8..6266590fac93 100644
--- a/adev/shared-docs/pipeline/api-gen/rendering/transforms/type-alias-transforms.ts
+++ b/adev/shared-docs/pipeline/api-gen/rendering/transforms/type-alias-transforms.mts
@@ -6,18 +6,18 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {TypeAliasEntry} from '../entities';
-import {TypeAliasEntryRenderable} from '../entities/renderables';
-import {addRenderableCodeToc} from './code-transforms';
+import {TypeAliasEntry} from '../entities.mjs';
+import {TypeAliasEntryRenderable} from '../entities/renderables.mjs';
+import {addRenderableCodeToc} from './code-transforms.mjs';
import {
addHtmlAdditionalLinks,
addHtmlDescription,
addHtmlJsDocTagComments,
addHtmlUsageNotes,
setEntryFlags,
-} from './jsdoc-transforms';
-import {addModuleName} from './module-name';
-import {addRepo} from './repo';
+} from './jsdoc-transforms.mjs';
+import {addModuleName} from './module-name.mjs';
+import {addRepo} from './repo.mjs';
/** Given an unprocessed type alias entry, get the fully renderable type alias entry. */
export function getTypeAliasRenderable(
diff --git a/adev/shared-docs/pipeline/api-gen/rendering/transforms/url-transforms.ts b/adev/shared-docs/pipeline/api-gen/rendering/transforms/url-transforms.mts
similarity index 100%
rename from adev/shared-docs/pipeline/api-gen/rendering/transforms/url-transforms.ts
rename to adev/shared-docs/pipeline/api-gen/rendering/transforms/url-transforms.mts
diff --git a/adev/shared-docs/pipeline/api-gen/test/BUILD.bazel b/adev/shared-docs/pipeline/api-gen/test/BUILD.bazel
index e4f684bb977d..d38c49004558 100644
--- a/adev/shared-docs/pipeline/api-gen/test/BUILD.bazel
+++ b/adev/shared-docs/pipeline/api-gen/test/BUILD.bazel
@@ -3,9 +3,9 @@ load("//adev/shared-docs/pipeline/api-gen:generate_api_docs.bzl", "generate_api_
generate_api_docs(
name = "test",
srcs = ["//adev/shared-docs/pipeline/api-gen/extraction/test:source_files"],
- entry_point = "//adev/shared-docs/pipeline/api-gen/extraction/test:fake-source.ts",
+ entry_point = "//adev/shared-docs/pipeline/api-gen/extraction/test:fake-source.mts",
import_map = {
- "//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.ts": "@angular/dummy-package",
+ "//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.mts": "@angular/dummy-package",
},
module_name = "@angular/core",
)
@@ -13,10 +13,10 @@ generate_api_docs(
generate_api_docs(
name = "test_with_extra_entries",
srcs = ["//adev/shared-docs/pipeline/api-gen/extraction/test:source_files"],
- entry_point = "//adev/shared-docs/pipeline/api-gen/extraction/test:fake-source.ts",
+ entry_point = "//adev/shared-docs/pipeline/api-gen/extraction/test:fake-source.mts",
extra_entries = ["//adev/shared-docs/pipeline/api-gen/extraction/test:extra.json"],
import_map = {
- "//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.ts": "@angular/dummy-package",
+ "//adev/shared-docs/pipeline/api-gen/extraction/test/dummy-entry-point:index.mts": "@angular/dummy-package",
},
module_name = "@angular/core",
)
diff --git a/adev/shared-docs/pipeline/examples/previews/BUILD.bazel b/adev/shared-docs/pipeline/examples/previews/BUILD.bazel
index 0120c4e23f9c..5e2509225456 100644
--- a/adev/shared-docs/pipeline/examples/previews/BUILD.bazel
+++ b/adev/shared-docs/pipeline/examples/previews/BUILD.bazel
@@ -1,19 +1,20 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:public"])
-ts_library(
+ts_project(
name = "index",
srcs = [
- "index.ts",
+ "index.mts",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = [
"//adev/shared-docs:__subpackages__",
],
deps = [
- "@npm//@types/node",
- "@npm//tinyglobby",
- "@npm//typescript",
+ "//:node_modules/@types/node",
+ "//:node_modules/tinyglobby",
+ "//:node_modules/typescript",
],
)
@@ -24,6 +25,6 @@ filegroup(
)
exports_files([
- "index.ts",
+ "index.mts",
"previews.template",
])
diff --git a/adev/shared-docs/pipeline/examples/previews/index.ts b/adev/shared-docs/pipeline/examples/previews/index.mts
similarity index 100%
rename from adev/shared-docs/pipeline/examples/previews/index.ts
rename to adev/shared-docs/pipeline/examples/previews/index.mts
diff --git a/adev/shared-docs/pipeline/examples/shared/BUILD.bazel b/adev/shared-docs/pipeline/examples/shared/BUILD.bazel
index ca45f14fe463..7d28df862c25 100644
--- a/adev/shared-docs/pipeline/examples/shared/BUILD.bazel
+++ b/adev/shared-docs/pipeline/examples/shared/BUILD.bazel
@@ -1,15 +1,16 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:public"])
-ts_library(
+ts_project(
name = "shared",
srcs = glob(
[
- "*.ts",
+ "*.mts",
],
),
+ tsconfig = "//adev/shared-docs:tsconfig_build",
deps = [
- "@npm//@types/node",
+ "//:node_modules/@types/node",
],
)
diff --git a/adev/shared-docs/pipeline/examples/shared/copyright.ts b/adev/shared-docs/pipeline/examples/shared/copyright.mts
similarity index 100%
rename from adev/shared-docs/pipeline/examples/shared/copyright.ts
rename to adev/shared-docs/pipeline/examples/shared/copyright.mts
diff --git a/adev/shared-docs/pipeline/examples/shared/file-system.ts b/adev/shared-docs/pipeline/examples/shared/file-system.mts
similarity index 100%
rename from adev/shared-docs/pipeline/examples/shared/file-system.ts
rename to adev/shared-docs/pipeline/examples/shared/file-system.mts
diff --git a/adev/shared-docs/pipeline/examples/stackblitz/BUILD.bazel b/adev/shared-docs/pipeline/examples/stackblitz/BUILD.bazel
index bc11d3847400..b7b03c5ef869 100644
--- a/adev/shared-docs/pipeline/examples/stackblitz/BUILD.bazel
+++ b/adev/shared-docs/pipeline/examples/stackblitz/BUILD.bazel
@@ -1,41 +1,43 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:public"])
-ts_library(
+ts_project(
name = "stackblitz",
srcs = glob(
[
- "*.ts",
+ "*.mts",
],
exclude = [
- "index.ts",
+ "index.mts",
],
),
+ tsconfig = "//adev/shared-docs:tsconfig_build",
deps = [
- "//adev/shared-docs/pipeline/examples/shared",
- "//adev/shared-docs/pipeline/guides",
- "@npm//@types/jsdom",
- "@npm//@types/node",
- "@npm//jsdom",
- "@npm//tinyglobby",
+ "//:node_modules/@types/jsdom",
+ "//:node_modules/@types/node",
+ "//:node_modules/jsdom",
+ "//:node_modules/tinyglobby",
+ "//adev/shared-docs/pipeline/examples/shared:shared_rjs",
+ "//adev/shared-docs/pipeline/guides:guides_rjs",
],
)
-ts_library(
+ts_project(
name = "index",
srcs = [
- "index.ts",
+ "index.mts",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = [
"//adev/shared-docs:__subpackages__",
],
deps = [
- ":stackblitz",
- "@npm//@types/node",
+ ":stackblitz_rjs",
+ "//:node_modules/@types/node",
],
)
exports_files([
- "index.ts",
+ "index.mts",
])
diff --git a/adev/shared-docs/pipeline/examples/stackblitz/builder.ts b/adev/shared-docs/pipeline/examples/stackblitz/builder.mts
similarity index 97%
rename from adev/shared-docs/pipeline/examples/stackblitz/builder.ts
rename to adev/shared-docs/pipeline/examples/stackblitz/builder.mts
index b1a6dd3564f2..e50cd2296344 100644
--- a/adev/shared-docs/pipeline/examples/stackblitz/builder.ts
+++ b/adev/shared-docs/pipeline/examples/stackblitz/builder.mts
@@ -8,13 +8,13 @@
import {join} from 'path';
import {readFile} from 'fs/promises';
-import {copyFolder, createFolder, removeFolder} from '../shared/file-system';
+import {copyFolder, createFolder, removeFolder} from '../shared/file-system.mjs';
import jsdom from 'jsdom';
import {glob} from 'tinyglobby';
-import {regionParser} from '../../guides/extensions/docs-code/regions/region-parser';
-import {appendCopyrightToFile} from '../shared/copyright';
-import {FileType} from '../../guides/extensions/docs-code/sanitizers/eslint';
-import {EXCLUDE_FILES_FOR_STACKBLITZ, STACKBLITZ_CONFIG_FILENAME} from './defaults';
+import {regionParser} from '../../guides/extensions/docs-code/regions/region-parser.mjs';
+import {appendCopyrightToFile} from '../shared/copyright.mjs';
+import {FileType} from '../../guides/extensions/docs-code/sanitizers/eslint.mjs';
+import {EXCLUDE_FILES_FOR_STACKBLITZ, STACKBLITZ_CONFIG_FILENAME} from './defaults.mjs';
interface StackblitzConfig {
title: string;
diff --git a/adev/shared-docs/pipeline/examples/stackblitz/defaults.ts b/adev/shared-docs/pipeline/examples/stackblitz/defaults.mts
similarity index 100%
rename from adev/shared-docs/pipeline/examples/stackblitz/defaults.ts
rename to adev/shared-docs/pipeline/examples/stackblitz/defaults.mts
diff --git a/adev/shared-docs/pipeline/examples/stackblitz/index.ts b/adev/shared-docs/pipeline/examples/stackblitz/index.mts
similarity index 89%
rename from adev/shared-docs/pipeline/examples/stackblitz/index.ts
rename to adev/shared-docs/pipeline/examples/stackblitz/index.mts
index 856c52b4b2a1..6547466330ba 100644
--- a/adev/shared-docs/pipeline/examples/stackblitz/index.ts
+++ b/adev/shared-docs/pipeline/examples/stackblitz/index.mts
@@ -7,7 +7,7 @@
*/
import {writeFileSync} from 'fs';
-import {generateStackblitzExample} from './builder';
+import {generateStackblitzExample} from './builder.mjs';
const [exampleDir, tmpDir, templateDir, outputFilePath] = process.argv.slice(2);
const htmlOutputContent = await generateStackblitzExample(exampleDir, tmpDir, templateDir);
diff --git a/adev/shared-docs/pipeline/examples/template/src/app/app.component.ts b/adev/shared-docs/pipeline/examples/template/src/app/app.component.mts
similarity index 100%
rename from adev/shared-docs/pipeline/examples/template/src/app/app.component.ts
rename to adev/shared-docs/pipeline/examples/template/src/app/app.component.mts
diff --git a/adev/shared-docs/pipeline/examples/template/src/main.ts b/adev/shared-docs/pipeline/examples/template/src/main.mts
similarity index 88%
rename from adev/shared-docs/pipeline/examples/template/src/main.ts
rename to adev/shared-docs/pipeline/examples/template/src/main.mts
index fd552b11b051..f28562663237 100644
--- a/adev/shared-docs/pipeline/examples/template/src/main.ts
+++ b/adev/shared-docs/pipeline/examples/template/src/main.mts
@@ -8,7 +8,7 @@
import {bootstrapApplication, provideProtractorTestingSupport} from '@angular/platform-browser';
-import {AppComponent} from './app/app.component';
+import {AppComponent} from './app/app.component.mjs';
bootstrapApplication(AppComponent, {
providers: [provideProtractorTestingSupport()],
diff --git a/adev/shared-docs/pipeline/examples/zip/BUILD.bazel b/adev/shared-docs/pipeline/examples/zip/BUILD.bazel
index 730620ae2338..4124c79b7a72 100644
--- a/adev/shared-docs/pipeline/examples/zip/BUILD.bazel
+++ b/adev/shared-docs/pipeline/examples/zip/BUILD.bazel
@@ -1,41 +1,43 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:public"])
-ts_library(
+ts_project(
name = "zip",
srcs = glob(
[
- "*.ts",
+ "*.mts",
],
exclude = [
- "index.ts",
+ "index.mts",
],
),
+ tsconfig = "//adev/shared-docs:tsconfig_build",
deps = [
- "//adev/shared-docs/interfaces",
- "//adev/shared-docs/pipeline/examples/shared",
- "//adev/shared-docs/pipeline/guides",
- "@npm//@types/node",
- "@npm//fflate",
- "@npm//tinyglobby",
+ "//:node_modules/@types/node",
+ "//:node_modules/fflate",
+ "//:node_modules/tinyglobby",
+ "//adev/shared-docs/interfaces:interfaces_rjs",
+ "//adev/shared-docs/pipeline/examples/shared:shared_rjs",
+ "//adev/shared-docs/pipeline/guides:guides_rjs",
],
)
-ts_library(
+ts_project(
name = "index",
srcs = [
- "index.ts",
+ "index.mts",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = [
"//adev/shared-docs:__subpackages__",
],
deps = [
- ":zip",
- "@npm//@types/node",
+ ":zip_rjs",
+ "//:node_modules/@types/node",
],
)
exports_files([
- "index.ts",
+ "index.mts",
])
diff --git a/adev/shared-docs/pipeline/examples/zip/builder.ts b/adev/shared-docs/pipeline/examples/zip/builder.mts
similarity index 92%
rename from adev/shared-docs/pipeline/examples/zip/builder.ts
rename to adev/shared-docs/pipeline/examples/zip/builder.mts
index fc74cc71c893..410c2cd3161b 100644
--- a/adev/shared-docs/pipeline/examples/zip/builder.ts
+++ b/adev/shared-docs/pipeline/examples/zip/builder.mts
@@ -8,12 +8,12 @@
import {join} from 'path';
import {readFile} from 'fs/promises';
-import {copyFolder, createFolder} from '../shared/file-system';
+import {copyFolder, createFolder} from '../shared/file-system.mjs';
import {glob} from 'tinyglobby';
-import {regionParser} from '../../guides/extensions/docs-code/regions/region-parser';
-import {appendCopyrightToFile} from '../shared/copyright';
-import {FileType} from '../../guides/extensions/docs-code/sanitizers/eslint';
-import {EXCLUDE_FILES, CONFIG_FILENAME} from './defaults';
+import {regionParser} from '../../guides/extensions/docs-code/regions/region-parser.mjs';
+import {appendCopyrightToFile} from '../shared/copyright.mjs';
+import {FileType} from '../../guides/extensions/docs-code/sanitizers/eslint.mjs';
+import {EXCLUDE_FILES, CONFIG_FILENAME} from './defaults.mjs';
import {zip, strToU8} from 'fflate';
import {FileAndContent} from '../../../interfaces';
diff --git a/adev/shared-docs/pipeline/examples/zip/defaults.ts b/adev/shared-docs/pipeline/examples/zip/defaults.mts
similarity index 100%
rename from adev/shared-docs/pipeline/examples/zip/defaults.ts
rename to adev/shared-docs/pipeline/examples/zip/defaults.mts
diff --git a/adev/shared-docs/pipeline/examples/zip/index.ts b/adev/shared-docs/pipeline/examples/zip/index.mts
similarity index 89%
rename from adev/shared-docs/pipeline/examples/zip/index.ts
rename to adev/shared-docs/pipeline/examples/zip/index.mts
index a9878dab74ae..266b33534df8 100644
--- a/adev/shared-docs/pipeline/examples/zip/index.ts
+++ b/adev/shared-docs/pipeline/examples/zip/index.mts
@@ -7,7 +7,7 @@
*/
import {writeFileSync} from 'fs';
-import {generateZipExample} from './builder';
+import {generateZipExample} from './builder.mjs';
const [exampleDir, tmpDir, templateDir, outputFilePath] = process.argv.slice(2);
const zipContent = await generateZipExample(exampleDir, tmpDir, templateDir);
diff --git a/adev/shared-docs/pipeline/guides/BUILD.bazel b/adev/shared-docs/pipeline/guides/BUILD.bazel
index 0b17f67af6f2..6661db76b81c 100644
--- a/adev/shared-docs/pipeline/guides/BUILD.bazel
+++ b/adev/shared-docs/pipeline/guides/BUILD.bazel
@@ -1,46 +1,49 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
-ts_library(
+ts_project(
name = "guides",
srcs = glob(
[
- "**/*.ts",
+ "**/*.mts",
+ "shiki.d.ts",
],
- exclude = ["index.ts"],
+ exclude = ["index.mts"],
),
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = [
"//adev/shared-docs:__subpackages__",
],
deps = [
- "@npm//@bazel/runfiles",
- "@npm//@types/diff",
- "@npm//@types/jsdom",
- "@npm//@types/node",
- "@npm//diff",
- "@npm//emoji-regex",
- "@npm//html-entities",
- "@npm//jsdom",
- "@npm//marked",
- "@npm//mermaid",
- "@npm//playwright-core",
- "@npm//shiki",
+ "//:node_modules/@bazel/runfiles",
+ "//:node_modules/@types/diff",
+ "//:node_modules/@types/jsdom",
+ "//:node_modules/@types/node",
+ "//:node_modules/diff",
+ "//:node_modules/emoji-regex",
+ "//:node_modules/html-entities",
+ "//:node_modules/jsdom",
+ "//:node_modules/marked",
+ "//:node_modules/mermaid",
+ "//:node_modules/playwright-core",
+ "//:node_modules/shiki",
],
)
-ts_library(
+ts_project(
name = "index",
srcs = [
- "index.ts",
+ "index.mts",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = [
"//adev/shared-docs:__subpackages__",
],
deps = [
- ":guides",
- "@npm//@types/node",
+ ":guides_rjs",
+ "//:node_modules/@types/node",
],
)
exports_files([
- "index.ts",
+ "index.mts",
])
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-alert.ts b/adev/shared-docs/pipeline/guides/extensions/docs-alert.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-alert.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-alert.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-callout.ts b/adev/shared-docs/pipeline/guides/extensions/docs-callout.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-callout.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-callout.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card-container.ts b/adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card-container.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card-container.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card-container.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card.ts b/adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card.mts
similarity index 97%
rename from adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card.mts
index 104202f9ffc1..f6682b251861 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-card/docs-card.mts
@@ -7,8 +7,8 @@
*/
import {Tokens, Token, RendererThis, TokenizerThis} from 'marked';
-import {anchorTarget} from '../../helpers';
-import {loadWorkspaceRelativeFile} from '../../utils';
+import {anchorTarget} from '../../helpers.mjs';
+import {loadWorkspaceRelativeFile} from '../../utils.mjs';
interface DocsCardToken extends Tokens.Generic {
type: 'docs-card';
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-block.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-block.mts
similarity index 96%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-block.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-block.mts
index c380014f8d8b..9fb206d1d262 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-block.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-block.mts
@@ -7,7 +7,7 @@
*/
import {TokenizerThis, RendererThis} from 'marked';
-import {CodeToken, formatCode} from './format/index';
+import {CodeToken, formatCode} from './format/index.mjs';
export interface DocsCodeBlock extends CodeToken {
type: 'docs-code-block';
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-multifile.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-multifile.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-multifile.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code-multifile.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code.mts
similarity index 95%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code.mts
index bccab0cea264..29b045794f74 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-code/docs-code.mts
@@ -7,9 +7,9 @@
*/
import {TokenizerThis, RendererThis} from 'marked';
-import {CodeToken, formatCode} from './format/index';
-import {FileType, removeEslintComments} from './sanitizers/eslint';
-import {loadWorkspaceRelativeFile} from '../../utils';
+import {CodeToken, formatCode} from './format/index.mjs';
+import {FileType, removeEslintComments} from './sanitizers/eslint.mjs';
+import {loadWorkspaceRelativeFile} from '../../utils.mjs';
/** Marked token for a custom docs element. */
export interface DocsCodeToken extends CodeToken {
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/format/diff.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/format/diff.mts
similarity index 93%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/format/diff.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/format/diff.mts
index a2c938f0ac40..cb65027876f4 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-code/format/diff.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-code/format/diff.mts
@@ -7,8 +7,8 @@
*/
import {diffLines, Change as DiffChange} from 'diff';
-import {CodeToken} from './index';
-import {loadWorkspaceRelativeFile} from '../../../utils';
+import {CodeToken} from './index.mjs';
+import {loadWorkspaceRelativeFile} from '../../../utils.mjs';
export interface DiffMetadata {
code: string;
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/format/highlight.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/format/highlight.mts
similarity index 97%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/format/highlight.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/format/highlight.mts
index 8c4bf5050596..a08fe328dd45 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-code/format/highlight.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-code/format/highlight.mts
@@ -7,8 +7,8 @@
*/
import {decode} from 'html-entities';
-import {CodeToken} from './index';
-import {expandRangeStringValues} from './range';
+import {CodeToken} from './index.mjs';
+import {expandRangeStringValues} from './range.mjs';
import {JSDOM} from 'jsdom';
import {createHighlighter, HighlighterGeneric} from 'shiki';
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/format/index.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/format/index.mts
similarity index 92%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/format/index.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/format/index.mts
index bf3b24345851..8d1fce1fa817 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-code/format/index.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-code/format/index.mts
@@ -7,11 +7,11 @@
*/
import {Tokens} from 'marked';
-import {DiffMetadata, calculateDiff} from './diff';
-import {highlightCode} from './highlight';
-import {extractRegions} from './region';
+import {DiffMetadata, calculateDiff} from './diff.mjs';
+import {highlightCode} from './highlight.mjs';
+import {extractRegions} from './region.mjs';
import {JSDOM} from 'jsdom';
-import {expandRangeStringValues} from './range';
+import {expandRangeStringValues} from './range.mjs';
/** Marked token for a custom docs element. */
export interface CodeToken extends Tokens.Generic {
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/format/range.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/format/range.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/format/range.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/format/range.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/format/region.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/format/region.mts
similarity index 86%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/format/region.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/format/region.mts
index 374556f78928..31c33e8dc2f6 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-code/format/region.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-code/format/region.mts
@@ -6,9 +6,9 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {CodeToken} from './index';
-import {regionParser} from '../regions/region-parser';
-import {FileType} from '../sanitizers/eslint';
+import {CodeToken} from './index.mjs';
+import {regionParser} from '../regions/region-parser.mjs';
+import {FileType} from '../sanitizers/eslint.mjs';
/**
* Updates the provided token to include the extracted region as the visible lines for the token.
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/block-c.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/block-c.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/block-c.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/block-c.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/html.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/html.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/html.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/html.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-c-only.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-c-only.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-c-only.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-c-only.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-c.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-c.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-c.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-c.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-hash.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-hash.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-hash.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-matchers/inline-hash.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-parser.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-parser.mts
similarity index 95%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-parser.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-parser.mts
index c6e4c32e705a..f7026880ff27 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-parser.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-code/regions/region-parser.mts
@@ -11,11 +11,11 @@
// This also allows for documentation to be included within the source code more easily
// in an extractable manner.
-import * as blockC from './region-matchers/block-c';
-import * as html from './region-matchers/html';
-import * as inlineC from './region-matchers/inline-c';
-import * as inlineCOnly from './region-matchers/inline-c-only';
-import * as inlineHash from './region-matchers/inline-hash';
+import * as blockC from './region-matchers/block-c.mjs';
+import * as html from './region-matchers/html.mjs';
+import * as inlineC from './region-matchers/inline-c.mjs';
+import * as inlineCOnly from './region-matchers/inline-c-only.mjs';
+import * as inlineHash from './region-matchers/inline-hash.mjs';
const WHOLE_FILE_REGION_NAME = '';
const DEFAULT_PLASTER = '. . .';
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-code/sanitizers/eslint.ts b/adev/shared-docs/pipeline/guides/extensions/docs-code/sanitizers/eslint.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-code/sanitizers/eslint.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-code/sanitizers/eslint.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-decorative-header.ts b/adev/shared-docs/pipeline/guides/extensions/docs-decorative-header.mts
similarity index 97%
rename from adev/shared-docs/pipeline/guides/extensions/docs-decorative-header.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-decorative-header.mts
index e602188e0594..3e465ddd26f7 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-decorative-header.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-decorative-header.mts
@@ -7,7 +7,7 @@
*/
import {TokenizerThis, Tokens, RendererThis} from 'marked';
-import {getPageTitle, loadWorkspaceRelativeFile} from '../utils';
+import {getPageTitle, loadWorkspaceRelativeFile} from '../utils.mjs';
interface DocsDecorativeHeaderToken extends Tokens.Generic {
type: 'docs-decorative-header';
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill-row.ts b/adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill-row.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill-row.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill-row.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill.ts b/adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill.mts
similarity index 96%
rename from adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill.mts
index 42ee838e09dd..8e9d0c9bb2ad 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-pill/docs-pill.mts
@@ -7,7 +7,7 @@
*/
import {Token, Tokens, RendererThis, TokenizerThis} from 'marked';
-import {anchorTarget, isExternalLink} from '../../helpers';
+import {anchorTarget, isExternalLink} from '../../helpers.mjs';
interface DocsPillToken extends Tokens.Generic {
type: 'docs-pill';
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-video.ts b/adev/shared-docs/pipeline/guides/extensions/docs-video.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-video.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-video.mts
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-step.ts b/adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-step.mts
similarity index 96%
rename from adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-step.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-step.mts
index 36b1fcab6410..e171a8ea163f 100644
--- a/adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-step.ts
+++ b/adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-step.mts
@@ -7,7 +7,7 @@
*/
import {Token, Tokens, RendererThis, TokenizerThis} from 'marked';
-import {formatHeading} from '../../tranformations/heading';
+import {formatHeading} from '../../tranformations/heading.mjs';
interface DocsStepToken extends Tokens.Generic {
type: 'docs-step';
diff --git a/adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-workflow.ts b/adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-workflow.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-workflow.ts
rename to adev/shared-docs/pipeline/guides/extensions/docs-workflow/docs-workflow.mts
diff --git a/adev/shared-docs/pipeline/guides/helpers.ts b/adev/shared-docs/pipeline/guides/helpers.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/helpers.ts
rename to adev/shared-docs/pipeline/guides/helpers.mts
diff --git a/adev/shared-docs/pipeline/guides/hooks.ts b/adev/shared-docs/pipeline/guides/hooks.mts
similarity index 90%
rename from adev/shared-docs/pipeline/guides/hooks.ts
rename to adev/shared-docs/pipeline/guides/hooks.mts
index a5a2b967a816..f85deae66e02 100644
--- a/adev/shared-docs/pipeline/guides/hooks.ts
+++ b/adev/shared-docs/pipeline/guides/hooks.mts
@@ -7,7 +7,7 @@
*/
import {MarkedExtension} from 'marked';
-import {resetHeaderIdsOfCurrentDocument} from './state';
+import {resetHeaderIdsOfCurrentDocument} from './state.mjs';
/**
* Custom hooks for marked that will be used to post-transform markdown files with parent styles for docs.
diff --git a/adev/shared-docs/pipeline/guides/index.ts b/adev/shared-docs/pipeline/guides/index.mts
similarity index 96%
rename from adev/shared-docs/pipeline/guides/index.ts
rename to adev/shared-docs/pipeline/guides/index.mts
index effa5057ca42..bf48761cbffa 100644
--- a/adev/shared-docs/pipeline/guides/index.ts
+++ b/adev/shared-docs/pipeline/guides/index.mts
@@ -8,8 +8,8 @@
import {readFileSync, writeFileSync} from 'fs';
import path from 'path';
-import {parseMarkdown} from './parse';
-import {initHighlighter} from './extensions/docs-code/format/highlight';
+import {parseMarkdown} from './parse.mjs';
+import {initHighlighter} from './extensions/docs-code/format/highlight.mjs';
async function main() {
const [paramFilePath] = process.argv.slice(2);
diff --git a/adev/shared-docs/pipeline/guides/mermaid/index.ts b/adev/shared-docs/pipeline/guides/mermaid/index.mts
similarity index 97%
rename from adev/shared-docs/pipeline/guides/mermaid/index.ts
rename to adev/shared-docs/pipeline/guides/mermaid/index.mts
index 118d2980f1d9..7498a3678349 100644
--- a/adev/shared-docs/pipeline/guides/mermaid/index.ts
+++ b/adev/shared-docs/pipeline/guides/mermaid/index.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {DocsCodeToken} from '../extensions/docs-code/docs-code';
+import {DocsCodeToken} from '../extensions/docs-code/docs-code.mjs';
import {chromium} from 'playwright-core';
import {Mermaid, MermaidConfig} from 'mermaid';
import {runfiles} from '@bazel/runfiles';
diff --git a/adev/shared-docs/pipeline/guides/parse.ts b/adev/shared-docs/pipeline/guides/parse.mts
similarity index 76%
rename from adev/shared-docs/pipeline/guides/parse.ts
rename to adev/shared-docs/pipeline/guides/parse.mts
index cf17a734be95..01db329aad89 100644
--- a/adev/shared-docs/pipeline/guides/parse.ts
+++ b/adev/shared-docs/pipeline/guides/parse.mts
@@ -7,23 +7,23 @@
*/
import {marked} from 'marked';
-import {hooks} from './hooks';
-import {Renderer} from './renderer';
-import {docsAlertExtension} from './extensions/docs-alert';
-import {docsCalloutExtension} from './extensions/docs-callout';
-import {docsPillExtension} from './extensions/docs-pill/docs-pill';
-import {docsPillRowExtension} from './extensions/docs-pill/docs-pill-row';
-import {docsVideoExtension} from './extensions/docs-video';
-import {docsWorkflowExtension} from './extensions/docs-workflow/docs-workflow';
-import {docsStepExtension} from './extensions/docs-workflow/docs-step';
-import {docsCardExtension} from './extensions/docs-card/docs-card';
-import {docsCardContainerExtension} from './extensions/docs-card/docs-card-container';
-import {docsDecorativeHeaderExtension} from './extensions/docs-decorative-header';
-import {docsCodeBlockExtension} from './extensions/docs-code/docs-code-block';
-import {docsCodeExtension} from './extensions/docs-code/docs-code';
-import {docsCodeMultifileExtension} from './extensions/docs-code/docs-code-multifile';
-import {ParserContext, setContext} from './utils';
-import {walkTokens} from './walk-tokens';
+import {hooks} from './hooks.mjs';
+import {Renderer} from './renderer.mjs';
+import {docsAlertExtension} from './extensions/docs-alert.mjs';
+import {docsCalloutExtension} from './extensions/docs-callout.mjs';
+import {docsPillExtension} from './extensions/docs-pill/docs-pill.mjs';
+import {docsPillRowExtension} from './extensions/docs-pill/docs-pill-row.mjs';
+import {docsVideoExtension} from './extensions/docs-video.mjs';
+import {docsWorkflowExtension} from './extensions/docs-workflow/docs-workflow.mjs';
+import {docsStepExtension} from './extensions/docs-workflow/docs-step.mjs';
+import {docsCardExtension} from './extensions/docs-card/docs-card.mjs';
+import {docsCardContainerExtension} from './extensions/docs-card/docs-card-container.mjs';
+import {docsDecorativeHeaderExtension} from './extensions/docs-decorative-header.mjs';
+import {docsCodeBlockExtension} from './extensions/docs-code/docs-code-block.mjs';
+import {docsCodeExtension} from './extensions/docs-code/docs-code.mjs';
+import {docsCodeMultifileExtension} from './extensions/docs-code/docs-code-multifile.mjs';
+import {ParserContext, setContext} from './utils.mjs';
+import {walkTokens} from './walk-tokens.mjs';
export async function parseMarkdown(
markdownContent: string,
diff --git a/adev/shared-docs/pipeline/guides/renderer.ts b/adev/shared-docs/pipeline/guides/renderer.mts
similarity index 65%
rename from adev/shared-docs/pipeline/guides/renderer.ts
rename to adev/shared-docs/pipeline/guides/renderer.mts
index 97d645182729..51a819b54f22 100644
--- a/adev/shared-docs/pipeline/guides/renderer.ts
+++ b/adev/shared-docs/pipeline/guides/renderer.mts
@@ -7,12 +7,12 @@
*/
import {Renderer as _Renderer} from 'marked';
-import {linkRender} from './tranformations/link';
-import {tableRender} from './tranformations/table';
-import {listRender} from './tranformations/list';
-import {imageRender} from './tranformations/image';
-import {textRender} from './tranformations/text';
-import {headingRender} from './tranformations/heading';
+import {linkRender} from './tranformations/link.mjs';
+import {tableRender} from './tranformations/table.mjs';
+import {listRender} from './tranformations/list.mjs';
+import {imageRender} from './tranformations/image.mjs';
+import {textRender} from './tranformations/text.mjs';
+import {headingRender} from './tranformations/heading.mjs';
/**
* Custom renderer for marked that will be used to transform markdown files to HTML
diff --git a/adev/shared-docs/pipeline/guides/index.d.ts b/adev/shared-docs/pipeline/guides/shiki.d.ts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/index.d.ts
rename to adev/shared-docs/pipeline/guides/shiki.d.ts
diff --git a/adev/shared-docs/pipeline/guides/state.ts b/adev/shared-docs/pipeline/guides/state.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/state.ts
rename to adev/shared-docs/pipeline/guides/state.mts
diff --git a/adev/shared-docs/pipeline/guides/testing/BUILD.bazel b/adev/shared-docs/pipeline/guides/testing/BUILD.bazel
index 22d81127f7c8..46f22de05231 100644
--- a/adev/shared-docs/pipeline/guides/testing/BUILD.bazel
+++ b/adev/shared-docs/pipeline/guides/testing/BUILD.bazel
@@ -1,25 +1,28 @@
-load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
+load("//tools:defaults.bzl", "jasmine_node_test")
+load("//tools:defaults2.bzl", "ts_project")
-ts_library(
+ts_project(
name = "unit_test_lib",
testonly = True,
srcs = glob([
- "**/*.spec.ts",
+ "**/*.spec.mts",
]),
+ tsconfig = "//adev/shared-docs:tsconfig_test",
deps = [
- "//adev/shared-docs/pipeline/guides",
- "@npm//@bazel/runfiles",
- "@npm//@types/jsdom",
- "@npm//jsdom",
+ "//:node_modules/@bazel/runfiles",
+ "//:node_modules/@types/jsdom",
+ "//:node_modules/jsdom",
+ "//adev/shared-docs/pipeline/guides:guides_rjs",
],
)
-ts_library(
+ts_project(
name = "bootstrap",
testonly = True,
srcs = [
- "bootstrap.init.ts",
+ "bootstrap.init.mts",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
jasmine_node_test(
diff --git a/packages/core/schematics/migrations/google3/index.ts b/adev/shared-docs/pipeline/guides/testing/bootstrap.init.mts
similarity index 72%
rename from packages/core/schematics/migrations/google3/index.ts
rename to adev/shared-docs/pipeline/guides/testing/bootstrap.init.mts
index bf2fef5718ea..5033de4286c3 100644
--- a/packages/core/schematics/migrations/google3/index.ts
+++ b/adev/shared-docs/pipeline/guides/testing/bootstrap.init.mts
@@ -6,4 +6,4 @@
* found in the LICENSE file at https://angular.dev/license
*/
-export {Rule as WaitForAsyncRule} from './waitForAsyncRule';
+// HANDLE_MERMAID is implicitly false as unit testing does not handle mermaid.
diff --git a/adev/shared-docs/pipeline/guides/testing/bootstrap.init.ts b/adev/shared-docs/pipeline/guides/testing/bootstrap.init.ts
deleted file mode 100644
index 265dfd15480c..000000000000
--- a/adev/shared-docs/pipeline/guides/testing/bootstrap.init.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
- * @license
- * Copyright Google LLC All Rights Reserved.
- *
- * Use of this source code is governed by an MIT-style license that can be
- * found in the LICENSE file at https://angular.dev/license
- */
-
-// Set HANDLE_MERMAID to false as unit testing does not handle mermaid.
-(global as any).HANDLE_MERMAID = false;
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-alert/docs-alert.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-alert/docs-alert.spec.mts
similarity index 94%
rename from adev/shared-docs/pipeline/guides/testing/docs-alert/docs-alert.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-alert/docs-alert.spec.mts
index c9c7b0331c5f..8467de76166c 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-alert/docs-alert.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-alert/docs-alert.spec.mts
@@ -10,8 +10,8 @@ import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
-import {AlertSeverityLevel} from '../../../guides/extensions/docs-alert';
-import {parseMarkdown} from '../../../guides/parse';
+import {AlertSeverityLevel} from '../../../guides/extensions/docs-alert.mjs';
+import {parseMarkdown} from '../../../guides/parse.mjs';
describe('markdown to html', () => {
let markdownDocument: DocumentFragment;
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-callout/docs-callout.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-callout/docs-callout.spec.mts
similarity index 93%
rename from adev/shared-docs/pipeline/guides/testing/docs-callout/docs-callout.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-callout/docs-callout.spec.mts
index 3f1e94968524..0373591cc1a3 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-callout/docs-callout.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-callout/docs-callout.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-card-container/docs-card-container.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-card-container/docs-card-container.spec.mts
similarity index 94%
rename from adev/shared-docs/pipeline/guides/testing/docs-card-container/docs-card-container.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-card-container/docs-card-container.spec.mts
index 922c55f1e66b..826ef4fe32a2 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-card-container/docs-card-container.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-card-container/docs-card-container.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-card/docs-card.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-card/docs-card.spec.mts
similarity index 96%
rename from adev/shared-docs/pipeline/guides/testing/docs-card/docs-card.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-card/docs-card.spec.mts
index 5a3a913f09e1..59651d70540e 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-card/docs-card.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-card/docs-card.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-code-block/docs-code-block.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-code-block/docs-code-block.spec.mts
similarity index 93%
rename from adev/shared-docs/pipeline/guides/testing/docs-code-block/docs-code-block.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-code-block/docs-code-block.spec.mts
index 6e26f399e988..a0c531d778ee 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-code-block/docs-code-block.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-code-block/docs-code-block.spec.mts
@@ -6,11 +6,11 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
-import {initHighlighter} from '../../extensions/docs-code/format/highlight';
+import {initHighlighter} from '../../extensions/docs-code/format/highlight.mjs';
describe('markdown to html', () => {
let markdownDocument: DocumentFragment;
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-code-multifile/docs-code-multifile.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-code-multifile/docs-code-multifile.spec.mts
similarity index 94%
rename from adev/shared-docs/pipeline/guides/testing/docs-code-multifile/docs-code-multifile.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-code-multifile/docs-code-multifile.spec.mts
index 0a26b3409992..4853023ca6c0 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-code-multifile/docs-code-multifile.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-code-multifile/docs-code-multifile.spec.mts
@@ -6,11 +6,11 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
-import {initHighlighter} from '../../extensions/docs-code/format/highlight';
+import {initHighlighter} from '../../extensions/docs-code/format/highlight.mjs';
describe('markdown to html', () => {
let markdownDocument: DocumentFragment;
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-code/docs-code.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-code/docs-code.spec.mts
similarity index 97%
rename from adev/shared-docs/pipeline/guides/testing/docs-code/docs-code.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-code/docs-code.spec.mts
index adc7aa974d77..e5f35e4c8302 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-code/docs-code.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-code/docs-code.spec.mts
@@ -6,11 +6,11 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
-import {initHighlighter} from '../../extensions/docs-code/format/highlight';
+import {initHighlighter} from '../../extensions/docs-code/format/highlight.mjs';
describe('markdown to html', () => {
let markdownDocument: DocumentFragment;
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-decorative-header/docs-decorative-header.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-decorative-header/docs-decorative-header.spec.mts
similarity index 95%
rename from adev/shared-docs/pipeline/guides/testing/docs-decorative-header/docs-decorative-header.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-decorative-header/docs-decorative-header.spec.mts
index 31d3b34fa4ee..41faa5e1d67d 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-decorative-header/docs-decorative-header.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-decorative-header/docs-decorative-header.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-pill-row/docs-pill-row.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-pill-row/docs-pill-row.spec.mts
similarity index 94%
rename from adev/shared-docs/pipeline/guides/testing/docs-pill-row/docs-pill-row.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-pill-row/docs-pill-row.spec.mts
index e3248f3546cd..5db6d0d89dfb 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-pill-row/docs-pill-row.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-pill-row/docs-pill-row.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-pill/docs-pill.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-pill/docs-pill.spec.mts
similarity index 96%
rename from adev/shared-docs/pipeline/guides/testing/docs-pill/docs-pill.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-pill/docs-pill.spec.mts
index fd6f524b26bc..822fccf998c0 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-pill/docs-pill.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-pill/docs-pill.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-step/docs-step.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-step/docs-step.spec.mts
similarity index 97%
rename from adev/shared-docs/pipeline/guides/testing/docs-step/docs-step.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-step/docs-step.spec.mts
index 7dc1c81fc5ed..f60bc139aaac 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-step/docs-step.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-step/docs-step.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-video/docs-video.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-video/docs-video.spec.mts
similarity index 95%
rename from adev/shared-docs/pipeline/guides/testing/docs-video/docs-video.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-video/docs-video.spec.mts
index a738c20837d2..3d9d934a9c91 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-video/docs-video.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-video/docs-video.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/docs-workflow/docs-workflow.spec.ts b/adev/shared-docs/pipeline/guides/testing/docs-workflow/docs-workflow.spec.mts
similarity index 94%
rename from adev/shared-docs/pipeline/guides/testing/docs-workflow/docs-workflow.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/docs-workflow/docs-workflow.spec.mts
index ec3c7f07e57e..25ef5b55be0b 100644
--- a/adev/shared-docs/pipeline/guides/testing/docs-workflow/docs-workflow.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/docs-workflow/docs-workflow.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/heading/heading.spec.ts b/adev/shared-docs/pipeline/guides/testing/heading/heading.spec.mts
similarity index 98%
rename from adev/shared-docs/pipeline/guides/testing/heading/heading.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/heading/heading.spec.mts
index 7bf80539f7c5..364aba6b7dba 100644
--- a/adev/shared-docs/pipeline/guides/testing/heading/heading.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/heading/heading.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/image/image.spec.ts b/adev/shared-docs/pipeline/guides/testing/image/image.spec.mts
similarity index 94%
rename from adev/shared-docs/pipeline/guides/testing/image/image.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/image/image.spec.mts
index ceba5ebfb6b3..6cd8e35efa54 100644
--- a/adev/shared-docs/pipeline/guides/testing/image/image.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/image/image.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/link/link.spec.ts b/adev/shared-docs/pipeline/guides/testing/link/link.spec.mts
similarity index 94%
rename from adev/shared-docs/pipeline/guides/testing/link/link.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/link/link.spec.mts
index ca416e323a3e..a503b849aaea 100644
--- a/adev/shared-docs/pipeline/guides/testing/link/link.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/link/link.spec.mts
@@ -7,7 +7,7 @@
*/
import {readFile} from 'fs/promises';
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
describe('markdown to html', () => {
diff --git a/adev/shared-docs/pipeline/guides/testing/list/list.spec.ts b/adev/shared-docs/pipeline/guides/testing/list/list.spec.mts
similarity index 96%
rename from adev/shared-docs/pipeline/guides/testing/list/list.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/list/list.spec.mts
index 0a0b850fea1a..5462fa9e12d3 100644
--- a/adev/shared-docs/pipeline/guides/testing/list/list.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/list/list.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/testing/mermaid/BUILD.bazel b/adev/shared-docs/pipeline/guides/testing/mermaid/BUILD.bazel
index 4f1909fb9659..a80a4c10d10f 100644
--- a/adev/shared-docs/pipeline/guides/testing/mermaid/BUILD.bazel
+++ b/adev/shared-docs/pipeline/guides/testing/mermaid/BUILD.bazel
@@ -1,24 +1,30 @@
-load("//tools:defaults.bzl", "esbuild_jasmine_node_test", "ts_library")
+load("//tools:defaults.bzl", "esbuild_jasmine_node_test")
+load("//tools:defaults2.bzl", "ts_project")
-ts_library(
+ts_project(
name = "unit_test_lib",
testonly = True,
srcs = glob([
- "*.spec.ts",
+ "*.spec.mts",
]),
+ tsconfig = "//adev/shared-docs:tsconfig_test",
deps = [
- "//adev/shared-docs/pipeline/guides",
- "@npm//@types/jsdom",
- "@npm//jsdom",
- "@npm//marked",
+ "//:node_modules/@types/jsdom",
+ "//:node_modules/jsdom",
+ "//:node_modules/marked",
+ "//adev/shared-docs/pipeline/guides:guides_rjs",
],
)
-ts_library(
+ts_project(
name = "bootstrap",
testonly = True,
srcs = [
- "bootstrap.init.ts",
+ "bootstrap.init.mts",
+ ],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
+ deps = [
+ "//:node_modules/@types/node",
],
)
@@ -35,7 +41,7 @@ esbuild_jasmine_node_test(
] + glob([
"**/*.md",
"**/*.svg",
- "**/*.ts",
+ "**/*.mts",
]),
env = {
"CHROME_BIN": "$(CHROMIUM)",
diff --git a/adev/shared-docs/pipeline/guides/testing/mermaid/bootstrap.init.ts b/adev/shared-docs/pipeline/guides/testing/mermaid/bootstrap.init.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/testing/mermaid/bootstrap.init.ts
rename to adev/shared-docs/pipeline/guides/testing/mermaid/bootstrap.init.mts
diff --git a/adev/shared-docs/pipeline/guides/testing/mermaid/mermaid.spec.ts b/adev/shared-docs/pipeline/guides/testing/mermaid/mermaid.spec.mts
similarity index 93%
rename from adev/shared-docs/pipeline/guides/testing/mermaid/mermaid.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/mermaid/mermaid.spec.mts
index f27dfc6e21e7..2251ce651476 100644
--- a/adev/shared-docs/pipeline/guides/testing/mermaid/mermaid.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/mermaid/mermaid.spec.mts
@@ -8,8 +8,8 @@
import {JSDOM} from 'jsdom';
import {marked} from 'marked';
-import {docsCodeBlockExtension} from '../../extensions/docs-code/docs-code-block';
-import {walkTokens} from '../../walk-tokens';
+import {docsCodeBlockExtension} from '../../extensions/docs-code/docs-code-block.mjs';
+import {walkTokens} from '../../walk-tokens.mjs';
describe('markdown to html', () => {
let markdownDocument: DocumentFragment;
diff --git a/adev/shared-docs/pipeline/guides/testing/table/table.spec.ts b/adev/shared-docs/pipeline/guides/testing/table/table.spec.mts
similarity index 95%
rename from adev/shared-docs/pipeline/guides/testing/table/table.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/table/table.spec.mts
index 63a44d043fbe..d66b98e3be23 100644
--- a/adev/shared-docs/pipeline/guides/testing/table/table.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/table/table.spec.mts
@@ -7,7 +7,7 @@
*/
import {readFile} from 'fs/promises';
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
describe('markdown to html', () => {
diff --git a/adev/shared-docs/pipeline/guides/testing/text/text.spec.ts b/adev/shared-docs/pipeline/guides/testing/text/text.spec.mts
similarity index 94%
rename from adev/shared-docs/pipeline/guides/testing/text/text.spec.ts
rename to adev/shared-docs/pipeline/guides/testing/text/text.spec.mts
index ee7ab095a80f..fa5e5f83e88a 100644
--- a/adev/shared-docs/pipeline/guides/testing/text/text.spec.ts
+++ b/adev/shared-docs/pipeline/guides/testing/text/text.spec.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {parseMarkdown} from '../../../guides/parse';
+import {parseMarkdown} from '../../../guides/parse.mjs';
import {runfiles} from '@bazel/runfiles';
import {readFile} from 'fs/promises';
import {JSDOM} from 'jsdom';
diff --git a/adev/shared-docs/pipeline/guides/tranformations/heading.ts b/adev/shared-docs/pipeline/guides/tranformations/heading.mts
similarity index 94%
rename from adev/shared-docs/pipeline/guides/tranformations/heading.ts
rename to adev/shared-docs/pipeline/guides/tranformations/heading.mts
index 1c86fd37da33..06bfc43e0bf0 100644
--- a/adev/shared-docs/pipeline/guides/tranformations/heading.ts
+++ b/adev/shared-docs/pipeline/guides/tranformations/heading.mts
@@ -8,8 +8,8 @@
import {Renderer, Tokens} from 'marked';
-import {getHeaderId} from '../state';
-import {getPageTitle} from '../utils';
+import {getHeaderId} from '../state.mjs';
+import {getPageTitle} from '../utils.mjs';
export function headingRender(this: Renderer, {depth, tokens}: Tokens.Heading): string {
const text = this?.parser.parseInline(tokens);
diff --git a/adev/shared-docs/pipeline/guides/tranformations/image.ts b/adev/shared-docs/pipeline/guides/tranformations/image.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/tranformations/image.ts
rename to adev/shared-docs/pipeline/guides/tranformations/image.mts
diff --git a/adev/shared-docs/pipeline/guides/tranformations/link.ts b/adev/shared-docs/pipeline/guides/tranformations/link.mts
similarity index 91%
rename from adev/shared-docs/pipeline/guides/tranformations/link.ts
rename to adev/shared-docs/pipeline/guides/tranformations/link.mts
index 9ca727ebceea..4ccebec8f139 100644
--- a/adev/shared-docs/pipeline/guides/tranformations/link.ts
+++ b/adev/shared-docs/pipeline/guides/tranformations/link.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {anchorTarget} from '../helpers';
+import {anchorTarget} from '../helpers.mjs';
import {Renderer, Tokens} from 'marked';
export function linkRender(this: Renderer, {href, title, tokens}: Tokens.Link) {
diff --git a/adev/shared-docs/pipeline/guides/tranformations/list.ts b/adev/shared-docs/pipeline/guides/tranformations/list.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/tranformations/list.ts
rename to adev/shared-docs/pipeline/guides/tranformations/list.mts
diff --git a/adev/shared-docs/pipeline/guides/tranformations/table.ts b/adev/shared-docs/pipeline/guides/tranformations/table.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/tranformations/table.ts
rename to adev/shared-docs/pipeline/guides/tranformations/table.mts
diff --git a/adev/shared-docs/pipeline/guides/tranformations/text.ts b/adev/shared-docs/pipeline/guides/tranformations/text.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/tranformations/text.ts
rename to adev/shared-docs/pipeline/guides/tranformations/text.mts
diff --git a/adev/shared-docs/pipeline/guides/utils.ts b/adev/shared-docs/pipeline/guides/utils.mts
similarity index 100%
rename from adev/shared-docs/pipeline/guides/utils.ts
rename to adev/shared-docs/pipeline/guides/utils.mts
diff --git a/adev/shared-docs/pipeline/guides/walk-tokens.ts b/adev/shared-docs/pipeline/guides/walk-tokens.mts
similarity index 85%
rename from adev/shared-docs/pipeline/guides/walk-tokens.ts
rename to adev/shared-docs/pipeline/guides/walk-tokens.mts
index 17c709f07e34..169572371a29 100644
--- a/adev/shared-docs/pipeline/guides/walk-tokens.ts
+++ b/adev/shared-docs/pipeline/guides/walk-tokens.mts
@@ -7,7 +7,7 @@
*/
import {Token} from 'marked';
-import {DocsCodeToken} from './extensions/docs-code/docs-code';
+import {DocsCodeToken} from './extensions/docs-code/docs-code.mjs';
/**
* Describe a HANDLE_MERMAID value which esbuild will use at build time to determine if the mermaid
@@ -25,14 +25,14 @@ function isDocsCodeToken(token: Token): token is DocsCodeToken {
* Handle the provided token based on the token itself replacing its content/data in place
* as appropriate.
*/
-let mermaid: typeof import('./mermaid');
+let mermaid: typeof import('./mermaid/index.mjs');
export async function walkTokens(token: Token): Promise {
if (!isDocsCodeToken(token) || token.language !== 'mermaid') {
return;
}
if (HANDLE_MERMAID) {
- mermaid ??= await import('./mermaid');
+ mermaid ??= await import('./mermaid/index.mjs');
return mermaid.processMermaidCodeBlock(token);
}
}
diff --git a/adev/shared-docs/pipeline/navigation/BUILD.bazel b/adev/shared-docs/pipeline/navigation/BUILD.bazel
index 40db87b4dddf..05592b6b2312 100644
--- a/adev/shared-docs/pipeline/navigation/BUILD.bazel
+++ b/adev/shared-docs/pipeline/navigation/BUILD.bazel
@@ -1,36 +1,38 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:public"])
-ts_library(
+ts_project(
name = "lib",
srcs = glob(
[
- "*.ts",
+ "*.mts",
],
exclude = [
- "index.ts",
+ "index.mts",
],
),
+ tsconfig = "//adev/shared-docs:tsconfig_build",
deps = [
- "//adev/shared-docs/interfaces",
- "@npm//@types/node",
- "@npm//@webcontainer/api",
- "@npm//tinyglobby",
+ "//:node_modules/@types/node",
+ "//:node_modules/@webcontainer/api",
+ "//:node_modules/tinyglobby",
+ "//adev/shared-docs/interfaces:interfaces_rjs",
],
)
-ts_library(
+ts_project(
name = "navigation",
srcs = [
- "index.ts",
+ "index.mts",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = [
"//adev/shared-docs:__subpackages__",
],
deps = [
- ":lib",
+ ":lib_rjs",
+ "//:node_modules/@types/node",
"//adev/shared-docs/interfaces",
- "@npm//@types/node",
],
)
diff --git a/adev/shared-docs/pipeline/navigation/index.ts b/adev/shared-docs/pipeline/navigation/index.mts
similarity index 86%
rename from adev/shared-docs/pipeline/navigation/index.ts
rename to adev/shared-docs/pipeline/navigation/index.mts
index 38583b76d95b..99cf5b64aa6e 100644
--- a/adev/shared-docs/pipeline/navigation/index.ts
+++ b/adev/shared-docs/pipeline/navigation/index.mts
@@ -7,8 +7,8 @@
*/
import {readFileSync, writeFileSync} from 'fs';
-import {generateNavItems} from './nav-items-gen';
-import {getNavItemGenStrategy} from './strategies';
+import {generateNavItems} from './nav-items-gen.mjs';
+import {getNavItemGenStrategy} from './strategies.mjs';
async function main() {
const [paramFilePath] = process.argv.slice(2);
diff --git a/adev/shared-docs/pipeline/navigation/nav-items-gen.ts b/adev/shared-docs/pipeline/navigation/nav-items-gen.mts
similarity index 96%
rename from adev/shared-docs/pipeline/navigation/nav-items-gen.ts
rename to adev/shared-docs/pipeline/navigation/nav-items-gen.mts
index 0e6e58f23eaf..713c59a36e4a 100644
--- a/adev/shared-docs/pipeline/navigation/nav-items-gen.ts
+++ b/adev/shared-docs/pipeline/navigation/nav-items-gen.mts
@@ -11,7 +11,7 @@ import readline from 'readline';
import {basename, dirname, resolve} from 'path';
import {NavigationItem} from '../../interfaces';
-import {NavigationItemGenerationStrategy} from './types';
+import {NavigationItemGenerationStrategy} from './types.mjs';
/**
* Generate navigations items by a provided strategy.
diff --git a/adev/shared-docs/pipeline/navigation/strategies.ts b/adev/shared-docs/pipeline/navigation/strategies.mts
similarity index 99%
rename from adev/shared-docs/pipeline/navigation/strategies.ts
rename to adev/shared-docs/pipeline/navigation/strategies.mts
index f817fcdf6778..e8251e9440c7 100644
--- a/adev/shared-docs/pipeline/navigation/strategies.ts
+++ b/adev/shared-docs/pipeline/navigation/strategies.mts
@@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {NavigationItemGenerationStrategy, Strategy} from './types';
+import {NavigationItemGenerationStrategy, Strategy} from './types.mjs';
// Should point to the website content.
// Update, if the location is updated or shared-docs is extracted from `adev/`.
diff --git a/adev/shared-docs/pipeline/navigation/test/BUILD.bazel b/adev/shared-docs/pipeline/navigation/test/BUILD.bazel
index b7472dbe0265..a2ee28bf4bec 100644
--- a/adev/shared-docs/pipeline/navigation/test/BUILD.bazel
+++ b/adev/shared-docs/pipeline/navigation/test/BUILD.bazel
@@ -1,13 +1,16 @@
-load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
+load("//tools:defaults.bzl", "jasmine_node_test")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//adev/shared-docs/pipeline/navigation:__subpackages__"])
-ts_library(
+ts_project(
name = "unit_test_lib",
testonly = True,
- srcs = glob(["*.spec.ts"]),
+ srcs = glob(["*.spec.mts"]),
+ tsconfig = "//adev/shared-docs:tsconfig_test",
deps = [
- "//adev/shared-docs/pipeline/navigation:lib",
+ "//:node_modules/@types/node",
+ "//adev/shared-docs/pipeline/navigation:lib_rjs",
],
)
diff --git a/adev/shared-docs/pipeline/navigation/test/nav-items-gen.spec.ts b/adev/shared-docs/pipeline/navigation/test/nav-items-gen.spec.mts
similarity index 91%
rename from adev/shared-docs/pipeline/navigation/test/nav-items-gen.spec.ts
rename to adev/shared-docs/pipeline/navigation/test/nav-items-gen.spec.mts
index 0612521bf05a..833348992482 100644
--- a/adev/shared-docs/pipeline/navigation/test/nav-items-gen.spec.ts
+++ b/adev/shared-docs/pipeline/navigation/test/nav-items-gen.spec.mts
@@ -6,8 +6,8 @@
* found in the LICENSE file at https://angular.dev/license
*/
-import {generateNavItems} from '../nav-items-gen';
-import {NavigationItemGenerationStrategy} from '../types';
+import {generateNavItems} from '../nav-items-gen.mjs';
+import {NavigationItemGenerationStrategy} from '../types.mjs';
import fs from 'fs';
import readline from 'readline';
diff --git a/adev/shared-docs/pipeline/navigation/types.ts b/adev/shared-docs/pipeline/navigation/types.mts
similarity index 100%
rename from adev/shared-docs/pipeline/navigation/types.ts
rename to adev/shared-docs/pipeline/navigation/types.mts
diff --git a/adev/shared-docs/pipeline/tutorials/BUILD.bazel b/adev/shared-docs/pipeline/tutorials/BUILD.bazel
index c482f8c07f86..8698b9292163 100644
--- a/adev/shared-docs/pipeline/tutorials/BUILD.bazel
+++ b/adev/shared-docs/pipeline/tutorials/BUILD.bazel
@@ -1,52 +1,55 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:public"])
-ts_library(
+ts_project(
name = "editor",
srcs = glob(
[
- "*.ts",
+ "*.mts",
],
exclude = [
- "playground.ts",
- "tutorial.ts",
+ "playground.mts",
+ "tutorial.mts",
],
),
+ tsconfig = "//adev/shared-docs:tsconfig_build",
deps = [
- "//adev/shared-docs/interfaces",
- "@npm//@types/node",
- "@npm//@webcontainer/api",
- "@npm//tinyglobby",
+ "//:node_modules/@types/node",
+ "//:node_modules/@webcontainer/api",
+ "//:node_modules/tinyglobby",
+ "//adev/shared-docs/interfaces:interfaces_rjs",
],
)
-ts_library(
+ts_project(
name = "playground",
srcs = [
- "playground.ts",
+ "playground.mts",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = [
"//adev/shared-docs:__subpackages__",
],
deps = [
- ":editor",
- "//adev/shared-docs/interfaces",
- "@npm//@types/node",
+ ":editor_rjs",
+ "//:node_modules/@types/node",
+ "//adev/shared-docs/interfaces:interfaces_rjs",
],
)
-ts_library(
+ts_project(
name = "tutorials",
srcs = [
- "tutorial.ts",
+ "tutorial.mts",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
visibility = [
"//adev/shared-docs:__subpackages__",
],
deps = [
- ":editor",
- "//adev/shared-docs/interfaces",
- "@npm//@types/node",
+ ":editor_rjs",
+ "//:node_modules/@types/node",
+ "//adev/shared-docs/interfaces:interfaces_rjs",
],
)
diff --git a/adev/shared-docs/pipeline/tutorials/common/src/main.ts b/adev/shared-docs/pipeline/tutorials/common/src/main.ts
index 0ff1c273f4cf..b9283be8591b 100644
--- a/adev/shared-docs/pipeline/tutorials/common/src/main.ts
+++ b/adev/shared-docs/pipeline/tutorials/common/src/main.ts
@@ -7,7 +7,7 @@
*/
import {bootstrapApplication} from '@angular/platform-browser';
-import {appConfig} from './app/app.config';
-import {AppComponent} from './app/app.component';
+import {appConfig} from './app/app.config.js';
+import {App} from './app/app';
-bootstrapApplication(AppComponent, appConfig).catch((err) => console.error(err));
+bootstrapApplication(App, appConfig).catch((err) => console.error(err));
diff --git a/adev/shared-docs/pipeline/tutorials/metadata.ts b/adev/shared-docs/pipeline/tutorials/metadata.mts
similarity index 93%
rename from adev/shared-docs/pipeline/tutorials/metadata.ts
rename to adev/shared-docs/pipeline/tutorials/metadata.mts
index fa3a68de8c8e..b1a5ee2e5cfe 100644
--- a/adev/shared-docs/pipeline/tutorials/metadata.ts
+++ b/adev/shared-docs/pipeline/tutorials/metadata.mts
@@ -14,7 +14,7 @@ import {
TutorialConfig,
TutorialMetadata,
} from '../../interfaces';
-import {getFileContents} from './utils';
+import {getFileContents} from './utils.mjs';
/** Generate the metadata.json content for a provided tutorial config. */
export async function generateMetadata(
@@ -23,7 +23,9 @@ export async function generateMetadata(
files: FileAndContentRecord,
): Promise {
const tutorialFiles: FileAndContentRecord = {};
- const {dependencies, devDependencies} = JSON.parse(files['package.json']) as PackageJson;
+ const {dependencies, devDependencies} = JSON.parse(
+ files['package.json'] as string,
+ ) as PackageJson;
config.openFiles?.forEach((file) => (tutorialFiles[file] = files[file]));
diff --git a/adev/shared-docs/pipeline/tutorials/playground.ts b/adev/shared-docs/pipeline/tutorials/playground.mts
similarity index 91%
rename from adev/shared-docs/pipeline/tutorials/playground.ts
rename to adev/shared-docs/pipeline/tutorials/playground.mts
index a6188ea29af4..8784ca268e1f 100644
--- a/adev/shared-docs/pipeline/tutorials/playground.ts
+++ b/adev/shared-docs/pipeline/tutorials/playground.mts
@@ -7,12 +7,12 @@
*/
import {join} from 'path';
-import {FileAndContentRecord} from '../../interfaces';
+import {FileAndContentRecord} from '../../interfaces/index';
import {existsSync, mkdirSync, writeFileSync} from 'fs';
-import {addDirectoryToFilesRecord, findAllConfigs} from './utils';
-import {generateMetadata} from './metadata';
-import {generateSourceCode} from './source-code';
-import {generatePlaygroundRoutes} from './routes';
+import {addDirectoryToFilesRecord, findAllConfigs} from './utils.mjs';
+import {generateMetadata} from './metadata.mjs';
+import {generateSourceCode} from './source-code.mjs';
+import {generatePlaygroundRoutes} from './routes.mjs';
/**
* Generates the playground files for the playground directory.
diff --git a/adev/shared-docs/pipeline/tutorials/routes.ts b/adev/shared-docs/pipeline/tutorials/routes.mts
similarity index 98%
rename from adev/shared-docs/pipeline/tutorials/routes.ts
rename to adev/shared-docs/pipeline/tutorials/routes.mts
index aff31dd818d2..dce109993647 100644
--- a/adev/shared-docs/pipeline/tutorials/routes.ts
+++ b/adev/shared-docs/pipeline/tutorials/routes.mts
@@ -11,7 +11,7 @@ import {
TutorialConfig,
TutorialNavigationItemWithStep,
TutorialNavigationItem,
-} from '../../interfaces';
+} from '../../interfaces/index';
export async function generatePlaygroundRoutes(
configs: Record,
diff --git a/adev/shared-docs/pipeline/tutorials/source-code.ts b/adev/shared-docs/pipeline/tutorials/source-code.mts
similarity index 90%
rename from adev/shared-docs/pipeline/tutorials/source-code.ts
rename to adev/shared-docs/pipeline/tutorials/source-code.mts
index 034236bb8269..5de2314dc875 100644
--- a/adev/shared-docs/pipeline/tutorials/source-code.ts
+++ b/adev/shared-docs/pipeline/tutorials/source-code.mts
@@ -7,8 +7,8 @@
*/
import {FileSystemTree} from '@webcontainer/api';
-import {FileAndContentRecord, TutorialConfig} from '../../interfaces';
-import {getFileSystemTree} from './webcontainers';
+import {FileAndContentRecord, TutorialConfig} from '../../interfaces/index';
+import {getFileSystemTree} from './webcontainers.mjs';
/** Generate the source-code.json content for a provided tutorial config. */
export async function generateSourceCode(
diff --git a/adev/shared-docs/pipeline/tutorials/tutorial.ts b/adev/shared-docs/pipeline/tutorials/tutorial.mts
similarity index 93%
rename from adev/shared-docs/pipeline/tutorials/tutorial.ts
rename to adev/shared-docs/pipeline/tutorials/tutorial.mts
index 7d568d930136..c2024c679c33 100644
--- a/adev/shared-docs/pipeline/tutorials/tutorial.ts
+++ b/adev/shared-docs/pipeline/tutorials/tutorial.mts
@@ -7,12 +7,12 @@
*/
import {basename, join} from 'path';
-import {FileAndContentRecord} from '../../interfaces';
+import {FileAndContentRecord} from '../../interfaces/index';
import {existsSync, mkdirSync, writeFileSync} from 'fs';
-import {addDirectoryToFilesRecord, findAllConfigs, findConfig} from './utils';
-import {generateMetadata} from './metadata';
-import {generateSourceCode} from './source-code';
-import {generateTutorialRoutes} from './routes';
+import {addDirectoryToFilesRecord, findAllConfigs, findConfig} from './utils.mjs';
+import {generateMetadata} from './metadata.mjs';
+import {generateSourceCode} from './source-code.mjs';
+import {generateTutorialRoutes} from './routes.mjs';
/**
* Generates the files for the provided tutorial directory.
diff --git a/adev/shared-docs/pipeline/tutorials/utils.ts b/adev/shared-docs/pipeline/tutorials/utils.mts
similarity index 99%
rename from adev/shared-docs/pipeline/tutorials/utils.ts
rename to adev/shared-docs/pipeline/tutorials/utils.mts
index 34ed49093bfe..a2c65cb85378 100644
--- a/adev/shared-docs/pipeline/tutorials/utils.ts
+++ b/adev/shared-docs/pipeline/tutorials/utils.mts
@@ -7,7 +7,7 @@
*/
import {glob} from 'tinyglobby';
-import {FileAndContentRecord, TutorialConfig} from '../../interfaces';
+import {FileAndContentRecord, TutorialConfig} from '../../interfaces/index';
import {dirname, join} from 'path';
import {existsSync, readFileSync} from 'fs';
diff --git a/adev/shared-docs/pipeline/tutorials/webcontainers.ts b/adev/shared-docs/pipeline/tutorials/webcontainers.mts
similarity index 99%
rename from adev/shared-docs/pipeline/tutorials/webcontainers.ts
rename to adev/shared-docs/pipeline/tutorials/webcontainers.mts
index 6c15043c2e7c..e9678a8036b5 100644
--- a/adev/shared-docs/pipeline/tutorials/webcontainers.ts
+++ b/adev/shared-docs/pipeline/tutorials/webcontainers.mts
@@ -8,7 +8,7 @@
import {basename, dirname, extname} from 'path';
import type {DirectoryNode, FileNode, FileSystemTree} from '@webcontainer/api';
-import {FileAndContent, FileAndContentRecord} from '../../interfaces';
+import {FileAndContent, FileAndContentRecord} from '../../interfaces/index';
/**
* Create a WebContainer's FileSystemTree from a list of files and its contents
diff --git a/adev/shared-docs/pipes/BUILD.bazel b/adev/shared-docs/pipes/BUILD.bazel
index 0650f6c56317..b34d8c70bacb 100644
--- a/adev/shared-docs/pipes/BUILD.bazel
+++ b/adev/shared-docs/pipes/BUILD.bazel
@@ -1,16 +1,18 @@
-load("//tools:defaults.bzl", "ng_module", "ts_library")
+load("//tools:defaults.bzl", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
-ts_library(
+ts_project(
name = "pipes",
srcs = [
"index.ts",
],
- visibility = ["//adev/shared-docs:__subpackages__"],
- deps = [
+ interop_deps = [
":lib",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
+ visibility = ["//adev/shared-docs:__subpackages__"],
)
ng_module(
diff --git a/adev/shared-docs/providers/BUILD.bazel b/adev/shared-docs/providers/BUILD.bazel
index c1711540b22e..f3087ea0be35 100644
--- a/adev/shared-docs/providers/BUILD.bazel
+++ b/adev/shared-docs/providers/BUILD.bazel
@@ -1,16 +1,18 @@
-load("//tools:defaults.bzl", "ng_module", "ts_library")
+load("//tools:defaults.bzl", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
-ts_library(
+ts_project(
name = "providers",
srcs = [
"index.ts",
],
- visibility = ["//adev/shared-docs:__subpackages__"],
- deps = [
+ interop_deps = [
":lib",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
+ visibility = ["//adev/shared-docs:__subpackages__"],
)
ng_module(
diff --git a/adev/shared-docs/services/BUILD.bazel b/adev/shared-docs/services/BUILD.bazel
index fec7953c4010..67409449e10a 100644
--- a/adev/shared-docs/services/BUILD.bazel
+++ b/adev/shared-docs/services/BUILD.bazel
@@ -1,16 +1,18 @@
-load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module", "ts_library")
+load("//tools:defaults.bzl", "karma_web_test_suite", "ng_module")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
-ts_library(
+ts_project(
name = "services",
srcs = [
"index.ts",
],
- visibility = ["//adev/shared-docs:__subpackages__"],
- deps = [
+ interop_deps = [
":lib",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
+ visibility = ["//adev/shared-docs:__subpackages__"],
)
ng_module(
@@ -37,13 +39,13 @@ ng_module(
],
)
-ts_library(
+ts_project(
name = "test_lib",
testonly = True,
srcs = glob(
["*.spec.ts"],
),
- deps = [
+ interop_deps = [
":lib",
"//adev/shared-docs/interfaces",
"//adev/shared-docs/providers",
@@ -51,6 +53,7 @@ ts_library(
"//packages/core",
"//packages/core/testing",
],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
)
karma_web_test_suite(
diff --git a/adev/shared-docs/styles/docs/_decorative-header.scss b/adev/shared-docs/styles/docs/_decorative-header.scss
index b26f982a81a6..85467a7c475c 100644
--- a/adev/shared-docs/styles/docs/_decorative-header.scss
+++ b/adev/shared-docs/styles/docs/_decorative-header.scss
@@ -6,7 +6,6 @@
.docs-decorative-header {
border-radius: 0.625rem;
background: var(--septenary-contrast);
- max-width: var(--page-width);
overflow: hidden;
display: flex;
position: relative;
diff --git a/adev/shared-docs/testing/BUILD.bazel b/adev/shared-docs/testing/BUILD.bazel
index abda97666268..c9ea22519945 100644
--- a/adev/shared-docs/testing/BUILD.bazel
+++ b/adev/shared-docs/testing/BUILD.bazel
@@ -1,30 +1,32 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
-ts_library(
+ts_project(
name = "testing",
srcs = [
"index.ts",
],
- visibility = ["//adev/shared-docs:__subpackages__"],
- deps = [
+ interop_deps = [
":lib",
],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
+ visibility = ["//adev/shared-docs:__subpackages__"],
)
-ts_library(
+ts_project(
name = "lib",
srcs = glob(
- [
- "*.ts",
- ],
+ ["*.ts"],
exclude = [
"index.ts",
],
),
- deps = [
+ interop_deps = [
"//packages/core",
- "@npm//@webcontainer/api",
+ ],
+ tsconfig = "//adev/shared-docs:tsconfig_build",
+ deps = [
+ "//:node_modules/@webcontainer/api",
],
)
diff --git a/adev/shared-docs/tsconfig-test.json b/adev/shared-docs/tsconfig-test.json
new file mode 100644
index 000000000000..c18f2a41c29e
--- /dev/null
+++ b/adev/shared-docs/tsconfig-test.json
@@ -0,0 +1,6 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "types": ["jasmine", "node"]
+ }
+}
\ No newline at end of file
diff --git a/adev/shared-docs/tsconfig.json b/adev/shared-docs/tsconfig.json
new file mode 100644
index 000000000000..5b8e565173b0
--- /dev/null
+++ b/adev/shared-docs/tsconfig.json
@@ -0,0 +1,19 @@
+{
+ "compilerOptions": {
+ "target": "ES2022",
+ "module": "ESNext",
+ "skipLibCheck": true,
+ "moduleResolution": "bundler",
+ "strict": true,
+ "declaration": true,
+ "sourceMap": true,
+ "lib": ["ES2022", "dom"],
+ "jsx": "react",
+ "jsxFactory": "h",
+ "jsxFragmentFactory": "Fragment",
+ "types": ["node"],
+ "paths": {
+ "@angular/*": ["../../packages/*"]
+ }
+ }
+}
\ No newline at end of file
diff --git a/adev/shared-docs/utils/BUILD.bazel b/adev/shared-docs/utils/BUILD.bazel
index 3d277f55f488..cc5c0e2bfd98 100644
--- a/adev/shared-docs/utils/BUILD.bazel
+++ b/adev/shared-docs/utils/BUILD.bazel
@@ -1,34 +1,26 @@
-load("//tools:defaults.bzl", "ts_library")
+load("//tools:defaults2.bzl", "ts_project")
package(default_visibility = ["//visibility:private"])
-ts_library(
+ts_project(
name = "utils",
- srcs = [
- "index.ts",
- ],
- visibility = ["//adev/shared-docs:__subpackages__"],
- deps = [
- ":lib",
- ],
-)
-
-ts_library(
- name = "lib",
srcs = glob(
[
"**/*.ts",
],
exclude = [
- "index.ts",
"**/*.spec.ts",
],
),
- deps = [
+ interop_deps = [
"//adev/shared-docs/interfaces",
"//adev/shared-docs/providers",
"//packages/core",
"//packages/router",
- "@npm//fflate",
+ ],
+ tsconfig = "//adev/shared-docs:tsconfig_test",
+ visibility = ["//adev/shared-docs:__subpackages__"],
+ deps = [
+ "//:node_modules/fflate",
],
)
diff --git a/adev/src/app/app.component.spec.ts b/adev/src/app/app.component.spec.ts
index e2d72f3b2e12..043280a8879a 100644
--- a/adev/src/app/app.component.spec.ts
+++ b/adev/src/app/app.component.spec.ts
@@ -11,16 +11,18 @@ import {AppComponent} from './app.component';
import {provideRouter, withComponentInputBinding} from '@angular/router';
import {routes} from './routes';
import {Search, WINDOW} from '@angular/docs';
-import {CURRENT_MAJOR_VERSION} from './core/providers/current-version';
+import {provideHttpClient} from '@angular/common/http';
+import {provideHttpClientTesting} from '@angular/common/http/testing';
describe('AppComponent', () => {
const fakeSearch = {};
const fakeWindow = {location: {hostname: 'angular.dev'}};
- const fakeCurrentMajorVersion = 19;
it('should create the app', () => {
TestBed.configureTestingModule({
providers: [
+ provideHttpClient(),
+ provideHttpClientTesting(),
provideRouter(routes, withComponentInputBinding()),
{
provide: WINDOW,
@@ -30,10 +32,6 @@ describe('AppComponent', () => {
provide: Search,
useValue: fakeSearch,
},
- {
- provide: CURRENT_MAJOR_VERSION,
- useValue: fakeCurrentMajorVersion,
- },
],
});
const fixture = TestBed.createComponent(AppComponent);
diff --git a/adev/src/app/app.component.ts b/adev/src/app/app.component.ts
index 6bd243a9b577..915c2085f679 100644
--- a/adev/src/app/app.component.ts
+++ b/adev/src/app/app.component.ts
@@ -13,7 +13,6 @@ import {
inject,
OnInit,
PLATFORM_ID,
- input,
signal,
} from '@angular/core';
import {NavigationEnd, NavigationSkipped, Router, RouterOutlet} from '@angular/router';
diff --git a/adev/src/app/app.config.server.ts b/adev/src/app/app.config.server.ts
index c27edbb18452..cd3afd3c97bd 100644
--- a/adev/src/app/app.config.server.ts
+++ b/adev/src/app/app.config.server.ts
@@ -14,4 +14,4 @@ const serverConfig: ApplicationConfig = {
providers: [provideServerRendering(withRoutes([{path: '**', renderMode: RenderMode.Prerender}]))],
};
-export const config = mergeApplicationConfig(appConfig, serverConfig);
+export const config: ApplicationConfig = mergeApplicationConfig(appConfig, serverConfig);
diff --git a/adev/src/app/app.config.ts b/adev/src/app/app.config.ts
index 3861f7327843..10104411db1a 100644
--- a/adev/src/app/app.config.ts
+++ b/adev/src/app/app.config.ts
@@ -32,7 +32,6 @@ import {AnalyticsService} from './core/services/analytics/analytics.service';
import {ContentLoader} from './core/services/content-loader.service';
import {CustomErrorHandler} from './core/services/errors-handling/error-handler';
import {ExampleContentLoader} from './core/services/example-content-loader.service';
-import {CURRENT_MAJOR_VERSION} from './core/providers/current-version';
import {routerProviders} from './router_providers';
export const appConfig: ApplicationConfig = {
@@ -43,10 +42,6 @@ export const appConfig: ApplicationConfig = {
provideHttpClient(withFetch()),
provideEnvironmentInitializer(() => inject(AnalyticsService)),
provideAlgoliaSearchClient(environment),
- {
- provide: CURRENT_MAJOR_VERSION,
- useValue: Number(VERSION.major),
- },
{provide: ENVIRONMENT, useValue: environment},
{provide: ErrorHandler, useClass: CustomErrorHandler},
{provide: PREVIEWS_COMPONENTS, useValue: PREVIEWS_COMPONENTS_MAP},
diff --git a/adev/src/app/core/constants/versions.ts b/adev/src/app/core/constants/versions.ts
deleted file mode 100644
index 1c62311727d2..000000000000
--- a/adev/src/app/core/constants/versions.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*!
- * @license
- * Copyright Google LLC All Rights Reserved.
- *
- * Use of this source code is governed by an MIT-style license that can be
- * found in the LICENSE file at https://angular.dev/license
- */
-
-export const VERSIONS_CONFIG = {
- aDevVersionsLinkPattern: 'https://{{prefix}}{{version}}angular.dev',
- aioVersions: [
- {
- version: 'v18',
- url: 'https://v18.angular.dev/overview',
- },
- {
- version: 'v17',
- url: 'https://v17.angular.io/docs',
- },
- {
- version: 'v16',
- url: 'https://v16.angular.io/docs',
- },
- {
- version: 'v15',
- url: 'https://v15.angular.io/docs',
- },
- {
- version: 'v14',
- url: 'https://v14.angular.io/docs',
- },
- {
- version: 'v13',
- url: 'https://v13.angular.io/docs',
- },
- {
- version: 'v12',
- url: 'https://v12.angular.io/docs',
- },
- {
- version: 'v11',
- url: 'https://v11.angular.io/docs',
- },
- {
- version: 'v10',
- url: 'https://v10.angular.io/docs',
- },
- {
- version: 'v9',
- url: 'https://v9.angular.io/docs',
- },
- {
- version: 'v8',
- url: 'https://v8.angular.io/docs',
- },
- {
- version: 'v7',
- url: 'https://v7.angular.io/docs',
- },
- {
- version: 'v6',
- url: 'https://v6.angular.io/docs',
- },
- {
- version: 'v5',
- url: 'https://v5.angular.io/docs',
- },
- {
- version: 'v4',
- url: 'https://v4.angular.io/docs',
- },
- {
- version: 'v2',
- url: 'https://v2.angular.io/docs',
- },
- ],
-};
diff --git a/adev/src/app/core/layout/navigation/navigation.component.html b/adev/src/app/core/layout/navigation/navigation.component.html
index e1e8aa9a3feb..4b2ea426eca9 100644
--- a/adev/src/app/core/layout/navigation/navigation.component.html
+++ b/adev/src/app/core/layout/navigation/navigation.component.html
@@ -150,7 +150,7 @@
(cdkMenuClosed)="closeMenu()"
(click)="openVersionMenu($event)"
>
- {{ currentDocsVersion()?.displayName }}
+ {{ currentDocsVersion().displayName }}