You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

74 lines
2.7 KiB

/**
* @file
* Custom behavior to swap the sidebar toggle icon for a search icon.
*/
(function (Drupal, once) {
Drupal.behaviors.customSearchIconSwap = {
attach: function (context, settings) {
// Use 'once' to ensure we only run this once per element.
// We target the specific Material UI icon inside the 'Toggle sidebar' button.
const elements = once(
"search-icon-swap",
'button[aria-label="Toggle sidebar"] svg.MuiSvgIcon-root',
context
);
elements.forEach(function (svg) {
const path = svg.querySelector("path");
const searchPathData =
"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z";
if (path) {
path.setAttribute("d", searchPathData);
}
});
},
};
})(Drupal, once);
//This code waits for the viewer to load with the search panel open, then it closes the search 'companion window'
//leaving the search icon visible. This combo is not available in the configs
// window.addEventListener("load", () => {
// const tryInit = (attempts = 0) => {
// const searchPanel = document.querySelector("div.mirador31");
// const searchPanelToggle = document.querySelector("button.mirador34");
//
// if (!searchPanel || !searchPanelToggle) {
// if (attempts < 20) setTimeout(() => tryInit(attempts + 1), 250);
// return;
// }
//
// searchPanel.style.display = "none";
// searchPanel.style.visibility = "hidden";
// searchPanelToggle.setAttribute("aria-expanded", "false");
// searchPanelToggle.setAttribute("aria-label", "Expand sidebar");
// searchPanelToggle.setAttribute("title", "Expand sidebar");
// searchPanelToggle.click();
// };
//
// tryInit();
// });
/*
window.addEventListener("load", (event) => {
// find elements
const searchPanel = document.querySelector("div.mirador31");
const searchPanelToggle = document.querySelector("button.mirador34");
// const searchPanelIcon = document.querySelector("button.MuiButtonBase-root.MuiTab-root.mirador26 svg");
// hide the panel
searchPanel.style.display = "none";
searchPanel.style.transform = "translateX(0px)";
searchPanel.style.visibility = "hidden";
searchPanelToggle.setAttribute("aria-expanded", "false");
searchPanelToggle.setAttribute("aria-label", "Expand sidebar");
searchPanelToggle.setAttribute("title", "Expand sidebar");
//searchPanelIcon.style.fontSize = "2.7em";
//searchPanelIcon.style.marginTop = "21px";
//
//fake click
searchPanelToggle.click();
});
*/