import isEqual from 'fast-deep-equal'; import { memo, useMemo } from 'react'; import { FlexboxProps } from 'react-layout-kit'; import { ApiHeader as Header } from '@/components/ApiHeader'; import { apiHeaderSelectors, useSiteStore } from '@/store'; import BundlephobiaFilled from './BundlephobiaFilled'; import Graph from './Graph'; import NpmFilled from './NpmFilled'; import PackagePhobia from './PackagePhobia'; import Unpkg from './Unpkg'; const ApiHeader = memo(({ ...rest }) => { const props = useSiteStore(apiHeaderSelectors.apiHeader, isEqual); const { pkg } = props; const packages = useMemo(() => { const packageURL = encodeURIComponent(String(pkg)); return [ { children: 'NPM', icon: , label: 'NPM', url: `https://www.npmjs.com/package/${packageURL}`, }, { children: 'UNPKG', icon: , label: 'Check package files', url: `https://unpkg.com/browse/${packageURL}/`, }, { children: 'BundlePhobia', icon: , label: 'Check bundle size', url: `https://bundlephobia.com/package/${packageURL}`, }, { children: 'PackagePhobia', icon: , label: 'Check package size', url: `https://packagephobia.com/result?p=${packageURL}`, }, { children: 'Anvaka Graph', icon: , label: 'Dependence graph', url: `https://npm.anvaka.com/#/view/2d/${encodeURIComponent(packageURL)}`, }, ]; }, [pkg]); return
; }); export default ApiHeader;