blob: b223fea545b4b879d8639cb3cbe1bef32f639d54 [file]
"Internal implementation details"
load("@aspect_bazel_lib//lib:copy_to_bin.bzl", "copy_to_bin")
load("@aspect_bazel_lib//lib:utils.bzl", bazel_lib_utils = "utils")
load("@aspect_bazel_lib//lib:write_source_files.bzl", "write_source_files")
load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
load("//js:defs.bzl", "js_binary")
exports_files(
glob(["*.bzl"]),
visibility = ["//docs:__pkg__"],
)
exports_files([
"js_binary.sh.tpl",
"node_wrapper.bat",
"node_wrapper.sh",
"npm_wrapper.bat",
"npm_wrapper.sh",
])
bzl_library(
name = "js_filegroup",
srcs = ["js_filegroup.bzl"],
visibility = [
"//docs:__subpackages__",
"//js:__subpackages__",
],
deps = [
":js_helpers",
] + (["@bazel_tools//tools/build_defs/repo:cache.bzl"] if bazel_lib_utils.is_bazel_7_or_greater() else []),
)
bzl_library(
name = "js_binary",
srcs = ["js_binary.bzl"],
visibility = [
"//docs:__subpackages__",
"//js:__subpackages__",
],
deps = [
":bash",
":js_helpers",
"@aspect_bazel_lib//lib:copy_to_bin",
"@aspect_bazel_lib//lib:directory_path",
"@aspect_bazel_lib//lib:expand_make_vars",
"@aspect_bazel_lib//lib:paths",
"@aspect_bazel_lib//lib:windows_utils",
"@bazel_skylib//lib:dicts",
] + (["@bazel_tools//tools/build_defs/repo:cache.bzl"] if bazel_lib_utils.is_bazel_7_or_greater() else []),
)
bzl_library(
name = "js_helpers",
srcs = ["js_helpers.bzl"],
visibility = [
"//docs:__subpackages__",
"//js:__subpackages__",
],
deps = [
":js_info",
"//npm:providers",
"@aspect_bazel_lib//lib:copy_to_bin",
],
)
bzl_library(
name = "js_library",
srcs = ["js_library.bzl"],
visibility = [
"//docs:__subpackages__",
"//js:__subpackages__",
],
deps = [
":js_helpers",
":js_info",
"@aspect_bazel_lib//lib:copy_to_bin",
"@bazel_skylib//lib:dicts",
] + (["@bazel_tools//tools/build_defs/repo:cache.bzl"] if bazel_lib_utils.is_bazel_7_or_greater() else []),
)
bzl_library(
name = "js_run_binary",
srcs = ["js_run_binary.bzl"],
visibility = [
"//docs:__subpackages__",
"//js:__subpackages__",
],
deps = [
":js_filegroup",
":js_helpers",
":js_library",
"@aspect_bazel_lib//lib:copy_to_bin",
"@aspect_bazel_lib//lib:run_binary",
"@bazel_skylib//lib:dicts",
],
)
bzl_library(
name = "js_run_devserver",
srcs = ["js_run_devserver.bzl"],
visibility = [
"//docs:__subpackages__",
"//js:__subpackages__",
],
deps = [
":js_binary",
":js_helpers",
"@bazel_skylib//lib:dicts",
] + (["@bazel_tools//tools/build_defs/repo:cache.bzl"] if bazel_lib_utils.is_bazel_7_or_greater() else []),
)
bzl_library(
name = "js_info",
srcs = ["js_info.bzl"],
visibility = ["//js:__subpackages__"],
)
bzl_library(
name = "bash",
srcs = ["bash.bzl"],
visibility = ["//js:__subpackages__"],
)
bzl_library(
name = "js_image_layer",
srcs = ["js_image_layer.bzl"],
visibility = [
"//docs:__subpackages__",
"//js:__subpackages__",
],
deps = [
"@aspect_bazel_lib//lib:paths",
"@aspect_bazel_lib//lib:utils",
"@bazel_skylib//lib:paths",
] + (["@bazel_tools//tools/build_defs/repo:cache.bzl"] if bazel_lib_utils.is_bazel_7_or_greater() else []),
)
copy_to_bin(
name = "js_devserver_entrypoint",
srcs = ["js_run_devserver.mjs"],
visibility = ["//visibility:public"],
)
write_source_files(
name = "js_image_layer_checked",
files = {
"js_image_layer.mjs": "//js/private/image:image.mjs",
},
)
js_binary(
name = "js_image_layer_builder",
entry_point = "js_image_layer.mjs",
visibility = ["//visibility:public"],
)