https://github.com/angular/angular
Raw File
Tip revision: 901353ec7ab24eca5067d1a9f10d77cda5693d63 authored by Andrew Scott on 22 March 2023, 20:04:07 UTC
release: cut the v15.2.4 release
Tip revision: 901353e
BUILD.bazel
load("//tools:defaults.bzl", "api_golden_test_npm_package", "ng_package", "ts_library")
load("//packages/bazel:index.bzl", "types_bundle")

package(default_visibility = ["//visibility:public"])

ts_library(
    name = "localize",
    srcs = glob(
        [
            "*.ts",
            "src/**/*.ts",
        ],
    ),
    module_name = "@angular/localize",
    deps = [
        "//packages/localize/src/localize",
        "//packages/localize/src/utils",
    ],
)

types_bundle(
    name = "api_type_definitions",
    entry_point = "localize.d.ts",
    output_name = "localize/index.d.ts",
    deps = [":localize"],
)

ng_package(
    name = "npm_package",
    package_name = "@angular/localize",
    srcs = [
        "package.json",
        ":api_type_definitions",
    ],
    nested_packages = [
        "//packages/localize/schematics:npm_package",
        "//packages/localize/tools:npm_package",
    ],
    skip_type_bundling = [
        # For the primary entry-point we disable automatic type bundling because API extractor
        # does not properly handle module augumentation.
        # To workaround this issue, type bundling is done as a separate step for all types
        # except the main `index.d.ts` file which contains the module augmentation. The main
        # file is reference in the package.json and also imports the bundle types. The bundled
        # types are created via `api_type_definitions` above.
        # TODO: Remove once https://github.com/microsoft/rushstack/issues/2090 is solved.
        "",
    ],
    tags = [
        "release-with-framework",
    ],
    deps = [
        ":localize",
        "//packages/localize/init",
    ],
)

api_golden_test_npm_package(
    name = "localize_api",
    data = [
        ":npm_package",
        "//goldens:public-api",
    ],
    golden_dir = "angular/goldens/public-api/localize",
    npm_package = "angular/packages/localize/npm_package",
    # The logic for the localize function is exported in the primary entry-point, but users
    # are not supposed to import it from there. We still want to guard these exports though.
    strip_export_pattern = "^ɵ(?!.localize|LocalizeFn|TranslateFn)",
    # The tool entry-point uses namespace aliases and API extractor needs to be
    # able to resolve `@babel/core` to fully understand the `types` re-export/alias.
    types = ["@npm//@types/babel__core"],
)

filegroup(
    name = "files_for_docgen",
    srcs = glob([
        "*.ts",
        "src/**/*.ts",
    ]) + ["PACKAGE.md"],
)
back to top