| # Copyright 2018 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("//chrome/browser/resources/tools/optimize_webui.gni") |
| import("//third_party/closure_compiler/compile_js.gni") |
| import("//ui/webui/resources/tools/js_modulizer.gni") |
| |
| group("closure_compile") { |
| testonly = true |
| deps = [ |
| ":closure_compile_jsmodules", |
| ":closure_compile_legacy", |
| ":closure_compile_polymer", |
| ] |
| } |
| |
| js_type_check("closure_compile_legacy") { |
| uses_legacy_modules = true |
| deps = [ |
| ":audio_player", |
| ":background", |
| ":closure_compile_externs", |
| ":error_util", |
| ":metadata_worker", |
| ] |
| } |
| |
| js_type_check("closure_compile_jsmodules") { |
| deps = [ |
| ":background.m", |
| ":error_util.m", |
| ":metadata_worker.m", |
| ] |
| } |
| |
| js_type_check("closure_compile_polymer") { |
| is_polymer3 = true |
| closure_flags = default_closure_args + [ |
| "js_module_root=gen/ui/file_manager/", |
| "browser_resolver_prefix_replacements=\"chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj/=./file_manager/\"", |
| "browser_resolver_prefix_replacements=\"chrome-extension://pmfjbimdmchhbnneeidfognadeopoehp/=./image_loader/\"", |
| ] |
| |
| deps = [ |
| ":audio_player.m", |
| ":main.m", |
| ] |
| } |
| |
| js_library("closure_compile_externs") { |
| sources = [] |
| externs_list = [ |
| "$externs_path/chrome_extensions.js", |
| "$externs_path/mediasession.js", |
| "//ui/file_manager/file_manager/externs/audio_player_foreground.js", |
| "//ui/file_manager/file_manager/externs/platform.js", |
| ] |
| } |
| |
| js_library("audio_player") { |
| deps = [ |
| "//ui/file_manager/audio_player/elements:audio_player", |
| "//ui/file_manager/audio_player/elements:track_list", |
| "//ui/file_manager/file_manager/common/js:app_util", |
| "//ui/file_manager/file_manager/common/js:filtered_volume_manager", |
| "//ui/file_manager/file_manager/common/js:mediasession_types", |
| "//ui/file_manager/file_manager/common/js:util", |
| "//ui/file_manager/file_manager/foreground/js/metadata:content_metadata_provider", |
| "//ui/file_manager/file_manager/foreground/js/metadata:metadata_model", |
| ] |
| } |
| |
| js_library("audio_player.m") { |
| sources = |
| [ "$root_gen_dir/ui/file_manager/audio_player/js/audio_player.m.js" ] |
| deps = [ |
| "//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled", |
| "//ui/file_manager/audio_player/elements:audio_player.m", |
| "//ui/file_manager/file_manager/common/js:app_util.m", |
| "//ui/file_manager/file_manager/common/js:async_util.m", |
| "//ui/file_manager/file_manager/common/js:filtered_volume_manager.m", |
| "//ui/file_manager/file_manager/common/js:mediasession_types.m", |
| "//ui/file_manager/file_manager/common/js:util.m", |
| "//ui/file_manager/file_manager/common/js:volume_manager_types.m", |
| "//ui/file_manager/file_manager/externs:volume_manager.m", |
| "//ui/file_manager/file_manager/foreground/js/metadata:content_metadata_provider.m", |
| "//ui/file_manager/file_manager/foreground/js/metadata:metadata_model.m", |
| "//ui/webui/resources/js:load_time_data", |
| ] |
| |
| externs_list = [ |
| "//ui/file_manager/file_manager/externs/audio_player_foreground.js", |
| "$externs_path/mediasession.js", |
| ] |
| |
| extra_deps = [ ":modulize" ] |
| } |
| |
| js_library("background") { |
| deps = [ |
| "//ui/file_manager/file_manager/background/js:app_window_wrapper", |
| "//ui/file_manager/file_manager/background/js:background_base", |
| "//ui/file_manager/file_manager/common/js:file_type", |
| "//ui/file_manager/file_manager/common/js:util", |
| ] |
| } |
| |
| js_library("background.m") { |
| sources = [ "$root_gen_dir/ui/file_manager/audio_player/js/background.m.js" ] |
| deps = [ |
| "//ui/file_manager/file_manager/background/js:app_window_wrapper.m", |
| "//ui/file_manager/file_manager/background/js:background_base.m", |
| "//ui/file_manager/file_manager/common/js:file_type.m", |
| "//ui/file_manager/file_manager/common/js:util.m", |
| ] |
| |
| extra_deps = [ ":modulize" ] |
| } |
| |
| js_library("error_util") { |
| } |
| |
| js_library("error_util.m") { |
| sources = [ "$root_gen_dir/ui/file_manager/audio_player/js/error_util.m.js" ] |
| extra_deps = [ ":modulize" ] |
| } |
| |
| js_library("metadata_worker") { |
| deps = [ |
| "//ui/file_manager/file_manager/foreground/js/metadata:metadata_dispatcher", |
| ] |
| } |
| |
| js_library("metadata_worker.m") { |
| sources = |
| [ "$root_gen_dir/ui/file_manager/audio_player/js/metadata_worker.m.js" ] |
| deps = [ "//ui/file_manager/file_manager/foreground/js/metadata:metadata_dispatcher.m" ] |
| extra_deps = [ ":modulize" ] |
| } |
| |
| js_library("test_util") { |
| } |
| |
| js_library("test_util.m") { |
| sources = [ "$root_gen_dir/ui/file_manager/audio_player/js/test_util.m.js" ] |
| deps = [ |
| ":background.m", |
| "//ui/file_manager/file_manager/background/js:test_util_base.m", |
| ] |
| extra_deps = [ ":modulize" ] |
| } |
| |
| js_library("main.m") { |
| deps = [ ":audio_player.m" ] |
| } |
| |
| js_library("main_background.m") { |
| deps = [ |
| ":background.m", |
| ":error_util.m", |
| ":test_util.m", |
| ] |
| } |
| |
| js_modulizer("modulize") { |
| input_files = [ |
| "audio_player.js", |
| "background.js", |
| "error_util.js", |
| "metadata_worker.js", |
| "test_util.js", |
| ] |
| |
| namespace_rewrites = [ |
| # initializeAudioPlayer uses HTMLImports, so rewriting to bypass it. |
| "initializeAudioPlayer|moduleInitializeAudioPlayer", |
| |
| "Polymer.CaseMap.dashToCamelCase|dashToCamelCase", |
| ] |
| } |
| |
| preprocess_folder = |
| rebase_path("$target_gen_dir/../../preprocessed/audio_player/js", |
| root_build_dir) |
| |
| files_app_path = |
| rebase_path("$root_gen_dir/ui/file_manager/preprocessed/file_manager", |
| root_build_dir) |
| image_loader_path = |
| rebase_path("$root_gen_dir/ui/file_manager/preprocessed/image_loader", |
| root_build_dir) |
| optimize_webui("build") { |
| host = "audio_player" |
| |
| input = preprocess_folder |
| js_module_in_files = [ "main.m.js" ] |
| |
| js_out_files = [ "main.m.rollup.js" ] |
| |
| external_paths = [ |
| "chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj|$files_app_path", |
| "chrome-extension://pmfjbimdmchhbnneeidfognadeopoehp|$image_loader_path", |
| ] |
| |
| deps = [ |
| ":main.m", |
| "//ui/file_manager:preprocess_generated", |
| "//ui/file_manager:preprocess_static", |
| "//ui/webui/resources:preprocess", |
| ] |
| } |
| |
| optimize_webui("build_worker") { |
| host = "audio_player" |
| |
| input = preprocess_folder |
| js_module_in_files = [ "metadata_worker.m.js" ] |
| |
| js_out_files = [ "metadata_worker.m.rollup.js" ] |
| |
| external_paths = [ |
| "chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj|$files_app_path", |
| "chrome-extension://pmfjbimdmchhbnneeidfognadeopoehp|$image_loader_path", |
| ] |
| |
| deps = [ |
| ":metadata_worker.m", |
| "//ui/file_manager:preprocess_generated", |
| "//ui/file_manager:preprocess_static", |
| "//ui/webui/resources:preprocess", |
| ] |
| } |
| |
| optimize_webui("build_background") { |
| host = "audio_player" |
| |
| input = preprocess_folder |
| js_module_in_files = [ "main_background.m.js" ] |
| |
| js_out_files = [ "main_background.m.rollup.js" ] |
| |
| external_paths = [ |
| "chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj|$files_app_path", |
| "chrome-extension://pmfjbimdmchhbnneeidfognadeopoehp|$image_loader_path", |
| ] |
| |
| deps = [ |
| ":main_background.m", |
| "//ui/file_manager:preprocess_generated", |
| "//ui/file_manager:preprocess_static", |
| "//ui/webui/resources:preprocess", |
| ] |
| } |