# Copyright 2014 The Cobalt Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

{
  'includes': [
    '../bindings/bindings.gypi',
  ],
  'variables': {
    # Base directory into which generated sources and intermediate files should
    # be generated.
    'bindings_output_dir': '<(SHARED_INTERMEDIATE_DIR)/bindings/browser',

    # Bindings for the interfaces in this list will be generated, and there must
    # be an implementation declared in a header that lives in the same
    # directory of each IDL.
    'source_idl_files': [
        '../audio/audio_buffer.idl',
        '../audio/audio_buffer_source_node.idl',
        '../audio/audio_context.idl',
        '../audio/audio_destination_node.idl',
        '../audio/audio_node.idl',

        '../cssom/css.idl',
        '../cssom/css_condition_rule.idl',
        '../cssom/css_grouping_rule.idl',
        '../cssom/css_font_face_rule.idl',
        '../cssom/css_media_rule.idl',
        '../cssom/css_keyframe_rule.idl',
        '../cssom/css_keyframes_rule.idl',
        '../cssom/css_rule.idl',
        '../cssom/css_rule_list.idl',
        '../cssom/css_style_declaration.idl',
        '../cssom/css_style_rule.idl',
        '../cssom/css_style_sheet.idl',
        '../cssom/media_list.idl',
        '../cssom/style_sheet.idl',
        '../cssom/style_sheet_list.idl',

        '../dom/abort_controller.idl',
        '../dom/abort_signal.idl',
        '../dom/animation_event.idl',
        '../dom/attr.idl',
        '../dom/audio_track.idl',
        '../dom/audio_track_list.idl',
        '../dom/blob.idl',
        '../dom/c_val_view.idl',
        '../dom/camera_3d.idl',
        '../dom/captions/system_caption_settings.idl',
        '../dom/cdata_section.idl',
        '../dom/character_data.idl',
        '../dom/cobalt_ua_data_values_interface.idl',
        '../dom/comment.idl',
        '../dom/crypto.idl',
        '../dom/custom_event.idl',
        '../dom/device_orientation_event.idl',
        '../dom/document.idl',
        '../dom/document_timeline.idl',
        '../dom/document_type.idl',
        '../dom/dom_exception.idl',
        '../dom/dom_implementation.idl',
        '../dom/dom_parser.idl',
        '../dom/dom_rect.idl',
        '../dom/dom_rect_list.idl',
        '../dom/dom_rect_read_only.idl',
        '../dom/dom_string_map.idl',
        '../dom/dom_token_list.idl',
        '../dom/element.idl',
        '../dom/eme/media_encrypted_event.idl',
        '../dom/eme/media_key_message_event.idl',
        '../dom/eme/media_key_session.idl',
        '../dom/eme/media_key_status_map.idl',
        '../dom/eme/media_key_system_access.idl',
        '../dom/eme/media_keys.idl',
        '../dom/error_event.idl',
        '../dom/event.idl',
        '../dom/event_listener.idl',
        '../dom/event_target.idl',
        '../dom/focus_event.idl',
        '../dom/history.idl',
        '../dom/html_anchor_element.idl',
        '../dom/html_audio_element.idl',
        '../dom/html_body_element.idl',
        '../dom/html_br_element.idl',
        '../dom/html_collection.idl',
        '../dom/html_div_element.idl',
        '../dom/html_element.idl',
        '../dom/html_head_element.idl',
        '../dom/html_heading_element.idl',
        '../dom/html_html_element.idl',
        '../dom/html_image_element.idl',
        '../dom/html_link_element.idl',
        '../dom/html_media_element.idl',
        '../dom/html_meta_element.idl',
        '../dom/html_paragraph_element.idl',
        '../dom/html_script_element.idl',
        '../dom/html_span_element.idl',
        '../dom/html_style_element.idl',
        '../dom/html_title_element.idl',
        '../dom/html_unknown_element.idl',
        '../dom/html_video_element.idl',
        '../dom/input_event.idl',
        '../dom/intersection_observer.idl',
        '../dom/intersection_observer_entry.idl',
        '../dom/keyboard_event.idl',
        '../dom/location.idl',
        '../dom/lottie_frame_custom_event.idl',
        '../dom/lottie_player.idl',
        '../dom/media_error.idl',
        '../dom/media_query_list.idl',
        '../dom/media_source.idl',
        '../dom/memory_info.idl',
        '../dom/message_event.idl',
        '../dom/mime_type_array.idl',
        '../dom/mouse_event.idl',
        '../dom/mutation_observer.idl',
        '../dom/mutation_record.idl',
        '../dom/named_node_map.idl',
        '../dom/navigator.idl',
        '../dom/navigator_ua_data.idl',
        '../dom/node.idl',
        '../dom/node_list.idl',
        '../dom/on_error_event_listener.idl',
        '../dom/on_screen_keyboard.idl',
        '../dom/performance.idl',
        '../dom/performance_entry.idl',
        '../dom/performance_lifecycle_timing.idl',
        '../dom/performance_mark.idl',
        '../dom/performance_measure.idl',
        '../dom/performance_observer.idl',
        '../dom/performance_observer_entry_list.idl',
        '../dom/performance_resource_timing.idl',
        '../dom/performance_timing.idl',
        '../dom/plugin_array.idl',
        '../dom/pointer_event.idl',
        '../dom/progress_event.idl',
        '../dom/screen.idl',
        '../dom/screenshot.idl',
        '../dom/security_policy_violation_event.idl',
        '../dom/source_buffer.idl',
        '../dom/source_buffer_list.idl',
        '../dom/storage.idl',
        '../dom/storage_event.idl',
        '../dom/test_runner.idl',
        '../dom/text.idl',
        '../dom/time_ranges.idl',
        '../dom/track_default.idl',
        '../dom/track_default_list.idl',
        '../dom/track_event.idl',
        '../dom/transition_event.idl',
        '../dom/ui_event.idl',
        '../dom/url.idl',
        '../dom/video_playback_quality.idl',
        '../dom/video_track.idl',
        '../dom/video_track_list.idl',
        '../dom/wheel_event.idl',
        '../dom/window.idl',
        '../dom/xml_document.idl',
        '../dom/xml_serializer.idl',

        '../encoding/text_decoder.idl',
        '../encoding/text_encoder.idl',

        '../fetch/fetch_internal.idl',

        '../h5vcc/dial/dial_http_request.idl',
        '../h5vcc/dial/dial_http_response.idl',
        '../h5vcc/dial/dial_server.idl',
        '../h5vcc/h5vcc.idl',
        '../h5vcc/h5vcc_accessibility.idl',
        '../h5vcc/h5vcc_account_info.idl',
        '../h5vcc/h5vcc_account_manager.idl',
        '../h5vcc/h5vcc_audio_config.idl',
        '../h5vcc/h5vcc_audio_config_array.idl',
        '../h5vcc/h5vcc_crash_log.idl',
        '../h5vcc/h5vcc_deep_link_event_target.idl',
        '../h5vcc/h5vcc_platform_service.idl',
        '../h5vcc/h5vcc_runtime.idl',
        '../h5vcc/h5vcc_runtime_event_target.idl',
        '../h5vcc/h5vcc_settings.idl',
        '../h5vcc/h5vcc_sso.idl',
        '../h5vcc/h5vcc_storage.idl',
        '../h5vcc/h5vcc_screen.idl',
        '../h5vcc/h5vcc_system.idl',
        '../h5vcc/h5vcc_trace_event.idl',
        '../h5vcc/h5vcc_updater.idl',

        '../media_capture/blob_event.idl',
        '../media_capture/media_device_info.idl',
        '../media_capture/media_devices.idl',
        '../media_capture/media_recorder.idl',

        '../media_session/media_metadata.idl',
        '../media_session/media_session.idl',

        '../media_stream/media_stream.idl',
        '../media_stream/media_stream_track.idl',

        '../speech/speech_recognition.idl',
        '../speech/speech_recognition_alternative.idl',
        '../speech/speech_recognition_error.idl',
        '../speech/speech_recognition_event.idl',
        '../speech/speech_recognition_result.idl',
        '../speech/speech_recognition_result_list.idl',

        '../speech/speech_synthesis.idl',
        '../speech/speech_synthesis_error_event.idl',
        '../speech/speech_synthesis_event.idl',
        '../speech/speech_synthesis_utterance.idl',
        '../speech/speech_synthesis_voice.idl',

        '../subtlecrypto/crypto_key.idl',
        '../subtlecrypto/subtle_crypto.idl',

        '../web_animations/animatable.idl',
        '../web_animations/animation.idl',
        '../web_animations/animation_effect_read_only.idl',
        '../web_animations/animation_effect_timing_read_only.idl',
        '../web_animations/animation_timeline.idl',
        '../web_animations/keyframe.idl',
        '../web_animations/keyframe_effect_read_only.idl',

        '../webdriver/script_executor.idl',
        '../webdriver/script_executor_params.idl',
        '../webdriver/script_executor_result.idl',

        '../websocket/close_event.idl',
        '../websocket/web_socket.idl',

        '../xhr/xml_http_request.idl',
        '../xhr/xml_http_request_event_target.idl',
        '../xhr/xml_http_request_upload.idl',

        '<@(cobalt_webapi_extension_source_idl_files)',
    ],

    # IDL files that will end up generating a .h that will be #included in
    # Cobalt directly. IDL files for dictionaries and enums.
    'generated_header_idl_files': [
        '../audio/audio_node_channel_count_mode.idl',
        '../audio/audio_node_channel_interpretation.idl',
        '../debug/console/console_command.idl',
        '../debug/console/debug_console_mode.idl',
        '../dom/blob_property_bag.idl',
        '../dom/captions/caption_character_edge_style.idl',
        '../dom/captions/caption_color.idl',
        '../dom/captions/caption_font_family.idl',
        '../dom/captions/caption_font_size_percentage.idl',
        '../dom/captions/caption_opacity_percentage.idl',
        '../dom/captions/caption_state.idl',
        '../dom/cobalt_ua_data_values.idl',
        '../dom/custom_event_init.idl',
        '../dom/device_orientation_event_init.idl',
        '../dom/document_ready_state.idl',
        '../dom/dom_parser_supported_type.idl',
        '../dom/eme/media_encrypted_event_init.idl',
        '../dom/eme/media_key_message_event_init.idl',
        '../dom/eme/media_key_message_type.idl',
        '../dom/eme/media_key_session_type.idl',
        '../dom/eme/media_key_status.idl',
        '../dom/eme/media_key_system_configuration.idl',
        '../dom/eme/media_key_system_media_capability.idl',
        '../dom/eme/media_keys_requirement.idl',
        '../dom/error_event_init.idl',
        '../dom/event_init.idl',
        '../dom/event_modifier_init.idl',
        '../dom/focus_event_init.idl',
        '../dom/input_event_init.idl',
        '../dom/intersection_observer_entry_init.idl',
        '../dom/intersection_observer_init.idl',
        '../dom/keyboard_event_init.idl',
        '../dom/lottie_frame_custom_event_detail.idl',
        '../dom/media_source_end_of_stream_error.idl',
        '../dom/media_source_ready_state.idl',
        '../dom/mouse_event_init.idl',
        '../dom/mutation_observer_init.idl',
        '../dom/navigator_ua_brand_version.idl',
        '../dom/performance_observer_callback_options.idl',
        '../dom/performance_observer_init.idl',
        '../dom/pointer_event_init.idl',
        '../dom/source_buffer_append_mode.idl',
        '../dom/track_default_type.idl',
        '../dom/ua_data_values.idl',
        '../dom/ua_low_entropy_json.idl',
        '../dom/ui_event_init.idl',
        '../dom/visibility_state.idl',
        '../dom/wheel_event_init.idl',
        '../encoding/text_decode_options.idl',
        '../encoding/text_decoder_options.idl',
        '../encoding/text_encoder_encode_into_result.idl',
        '../h5vcc/h5vcc_crash_type.idl',
        '../media_capture/blob_event_init.idl',
        '../media_capture/media_device_kind.idl',
        '../media_capture/media_recorder_options.idl',
        '../media_capture/recording_state.idl',
        '../media_session/media_image.idl',
        '../media_session/media_metadata_init.idl',
        '../media_session/media_position_state.idl',
        '../media_session/media_session_action.idl',
        '../media_session/media_session_action_details.idl',
        '../media_session/media_session_playback_state.idl',
        '../media_stream/media_stream_constraints.idl',
        '../media_stream/media_track_settings.idl',
        '../speech/speech_recognition_error_code.idl',
        '../speech/speech_synthesis_error_code.idl',
        '../subtlecrypto/aes_ctr_params.idl',
        '../subtlecrypto/algorithm.idl',
        '../subtlecrypto/import_key_algorithm_params.idl',
        '../subtlecrypto/key_format.idl',
        '../subtlecrypto/key_type.idl',
        '../subtlecrypto/key_usage.idl',
        '../web_animations/animation_fill_mode.idl',
        '../web_animations/animation_playback_direction.idl',
        '../websocket/close_event_init.idl',
        '<@(cobalt_webapi_extension_generated_header_idl_files)',
    ],

    # Partial interfaces and the right-side of "implements". Also includes
    # callback interfaces.
    # Code will not get generated for these interfaces; they are used to add
    # functionality to other interfaces.
    'dependency_idl_files': [
        '../cssom/link_style.idl',

        '../dom/buffer_source.idl',
        '../dom/captions/navigator_system_caption_settings.idl',
        '../dom/document_cobalt.idl',
        '../dom/document_cssom.idl',
        '../dom/document_html5.idl',
        '../dom/document_page_lifecycle.idl',
        '../dom/document_page_visibility.idl',
        '../dom/document_web_animations_api.idl',
        '../dom/element_css_inline_style.idl',
        '../dom/element_cssom_view.idl',
        '../dom/element_dom_parsing_and_serialization.idl',
        '../dom/element_pointer_events.idl',
        '../dom/eme/html_media_element.idl',
        '../dom/eme/navigator.idl',
        '../dom/global_crypto.idl',
        '../dom/global_event_handlers.idl',
        '../dom/html_element_cssom_view.idl',
        '../dom/mouse_event_cssom_view.idl',
        '../dom/navigator_id.idl',
        '../dom/navigator_language.idl',
        '../dom/navigator_licenses.idl',
        '../dom/navigator_online.idl',
        '../dom/navigator_plugins.idl',
        '../dom/navigator_storage_utils.idl',
        '../dom/navigator_ua.idl',
        '../dom/non_document_type_child_node.idl',
        '../dom/non_element_parent_node.idl',
        '../dom/parent_node.idl',
        '../dom/performance_entry_list.idl',
        '../dom/performance_high_resolution_time.idl',
        '../dom/speech_synthesis_getter.idl',
        '../dom/url_mse.idl',
        '../dom/url_utils.idl',
        '../dom/window_animation_timing.idl',
        '../dom/window_cssom.idl',
        '../dom/window_cssom_view.idl',
        '../dom/window_event_handlers.idl',
        '../dom/window_local_storage.idl',
        '../dom/window_on_screen_keyboard.idl',
        '../dom/window_performance.idl',
        '../dom/window_session_storage.idl',
        '../dom/window_timers.idl',
        '../media_capture/navigator.idl',
        '../media_session/navigator_media_session.idl',
    ],

    'conditions': [
      ['enable_debugger==1', {
        'source_idl_files': [
            '../debug/backend/css_agent.idl',
            '../debug/backend/debug_backend.idl',
            '../debug/console/debug_hub.idl',
            '../debug/console/debugger_event_target.idl',
        ],
      }],
    ],
  },
}
