blob: 3f646df8eaefcac913de0ac7a925a4eb7a84f634 [file] [log] [blame]
# Copyright 2018 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//chrome/common/features.gni")
import("//third_party/closure_compiler/compile_js.gni")
import("//tools/grit/preprocess_if_expr.gni")
import("//tools/polymer/html_to_js.gni")
import("//ui/webui/resources/tools/generate_grd.gni")
import("//ui/webui/resources/tools/optimize_webui.gni")
preprocess_folder = "preprocessed"
preprocess_manifest = "preprocessed_manifest.json"
preprocess_gen_manifest = "preprocessed_gen_manifest.json"
if (optimize_webui) {
build_manifest = "build_manifest.json"
optimize_webui("build") {
host = "internet-detail-dialog"
js_module_in_files = [ "internet_detail_dialog_container.js" ]
input = rebase_path("$target_gen_dir/$preprocess_folder", root_build_dir)
out_manifest = "$target_gen_dir/$build_manifest"
excludes = [
"chrome://resources/mojo/chromeos/services/network_config/public/mojom/cros_network_config.mojom-webui.js",
"chrome://resources/mojo/chromeos/services/network_config/public/mojom/network_types.mojom-webui.js",
"chrome://resources/mojo/services/network/public/mojom/ip_address.mojom-webui.js",
"chrome://resources/ash/common/network/mojo_interface_provider.js",
]
deps = [
":preprocess",
":preprocess_generated",
"//ui/webui/resources/cr_components/localized_link:build_ts",
"//ui/webui/resources/cr_elements:build_ts",
"//ui/webui/resources/mojo:library",
]
}
}
generate_grd("build_grd") {
input_files = [ "internet_detail_dialog_container.html" ]
input_files_base_dir = rebase_path(".", "//")
if (optimize_webui) {
deps = [ ":build" ]
resource_path_rewrites = [ "internet_detail_dialog_container.rollup.js|internet_detail_dialog_container.js" ]
manifest_files = [ "$target_gen_dir/$build_manifest" ]
} else {
deps = [
":preprocess",
":preprocess_generated",
]
manifest_files = [
"$target_gen_dir/$preprocess_manifest",
"$target_gen_dir/$preprocess_gen_manifest",
]
}
grd_prefix = "internet_detail_dialog"
out_grd = "$target_gen_dir/${grd_prefix}_resources.grd"
}
preprocess_if_expr("preprocess") {
out_folder = "$target_gen_dir/$preprocess_folder"
out_manifest = "$target_gen_dir/$preprocess_manifest"
in_files = [
"internet_detail_dialog_browser_proxy.js",
"internet_detail_dialog_container.js",
]
}
preprocess_if_expr("preprocess_generated") {
deps = [ ":web_components" ]
in_folder = target_gen_dir
out_folder = "$target_gen_dir/$preprocess_folder"
out_manifest = "$target_gen_dir/$preprocess_gen_manifest"
in_files = [ "internet_detail_dialog.js" ]
}
js_type_check("closure_compile") {
is_polymer3 = true
closure_flags = default_closure_args + mojom_js_args
deps = [
":internet_detail_dialog",
":internet_detail_dialog_browser_proxy",
]
}
js_library("internet_detail_dialog") {
deps = [
"//ash/webui/common/resources:assert",
"//ash/webui/common/resources:i18n_behavior",
"//ash/webui/common/resources/network:apn_list",
"//ash/webui/common/resources/network:cr_policy_network_behavior_mojo",
"//ash/webui/common/resources/network:network_listener_behavior",
"//ash/webui/common/resources/network:onc_mojo",
"//third_party/polymer/v3_0/components-chromium/iron-collapse:iron-collapse",
]
externs_list = [ "$externs_path/chrome_send.js" ]
}
js_library("internet_detail_dialog_browser_proxy") {
deps = [ "//ash/webui/common/resources:cr_deprecated" ]
externs_list = [ "$externs_path/chrome_send.js" ]
}
html_to_js("web_components") {
js_files = [ "internet_detail_dialog.js" ]
}