Files
nym/explorer-nextjs/app/context/nav.tsx
Fouad e5f41731ae Explorer NextJS Rebuild (#4534)
* bootstrap next app + add overview page

* fix AssetList type

* fix up nav stuff

* Refactor Nav component and add network components pages

* Refactor WorldMap component and update TelegramIcon, GitHubIcon, NymVpnIcon, DiscordIcon, and TwitterIcon components

* add service providers page

* mixnodes page

* delegations page + use material react table for all tables

* nodes map page

* Refactor StyledLink component and remove unnecessary console.log statements

* Refactor ESLint configuration, remove unused dependencies, and update component imports

* update deps

* Refactor imports and update dependencies

* fix dark mode

* build single mixnode page

* build single gateway page

* Refactor handleOnDelegate function to use useCallback in mixnodes page.tsx

* Add defaults for constants

---------

Co-authored-by: Mark Sinclair <mmsinclair@users.noreply.github.com>
2024-05-16 16:12:06 +01:00

60 lines
1.3 KiB
TypeScript

'use client'
import * as React from 'react'
import { DelegateIcon } from '@/app/icons/DelevateSVG'
import { BIG_DIPPER } from '@/app/api/constants'
import { OverviewSVG } from '@/app/icons/OverviewSVG'
import { NodemapSVG } from '@/app/icons/NodemapSVG'
import { NetworkComponentsSVG } from '@/app/icons/NetworksSVG'
export type NavOptionType = {
url: string
title: string
Icon?: React.ReactNode
nested?: NavOptionType[]
isExpandedChild?: boolean
isExternal?: boolean
}
export const originalNavOptions: NavOptionType[] = [
{
url: '/',
title: 'Overview',
Icon: <OverviewSVG />,
},
{
url: '/network-components',
title: 'Network Components',
Icon: <NetworkComponentsSVG />,
nested: [
{
url: '/network-components/mixnodes',
title: 'Mixnodes',
},
{
url: '/network-components/gateways',
title: 'Gateways',
},
{
url: `${BIG_DIPPER}/validators`,
title: 'Validators',
isExternal: true,
},
{
url: '/network-components/service-providers',
title: 'Service Providers',
},
],
},
{
url: '/nodemap',
title: 'Nodemap',
Icon: <NodemapSVG />,
},
{
url: '/delegations',
title: 'Delegations',
Icon: <DelegateIcon sx={{ color: 'white' }} />,
},
]