load("@build_bazel_rules_nodejs//:index.bzl", "generated_file_test") load("//tools:defaults.bzl", "api_golden_test", "api_golden_test_npm_package", "ng_module", "ng_package") load("//packages/common/locales:index.bzl", "generate_base_locale_file") package(default_visibility = ["//visibility:public"]) # This generates the `src/i18n/locale_en.ts` file through the `generate-locales` tool. Since # the base locale file is checked-in for Google3, we add a `generated_file_test` to ensure # the checked-in file is up-to-date. To disambiguate from the test, we use a more precise target # name here. generate_base_locale_file( name = "base_locale_file_generated", output_file = "base_locale_file_generated.ts", ) generated_file_test( name = "base_locale_file", src = "src/i18n/locale_en.ts", generated = ":base_locale_file_generated", ) ng_module( name = "core", srcs = glob( [ "*.ts", "src/**/*.ts", ], ), deps = [ "//packages:types", "//packages/core/src/compiler", "//packages/core/src/di/interface", "//packages/core/src/interface", "//packages/core/src/reflection", "//packages/core/src/util", "//packages/localize", "//packages/zone.js/lib:zone_d_ts", "@npm//rxjs", ], ) ng_package( name = "npm_package", srcs = [ "package.json", "//packages/core/testing:package.json", ], entry_point = ":index.ts", nested_packages = [ "//packages/core/schematics:npm_package", ], tags = [ "release-with-framework", ], # Do not add more to this list. # Dependencies on the full npm_package cause long re-builds. visibility = [ "//integration:__pkg__", "//packages/bazel/test/ng_package:__pkg__", "//packages/compiler-cli/integrationtest:__pkg__", "//packages/compiler-cli/ngcc/test:__pkg__", "//packages/compiler-cli/test:__pkg__", "//packages/compiler-cli/test/diagnostics:__pkg__", "//packages/compiler-cli/test/transformers:__pkg__", "//packages/compiler/test:__pkg__", "//packages/language-service/test:__pkg__", ], deps = [ ":core", "//packages/core/testing", ], ) api_golden_test_npm_package( name = "core_api", data = [ ":npm_package", "//goldens:public-api", ], golden_dir = "angular/goldens/public-api/core", npm_package = "angular/packages/core/npm_package", ) api_golden_test( name = "ng_global_utils_api", data = [ "//goldens:public-api", "//packages/core", # Additional targets the entry-point indirectly resolves `.d.ts` source files from. # These are transitive to `:core`, but need to be listed explicitly here as only # transitive `JSModule` information is collected (missing the type definitions). "//packages/core/src/compiler", "//packages/core/src/di/interface", "//packages/core/src/interface", "//packages/core/src/reflection", "//packages/core/src/util", ], entry_point = "angular/packages/core/src/render3/global_utils_api.d.ts", golden = "angular/goldens/public-api/core/global_utils.md", )