Skip to content

Commit 97e00fb

Browse files
committed
refactor: replace usage of ng_package with new ng_package from rules_angular
1 parent 807ba25 commit 97e00fb

File tree

7 files changed

+69
-35
lines changed

7 files changed

+69
-35
lines changed

WORKSPACE

+21
Original file line numberDiff line numberDiff line change
@@ -274,3 +274,24 @@ esbuild_register_toolchains(
274274
name = "esbuild",
275275
esbuild_version = LATEST_ESBUILD_VERSION,
276276
)
277+
278+
git_repository(
279+
name = "rules_angular",
280+
commit = "f6fa3a357d3c2999618be83b1350a9e11dee5588",
281+
remote = "https://github.com/devversion/rules_angular.git",
282+
)
283+
284+
load("@rules_angular//setup:step_1.bzl", "rules_angular_step1")
285+
286+
rules_angular_step1()
287+
288+
load("@rules_angular//setup:step_2.bzl", "rules_angular_step2")
289+
290+
rules_angular_step2()
291+
292+
load("@rules_angular//setup:step_3.bzl", "rules_angular_step3")
293+
294+
rules_angular_step3(
295+
angular_compiler_cli = "//:node_modules/@angular/compiler-cli",
296+
typescript = "//:node_modules/typescript",
297+
)

package.json

+3
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,9 @@
125125
"listr2": "8.3.2",
126126
"lodash": "^4.17.21",
127127
"npm": "^11.0.0",
128+
"magic-string": "0.30.17",
129+
"rollup-plugin-dts": "6.2.1",
130+
"rollup-plugin-sourcemaps2": "0.5.0",
128131
"prettier": "^3.0.0",
129132
"protractor": "~7.0.0",
130133
"puppeteer": "18.2.1",

packages/angular/ssr/BUILD.bazel

+12-29
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
load("@aspect_rules_js//npm:defs.bzl", "npm_package")
21
load("@devinfra//bazel/api-golden:index_rjs.bzl", "api_golden_test_npm_package")
32
load("@npm2//:defs.bzl", "npm_link_all_packages")
43
load("@rules_pkg//:pkg.bzl", "pkg_tar")
@@ -40,8 +39,7 @@ ts_project(
4039
)
4140

4241
ng_package(
43-
name = "angular_package",
44-
package_name = "@angular/ssr",
42+
name = "pkg",
4543
srcs = [
4644
":package.json",
4745
"//packages/angular/ssr/third_party/beasties:beasties_bundled",
@@ -54,34 +52,19 @@ ng_package(
5452
nested_packages = [
5553
"//packages/angular/ssr/schematics:pkg",
5654
],
57-
deps = [
58-
":ssr_legacy",
59-
"//packages/angular/ssr/node:node_legacy",
55+
package = "@angular/ssr",
56+
rollup_runtime_deps = [
57+
"//:node_modules/@rollup/plugin-commonjs",
58+
"//:node_modules/@rollup/plugin-node-resolve",
59+
"//:node_modules/magic-string",
60+
"//:node_modules/rollup-plugin-dts",
61+
"//:node_modules/rollup-plugin-sourcemaps2",
6062
],
61-
)
62-
63-
pkg_tar(
64-
name = "npm_package_archive",
65-
srcs = [":npm_package"],
66-
extension = "tgz",
67-
strip_prefix = "./npm_package",
68-
# should not be built unless it is a dependency of another rule
69-
tags = ["manual"],
70-
)
71-
72-
# TODO: Replace when `ng_package` creates a valid `rules_js`-compliant npm package.
73-
npm_package(
74-
name = "npm_package",
75-
srcs = [":angular_package"],
76-
replace_prefixes = {
77-
"angular_package/": "",
78-
},
7963
tags = ["release-package"],
80-
)
81-
82-
alias(
83-
name = "pkg",
84-
actual = ":npm_package",
64+
deps = [
65+
":ssr",
66+
"//packages/angular/ssr/node",
67+
],
8568
)
8669

8770
api_golden_test_npm_package(

packages/angular/ssr/schematics/BUILD.bazel

+3-3
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Use of this source code is governed by an MIT-style license that can be
44
# found in the LICENSE file at https://angular.dev/license
55

6-
load("@aspect_rules_js//npm:defs.bzl", "npm_package")
6+
load("@aspect_rules_js//js:defs.bzl", "js_library")
77
load("//tools:defaults2.bzl", "jasmine_test", "ts_project")
88
load("//tools:ts_json_schema.bzl", "ts_json_schema")
99

@@ -91,8 +91,8 @@ jasmine_test(
9191
],
9292
)
9393

94-
# This package is intended to be combined into the main @angular/ssr package as a dep.
95-
npm_package(
94+
# This target is used as nested_package in the main @angular/ssr package as a dep.
95+
js_library(
9696
name = "pkg",
9797
srcs = [
9898
"package.json",

pnpm-lock.yaml

+26-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tools/bazel/npm_package.bzl

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ load("//tools:substitutions.bzl", "substitutions")
1111
def npm_package(
1212
name,
1313
deps = [],
14+
srcs = [],
1415
visibility = None,
1516
pkg_deps = [],
1617
stamp_files = [],
@@ -96,7 +97,7 @@ def npm_package(
9697
name = "npm_package",
9798
visibility = visibility,
9899
# Note: Order matters here! Last file takes precedence after replaced prefixes.
99-
srcs = deps + stamp_targets + [":final_package_json"],
100+
srcs = deps + stamp_targets + [":final_package_json"] + srcs,
100101
replace_prefixes = dict({
101102
"substituted_final/": "",
102103
"substituted_with_tars/": "",

tools/defaults2.bzl

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
load("@aspect_bazel_lib//lib:copy_to_bin.bzl", _copy_to_bin = "copy_to_bin")
22
load("@aspect_rules_jasmine//jasmine:defs.bzl", _jasmine_test = "jasmine_test")
33
load("@aspect_rules_js//js:defs.bzl", _js_binary = "js_binary")
4-
load("@npm//@angular/bazel:index.bzl", _ng_package = "ng_package")
4+
load("@rules_angular//src/ng_package:index.bzl", _ng_package = "ng_package")
55
load("//tools:interop.bzl", _ts_project = "ts_project")
66
load("//tools:substitutions.bzl", "substitutions")
77
load("//tools/bazel:npm_package.bzl", _npm_package = "npm_package")
@@ -20,6 +20,7 @@ def js_binary(**kwargs):
2020

2121
def ng_package(deps = [], **kwargs):
2222
_ng_package(
23+
npm_package_impl = npm_package,
2324
deps = deps,
2425
license = "//:LICENSE",
2526
substitutions = select({

0 commit comments

Comments
 (0)