/home/edulekha/heavenbuildpro.com/wp-content/plugins/extendify/src/Assist/pages/parts/Nav.js
import { useLayoutEffect, useState } from '@wordpress/element'
import { __ } from '@wordpress/i18n'
import { Icon } from '@wordpress/icons'
import { colord } from 'colord'
export const Nav = ({ pages, activePage, setActivePage, hideMenu }) => {
const [activeBg, setActiveBg] = useState()
const [focusColor, setFocusColor] = useState()
useLayoutEffect(() => {
const documentStyles = window.getComputedStyle(document.body)
const bannerMain = documentStyles.getPropertyValue('--ext-banner-main')
const b = colord(bannerMain || '#000000')
const active = b.isDark() ? b.lighten(0.1) : b.darken(0.1)
setActiveBg(active.toHex())
const focus = b.isDark() ? b.lighten(0.3) : b.darken(0.3)
setFocusColor(focus.toHex())
}, [])
return (
<nav aria-labelledby="assist-landing-nav">
<h2 id="assist-landing-nav" className="sr-only">
{__('Assist navigation', 'extendify')}
</h2>
<ul className="lg:space-x-1 flex flex-wrap lg:flex-nowrap rounded-t-sm overflow-hidden m-0 p-0 px-1 pb-2 lg:pb-0 lg:gap-1.5 bg-white bg-opacity-5 lg:bg-transparent">
{pages.map((page) => (
<li
className="list-none m-0 p-0 py-1 w-full lg:w-auto"
key={page.slug}>
<button
onClick={() => {
setActivePage(page.slug)
hideMenu()
}}
type="button"
aria-current={activePage === page.slug}
style={{
'--tw-ring-color': focusColor,
'--ext-override': activeBg,
background:
activePage === page.slug
? activeBg
: 'transparent',
}}
className="rounded-sm w-full px-3 lg:px-2 lg:pr-3 py-2 text-sm text-banner-text whitespace-nowrap cursor-pointer flex gap-1.5 items-center hover:bg-override focus:ring-wp focus:ring-offset-1 focus:ring-offset-banner-main focus:outline-none transition-colors duration-200">
{page.icon && (
<Icon
icon={page.icon}
className="fill-current flex"
/>
)}
{page.name}
</button>
</li>
))}
</ul>
</nav>
)
}