feat(ts_library): bump default target to es2015
Closes #217
PiperOrigin-RevId: 225095761
diff --git a/examples/devmode_consumer/BUILD.bazel b/examples/devmode_consumer/BUILD.bazel
new file mode 100644
index 0000000..78d6a46
--- /dev/null
+++ b/examples/devmode_consumer/BUILD.bazel
@@ -0,0 +1,15 @@
+load(":devmode_consumer.bzl", "devmode_consumer")
+
+devmode_consumer(
+ name = "devmode_consumer",
+ deps = ["//examples:bar_ts_library"],
+)
+
+sh_test(
+ name = "devmode_consumer_test",
+ srcs = ["devmode_consumer_test.sh"],
+ data = [
+ ":devmode_consumer",
+ "@bazel_tools//tools/bash/runfiles",
+ ],
+)
diff --git a/examples/es5_output/es5_consumer.bzl b/examples/devmode_consumer/devmode_consumer.bzl
similarity index 88%
rename from examples/es5_output/es5_consumer.bzl
rename to examples/devmode_consumer/devmode_consumer.bzl
index 05d406c..0d29ca9 100644
--- a/examples/es5_output/es5_consumer.bzl
+++ b/examples/devmode_consumer/devmode_consumer.bzl
@@ -12,12 +12,12 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-"""Example of a rule that requires ES5 (devmode) inputs.
+"""Example of a rule that requires es2015 (devmode) inputs.
"""
load("@build_bazel_rules_nodejs//internal:node.bzl", "sources_aspect")
-def _es5_consumer(ctx):
+def _devmode_consumer(ctx):
files = depset()
# Since we apply the sources_aspect to our deps below, we can iterate through
@@ -32,8 +32,8 @@
runfiles = ctx.runfiles(files.to_list()),
)]
-es5_consumer = rule(
- implementation = _es5_consumer,
+devmode_consumer = rule(
+ implementation = _devmode_consumer,
attrs = {
"deps": attr.label_list(aspects = [sources_aspect]),
},
diff --git a/examples/es5_output/es5_output_test.sh b/examples/devmode_consumer/devmode_consumer_test.sh
similarity index 94%
rename from examples/es5_output/es5_output_test.sh
rename to examples/devmode_consumer/devmode_consumer_test.sh
index ab58ce5..096f4d5 100755
--- a/examples/es5_output/es5_output_test.sh
+++ b/examples/devmode_consumer/devmode_consumer_test.sh
@@ -79,3 +79,10 @@
echo "$FOO_JS"
exit 1
fi
+
+# should produce es2015 classes
+if [[ "$FOO_JS" != *"class Greeter"* ]]; then
+ echo "Expected foo.js produce a es2015, but was"
+ echo "$FOO_JS"
+ exit 1
+fi
\ No newline at end of file
diff --git a/examples/es5_output/BUILD.bazel b/examples/es5_output/BUILD.bazel
deleted file mode 100644
index 5bc709f..0000000
--- a/examples/es5_output/BUILD.bazel
+++ /dev/null
@@ -1,15 +0,0 @@
-load(":es5_consumer.bzl", "es5_consumer")
-
-es5_consumer(
- name = "es5_output",
- deps = ["//examples:bar_ts_library"],
-)
-
-sh_test(
- name = "es5_output_test",
- srcs = ["es5_output_test.sh"],
- data = [
- ":es5_output",
- "@bazel_tools//tools/bash/runfiles",
- ],
-)
diff --git a/examples/googmodule/BUILD.bazel b/examples/googmodule/BUILD.bazel
index 89beb25..b409222 100644
--- a/examples/googmodule/BUILD.bazel
+++ b/examples/googmodule/BUILD.bazel
@@ -6,10 +6,10 @@
tsconfig = "tsconfig.json",
)
-load("//examples/es5_output:es5_consumer.bzl", "es5_consumer")
+load("//examples/devmode_consumer:devmode_consumer.bzl", "devmode_consumer")
-es5_consumer(
- name = "es5_output",
+devmode_consumer(
+ name = "devmode_output",
deps = [":googmodule"],
)
@@ -19,7 +19,7 @@
name = "googmodule_output_test",
srcs = ["googmodule_output_test.js"],
data = [
- ":es5_output",
+ ":devmode_output",
"@npm//jasmine",
],
)
diff --git a/internal/build_defs.bzl b/internal/build_defs.bzl
index 51d15b1..5981c81 100644
--- a/internal/build_defs.bzl
+++ b/internal/build_defs.bzl
@@ -187,6 +187,10 @@
)
config["bazelOptions"]["nodeModulesPrefix"] = node_modules_root
+ # Override the target so we use es2015 for devmode
+ # Since g3 isn't ready to do this yet
+ config["compilerOptions"]["target"] = "es2015"
+
# If the user gives a tsconfig attribute, the generated file should extend
# from the user's tsconfig.
# See https://github.com/Microsoft/TypeScript/issues/9876