Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
automatic1111
GitHub Repository: automatic1111/stable-diffusion-webui
Path: blob/master/javascript/settings.js
3055 views
1
let settingsExcludeTabsFromShowAll = {
2
settings_tab_defaults: 1,
3
settings_tab_sysinfo: 1,
4
settings_tab_actions: 1,
5
settings_tab_licenses: 1,
6
};
7
8
function settingsShowAllTabs() {
9
gradioApp().querySelectorAll('#settings > div').forEach(function(elem) {
10
if (settingsExcludeTabsFromShowAll[elem.id]) return;
11
12
elem.style.display = "block";
13
});
14
}
15
16
function settingsShowOneTab() {
17
gradioApp().querySelector('#settings_show_one_page').click();
18
}
19
20
onUiLoaded(function() {
21
var edit = gradioApp().querySelector('#settings_search');
22
var editTextarea = gradioApp().querySelector('#settings_search > label > input');
23
var buttonShowAllPages = gradioApp().getElementById('settings_show_all_pages');
24
var settings_tabs = gradioApp().querySelector('#settings div');
25
26
onEdit('settingsSearch', editTextarea, 250, function() {
27
var searchText = (editTextarea.value || "").trim().toLowerCase();
28
29
gradioApp().querySelectorAll('#settings > div[id^=settings_] div[id^=column_settings_] > *').forEach(function(elem) {
30
var visible = elem.textContent.trim().toLowerCase().indexOf(searchText) != -1;
31
elem.style.display = visible ? "" : "none";
32
});
33
34
if (searchText != "") {
35
settingsShowAllTabs();
36
} else {
37
settingsShowOneTab();
38
}
39
});
40
41
settings_tabs.insertBefore(edit, settings_tabs.firstChild);
42
settings_tabs.appendChild(buttonShowAllPages);
43
44
45
buttonShowAllPages.addEventListener("click", settingsShowAllTabs);
46
});
47
48
49
onOptionsChanged(function() {
50
if (gradioApp().querySelector('#settings .settings-category')) return;
51
52
var sectionMap = {};
53
gradioApp().querySelectorAll('#settings > div > button').forEach(function(x) {
54
sectionMap[x.textContent.trim()] = x;
55
});
56
57
opts._categories.forEach(function(x) {
58
var section = localization[x[0]] ?? x[0];
59
var category = localization[x[1]] ?? x[1];
60
61
var span = document.createElement('SPAN');
62
span.textContent = category;
63
span.className = 'settings-category';
64
65
var sectionElem = sectionMap[section];
66
if (!sectionElem) return;
67
68
sectionElem.parentElement.insertBefore(span, sectionElem);
69
});
70
});
71
72
73