| # 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("//third_party/closure_compiler/js_unit_tests.gni") |
| import("//ui/file_manager/base/gn/js_test_gen_html.gni") |
| |
| js_type_check("closure_compile_jsmodules") { |
| closure_flags = default_closure_args + [ |
| "jscomp_error=strictCheckTypes", |
| "js_module_root=gen/ui/file_manager/", |
| "js_module_root=../../ui/file_manager/", |
| "browser_resolver_prefix_replacements=\"chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj/=./file_manager/\"", |
| ] |
| deps = [ |
| ":background.m", |
| ":cache", |
| ":image_loader_client", |
| ":image_loader_util", |
| ":image_request_task", |
| ":load_image_request", |
| ":piex_loader", |
| ":scheduler", |
| ] |
| } |
| |
| js_library("background.m") { |
| } |
| |
| js_library("cache") { |
| } |
| |
| js_unittest("cache_unittest.m") { |
| deps = [ |
| ":load_image_request", |
| "//chrome/test/data/webui:chai_assert", |
| ] |
| } |
| |
| js_library("image_loader") { |
| deps = [ |
| ":cache", |
| ":image_request_task", |
| ":load_image_request", |
| ":scheduler", |
| "//ui/file_manager/file_manager/foreground/js/metadata:image_orientation", |
| "//ui/webui/resources/js:assert.m", |
| ] |
| } |
| |
| js_unittest("image_loader_unittest.m") { |
| deps = [ |
| ":image_loader_util", |
| ":load_image_request", |
| "//chrome/test/data/webui:chai_assert", |
| "//ui/file_manager/file_manager/foreground/js/metadata:image_orientation", |
| ] |
| } |
| |
| js_library("image_loader_util") { |
| deps = [ |
| ":load_image_request", |
| "//ui/webui/resources/js:assert.m", |
| ] |
| } |
| |
| js_library("load_image_request") { |
| deps = [ |
| "//ui/file_manager/file_manager/foreground/js/metadata:image_orientation", |
| "//ui/webui/resources/js:assert.m", |
| ] |
| } |
| |
| js_library("image_loader_client") { |
| deps = [ |
| ":load_image_request", |
| "//ui/file_manager/file_manager/common/js:lru_cache", |
| ] |
| externs_list = [ |
| "$externs_path/chrome.js", |
| "$externs_path/chrome_extensions.js", |
| "$externs_path/metrics_private.js", |
| ] |
| } |
| |
| js_unittest("image_loader_client_unittest.m") { |
| deps = [ |
| ":image_loader_client", |
| ":load_image_request", |
| "//chrome/test/data/webui:chai_assert", |
| "//ui/file_manager/file_manager/common/js:test_error_reporting", |
| ] |
| } |
| |
| js_library("piex_loader") { |
| externs_list = [ "//ui/file_manager/file_manager/externs/platform.js" ] |
| } |
| |
| js_library("image_request_task") { |
| deps = [ |
| ":cache", |
| ":image_loader_util", |
| ":load_image_request", |
| ":piex_loader", |
| "//ui/file_manager/file_manager/common/js:file_type", |
| "//ui/file_manager/file_manager/foreground/js/metadata:image_orientation", |
| "//ui/webui/resources/js:assert.m", |
| ] |
| } |
| |
| js_library("scheduler") { |
| deps = [ ":image_request_task" ] |
| } |
| |
| js_unittest("scheduler_unittest.m") { |
| deps = [ |
| ":image_request_task", |
| ":scheduler", |
| "//chrome/test/data/webui:chai_assert", |
| ] |
| } |
| |
| js_test_gen_html("js_test_gen_html_modules") { |
| deps = [ |
| ":cache_unittest.m", |
| ":image_loader_client_unittest.m", |
| ":image_loader_unittest.m", |
| ":scheduler_unittest.m", |
| ] |
| |
| closure_flags = strict_error_checking_closure_args + [ |
| "js_module_root=./gen/ui", |
| "js_module_root=../../ui/file_manager/", |
| "js_module_root=./gen/ui/file_manager/", |
| "browser_resolver_prefix_replacements=\"chrome://test/=./\"", |
| "browser_resolver_prefix_replacements=\"chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj/=./file_manager/\"", |
| ] |
| } |
| |
| group("closure_compile") { |
| testonly = true |
| deps = [ |
| ":closure_compile_jsmodules", |
| ":js_test_gen_html_modules_type_check_auto", |
| ] |
| } |
| |
| group("js_modules") { |
| deps = [ |
| ":cache", |
| ":image_loader", |
| ":image_loader_client", |
| ":image_loader_util", |
| ":image_request_task", |
| ":load_image_request", |
| ":piex_loader", |
| ":scheduler", |
| ] |
| } |
| |
| preprocess_folder = |
| rebase_path("$target_gen_dir/../preprocessed/image_loader", 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 = "image_loader" |
| |
| input = preprocess_folder |
| js_module_in_files = [ "background.m.js" ] |
| |
| js_out_files = [ "background.m.rollup.js" ] |
| |
| external_paths = [ |
| "chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj|$files_app_path", |
| "chrome-extension://pmfjbimdmchhbnneeidfognadeopoehp|$image_loader_path", |
| ] |
| |
| deps = [ |
| ":background.m", |
| "//ui/file_manager:preprocess_generated", |
| "//ui/file_manager:preprocess_static", |
| "//ui/webui/resources:preprocess", |
| ] |
| } |