blob: 94826af7ae2d1af31da6dac44a1bdc20218bb89e [file] [log] [blame]
# 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/common/features.gni")
import("//third_party/closure_compiler/compile_js.gni")
import("//tools/grit/grit_rule.gni")
import("../optimize_webui.gni")
if (optimize_webui) {
print_preview_pak_file = "print_preview_resources.pak"
unpak_folder = "print_preview_resources.unpak"
optimize_webui("build") {
host = "print"
html_in_files = [ "print_preview_new.html" ]
html_out_files = [ "vulcanized.html" ]
html_out_files_polymer2 = [ "vulcanized.p2.html" ]
insert_in_head = "<base href=\"chrome://print\">"
input = rebase_path("$target_gen_dir/$unpak_folder", root_build_dir)
js_out_files = [ "crisper.js" ]
excludes = [ "pdf/pdf_scripting_api.js" ]
deps = [
":unpak",
]
}
unpak("unpak") {
pak_file = print_preview_pak_file
out_folder = unpak_folder
deps = [
":flattened_resources",
]
}
grit("flattened_resources") {
source = "print_preview_resources.grd"
# The .grd contains references to generated files.
source_is_generated = true
defines = chrome_grit_defines
outputs = [
"grit/print_preview_resources.h",
"grit/print_preview_resources_map.cc",
"grit/print_preview_resources_map.h",
print_preview_pak_file,
]
output_dir = "$root_gen_dir/chrome/browser/resources/print_preview"
}
}
group("closure_compile") {
deps = [
":print_preview_resources",
"data:closure_compile",
"new:closure_compile",
]
}
js_type_check("print_preview_resources") {
deps = [
":cloud_print_interface",
":cloud_print_interface_js",
":cloud_print_interface_manager",
":cloud_print_interface_native",
":metrics",
":native_layer",
":print_preview_utils",
]
}
js_library("print_preview_utils") {
}
js_library("metrics") {
deps = [
":native_layer",
"//ui/webui/resources/js:cr",
]
}
js_library("cloud_print_interface") {
deps = [
"//ui/webui/resources/js:cr",
"//ui/webui/resources/js/cr:event_target",
]
}
js_library("cloud_print_interface_manager") {
deps = [
":cloud_print_interface",
":cloud_print_interface_js",
":cloud_print_interface_native",
":native_layer",
]
}
js_library("cloud_print_interface_js") {
deps = [
":cloud_print_interface",
":native_layer",
"data:cloud_parsers",
"data:destination",
"data:document_info",
"data:invitation",
"//ui/webui/resources/js:cr",
"//ui/webui/resources/js/cr:event_target",
]
}
js_library("cloud_print_interface_native") {
deps = [
":cloud_print_interface",
]
}
js_library("native_layer") {
deps = [
"data:destination",
"data:measurement_system",
"//ui/webui/resources/js:cr",
]
}