Support Angular plugin rollout: declare extra outs

Angular ngtsc needs to emit two additional .js files for each .ts input to support legacy imports

Closes #420

PiperOrigin-RevId: 234478540
diff --git a/internal/common/compilation.bzl b/internal/common/compilation.bzl
index 44483cb..8bb4732 100644
--- a/internal/common/compilation.bzl
+++ b/internal/common/compilation.bzl
@@ -170,9 +170,22 @@
                 basename = basename[:-len(ext)]
                 break
         closure_js_files += [ctx.actions.declare_file(basename + ".closure.js")]
+
+        # Temporary until all imports of ngfactory/ngsummary files are removed
+        # TODO(alexeagle): clean up after Ivy launch
+        if getattr(ctx, "compile_angular_templates", False):
+            closure_js_files += [ctx.actions.declare_file(basename + ".ngfactory.closure.js")]
+            closure_js_files += [ctx.actions.declare_file(basename + ".ngsummary.closure.js")]
+
         if not is_dts:
             devmode_js_files += [ctx.actions.declare_file(basename + ".js")]
             declaration_files += [ctx.actions.declare_file(basename + ".d.ts")]
+
+            # Temporary until all imports of ngfactory/ngsummary files are removed
+            # TODO(alexeagle): clean up after Ivy launch
+            if getattr(ctx, "compile_angular_templates", False):
+                devmode_js_files += [ctx.actions.declare_file(basename + ".ngfactory.js")]
+                devmode_js_files += [ctx.actions.declare_file(basename + ".ngsummary.js")]
     return struct(
         closure_js = closure_js_files,
         devmode_js = devmode_js_files,