Skip to content

Commit 094d14a

Browse files
committed
build: move from using WORKSPACE to MODULE.bazel
1 parent d58e1a1 commit 094d14a

File tree

9 files changed

+1374
-305
lines changed

9 files changed

+1374
-305
lines changed

MODULE.bazel

Lines changed: 152 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,154 @@
1-
# TODO: Investigate bzlmod and use it where possible.
1+
"""Rules/toolchains for components with Bazel."""
22

33
module(
4-
name = "angular_material",
5-
)
4+
name = "components",
5+
)
6+
7+
bazel_dep(name = "yq.bzl", version = "0.2.0")
8+
bazel_dep(name = "rules_nodejs", version = "6.5.0")
9+
bazel_dep(name = "aspect_rules_js", version = "2.4.2")
10+
bazel_dep(name = "rules_pkg", version = "1.1.0")
11+
bazel_dep(name = "tar.bzl", version = "0.5.1")
12+
bazel_dep(name = "aspect_bazel_lib", version = "2.19.3")
13+
bazel_dep(name = "aspect_rules_esbuild", version = "0.22.1")
14+
bazel_dep(name = "aspect_rules_jasmine", version = "2.0.0")
15+
bazel_dep(name = "platforms", version = "1.0.0")
16+
bazel_dep(name = "aspect_rules_ts", version = "3.6.3")
17+
bazel_dep(name = "bazel_skylib", version = "1.8.1")
18+
bazel_dep(name = "rules_browsers")
19+
git_override(
20+
module_name = "rules_browsers",
21+
commit = "93467ec31f55d87d50b59928a6461cd6cbf241c2",
22+
remote = "https://github.com/devversion/rules_browsers.git",
23+
)
24+
bazel_dep(name = "rules_sass")
25+
git_override(
26+
module_name = "rules_sass",
27+
commit = "76078d5e9776a0080dcee496e90b88d8a6179c19",
28+
remote = "https://github.com/devversion/rules_sass.git",
29+
)
30+
bazel_dep(name = "rules_angular")
31+
git_override(
32+
module_name = "rules_angular",
33+
commit = "a957283cdef0ade1fc6d1d7404f14577cebd3642",
34+
remote = "https://github.com/devversion/rules_angular.git",
35+
)
36+
37+
bazel_dep(name = "devinfra")
38+
git_override(
39+
module_name = "devinfra",
40+
commit = "11fa17f8e7ba38734d6f91c575b3878b9afadc27",
41+
remote = "https://github.com/angular/dev-infra.git",
42+
)
43+
44+
yq = use_extension("@yq.bzl//yq:extensions.bzl", "yq")
45+
use_repo(yq, "yq_toolchains")
46+
47+
rules_ts_ext = use_extension("@aspect_rules_ts//ts:extensions.bzl", "ext")
48+
rules_ts_ext.deps(
49+
# Obtained by: curl --silent https://registry.npmjs.org/typescript/5.9.2 | jq -r '.dist.integrity'
50+
ts_integrity = "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==",
51+
ts_version_from = "//:package.json",
52+
name = "components_npm_typescript",
53+
)
54+
use_repo(rules_ts_ext, **{"npm_typescript":"components_npm_typescript"})
55+
56+
node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node")
57+
node.toolchain(
58+
node_repositories = {
59+
"22.12.0-darwin_arm64": ("node-v22.12.0-darwin-arm64.tar.gz", "node-v22.12.0-darwin-arm64", "293dcc6c2408da21562d135b0412525e381bb6fe150d688edb58fe850d0f3e13"),
60+
"22.12.0-darwin_amd64": ("node-v22.12.0-darwin-x64.tar.gz", "node-v22.12.0-darwin-x64", "52bc25dd026db7247c3c00439afdb83e95087248267f02d6c1a7250d1f896173"),
61+
"22.12.0-linux_arm64": ("node-v22.12.0-linux-arm64.tar.xz", "node-v22.12.0-linux-arm64", "8cfd5a8b9afae5a2e0bd86b0148ca31d2589c0ea669c2d0b11c132e35d90ed68"),
62+
"22.12.0-linux_ppc64le": ("node-v22.12.0-linux-ppc64le.tar.xz", "node-v22.12.0-linux-ppc64le", "199a606ba1ee86cce6d6b369c71f9d00873d2836a6662592afc3b6a5923e2004"),
63+
"22.12.0-linux_s390x": ("node-v22.12.0-linux-s390x.tar.xz", "node-v22.12.0-linux-s390x", "9b517f8006eb4b451d40c461cbe64f93c6455566dbe2613387ab02412bc06d35"),
64+
"22.12.0-linux_amd64": ("node-v22.12.0-linux-x64.tar.xz", "node-v22.12.0-linux-x64", "22982235e1b71fa8850f82edd09cdae7e3f32df1764a9ec298c72d25ef2c164f"),
65+
"22.12.0-windows_amd64": ("node-v22.12.0-win-x64.zip", "node-v22.12.0-win-x64", "2b8f2256382f97ad51e29ff71f702961af466c4616393f767455501e6aece9b8"),
66+
},
67+
node_version = "22.12.0",
68+
)
69+
use_repo(node, "nodejs_toolchains")
70+
71+
pnpm = use_extension("@aspect_rules_js//npm:extensions.bzl", "pnpm")
72+
use_repo(pnpm, "pnpm")
73+
74+
npm = use_extension("@aspect_rules_js//npm:extensions.bzl", "npm")
75+
npm.npm_translate_lock(
76+
name = "npm",
77+
custom_postinstalls = {
78+
"@angular/animations": "node ../../@nginfra/angular-linking/index.mjs",
79+
"@angular/common": "node ../../@nginfra/angular-linking/index.mjs",
80+
"@angular/forms": "node ../../@nginfra/angular-linking/index.mjs",
81+
"@angular/localize": "node ../../@nginfra/angular-linking/index.mjs",
82+
"@angular/platform-browser": "node ../../@nginfra/angular-linking/index.mjs",
83+
"@angular/platform-server": "node ../../@nginfra/angular-linking/index.mjs",
84+
"@angular/router": "node ../../@nginfra/angular-linking/index.mjs",
85+
},
86+
data = [
87+
"//:package.json",
88+
"//:pnpm-workspace.yaml",
89+
"//integration:package.json",
90+
"//src/cdk:package.json",
91+
"//src/cdk-experimental:package.json",
92+
"//src/components-examples:package.json",
93+
"//src/dev-app:package.json",
94+
"//src/e2e-app:package.json",
95+
"//src/google-maps:package.json",
96+
"//src/material:package.json",
97+
"//src/material-date-fns-adapter:package.json",
98+
"//src/material-experimental:package.json",
99+
"//src/material-luxon-adapter:package.json",
100+
"//src/material-moment-adapter:package.json",
101+
"//src/universal-app:package.json",
102+
"//src/youtube-player:package.json",
103+
],
104+
npmrc = "//:.npmrc",
105+
package_visibility = {
106+
"@angular/cdk": [
107+
"//integration:__subpackages__",
108+
"//docs:__subpackages__",
109+
],
110+
"@angular/cdk-experimental": [
111+
"//integration:__subpackages__",
112+
"//docs:__subpackages__",
113+
],
114+
"@angular/material": [
115+
"//integration:__subpackages__",
116+
"//docs:__subpackages__",
117+
],
118+
"@angular/material-experimental": [
119+
"//integration:__subpackages__",
120+
"//docs:__subpackages__",
121+
],
122+
"@angular/google-maps": [
123+
"//integration:__subpackages__",
124+
"//docs:__subpackages__",
125+
],
126+
"@angular/youtube-player": [
127+
"//integration:__subpackages__",
128+
"//docs:__subpackages__",
129+
],
130+
"@angular/material-moment-adapter": [
131+
"//integration:__subpackages__",
132+
"//docs:__subpackages__",
133+
],
134+
"@angular/material-date-fns-adapter": [
135+
"//integration:__subpackages__",
136+
"//docs:__subpackages__",
137+
],
138+
"@angular/material-luxon-adapter": [
139+
"//integration:__subpackages__",
140+
"//docs:__subpackages__",
141+
],
142+
},
143+
pnpm_lock = "//:pnpm-lock.yaml",
144+
verify_node_modules_ignored = "//:.bazelignore",
145+
)
146+
use_repo(npm, "npm")
147+
148+
rules_angular = use_extension("@rules_angular//setup:extensions.bzl", "rules_angular")
149+
rules_angular.setup(
150+
name = "components_rules_angular_configurable_deps",
151+
angular_compiler_cli = "//:node_modules/@angular/compiler-cli",
152+
typescript = "//:node_modules/typescript-local",
153+
)
154+
use_repo(rules_angular, **{"rules_angular_configurable_deps":"components_rules_angular_configurable_deps"})

0 commit comments

Comments
 (0)