# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/buildflag_header.gni")
import("//mojo/public/tools/bindings/mojom.gni")
import("//third_party/blink/public/public_features.gni")
import("//third_party/blink/renderer/config.gni")
import("//third_party/blink/renderer/core/core.gni")
import("//tools/grit/grit_rule.gni")
import("//tools/grit/repack.gni")

if (is_android) {
  import("//build/config/android/rules.gni")
}

group("blink") {
  public_deps = [
    ":blink_headers",
  ]
  deps = [
    "//third_party/blink/renderer/controller",
    "//third_party/blink/renderer/core",
    "//third_party/blink/renderer/modules",
    "//third_party/blink/renderer/platform",
  ]
}

group("test_support") {
  testonly = true
  public_deps = [
    ":test_headers",
    "//third_party/blink/renderer/modules/exported:test_support",
    "//third_party/blink/renderer/platform:test_support",
  ]
}

group("all_blink") {
  # This includes some test targets. Don't link into production!
  testonly = true

  public_deps = [
    "//third_party/blink/common",
    "//third_party/blink/common:blink_common_unittests",
    "//third_party/blink/renderer/controller",
    "//third_party/blink/renderer/controller:webkit_unit_tests",
    "//third_party/blink/renderer/core",
    "//third_party/blink/renderer/modules",
    "//third_party/blink/renderer/platform:blink_platform_unittests",
    "//third_party/blink/renderer/platform/heap:blink_heap_unittests",
    "//third_party/blink/renderer/platform/wtf:wtf_unittests",
  ]
}

config("blink_headers_config") {
  # Allow :blink_headers to include v8.h without linking to it.
  configs = [ "//v8:external_config" ]
}

# Public feature flags used outside of Blink.
buildflag_header("buildflags") {
  header = "public_buildflags.h"
  flags = [
    "DEBUG_DEVTOOLS=$debug_devtools",
    "USE_DEFAULT_RENDER_THEME=$use_default_render_theme",
    "USE_MINIKIN_HYPHENATION=$use_minikin_hyphenation",
    "ENABLE_UNHANDLED_TAP=$enable_unhandled_tap",
  ]
}

if (is_android) {
  java_cpp_enum("blink_headers_java_enums_srcjar") {
    sources = [
      "./common/manifest/web_display_mode.h",
      "./platform/modules/remoteplayback/web_remote_playback_availability.h",
      "./platform/web_focus_type.h",
      "./platform/web_input_event.h",
      "./platform/web_text_input_mode.h",
      "./platform/web_text_input_type.h",
      "./web/web_context_menu_data.h",
    ]
  }

  java_cpp_enum("blink_cursor_type_java_enums_srcjar") {
    sources = [
      "./platform/web_cursor_info.h",
    ]
  }

  android_library("blink_headers_java") {
    deps = [
      "//services/network/public/mojom:mojom_java",
      "//third_party/android_deps:android_support_annotations_java",
    ]
    srcjar_deps = [ ":blink_headers_java_enums_srcjar" ]
  }
}

source_set("test_headers") {
  testonly = true
  sources = [
    "platform/scheduler/test/renderer_scheduler_test_support.h",
    "platform/scheduler/test/web_fake_thread_scheduler.h",
    "platform/scheduler/test/web_mock_thread_scheduler.h",
  ]
  deps = [
    ":blink_headers",
    "//base:base",
    "//cc:cc",
    "//testing/gmock:gmock",
  ]
}

# Depend on this target to use public blink API headers for things like enums
# and public structures without actually linking against any Blink libraries.
#
# See public/common/BUILD.gn for the headers that can be referenced both from
# the browser- and renderer-side components.
source_set("blink_headers") {
  sources = [
    "platform/blame_context.h",
    "platform/code_cache_loader.h",
    "platform/file_path_conversion.h",
    "platform/interface_provider.h",
    "platform/interface_registry.h",
    "platform/linux/out_of_process_font.h",
    "platform/linux/web_sandbox_support.h",
    "platform/mac/web_sandbox_support.h",
    "platform/mac/web_scrollbar_theme.h",
    "platform/modules/background_fetch/web_background_fetch_registration.h",
    "platform/modules/indexeddb/web_idb_database_exception.h",
    "platform/modules/installedapp/web_related_application.h",
    "platform/modules/installedapp/web_related_apps_fetcher.h",
    "platform/modules/media_capabilities/web_audio_configuration.h",
    "platform/modules/media_capabilities/web_media_capabilities_callbacks.h",
    "platform/modules/media_capabilities/web_media_capabilities_client.h",
    "platform/modules/media_capabilities/web_media_capabilities_decoding_info.h",
    "platform/modules/media_capabilities/web_media_capabilities_info.h",
    "platform/modules/media_capabilities/web_media_capabilities_key_system_configuration.h",
    "platform/modules/media_capabilities/web_media_configuration.h",
    "platform/modules/media_capabilities/web_media_decoding_configuration.h",
    "platform/modules/media_capabilities/web_video_configuration.h",
    "platform/modules/notifications/web_notification_action.h",
    "platform/modules/notifications/web_notification_constants.h",
    "platform/modules/notifications/web_notification_data.h",
    "platform/modules/payments/web_payment_currency_amount.h",
    "platform/modules/payments/web_payment_details_modifier.h",
    "platform/modules/payments/web_payment_handler_response.h",
    "platform/modules/payments/web_payment_item.h",
    "platform/modules/payments/web_payment_method_data.h",
    "platform/modules/payments/web_payment_request_event_data.h",
    "platform/modules/push_messaging/web_push_client.h",
    "platform/modules/push_messaging/web_push_error.h",
    "platform/modules/push_messaging/web_push_provider.h",
    "platform/modules/push_messaging/web_push_subscription.h",
    "platform/modules/push_messaging/web_push_subscription_options.h",
    "platform/modules/remoteplayback/web_remote_playback_availability.h",
    "platform/modules/remoteplayback/web_remote_playback_client.h",
    "platform/modules/remoteplayback/web_remote_playback_state.h",
    "platform/modules/service_worker/web_service_worker_clients_info.h",
    "platform/modules/service_worker/web_service_worker_error.h",
    "platform/modules/service_worker/web_service_worker_network_provider.h",
    "platform/modules/service_worker/web_service_worker_object_info.h",
    "platform/modules/service_worker/web_service_worker_provider.h",
    "platform/modules/service_worker/web_service_worker_provider_client.h",
    "platform/modules/service_worker/web_service_worker_registration_object_info.h",
    "platform/modules/service_worker/web_service_worker_request.h",
    "platform/modules/service_worker/web_service_worker_response.h",
    "platform/modules/service_worker/web_service_worker_stream_handle.h",
    "platform/platform.h",
    "platform/pointer_properties.h",
    "platform/scheduler/web_rail_mode_observer.h",
    "platform/scheduler/web_render_widget_scheduling_state.h",
    "platform/scheduler/web_renderer_process_type.h",
    "platform/scheduler/web_resource_loading_task_runner_handle.h",
    "platform/scheduler/web_thread_scheduler.h",
    "platform/scoped_web_callbacks.h",
    "platform/shape_properties.h",
    "platform/task_type.h",
    "platform/url_conversion.h",
    "platform/user_metrics_action.h",
    "platform/web_application_cache_host.h",
    "platform/web_application_cache_host_client.h",
    "platform/web_audio_bus.h",
    "platform/web_audio_destination_consumer.h",
    "platform/web_audio_device.h",
    "platform/web_audio_latency_hint.h",
    "platform/web_audio_source_provider.h",
    "platform/web_audio_source_provider_client.h",
    "platform/web_blob_info.h",
    "platform/web_blob_registry.h",
    "platform/web_cache.h",
    "platform/web_callbacks.h",
    "platform/web_canonical_cookie.h",
    "platform/web_canvas_capture_handler.h",
    "platform/web_client_hints_type.h",
    "platform/web_coalesced_input_event.h",
    "platform/web_color_scheme.h",
    "platform/web_common.h",
    "platform/web_computed_ax_tree.h",
    "platform/web_connection_type.h",
    "platform/web_content_decryption_module.h",
    "platform/web_content_decryption_module_access.h",
    "platform/web_content_decryption_module_exception.h",
    "platform/web_content_decryption_module_result.h",
    "platform/web_content_decryption_module_session.h",
    "platform/web_content_security_policy.h",
    "platform/web_content_security_policy_struct.h",
    "platform/web_content_setting_callbacks.h",
    "platform/web_content_settings_client.h",
    "platform/web_cookie_jar.h",
    "platform/web_crypto.h",
    "platform/web_crypto_algorithm.h",
    "platform/web_crypto_algorithm_params.h",
    "platform/web_crypto_key.h",
    "platform/web_crypto_key_algorithm.h",
    "platform/web_crypto_key_algorithm_params.h",
    "platform/web_cursor_info.h",
    "platform/web_data.h",
    "platform/web_data_consumer_handle.h",
    "platform/web_database_observer.h",
    "platform/web_distillability.h",
    "platform/web_document_subresource_filter.h",
    "platform/web_double_point.h",
    "platform/web_double_size.h",
    "platform/web_drag_data.h",
    "platform/web_drag_operation.h",
    "platform/web_editing_command_type.h",
    "platform/web_effective_connection_type.h",
    "platform/web_encrypted_media_client.h",
    "platform/web_encrypted_media_key_information.h",
    "platform/web_encrypted_media_request.h",
    "platform/web_encrypted_media_types.h",
    "platform/web_file_system_type.h",
    "platform/web_float_point.h",
    "platform/web_float_point_3d.h",
    "platform/web_float_rect.h",
    "platform/web_float_size.h",
    "platform/web_focus_type.h",
    "platform/web_font.h",
    "platform/web_font_description.h",
    "platform/web_font_render_style.h",
    "platform/web_gamepad_listener.h",
    "platform/web_gesture_curve.h",
    "platform/web_gesture_device.h",
    "platform/web_gesture_event.h",
    "platform/web_graphics_context_3d_provider.h",
    "platform/web_history_scroll_restoration_type.h",
    "platform/web_http_body.h",
    "platform/web_http_header_visitor.h",
    "platform/web_http_load_info.h",
    "platform/web_icon_sizes_parser.h",
    "platform/web_image.h",
    "platform/web_image_capture_frame_grabber.h",
    "platform/web_image_generator.h",
    "platform/web_inband_text_track.h",
    "platform/web_inband_text_track_client.h",
    "platform/web_input_event.h",
    "platform/web_input_event_result.h",
    "platform/web_insecure_request_policy.h",
    "platform/web_intrinsic_sizing_info.h",
    "platform/web_isolated_world_ids.h",
    "platform/web_keyboard_event.h",
    "platform/web_layer_tree_view.h",
    "platform/web_loading_behavior_flag.h",
    "platform/web_localized_string.h",
    "platform/web_media_constraints.h",
    "platform/web_media_key_system_configuration.h",
    "platform/web_media_key_system_media_capability.h",
    "platform/web_media_player.h",
    "platform/web_media_player_client.h",
    "platform/web_media_player_encrypted_media_client.h",
    "platform/web_media_player_source.h",
    "platform/web_media_recorder_handler.h",
    "platform/web_media_recorder_handler_client.h",
    "platform/web_media_source.h",
    "platform/web_media_stream.h",
    "platform/web_media_stream_center.h",
    "platform/web_media_stream_source.h",
    "platform/web_media_stream_track.h",
    "platform/web_memory_coordinator.h",
    "platform/web_memory_pressure_level.h",
    "platform/web_memory_state.h",
    "platform/web_menu_source_type.h",
    "platform/web_mixed_content.h",
    "platform/web_mixed_content_context_type.h",
    "platform/web_mouse_event.h",
    "platform/web_mouse_wheel_event.h",
    "platform/web_native_scroll_behavior.h",
    "platform/web_navigation_body_loader.h",
    "platform/web_network_state_notifier.h",
    "platform/web_platform_event_listener.h",
    "platform/web_point.h",
    "platform/web_pointer_event.h",
    "platform/web_pointer_properties.h",
    "platform/web_prerender.h",
    "platform/web_prerendering_support.h",
    "platform/web_prescient_networking.h",
    "platform/web_private_ptr.h",
    "platform/web_rect.h",
    "platform/web_resource_timing_info.h",
    "platform/web_rtc_answer_options.h",
    "platform/web_rtc_api_name.h",
    "platform/web_rtc_certificate_generator.h",
    "platform/web_rtc_data_channel_handler.h",
    "platform/web_rtc_data_channel_handler_client.h",
    "platform/web_rtc_data_channel_init.h",
    "platform/web_rtc_dtmf_sender_handler.h",
    "platform/web_rtc_dtmf_sender_handler_client.h",
    "platform/web_rtc_ice_candidate.h",
    "platform/web_rtc_key_params.h",
    "platform/web_rtc_legacy_stats.h",
    "platform/web_rtc_offer_options.h",
    "platform/web_rtc_peer_connection_handler.h",
    "platform/web_rtc_peer_connection_handler_client.h",
    "platform/web_rtc_rtp_receiver.h",
    "platform/web_rtc_rtp_sender.h",
    "platform/web_rtc_rtp_source.h",
    "platform/web_rtc_rtp_transceiver.h",
    "platform/web_rtc_session_description.h",
    "platform/web_rtc_session_description_request.h",
    "platform/web_rtc_stats.h",
    "platform/web_rtc_stats_request.h",
    "platform/web_rtc_stats_response.h",
    "platform/web_rtc_void_request.h",
    "platform/web_runtime_features.h",
    "platform/web_scoped_virtual_time_pauser.h",
    "platform/web_screen_info.h",
    "platform/web_scroll_anchor_data.h",
    "platform/web_scroll_into_view_params.h",
    "platform/web_scroll_types.h",
    "platform/web_scrollbar_buttons_placement.h",
    "platform/web_scrollbar_overlay_color_theme.h",
    "platform/web_security_origin.h",
    "platform/web_security_style.h",
    "platform/web_set_sink_id_callbacks.h",
    "platform/web_size.h",
    "platform/web_source_buffer.h",
    "platform/web_source_buffer_client.h",
    "platform/web_speech_synthesis_utterance.h",
    "platform/web_speech_synthesis_voice.h",
    "platform/web_speech_synthesizer.h",
    "platform/web_speech_synthesizer_client.h",
    "platform/web_spell_check_panel_host_client.h",
    "platform/web_storage_area.h",
    "platform/web_storage_namespace.h",
    "platform/web_string.h",
    "platform/web_surface_layer_bridge.h",
    "platform/web_text_input_info.h",
    "platform/web_text_input_mode.h",
    "platform/web_text_input_type.h",
    "platform/web_text_run.h",
    "platform/web_theme_engine.h",
    "platform/web_thread_safe_data.h",
    "platform/web_time_range.h",
    "platform/web_touch_action.h",
    "platform/web_touch_event.h",
    "platform/web_touch_point.h",
    "platform/web_url.h",
    "platform/web_url_error.h",
    "platform/web_url_load_timing.h",
    "platform/web_url_loader.h",
    "platform/web_url_loader_client.h",
    "platform/web_url_loader_factory.h",
    "platform/web_url_loader_mock_factory.h",
    "platform/web_url_loader_test_delegate.h",
    "platform/web_url_request.h",
    "platform/web_url_response.h",
    "platform/web_vector.h",
    "platform/web_video_frame_submitter.h",
    "platform/web_viewport_style.h",
    "platform/web_worker_fetch_context.h",
    "platform/websocket_handshake_throttle.h",
    "web/blink.h",
    "web/mac/web_substring_util.h",
    "web/mac/web_substring_util.h",
    "web/modules/autofill/web_form_element_observer.h",
    "web/modules/autofill/web_form_element_observer_callback.h",
    "web/modules/service_worker/web_service_worker_context_client.h",
    "web/modules/service_worker/web_service_worker_context_proxy.h",
    "web/web_active_fling_parameters.h",
    "web/web_apply_constraints_request.h",
    "web/web_array_buffer.h",
    "web/web_array_buffer_converter.h",
    "web/web_associated_url_loader.h",
    "web/web_associated_url_loader_client.h",
    "web/web_associated_url_loader_options.h",
    "web/web_autofill_client.h",
    "web/web_autofill_state.h",
    "web/web_ax_context.h",
    "web/web_ax_enums.h",
    "web/web_ax_object.h",
    "web/web_blob.h",
    "web/web_console_message.h",
    "web/web_context_features.h",
    "web/web_context_menu_data.h",
    "web/web_crypto_normalize.h",
    "web/web_css_parser.h",
    "web/web_custom_element.h",
    "web/web_date_time_chooser_completion.h",
    "web/web_date_time_chooser_params.h",
    "web/web_date_time_input_type.h",
    "web/web_date_time_suggestion.h",
    "web/web_device_emulation_params.h",
    "web/web_document.h",
    "web/web_document_loader.h",
    "web/web_dom_activity_logger.h",
    "web/web_dom_event.h",
    "web/web_dom_file_system.h",
    "web/web_dom_media_stream_track.h",
    "web/web_dom_message_event.h",
    "web/web_drag_status.h",
    "web/web_draggable_region.h",
    "web/web_element.h",
    "web/web_element_collection.h",
    "web/web_embedded_worker.h",
    "web/web_embedded_worker_start_data.h",
    "web/web_external_popup_menu.h",
    "web/web_external_popup_menu_client.h",
    "web/web_form_control_element.h",
    "web/web_form_element.h",
    "web/web_frame.h",
    "web/web_frame_content_dumper.h",
    "web/web_frame_load_type.h",
    "web/web_frame_owner_properties.h",
    "web/web_frame_serializer.h",
    "web/web_frame_serializer_cache_control_policy.h",
    "web/web_frame_serializer_client.h",
    "web/web_frame_widget.h",
    "web/web_global_object_reuse_policy.h",
    "web/web_heap.h",
    "web/web_history_commit_type.h",
    "web/web_history_item.h",
    "web/web_hit_test_result.h",
    "web/web_icon_url.h",
    "web/web_image_cache.h",
    "web/web_image_decoder.h",
    "web/web_ime_text_span.h",
    "web/web_input_element.h",
    "web/web_input_method_controller.h",
    "web/web_label_element.h",
    "web/web_language_detection_details.h",
    "web/web_local_frame.h",
    "web/web_local_frame_client.h",
    "web/web_meaningful_layout.h",
    "web/web_media_player_action.h",
    "web/web_memory_statistics.h",
    "web/web_menu_item_info.h",
    "web/web_meta_element.h",
    "web/web_navigation_control.h",
    "web/web_navigation_params.h",
    "web/web_navigation_policy.h",
    "web/web_navigation_type.h",
    "web/web_node.h",
    "web/web_option_element.h",
    "web/web_page_importance_signals.h",
    "web/web_page_popup.h",
    "web/web_pepper_socket.h",
    "web/web_pepper_socket_client.h",
    "web/web_performance.h",
    "web/web_plugin.h",
    "web/web_plugin_action.h",
    "web/web_plugin_container.h",
    "web/web_plugin_document.h",
    "web/web_plugin_params.h",
    "web/web_plugin_script_forbidden_scope.h",
    "web/web_popup_menu_info.h",
    "web/web_prerenderer_client.h",
    "web/web_presentation_receiver_flags.h",
    "web/web_print_params.h",
    "web/web_print_preset_options.h",
    "web/web_print_scaling_option.h",
    "web/web_range.h",
    "web/web_remote_frame.h",
    "web/web_remote_frame_client.h",
    "web/web_render_theme.h",
    "web/web_scoped_user_gesture.h",
    "web/web_scoped_window_focus_allowed_indicator.h",
    "web/web_script_controller.h",
    "web/web_script_execution_callback.h",
    "web/web_script_source.h",
    "web/web_searchable_form_data.h",
    "web/web_security_policy.h",
    "web/web_select_element.h",
    "web/web_selector.h",
    "web/web_serialized_script_value.h",
    "web/web_serialized_script_value_version.h",
    "web/web_settings.h",
    "web/web_shared_worker.h",
    "web/web_shared_worker_client.h",
    "web/web_storage_event_dispatcher.h",
    "web/web_surrounding_text.h",
    "web/web_testing_support.h",
    "web/web_text_check_client.h",
    "web/web_text_checking_completion.h",
    "web/web_text_checking_result.h",
    "web/web_text_decoration_type.h",
    "web/web_text_direction.h",
    "web/web_tree_scope_type.h",
    "web/web_triggering_event_info.h",
    "web/web_user_gesture_indicator.h",
    "web/web_user_gesture_token.h",
    "web/web_user_media_client.h",
    "web/web_user_media_request.h",
    "web/web_v8_context_snapshot.h",
    "web/web_view.h",
    "web/web_view_client.h",
    "web/web_widget.h",
    "web/web_widget_client.h",
    "web/web_window_features.h",
    "web/win/web_font_rendering.h",
  ]

  public_configs = [
    ":blink_headers_config",

    # Blink exposes icu headers in the public API.
    "//third_party/icu:icu_config",
  ]

  public_deps = [
    "//net",
    "//services/service_manager/public/cpp",
    "//services/ws/public/mojom/ime",
    "//skia",
    "//third_party/blink/public/common",
    "//third_party/webrtc/api:libjingle_peerconnection_api",
    "//third_party/webrtc/rtc_base:rtc_base",
    "//ui/accessibility:ax_enums_mojo",
    "//url",
  ]

  deps = [
    ":generate_mojo_bindings",
    ":mojo_bindings_blink_headers",
    "//base:base",
    "//cc:cc",
    "//cc/paint:paint",
    "//components/viz/common",
    "//mojo/public/cpp/bindings:bindings",
    "//mojo/public/cpp/system:system",
    "//services/device/public/mojom:mojom_shared_cpp_sources",
    "//services/network/public/cpp:cpp",
    "//services/network/public/mojom",
    "//v8:v8_headers",
  ]
}

group("blink_devtools_frontend_resources") {
  public_deps = [
    "//third_party/blink/renderer/devtools:devtools_frontend_resources",
  ]
}

group("blink_devtools_frontend_resources_files") {
  data_deps = [
    "//third_party/blink/renderer/devtools:devtools_all_files",
  ]
}

group("blink_generate_devtools_grd") {
  public_deps = [
    "//third_party/blink/renderer/devtools:generate_devtools_grd",
  ]
}

resources_out_dir = "$root_gen_dir/third_party/blink/public/resources"

grit("resources") {
  output_dir = resources_out_dir
  source = "blink_resources.grd"
  outputs = [
    "grit/blink_resources.h",
    "blink_resources.pak",
  ]
  html_min_css = "$blink_core_output_dir/html.css"
  grit_flags = [
    "-E",
    "html_min_css=" + rebase_path(html_min_css, root_build_dir),
  ]
  deps = [
    "//third_party/blink/renderer/core:make_minimized_css",
  ]
}

grit("image_resources") {
  output_dir = "$root_gen_dir/third_party/blink/public/resources"
  source = "blink_image_resources.grd"
  outputs = [
    "grit/blink_image_resources.h",
    "blink_image_resources_100_percent.pak",
    "blink_image_resources_200_percent.pak",
  ]
}

group("scaled_resources") {
  public_deps = [
    ":image_resources",
    "//third_party/blink/renderer/modules/media_controls:media_controls_resources",
  ]
}

repack("scaled_resources_100_percent") {
  output = "$root_gen_dir/third_party/blink/public/resources/blink_scaled_resources_100_percent.pak"
  sources = [
    "$root_gen_dir/third_party/blink/public/resources/blink_image_resources_100_percent.pak",
    "$root_gen_dir/third_party/blink/renderer/modules/media_controls/resources/media_controls_resources_100_percent.pak",
  ]
  deps = [
    ":scaled_resources",
  ]
}

repack("scaled_resources_200_percent") {
  output = "$root_gen_dir/third_party/blink/public/resources/blink_scaled_resources_200_percent.pak"
  sources = [
    "$root_gen_dir/third_party/blink/public/resources/blink_image_resources_200_percent.pak",
    "$root_gen_dir/third_party/blink/renderer/modules/media_controls/resources/media_controls_resources_200_percent.pak",
  ]
  deps = [
    ":scaled_resources",
  ]
}

# TODO: Move these into blink/public/mojom.
mojom("mojo_bindings") {
  visibility = [
    "//content/*",
    "//chrome/common:mojo_bindings",
  ]
  visibility_blink =
      [ "//third_party/blink/renderer/platform:blink_platform_public_deps" ]
  sources = [
    "platform/autoplay.mojom",
    "platform/media_download_in_product_help.mojom",
    "platform/mime_registry.mojom",
    "platform/modules/app_banner/app_banner.mojom",
    "platform/modules/background_sync/background_sync.mojom",
    "platform/modules/badging/badging.mojom",
    "platform/modules/bluetooth/web_bluetooth.mojom",
    "platform/modules/credentialmanager/credential_manager.mojom",
    "platform/modules/geolocation/geolocation_service.mojom",
    "platform/modules/hyphenation/hyphenation.mojom",
    "platform/modules/insecure_input/insecure_input_service.mojom",
    "platform/modules/keyboard_lock/keyboard_lock.mojom",
    "platform/modules/locks/lock_manager.mojom",
    "platform/modules/notifications/notification_service.mojom",
    "platform/modules/permissions/permission.mojom",
    "platform/modules/permissions/permission_status.mojom",
    "platform/modules/webauthn/virtual_authenticator.mojom",
    "platform/modules/webdatabase/web_database.mojom",
    "platform/oom_intervention.mojom",
    "platform/reporting.mojom",
    "platform/site_engagement.mojom",
    "platform/ukm.mojom",
    "web/commit_result.mojom",
    "web/console_message.mojom",
    "web/devtools_frontend.mojom",
    "web/selection_menu_behavior.mojom",
    "web/window_features.mojom",
    "web/worker_content_settings_proxy.mojom",
  ]
  public_deps = [
    ":android_mojo_bindings",
    ":web_client_hints_types_mojo_bindings",
    ":web_feature_mojo_bindings",
    "//components/services/font/public/interfaces",
    "//device/bluetooth/public/mojom",
    "//mojo/public/mojom/base",
    "//services/device/public/mojom",
    "//services/network/public/mojom",
    "//services/service_manager/public/mojom",
    "//skia/public/interfaces",
    "//third_party/blink/public/mojom:mojom_platform",
    "//ui/gfx/geometry/mojo",
    "//url/mojom:url_mojom_gurl",
    "//url/mojom:url_mojom_origin",
  ]

  overridden_deps = [ "//third_party/blink/public/mojom:mojom_platform" ]
  component_deps = [ "//third_party/blink/public/common" ]

  component_output_prefix = "blink_mojo_bindings"

  # The chromium variant must be linked with content and use the same export
  # settings in component build because of the WebBluetoothDeviceId typemap
  # inside content.
  export_class_attribute = "CONTENT_EXPORT"
  export_define = "CONTENT_IMPLEMENTATION=1"
  export_header = "content/common/content_export.h"

  # Similarly, the blink variant must be linked with the platform component
  # since it uses types from it in its typemaps.
  export_class_attribute_blink = "BLINK_PLATFORM_EXPORT"
  export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1"
  export_header_blink = "third_party/blink/public/platform/web_common.h"
}

mojom("android_mojo_bindings") {
  visibility = [ ":mojo_bindings" ]
  visibility_blink = [ ":mojo_bindings_blink" ]
  sources = [
    "platform/input_host.mojom",
    "platform/input_messages.mojom",
    "platform/modules/document_metadata/copyless_paste.mojom",
    "platform/modules/font_unique_name_lookup/font_unique_name_lookup.mojom",
    "platform/modules/installation/installation.mojom",
    "platform/modules/installedapp/installed_app_provider.mojom",
    "platform/modules/installedapp/related_application.mojom",
    "platform/modules/mediasession/media_session.mojom",
    "platform/modules/webauthn/authenticator.mojom",
    "platform/modules/webshare/webshare.mojom",
    "web/remote_objects.mojom",
  ]
  public_deps = [
    "//mojo/public/mojom/base",
    "//services/media_session/public/mojom",
    "//ui/gfx/geometry/mojo",
    "//url/mojom:url_mojom_gurl",
  ]

  # This Android unhandled-tap feature uses another mojo source, add it in.
  if (enable_unhandled_tap) {
    sources += [ "platform/unhandled_tap_notifier.mojom" ]
  }

  component_output_prefix = "blink_android_mojo_bindings"

  # See comment above.
  export_class_attribute = "CONTENT_EXPORT"
  export_define = "CONTENT_IMPLEMENTATION=1"
  export_header = "content/common/content_export.h"
  export_class_attribute_blink = "BLINK_PLATFORM_EXPORT"
  export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1"
  export_header_blink = "third_party/blink/public/platform/web_common.h"
}

mojom("media_devices_mojo_bindings") {
  sources = [
    "platform/modules/mediastream/media_devices.mojom",
  ]

  public_deps = [
    "//media/capture/mojom:video_capture",
    "//media/mojo/interfaces",
    "//ui/gfx/geometry/mojo",
  ]

  export_class_attribute = "CONTENT_EXPORT"
  export_define = "CONTENT_IMPLEMENTATION=1"
  export_header = "content/common/content_export.h"
}

# The embedded_frame_sink_mojo_bindings is separated from the rest of mojom
# files because its deps contain too many files in Chromium that would pollute
# the include paths in generated mojom-blink files for other services.
mojom("embedded_frame_sink_mojo_bindings") {
  visibility = [ "//content/*" ]
  visibility_blink = [ "//third_party/blink/renderer/platform" ]
  sources = [
    "platform/modules/frame_sinks/embedded_frame_sink.mojom",
  ]
  deps = [
    "//services/viz/public/interfaces",
  ]

  component_output_prefix = "blink_embedded_frame_sink_mojo_bindings"

  # See comment above
  export_class_attribute = "CONTENT_EXPORT"
  export_define = "CONTENT_IMPLEMENTATION=1"
  export_header = "content/common/content_export.h"
  export_class_attribute_blink = "BLINK_PLATFORM_EXPORT"
  export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1"
  export_header_blink = "third_party/blink/public/platform/web_common.h"
}

# The core_mojo_bindings is separated from the rest of mojom files to allow its deps
# to depend on types in WebKit/Source/core.
mojom("core_mojo_bindings") {
  visibility = [ "//content/*" ]
  visibility_blink = [ "//third_party/blink/renderer/core/*" ]
  sources = [
    "platform/modules/broadcastchannel/broadcast_channel.mojom",
  ]
  public_deps = [
    "//third_party/blink/public/mojom:mojom_core",
    "//url/mojom:url_mojom_origin",
  ]

  overridden_deps = [ "//third_party/blink/public/mojom:mojom_core" ]
  component_deps = [ "//third_party/blink/public/common" ]

  component_output_prefix = "blink_core_mojo_bindings"

  # See comment above.
  export_class_attribute = "CONTENT_EXPORT"
  export_define = "CONTENT_IMPLEMENTATION=1"
  export_header = "content/common/content_export.h"

  # Similarly, the blink variant must be linked with the core component
  # since it uses types from it in its typemaps.
  export_class_attribute_blink = "CORE_EXPORT"
  export_define_blink = "BLINK_CORE_IMPLEMENTATION=1"
  export_header_blink = "third_party/blink/renderer/core/core_export.h"
}

# Note that this intentionally depends on the generator target of the mojom
# target instead of the mojom target itself directly. This is to ensure that the
# dependencies are header-only and don't link against any bindings code.
group("generate_mojo_bindings") {
  deps = [
    # It's important to generate both the regular and the Blink variants. The
    # Blink public API exposes a number of Mojo interfaces; omitting it will
    # cause non-deterministic compile failures for code that uses the regular
    # variant of the generated files.
    ":core_mojo_bindings_blink_headers",
    ":core_mojo_bindings_headers",
    ":embedded_frame_sink_mojo_bindings_blink_headers",
    ":media_devices_mojo_bindings_blink_headers",
    ":media_devices_mojo_bindings_headers",
    ":mojo_bindings_blink_headers",
    ":mojo_bindings_headers",
  ]
}

# The web_feature_mojo_bindings is separated from the rest of the mojom files
# because the chromium typemap for blink mojo_bindings has private content
# dependencies.
mojom("web_feature_mojo_bindings") {
  sources = [
    "platform/web_feature.mojom",
  ]
}

# The web_feature_mojo_bindings is separated from the rest of the mojom files
# because the chromium typemap for blink mojo_bindings has private content
# dependencies.
mojom("web_client_hints_types_mojo_bindings") {
  sources = [
    "platform/web_client_hints_types.mojom",
  ]
}

# Some mojom typemaps are shared between Chromium and Blink variants and
# therefore require some shared traits implementation. These definitions are
# relegated to a separate target to avoid duplication between the variants.
source_set("shared_typemap_traits") {
  visibility = [ ":*" ]
  sources = [
    "web/console_message_struct_traits.cc",
    "web/console_message_struct_traits.h",
  ]
  deps = [
    ":blink_headers",
    ":mojo_bindings_headers",
    "//mojo/public/cpp/bindings:struct_traits",
  ]
}
