mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
125 lines
3 KiB
Text
125 lines
3 KiB
Text
load("//tools:defaults.bzl", "nodejs_binary")
|
|
load("@build_bazel_rules_nodejs//:index.bzl", "js_library")
|
|
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
|
|
load("//aio/content/examples:examples.bzl", "EXAMPLES")
|
|
load("//:packages.bzl", "AIO_EXAMPLE_PACKAGES", "to_package_label")
|
|
|
|
package(default_visibility = ["//visibility:public"])
|
|
|
|
exports_files([
|
|
"run-example-e2e.mjs",
|
|
])
|
|
|
|
js_library(
|
|
name = "example-boilerplate-lib",
|
|
srcs = [
|
|
"constants.mjs",
|
|
"example-boilerplate.mjs",
|
|
"example-boilerplate-cli.mjs",
|
|
],
|
|
deps = [
|
|
"//aio/tools/examples/shared",
|
|
"@npm//canonical-path",
|
|
"@npm//fs-extra",
|
|
"@npm//ignore",
|
|
"@npm//shelljs",
|
|
"@npm//yargs",
|
|
],
|
|
)
|
|
|
|
nodejs_binary(
|
|
name = "example-boilerplate",
|
|
data = [":example-boilerplate-lib"],
|
|
entry_point = "example-boilerplate-cli.js",
|
|
)
|
|
|
|
jasmine_node_test(
|
|
name = "example-boilerplate-test",
|
|
srcs = ["example-boilerplate.spec.mjs"],
|
|
deps = [":example-boilerplate-lib"],
|
|
)
|
|
|
|
js_library(
|
|
name = "create-example-lib",
|
|
srcs = [
|
|
"constants.mjs",
|
|
"create-example.mjs",
|
|
"create-example-cli.mjs",
|
|
] + glob(["shared/**"]),
|
|
deps = [
|
|
"@npm//@bazel/buildozer",
|
|
"@npm//canonical-path",
|
|
"@npm//fs-extra",
|
|
"@npm//ignore",
|
|
"@npm//shelljs",
|
|
"@npm//yargs",
|
|
],
|
|
)
|
|
|
|
nodejs_binary(
|
|
name = "create-example",
|
|
data = [":create-example-lib"],
|
|
entry_point = "create-example-cli.mjs",
|
|
)
|
|
|
|
jasmine_node_test(
|
|
name = "create-example-test",
|
|
srcs = ["create-example.spec.mjs"],
|
|
deps = [":create-example-lib"],
|
|
)
|
|
|
|
js_library(
|
|
name = "example-sandbox",
|
|
srcs = ["example-sandbox.mjs"],
|
|
deps = [
|
|
"@npm//cjson",
|
|
"@npm//fs-extra",
|
|
"@npm//globby",
|
|
],
|
|
)
|
|
|
|
js_library(
|
|
name = "run-example-e2e",
|
|
srcs = [
|
|
"run-example-e2e.mjs",
|
|
],
|
|
deps = [
|
|
":example-sandbox",
|
|
"@npm//@bazel/runfiles",
|
|
"@npm//canonical-path",
|
|
"@npm//cross-spawn",
|
|
"@npm//fs-extra",
|
|
"@npm//get-port",
|
|
"@npm//globby",
|
|
"@npm//shelljs",
|
|
"@npm//tree-kill",
|
|
"@npm//yargs",
|
|
],
|
|
)
|
|
|
|
LOCAL_PACKAGE_DEPS = [to_package_label(dep) for dep in AIO_EXAMPLE_PACKAGES]
|
|
|
|
LOCAL_PACKAGE_ARGS = ["--localPackage=%s#$(rootpath %s)" % (
|
|
dep,
|
|
to_package_label(dep),
|
|
) for dep in AIO_EXAMPLE_PACKAGES]
|
|
|
|
[nodejs_binary(
|
|
name = "create-example-playground-%s" % example,
|
|
args = select({
|
|
# Hardcode package names/paths in args
|
|
"//aio:aio_local_deps": LOCAL_PACKAGE_ARGS,
|
|
"//conditions:default": [],
|
|
}) + ["--example=%s" % example],
|
|
data = [
|
|
":example-sandbox",
|
|
"@aio_example_deps//:node_modules_files",
|
|
"@npm//yargs",
|
|
"//aio/content/examples/%s" % example,
|
|
] + select({
|
|
"//aio:aio_local_deps": LOCAL_PACKAGE_DEPS,
|
|
"//conditions:default": [],
|
|
}),
|
|
entry_point = "create-example-playground.mjs",
|
|
tags = ["manual"],
|
|
) for example in EXAMPLES]
|