Revert "Revert "[web] Add `js_types` sources to build. (#40597)" (#40685)"
This reverts commit 4bc9341d047199bc7178d5d4e533a5875aecfc70.
diff --git a/sky/packages/sky_engine/BUILD.gn b/sky/packages/sky_engine/BUILD.gn
index dad2a02..ae0207d 100644
--- a/sky/packages/sky_engine/BUILD.gn
+++ b/sky/packages/sky_engine/BUILD.gn
@@ -8,6 +8,7 @@
import("//third_party/dart/sdk/lib/_http/http_sources.gni")
import(
"//third_party/dart/sdk/lib/_internal/js_runtime/interceptors_sources.gni")
+import("//third_party/dart/sdk/lib/_internal/js_shared/js_types_sources.gni")
import("//third_party/dart/sdk/lib/async/async_sources.gni")
import("//third_party/dart/sdk/lib/collection/collection_sources.gni")
import("//third_party/dart/sdk/lib/convert/convert_sources.gni")
@@ -18,6 +19,7 @@
import("//third_party/dart/sdk/lib/internal/internal_sources.gni")
import("//third_party/dart/sdk/lib/io/io_sources.gni")
import("//third_party/dart/sdk/lib/isolate/isolate_sources.gni")
+import("//third_party/dart/sdk/lib/js/js_annotations_sources.gni")
import("//third_party/dart/sdk/lib/js/js_sources.gni")
import("//third_party/dart/sdk/lib/js_interop/js_interop_sources.gni")
import("//third_party/dart/sdk/lib/js_util/js_util_sources.gni")
@@ -86,6 +88,19 @@
]
}
+copy("_js_annotations") {
+ lib_path = rebase_path("js", "", dart_sdk_lib_path)
+ sources = rebase_path(js_annotations_sdk_sources, "", lib_path)
+ outputs = [ "$root_gen_dir/dart-pkg/sky_engine/lib/_js_annotations/{{source_file_part}}" ]
+}
+
+copy("_js_types") {
+ lib_path = rebase_path("_internal/js_shared", "", dart_sdk_lib_path)
+ sources = rebase_path(js_types_sdk_sources, "", lib_path)
+ outputs =
+ [ "$root_gen_dir/dart-pkg/sky_engine/lib/_js_types/{{source_file_part}}" ]
+}
+
copy("internal") {
lib_path = rebase_path("internal", "", dart_sdk_lib_path)
sources = rebase_path(internal_sdk_sources, "", lib_path)
@@ -180,6 +195,8 @@
deps = [
":_http",
":_interceptors",
+ ":_js_annotations",
+ ":_js_types",
":async",
":collection",
":convert",
@@ -230,6 +247,10 @@
" # public API, e.g. List being Iterable by virtue of implementing",
" # EfficientLengthIterable. Not including this library yields analysis errors.",
" \"dart:_internal\": \"internal/internal.dart\"",
+ " # The _js_annotations library is also needed for the same reasons as _internal.",
+ " \"dart:_js_annotations\": \"_js_annotations/_js_annotations.dart\"",
+ " # The _js_types library is also needed for the same reasons as _internal.",
+ " \"dart:_js_types\": \"_js_types/js_types.dart\"",
" \"dart:nativewrappers\": \"_empty.dart\"",
]
}
diff --git a/sky/packages/sky_engine/lib/_embedder.yaml b/sky/packages/sky_engine/lib/_embedder.yaml
index bcd988c..69436dc 100644
--- a/sky/packages/sky_engine/lib/_embedder.yaml
+++ b/sky/packages/sky_engine/lib/_embedder.yaml
@@ -25,4 +25,8 @@
# public API, e.g. List being Iterable by virtue of implementing
# EfficientLengthIterable. Not including this library yields analysis errors.
"dart:_internal": "../../../../../third_party/dart/sdk/lib/internal/internal.dart"
+ # The _js_annotations library is also needed for the same reasons as _internal.
+ "dart:_js_annotations": "../../../../../third_party/dart/sdk/lib/js/_js_annotations.dart"
+ # The _js_types library is also needed for the same reasons as _internal.
+ "dart:_js_types": "../../../../../third_party/dart/sdk/lib/_internal/js_shared/lib/js_types.dart"
"dart:nativewrappers": "_empty.dart"