| Server IP : 217.11.249.137 / Your IP : 216.73.216.54 Web Server : Apache System : FreeBSD triton.blueboard.cz 13.5-STABLE FreeBSD 13.5-STABLE stable/13-a3d32f9e6 GENERIC amd64 User : www ( 80) PHP Version : 8.0.30 Disable Function : ini_restore, show_source, socket_select, socket_create_listen, socket_create_pair, socket_listen, socket_strerror, shell_exec, proc_nice, proc_terminate, readlink, symlink, link, pfsocketopen, ini_alter, dl, pcntl_exec, pcntl_fork, pcntl_signal, pcntl_waitpid, pcntl_wexitstatus, pcntl_wifexited, pcntl_wifsignaled, pcntl_wifsignaled, pcntl_wifstoped, pcntl_wifstopsig, pcntl_wtermsig, socket_accept, socket_bind, socket_create, socket_create_listen, popen, zlib_decode MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /data/www/24781/extramagazin_cz/www/wp-includes/js/dist/script-modules/block-library/search/ |
Upload File : |
// packages/block-library/build-module/search/view.mjs
import {
store,
getContext,
getElement,
withSyncEvent
} from "@wordpress/interactivity";
var { actions } = store(
"core/search",
{
state: {
get ariaLabel() {
const {
isSearchInputVisible,
ariaLabelCollapsed,
ariaLabelExpanded
} = getContext();
return isSearchInputVisible ? ariaLabelExpanded : ariaLabelCollapsed;
},
get ariaControls() {
const { isSearchInputVisible, inputId } = getContext();
return isSearchInputVisible ? null : inputId;
},
get type() {
const { isSearchInputVisible } = getContext();
return isSearchInputVisible ? "submit" : "button";
},
get tabindex() {
const { isSearchInputVisible } = getContext();
return isSearchInputVisible ? "0" : "-1";
}
},
actions: {
openSearchInput: withSyncEvent((event) => {
const ctx = getContext();
const { ref } = getElement();
if (!ctx.isSearchInputVisible) {
event.preventDefault();
ctx.isSearchInputVisible = true;
ref.parentElement.querySelector("input").focus();
}
}),
closeSearchInput() {
const ctx = getContext();
ctx.isSearchInputVisible = false;
},
handleSearchKeydown: withSyncEvent((event) => {
const { ref } = getElement();
if (event?.key === "Escape") {
actions.closeSearchInput();
ref.querySelector("button").focus();
}
}),
handleSearchFocusout: withSyncEvent((event) => {
const { ref } = getElement();
if (!ref.contains(event.relatedTarget) && event.target !== window.document.activeElement) {
actions.closeSearchInput();
}
})
}
},
{ lock: true }
);