mirror of
https://github.com/vercel/commerce.git
synced 2025-07-22 12:24:18 +00:00
.vscode
assets
components
auth
cart
checkout
common
Avatar
FeatureBar
Footer
Head
HomeAllProductsGrid
I18nWidget
Layout
Navbar
Navbar.module.css
Navbar.tsx
NavbarRoot.tsx
index.ts
Searchbar
SidebarLayout
UserNav
index.ts
icons
product
ui
wishlist
search.tsx
config
framework
lib
pages
public
.editorconfig
.env.template
.eslintrc
.gitignore
.prettierignore
.prettierrc
Dockerfile
README.md
codegen.bigcommerce.json
codegen.json
commerce.config.json
docker-compose.yml
global.d.ts
license.md
next-env.d.ts
next.config.js
package-lock.json
package.json
postcss.config.js
pre-push
swell-js.d.ts
tailwind.config.js
tsconfig.json
57 lines
1.5 KiB
TypeScript
57 lines
1.5 KiB
TypeScript
import { FC } from 'react'
|
|
import Link from 'next/link'
|
|
import s from './Navbar.module.css'
|
|
import NavbarRoot from './NavbarRoot'
|
|
import { Logo, Container } from '@components/ui'
|
|
import { Searchbar, UserNav } from '@components/common'
|
|
|
|
interface Link {
|
|
href: string
|
|
label: string
|
|
}
|
|
|
|
interface NavbarProps {
|
|
links?: Link[]
|
|
}
|
|
|
|
const Navbar: FC<NavbarProps> = ({ links }) => (
|
|
<NavbarRoot>
|
|
<Container>
|
|
<div className={s.nav}>
|
|
<div className="flex items-center flex-1">
|
|
<Link href="/">
|
|
<a className={`${s.logo} border-0`} aria-label="Logo" style={{ borderWidth: 0 }}>
|
|
<Logo />
|
|
</a>
|
|
</Link>
|
|
<nav className={s.navMenu}>
|
|
<Link href="/search">
|
|
<a className={s.link}>All</a>
|
|
</Link>
|
|
{links?.map((l) => (
|
|
<Link href={l.href} key={l.href}>
|
|
<a className={s.link}>{l.label}</a>
|
|
</Link>
|
|
))}
|
|
</nav>
|
|
</div>
|
|
{process.env.COMMERCE_SEARCH_ENABLED && (
|
|
<div className="justify-center flex-1 hidden lg:flex">
|
|
<Searchbar />
|
|
</div>
|
|
)}
|
|
<div className="flex items-center justify-end flex-1 space-x-8">
|
|
<UserNav />
|
|
</div>
|
|
</div>
|
|
{process.env.COMMERCE_SEARCH_ENABLED && (
|
|
<div className="flex pb-4 lg:px-6 lg:hidden">
|
|
<Searchbar id="mobile-search" />
|
|
</div>
|
|
)}
|
|
</Container>
|
|
</NavbarRoot>
|
|
)
|
|
|
|
export default Navbar
|