1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
# Copyright 2023 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//ui/webui/resources/tools/bundle_js.gni")
import("//ui/webui/resources/tools/minify_js.gni")
import("//ui/webui/webui_features.gni")
# Generate JS bundles for interstitials UIs. Always bundle regardless of the
# `optimize_webui` GN arg, as these UIs can't load any JS modules at runtime,
# since they are not proper WebUI pages and therefore are not backed up by any
# WebUIDataSource. Use `optimize_webui` only to decide whether to also minify.
group("bundle_js") {
if (optimize_webui) {
public_deps = [ ":minify_js" ]
} else {
public_deps = [ ":bundle_js_internal" ]
}
}
# Bundle without minifying.
group("bundle_js_internal") {
visibility = [
":bundle_js",
":minify_js",
]
public_deps = [
":bundle_js_interstitial_large",
":bundle_js_interstitial_webview_quiet",
":bundle_js_interstitial_webview_supervised_user",
]
}
if (optimize_webui) {
# Bundle and minify.
minify_js("minify_js") {
visibility = [ ":bundle_js" ]
in_folder = target_gen_dir
out_folder = "${target_gen_dir}/minified"
in_files = [
"interstitial_large/interstitial_large.rollup.js",
"interstitial_webview_quiet/interstitial_webview_quiet.rollup.js",
"interstitial_webview_supervised_user/interstitial_webview_supervised_user.rollup.js",
]
deps = [ ":bundle_js_internal" ]
}
}
shared_interstitials_path =
rebase_path("${root_gen_dir}/components/security_interstitials/core/",
root_build_dir)
bundle_js("bundle_js_interstitial_large") {
visibility = [ ":bundle_js_internal" ]
# Using a placeholder value for `host`. The value is ignored since the bundled
# code is not served from any host.
host = "_ignored_"
input = rebase_path(".", root_build_dir)
out_folder = "${target_gen_dir}/interstitial_large"
js_module_in_files = [ "interstitial_large.js" ]
external_paths = [ "chrome://interstitials/|$shared_interstitials_path" ]
deps = [
"../../common/resources:preprocess",
"//ui/webui/resources/js:build_ts",
]
}
bundle_js("bundle_js_interstitial_webview_quiet") {
visibility = [ ":bundle_js_internal" ]
# Using a placeholder value for `host`. The value is ignored since the bundled
# code is not served from any host.
host = "_ignored_"
input = rebase_path(".", root_build_dir)
out_folder = "${target_gen_dir}/interstitial_webview_quiet"
js_module_in_files = [ "interstitial_webview_quiet.js" ]
external_paths = [ "chrome://interstitials/|$shared_interstitials_path" ]
deps = [
"../../common/resources:preprocess",
"//ui/webui/resources/js:build_ts",
]
}
bundle_js("bundle_js_interstitial_webview_supervised_user") {
visibility = [ ":bundle_js_internal" ]
# Using a placeholder value for `host`. The value is ignored since the bundled
# code is not served from any host.
host = "_ignored_"
input = rebase_path(".", root_build_dir)
out_folder = "${target_gen_dir}/interstitial_webview_supervised_user"
js_module_in_files = [ "interstitial_webview_supervised_user.js" ]
external_paths = [ "chrome://interstitials/|$shared_interstitials_path" ]
deps = [
"../../common/resources:preprocess",
"//ui/webui/resources/js:build_ts",
]
}
|