Add Swift generated header to dynamic outputs

--
PiperOrigin-RevId: 165198901
MOS_MIGRATED_REVID=165198901
diff --git a/src/TulsiGenerator/Bazel/tulsi/tulsi_aspects.bzl b/src/TulsiGenerator/Bazel/tulsi/tulsi_aspects.bzl
index 42f7215..27e6eb8 100644
--- a/src/TulsiGenerator/Bazel/tulsi/tulsi_aspects.bzl
+++ b/src/TulsiGenerator/Bazel/tulsi/tulsi_aspects.bzl
@@ -485,6 +485,17 @@
       maps += module_maps
   return maps
 
+# TODO(b/64490743): Add these files to the Xcode project.
+def _collect_swift_header(target):
+  """Returns a depset of Swift generated headers found on the given target."""
+  headers = depset()
+  # swift_* targets put the generated header into their objc provider HEADER
+  # field.
+  if hasattr(target, 'swift'):
+    headers += target.objc.header
+  return headers
+
+
 def _tulsi_sources_aspect(target, ctx):
   """Extracts information from a given rule, emitting it as a JSON struct."""
   rule = ctx.rule
@@ -706,6 +717,7 @@
       all_files += objc_provider.source
       all_files += objc_provider.header
 
+  all_files += _collect_swift_header(target)
   all_files += _collect_swift_modules(target)
   all_files += _collect_module_maps(target)
   all_files += (_collect_artifacts(rule, 'attr.srcs')