From ce649f725f9987cdef31434fb1ad4a0858ad49d9 Mon Sep 17 00:00:00 2001 From: Alex Eagle Date: Wed, 7 Mar 2018 09:56:07 -0800 Subject: [PATCH] build: add a ng_package rule for @angular/router (#22628) PR Close #22628 --- packages/bazel/BUILD.bazel | 4 +- packages/bazel/src/ng_package/ng_package.bzl | 43 +++++++++++++++----- packages/router/BUILD.bazel | 17 +++++++- packages/router/testing/BUILD.bazel | 1 - packages/router/upgrade/BUILD.bazel | 13 ++++++ 5 files changed, 63 insertions(+), 15 deletions(-) create mode 100644 packages/router/upgrade/BUILD.bazel diff --git a/packages/bazel/BUILD.bazel b/packages/bazel/BUILD.bazel index 6704aeaef2..dc6d681df4 100644 --- a/packages/bazel/BUILD.bazel +++ b/packages/bazel/BUILD.bazel @@ -9,15 +9,15 @@ genrule( npm_package( name = "npm_package", srcs = [ - "package.json", "index.bzl", + "package.json", "//packages/bazel/src:package_assets", ], - deps = [":workspace"], # Re-host //packages/bazel/ which is just // in the public distro replacements = { "//packages/bazel/": "//", "angular/packages/bazel/": "angular/", }, stamp_data = "//tools:stamp_data", + deps = [":workspace"], ) diff --git a/packages/bazel/src/ng_package/ng_package.bzl b/packages/bazel/src/ng_package/ng_package.bzl index e4dcb5c4c7..808261a528 100644 --- a/packages/bazel/src/ng_package/ng_package.bzl +++ b/packages/bazel/src/ng_package/ng_package.bzl @@ -18,17 +18,38 @@ WELL_KNOWN_GLOBALS = { "@angular/core": "ng.core", "@angular/common": "ng.common", "@angular/platform-browser": "ng.platformBrowser", - "rxjs/Observable": "Rx", - "rxjs/Observer": "Rx", - "rxjs/Subject": "Rx", - "rxjs/Subscription": "Rx", - "rxjs/observable/merge": "Rx.Observable", - "rxjs/observable/of": "Rx.Observable.prototype", - "rxjs/operator/concatMap": "Rx.Observable.prototype", - "rxjs/operator/filter": "Rx.Observable.prototype", - "rxjs/operator/map": "Rx.Observable.prototype", - "rxjs/operator/share": "Rx.Observable.prototype", } +WELL_KNOWN_GLOBALS.update({"rxjs/%s" % s: "Rx" for s in [ + "BehaviorSubject", + "Observable", + "Observer", + "Subject", + "Subscription", + "util/EmptyError", +]}) +WELL_KNOWN_GLOBALS.update({"rxjs/observable/%s" % s: "Rx.Observable" for s in [ + "from", + "fromPromise", + "forkJoin", + "merge", + "of", +]}) +WELL_KNOWN_GLOBALS.update({"rxjs/operator/%s" % s: "Rx.Observable.prototype" for s in [ + "catch", + "concatAll", + "concatMap", + "every", + "first", + "filter", + "last", + "map", + "mergeAll", + "mergeMap", + "reduce", + "share", + "toPromise", +]}) + def _rollup(ctx, rollup_config, entry_point, inputs, js_output, format = "es"): map_output = ctx.actions.declare_file(js_output.basename + ".map", sibling = js_output) @@ -102,7 +123,7 @@ def _ng_package_impl(ctx): esm5 = [] bundles = [] - for entry_point in [''] + ctx.attr.secondary_entry_points: + for entry_point in [""] + ctx.attr.secondary_entry_points: es2015_entry_point = "/".join([p for p in [ ctx.bin_dir.path, ctx.label.package, diff --git a/packages/router/BUILD.bazel b/packages/router/BUILD.bazel index 87295b81ed..b2a37dfd06 100644 --- a/packages/router/BUILD.bazel +++ b/packages/router/BUILD.bazel @@ -1,6 +1,6 @@ package(default_visibility = ["//visibility:public"]) -load("//tools:defaults.bzl", "ng_module") +load("//tools:defaults.bzl", "ng_module", "ng_package") ng_module( name = "router", @@ -19,3 +19,18 @@ ng_module( "@rxjs", ], ) + +ng_package( + name = "npm_package", + srcs = ["package.json"], + entry_point = "packages/router/index.js", + secondary_entry_points = [ + "testing", + "upgrade", + ], + deps = [ + ":router", + "//packages/router/testing", + "//packages/router/upgrade", + ], +) diff --git a/packages/router/testing/BUILD.bazel b/packages/router/testing/BUILD.bazel index 987d1c8199..4ddca662d1 100644 --- a/packages/router/testing/BUILD.bazel +++ b/packages/router/testing/BUILD.bazel @@ -4,7 +4,6 @@ load("//tools:defaults.bzl", "ng_module") ng_module( name = "testing", - testonly = 1, srcs = glob(["**/*.ts"]), module_name = "@angular/router/testing", deps = [ diff --git a/packages/router/upgrade/BUILD.bazel b/packages/router/upgrade/BUILD.bazel new file mode 100644 index 0000000000..cdafe241ce --- /dev/null +++ b/packages/router/upgrade/BUILD.bazel @@ -0,0 +1,13 @@ +package(default_visibility = ["//visibility:public"]) + +load("//tools:defaults.bzl", "ng_module") + +ng_module( + name = "upgrade", + srcs = glob(["**/*.ts"]), + module_name = "@angular/router/upgrade", + deps = [ + "//packages/core", + "//packages/router", + ], +)