blob: edf4f98dc26cf10c12642c22731cc99f89b9ecf1 [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("//third_party/closure_compiler/compile_js.gni")
import("//tools/polymer/html_to_js.gni")
import("../settings.gni")
js_type_check("closure_compile_module") {
is_polymer3 = true
closure_flags = settings_closure_flags
deps = [
":controlled_button",
":controlled_radio_button",
":extension_controlled_indicator",
":password_prompt_dialog",
":pref_control_behavior",
":settings_boolean_control_behavior",
":settings_checkbox",
":settings_dropdown_menu",
":settings_idle_load",
":settings_radio_group",
":settings_slider",
":settings_textarea",
":settings_toggle_button",
]
}
js_library("controlled_button") {
deps = [
":pref_control_behavior",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/cr_elements/policy:cr_policy_pref_behavior.m",
]
}
js_library("controlled_radio_button") {
deps = [
":pref_control_behavior",
"../prefs:pref_util",
"//third_party/polymer/v3_0/components-chromium/iron-a11y-keys-behavior:iron-a11y-keys-behavior",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/cr_elements/cr_radio_button:cr_radio_button_behavior.m",
"//ui/webui/resources/js:assert.m",
]
externs_list = [ "$externs_path/settings_private.js" ]
}
js_library("extension_controlled_indicator") {
deps = [
"..:extension_control_browser_proxy",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/js:assert.m",
"//ui/webui/resources/js:i18n_behavior.m",
]
}
js_library("password_prompt_dialog") {
deps = [
"..:router",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/cr_elements/cr_dialog:cr_dialog.m",
"//ui/webui/resources/cr_elements/cr_input:cr_input.m",
]
externs_list = chrome_extension_public_externs +
[ "$externs_path/quick_unlock_private.js" ]
}
js_library("pref_control_behavior") {
deps = [ "../prefs:prefs_types" ]
}
js_library("settings_boolean_control_behavior") {
deps = [
":pref_control_behavior",
"../prefs:prefs_types",
"//ui/webui/resources/cr_elements/policy:cr_policy_pref_behavior.m",
"//ui/webui/resources/js:assert.m",
]
}
js_library("settings_checkbox") {
deps = [
":settings_boolean_control_behavior",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
]
}
js_library("settings_dropdown_menu") {
deps = [
":pref_control_behavior",
"../prefs:pref_util",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/cr_elements/policy:cr_policy_indicator_behavior.m",
"//ui/webui/resources/cr_elements/policy:cr_policy_pref_behavior.m",
"//ui/webui/resources/js:assert.m",
"//ui/webui/resources/js:cr.m",
"//ui/webui/resources/js:load_time_data.m",
]
}
js_library("settings_idle_load") {
deps = [
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/js:assert.m",
]
}
js_library("settings_radio_group") {
deps = [
":pref_control_behavior",
"../prefs:pref_util",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/js:assert.m",
"//ui/webui/resources/js:cr.m",
]
}
js_library("settings_slider") {
deps = [
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/cr_elements/cr_slider:cr_slider.m",
"//ui/webui/resources/cr_elements/policy:cr_policy_pref_behavior.m",
"//ui/webui/resources/js:assert.m",
"//ui/webui/resources/js:load_time_data.m",
]
}
js_library("settings_textarea") {
deps = [
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
]
}
js_library("settings_toggle_button") {
deps = [
":settings_boolean_control_behavior",
"//third_party/polymer/v3_0/components-chromium/polymer:polymer_bundled",
"//ui/webui/resources/cr_elements/cr_toggle:cr_toggle.m",
]
}
html_to_js("web_components") {
js_files = [
"controlled_button.js",
"controlled_radio_button.js",
"extension_controlled_indicator.js",
"password_prompt_dialog.js",
"settings_checkbox.js",
"settings_dropdown_menu.js",
"settings_radio_group.js",
"settings_slider.js",
"settings_textarea.js",
"settings_toggle_button.js",
]
}