chore: active nav item state, fix footer on mobile (#359)

This commit is contained in:
Pascal Jufer 2023-09-26 00:21:30 +02:00 committed by GitHub
parent 78376407b5
commit de8ba37023
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 214 additions and 329 deletions

View file

@ -103,7 +103,7 @@ const Container = styled.div`
display: block;
margin-top: 110px;
padding-top: 30px;
margin: 100px -50px -50px -50px; /* not ideal. To fix removing padding from body.*/
margin-top: 100px;
padding: 84px 12%;
background-color: var(--g7);
align-items: center;

View file

@ -1,12 +1,21 @@
import React from 'react';
import styled from 'styled-components';
import { media } from '../lib/responsive';
import { GA } from './GA';
export interface LayoutProps {}
export function Layout({ children }: React.PropsWithChildren<LayoutProps>) {
return (
<div>
<Container>
<GA />
{children}
</div>
</Container>
);
}
const Container = styled.div`
padding: 50px 30px;
${media.lg} {
padding: 30px 50px 50px 50px;
}
`;

View file

@ -1,4 +1,5 @@
import Link from 'next/link';
import { useRouter } from 'next/router';
import React from 'react';
import styled from 'styled-components';
import { media } from '../lib/responsive';
@ -10,18 +11,27 @@ export interface NavigationItemProps {
style?: any;
}
export function NavigationItem({ href, children, style }: NavigationItemProps) {
const router = useRouter();
return (
<Link href={href} passHref legacyBehavior>
<NavigationItemContainer as={'a'} style={style}>
<NavigationItemContainer
as={'a'}
style={style}
$isActive={
href.slice(1)
? router.asPath.slice(1).startsWith(href.slice(1))
: router.asPath === href
}
>
{children}
</NavigationItemContainer>
</Link>
);
}
export const NavigationItemContainer = styled(Text15)`
export const NavigationItemContainer = styled(Text15)<{ $isActive?: boolean }>`
&&& {
font-weight: 700;
font-weight: ${(props) => (props.$isActive ? '700' : '500')};
font-size: 18px;
line-height: 28px;
text-decoration: none;
@ -40,7 +50,7 @@ export const NavigationItemContainer = styled(Text15)`
${media.lg} {
font-size: 15px;
line-height: 20px;
font-weight: 500;
font-weight: ${(props) => (props.$isActive ? '600' : '500')};
padding: 0;
color: var(--g0);
width: auto;

View file

@ -20,7 +20,7 @@
"@react-types/slider": "^3.6.1",
"@types/animejs": "^3.1.8",
"@types/lodash": "^4.14.199",
"@types/node": "^20.6.5",
"@types/node": "^20.7.0",
"@types/react": "^18.2.22",
"@types/react-dom": "^18.2.7",
"@types/react-window": "^1.8.5",
@ -28,11 +28,11 @@
"case": "^1.6.3",
"csvtojson": "^2.0.10",
"eslint": "^8.50.0",
"eslint-config-next": "^13.5.2",
"eslint-config-next": "^13.5.3",
"iconoir-react": "workspace:*",
"lodash": "^4.17.21",
"moment": "^2.29.4",
"next": "^13.5.2",
"next": "^13.5.3",
"next-mdx-remote": "^4.4.1",
"react": "^18.2.0",
"react-dom": "^18.2.0",

View file

@ -31,68 +31,71 @@ const Home: NextPage<HomeProps> = ({
numDownloads,
}) => {
return (
<Layout>
<SEO />
<Header currentVersion={currentVersion} />
<HeaderBackground>
<HeroHead>
<HeroText>Say hello</HeroText>
<HeroTextSecondary>to your new icon library.</HeroTextSecondary>
</HeroHead>
</HeaderBackground>
<HeroDescription>
A high-quality selection of free icons. No premium options or sign-ups.
Your new alternative to Noun Project, Flaticon, and all Figma resources.
Available in SVG, Font, React, React Native, Flutter, Figma and Framer.
</HeroDescription>
<StatsContainer>
<Stat
value={new Intl.NumberFormat('en-US').format(allIcons.length)}
description={
'icons available in this very moment, and theyre growing fast!'
}
/>
<Stat
value={'100%'}
description={
'free icons. Iconoir is open source and were ready for your help.'
}
/>
<Stat
value={new Intl.NumberFormat('en-US', { notation: 'compact' }).format(
numDownloads,
)}
description={
'downloads/month on React only. Iconoir also supports React Native, Flutter and CSS.'
}
/>
<Stat
value={new Intl.NumberFormat('en-US', { notation: 'compact' }).format(
numStars,
)}
description={
'people who starred the project on GitHub. Show your support and be one of them.'
}
/>
</StatsContainer>
<AvailableFor />
<SupportContainer>
<LargeButton
as={'a'}
href={SUPPORT_LINK}
target={'_blank'}
rel={'noreferrer'}
>
<span>Donate</span>
</LargeButton>
<Text18>
If you find Iconoir valuable for you, consider making a donation to
help us pursuing even bigger goals.
</Text18>
</SupportContainer>
<Explore allIcons={allIcons} />
<>
<Layout>
<SEO />
<Header currentVersion={currentVersion} />
<HeaderBackground>
<HeroHead>
<HeroText>Say hello</HeroText>
<HeroTextSecondary>to your new icon library.</HeroTextSecondary>
</HeroHead>
</HeaderBackground>
<HeroDescription>
A high-quality selection of free icons. No premium options or
sign-ups. Your new alternative to Noun Project, Flaticon, and all
Figma resources. Available in SVG, Font, React, React Native, Flutter,
Figma and Framer.
</HeroDescription>
<StatsContainer>
<Stat
value={new Intl.NumberFormat('en-US').format(allIcons.length)}
description={
'icons available in this very moment, and theyre growing fast!'
}
/>
<Stat
value={'100%'}
description={
'free icons. Iconoir is open source and were ready for your help.'
}
/>
<Stat
value={new Intl.NumberFormat('en-US', {
notation: 'compact',
}).format(numDownloads)}
description={
'downloads/month on React only. Iconoir also supports React Native, Flutter and CSS.'
}
/>
<Stat
value={new Intl.NumberFormat('en-US', {
notation: 'compact',
}).format(numStars)}
description={
'people who starred the project on GitHub. Show your support and be one of them.'
}
/>
</StatsContainer>
<AvailableFor />
<SupportContainer>
<LargeButton
as={'a'}
href={SUPPORT_LINK}
target={'_blank'}
rel={'noreferrer'}
>
<span>Donate</span>
</LargeButton>
<Text18>
If you find Iconoir valuable for you, consider making a donation to
help us pursuing even bigger goals.
</Text18>
</SupportContainer>
<Explore allIcons={allIcons} />
</Layout>
<Footer />
</Layout>
</>
);
};

View file

@ -1,5 +1,4 @@
:root {
/* Colors */
--black-40: rgba(0, 0, 0, 0.4);
--black-60: rgba(0, 0, 0, 0.6);
@ -7,33 +6,31 @@
--black: #000000;
--darker-gray: #484848;
--dark-gray: #626262;
--pink: #FFEBE4;
--blue: #E4F9FF;
--green: #E4FFE4;
--gray: #E7E7E7;
--gray-100: #CDCDD3;
--gray-200: #F9F9FA;
--g0: #1C2226;
--g1: #4F5D69;
--g4: #BCC9D2;
--g5: #E0E6EB;
--g6: #ECF0F4;
--g7: #F8FAFD;
--light-gray: #F2F2F2;
--lighter-gray: #F9F9F9;
--super-light-gray: #FBFBFB;
--pink: #ffebe4;
--blue: #e4f9ff;
--green: #e4ffe4;
--gray: #e7e7e7;
--gray-100: #cdcdd3;
--gray-200: #f9f9fa;
--g0: #1c2226;
--g1: #4f5d69;
--g4: #bcc9d2;
--g5: #e0e6eb;
--g6: #ecf0f4;
--g7: #f8fafd;
--light-gray: #f2f2f2;
--lighter-gray: #f9f9f9;
--super-light-gray: #fbfbfb;
--white-80: rgba(255, 255, 255, 0.8);
--white: #FFFFFF;
--accent: #1E5AF6;
--white: #ffffff;
--accent: #1e5af6;
--code-family: 'IBM Plex Mono', monospace;
--font-family: 'DM Sans', sans-serif;
}
body {
margin: 0;
padding: 50px 30px;
background: var(--white);
overflow-x: hidden;
}
@ -83,7 +80,7 @@ a {
z-index: 2000;
}
.carbon-img img{
.carbon-img img {
border-radius: 10px;
}
@ -92,16 +89,12 @@ a {
opacity: 1; /* Firefox */
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
color: var(--g1);
:-ms-input-placeholder {
/* Internet Explorer 10-11 */
color: var(--g1);
}
::-ms-input-placeholder { /* Microsoft Edge */
color: var(--g1);
}
@media (min-width: 1100px) {
body {
padding: 30px 50px 50px 50px;
}
::-ms-input-placeholder {
/* Microsoft Edge */
color: var(--g1);
}

View file

@ -84,8 +84,8 @@ importers:
specifier: ^4.14.199
version: 4.14.199
'@types/node':
specifier: ^20.6.5
version: 20.6.5
specifier: ^20.7.0
version: 20.7.0
'@types/react':
specifier: ^18.2.22
version: 18.2.22
@ -108,8 +108,8 @@ importers:
specifier: ^8.50.0
version: 8.50.0
eslint-config-next:
specifier: ^13.5.2
version: 13.5.2(eslint@8.50.0)(typescript@5.1.6)
specifier: ^13.5.3
version: 13.5.3(eslint@8.50.0)(typescript@5.1.6)
iconoir-react:
specifier: workspace:*
version: link:../packages/iconoir-react
@ -120,8 +120,8 @@ importers:
specifier: ^2.29.4
version: 2.29.4
next:
specifier: ^13.5.2
version: 13.5.2(@babel/core@7.22.20)(react-dom@18.2.0)(react@18.2.0)
specifier: ^13.5.3
version: 13.5.3(@babel/core@7.22.20)(react-dom@18.2.0)(react@18.2.0)
next-mdx-remote:
specifier: ^4.4.1
version: 4.4.1(react-dom@18.2.0)(react@18.2.0)
@ -2326,7 +2326,7 @@ packages:
dependencies:
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
'@types/node': 18.17.19
'@types/node': 20.6.5
jest-mock: 29.7.0
/@jest/fake-timers@29.7.0:
@ -2335,7 +2335,7 @@ packages:
dependencies:
'@jest/types': 29.6.3
'@sinonjs/fake-timers': 10.3.0
'@types/node': 18.17.19
'@types/node': 20.6.5
jest-message-util: 29.7.0
jest-mock: 29.7.0
jest-util: 29.7.0
@ -2352,7 +2352,7 @@ packages:
dependencies:
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
'@types/node': 18.17.19
'@types/node': 20.6.5
'@types/yargs': 15.0.15
chalk: 4.1.2
@ -2362,7 +2362,7 @@ packages:
dependencies:
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
'@types/node': 18.17.19
'@types/node': 20.6.5
'@types/yargs': 16.0.5
chalk: 4.1.2
@ -2373,7 +2373,7 @@ packages:
'@jest/schemas': 29.6.3
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
'@types/node': 18.17.19
'@types/node': 20.6.5
'@types/yargs': 17.0.24
chalk: 4.1.2
@ -2527,18 +2527,18 @@ packages:
undici: 5.25.2
dev: true
/@next/env@13.5.2:
resolution: {integrity: sha512-dUseBIQVax+XtdJPzhwww4GetTjlkRSsXeQnisIJWBaHsnxYcN2RGzsPHi58D6qnkATjnhuAtQTJmR1hKYQQPg==}
/@next/env@13.5.3:
resolution: {integrity: sha512-X4te86vsbjsB7iO4usY9jLPtZ827Mbx+WcwNBGUOIuswuTAKQtzsuoxc/6KLxCMvogKG795MhrR1LDhYgDvasg==}
dev: true
/@next/eslint-plugin-next@13.5.2:
resolution: {integrity: sha512-Ew8DOUerJYGRo8pI84SVwn9wxxx8sH92AanCXSkkLJM2W0RJEWy+BqWSCfrlA/3ZIczEl4l4o4lOeTGBPYfBJg==}
/@next/eslint-plugin-next@13.5.3:
resolution: {integrity: sha512-lbZOoEjzSuTtpk9UgV9rOmxYw+PsSfNR+00mZcInqooiDMZ1u+RqT1YQYLsEZPW1kumZoQe5+exkCBtZ2xn0uw==}
dependencies:
glob: 7.1.7
dev: true
/@next/swc-darwin-arm64@13.5.2:
resolution: {integrity: sha512-7eAyunAWq6yFwdSQliWMmGhObPpHTesiKxMw4DWVxhm5yLotBj8FCR4PXGkpRP2tf8QhaWuVba+/fyAYggqfQg==}
/@next/swc-darwin-arm64@13.5.3:
resolution: {integrity: sha512-6hiYNJxJmyYvvKGrVThzo4nTcqvqUTA/JvKim7Auaj33NexDqSNwN5YrrQu+QhZJCIpv2tULSHt+lf+rUflLSw==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
@ -2546,8 +2546,8 @@ packages:
dev: true
optional: true
/@next/swc-darwin-x64@13.5.2:
resolution: {integrity: sha512-WxXYWE7zF1ch8rrNh5xbIWzhMVas6Vbw+9BCSyZvu7gZC5EEiyZNJsafsC89qlaSA7BnmsDXVWQmc+s1feSYbQ==}
/@next/swc-darwin-x64@13.5.3:
resolution: {integrity: sha512-UpBKxu2ob9scbpJyEq/xPgpdrgBgN3aLYlxyGqlYX5/KnwpJpFuIHU2lx8upQQ7L+MEmz+fA1XSgesoK92ppwQ==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
@ -2555,8 +2555,8 @@ packages:
dev: true
optional: true
/@next/swc-linux-arm64-gnu@13.5.2:
resolution: {integrity: sha512-URSwhRYrbj/4MSBjLlefPTK3/tvg95TTm6mRaiZWBB6Za3hpHKi8vSdnCMw5D2aP6k0sQQIEG6Pzcfwm+C5vrg==}
/@next/swc-linux-arm64-gnu@13.5.3:
resolution: {integrity: sha512-5AzM7Yx1Ky+oLY6pHs7tjONTF22JirDPd5Jw/3/NazJ73uGB05NqhGhB4SbeCchg7SlVYVBeRMrMSZwJwq/xoA==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
@ -2564,8 +2564,8 @@ packages:
dev: true
optional: true
/@next/swc-linux-arm64-musl@13.5.2:
resolution: {integrity: sha512-HefiwAdIygFyNmyVsQeiJp+j8vPKpIRYDlmTlF9/tLdcd3qEL/UEBswa1M7cvO8nHcr27ZTKXz5m7dkd56/Esg==}
/@next/swc-linux-arm64-musl@13.5.3:
resolution: {integrity: sha512-A/C1shbyUhj7wRtokmn73eBksjTM7fFQoY2v/0rTM5wehpkjQRLOXI8WJsag2uLhnZ4ii5OzR1rFPwoD9cvOgA==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
@ -2573,8 +2573,8 @@ packages:
dev: true
optional: true
/@next/swc-linux-x64-gnu@13.5.2:
resolution: {integrity: sha512-htGVVroW0tdHgMYwKWkxWvVoG2RlAdDXRO1RQxYDvOBQsaV0nZsgKkw0EJJJ3urTYnwKskn/MXm305cOgRxD2w==}
/@next/swc-linux-x64-gnu@13.5.3:
resolution: {integrity: sha512-FubPuw/Boz8tKkk+5eOuDHOpk36F80rbgxlx4+xty/U71e3wZZxVYHfZXmf0IRToBn1Crb8WvLM9OYj/Ur815g==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
@ -2582,8 +2582,8 @@ packages:
dev: true
optional: true
/@next/swc-linux-x64-musl@13.5.2:
resolution: {integrity: sha512-UBD333GxbHVGi7VDJPPDD1bKnx30gn2clifNJbla7vo5nmBV+x5adyARg05RiT9amIpda6yzAEEUu+s774ldkw==}
/@next/swc-linux-x64-musl@13.5.3:
resolution: {integrity: sha512-DPw8nFuM1uEpbX47tM3wiXIR0Qa+atSzs9Q3peY1urkhofx44o7E1svnq+a5Q0r8lAcssLrwiM+OyJJgV/oj7g==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
@ -2591,8 +2591,8 @@ packages:
dev: true
optional: true
/@next/swc-win32-arm64-msvc@13.5.2:
resolution: {integrity: sha512-Em9ApaSFIQnWXRT3K6iFnr9uBXymixLc65Xw4eNt7glgH0eiXpg+QhjmgI2BFyc7k4ZIjglfukt9saNpEyolWA==}
/@next/swc-win32-arm64-msvc@13.5.3:
resolution: {integrity: sha512-zBPSP8cHL51Gub/YV8UUePW7AVGukp2D8JU93IHbVDu2qmhFAn9LWXiOOLKplZQKxnIPUkJTQAJDCWBWU4UWUA==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
@ -2600,8 +2600,8 @@ packages:
dev: true
optional: true
/@next/swc-win32-ia32-msvc@13.5.2:
resolution: {integrity: sha512-TBACBvvNYU+87X0yklSuAseqdpua8m/P79P0SG1fWUvWDDA14jASIg7kr86AuY5qix47nZLEJ5WWS0L20jAUNw==}
/@next/swc-win32-ia32-msvc@13.5.3:
resolution: {integrity: sha512-ONcL/lYyGUj4W37D4I2I450SZtSenmFAvapkJQNIJhrPMhzDU/AdfLkW98NvH1D2+7FXwe7yclf3+B7v28uzBQ==}
engines: {node: '>= 10'}
cpu: [ia32]
os: [win32]
@ -2609,8 +2609,8 @@ packages:
dev: true
optional: true
/@next/swc-win32-x64-msvc@13.5.2:
resolution: {integrity: sha512-LfTHt+hTL8w7F9hnB3H4nRasCzLD/fP+h4/GUVBTxrkMJOnh/7OZ0XbYDKO/uuWwryJS9kZjhxcruBiYwc5UDw==}
/@next/swc-win32-x64-msvc@13.5.3:
resolution: {integrity: sha512-2Vz2tYWaLqJvLcWbbTlJ5k9AN6JD7a5CN2pAeIzpbecK8ZF/yobA39cXtv6e+Z8c5UJuVOmaTldEAIxvsIux/Q==}
engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
@ -3523,11 +3523,11 @@ packages:
resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==}
dev: true
/@types/node@18.17.19:
resolution: {integrity: sha512-+pMhShR3Or5GR0/sp4Da7FnhVmTalWm81M6MkEldbwjETSaPalw138Z4KdpQaistvqQxLB7Cy4xwYdxpbSOs9Q==}
/@types/node@20.6.5:
resolution: {integrity: sha512-2qGq5LAOTh9izcc0+F+dToFigBWiK1phKPt7rNhOqJSr35y8rlIBjDwGtFSgAI6MGIhjwOVNSQZVdJsZJ2uR1w==}
/@types/node@20.7.0:
resolution: {integrity: sha512-zI22/pJW2wUZOVyguFaUL1HABdmSVxpXrzIqkjsHmyUjNhPoWM1CKfvVuXfetHhIok4RY573cqS0mZ1SJEnoTg==}
dev: true
/@types/prop-types@15.7.7:
@ -3982,9 +3982,9 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
get-intrinsic: 1.1.3
define-properties: 1.2.1
es-abstract: 1.22.2
get-intrinsic: 1.2.1
is-string: 1.0.7
dev: true
@ -4021,8 +4021,8 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
define-properties: 1.2.1
es-abstract: 1.22.2
es-shim-unscopables: 1.0.0
dev: true
@ -4031,8 +4031,8 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
define-properties: 1.2.1
es-abstract: 1.22.2
es-shim-unscopables: 1.0.0
dev: true
@ -4040,10 +4040,10 @@ packages:
resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
define-properties: 1.2.1
es-abstract: 1.22.2
es-shim-unscopables: 1.0.0
get-intrinsic: 1.1.3
get-intrinsic: 1.2.1
dev: true
/arraybuffer.prototype.slice@1.0.2:
@ -4328,7 +4328,7 @@ packages:
resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
dependencies:
function-bind: 1.1.1
get-intrinsic: 1.1.3
get-intrinsic: 1.2.1
dev: true
/caller-callsite@2.0.0:
@ -4828,9 +4828,9 @@ packages:
dependencies:
call-bind: 1.0.2
es-get-iterator: 1.1.3
get-intrinsic: 1.1.3
get-intrinsic: 1.2.1
is-arguments: 1.1.1
is-array-buffer: 3.0.1
is-array-buffer: 3.0.2
is-date-object: 1.0.5
is-regex: 1.1.4
is-shared-array-buffer: 1.0.2
@ -4838,11 +4838,11 @@ packages:
object-is: 1.1.5
object-keys: 1.1.1
object.assign: 4.1.4
regexp.prototype.flags: 1.4.3
regexp.prototype.flags: 1.5.1
side-channel: 1.0.4
which-boxed-primitive: 1.0.2
which-collection: 1.0.1
which-typed-array: 1.1.9
which-typed-array: 1.1.11
dev: true
/deep-is@0.1.4:
@ -4890,14 +4890,6 @@ packages:
engines: {node: '>=12'}
dev: true
/define-properties@1.1.4:
resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==}
engines: {node: '>= 0.4'}
dependencies:
has-property-descriptors: 1.0.0
object-keys: 1.1.1
dev: true
/define-properties@1.2.1:
resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
engines: {node: '>= 0.4'}
@ -5090,45 +5082,6 @@ packages:
accepts: 1.3.8
escape-html: 1.0.3
/es-abstract@1.21.1:
resolution: {integrity: sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==}
engines: {node: '>= 0.4'}
dependencies:
available-typed-arrays: 1.0.5
call-bind: 1.0.2
es-set-tostringtag: 2.0.1
es-to-primitive: 1.2.1
function-bind: 1.1.1
function.prototype.name: 1.1.5
get-intrinsic: 1.1.3
get-symbol-description: 1.0.0
globalthis: 1.0.3
gopd: 1.0.1
has: 1.0.3
has-property-descriptors: 1.0.0
has-proto: 1.0.1
has-symbols: 1.0.3
internal-slot: 1.0.4
is-array-buffer: 3.0.1
is-callable: 1.2.7
is-negative-zero: 2.0.2
is-regex: 1.1.4
is-shared-array-buffer: 1.0.2
is-string: 1.0.7
is-typed-array: 1.1.10
is-weakref: 1.0.2
object-inspect: 1.12.3
object-keys: 1.1.1
object.assign: 4.1.4
regexp.prototype.flags: 1.4.3
safe-regex-test: 1.0.0
string.prototype.trimend: 1.0.6
string.prototype.trimstart: 1.0.6
typed-array-length: 1.0.4
unbox-primitive: 1.0.2
which-typed-array: 1.1.9
dev: true
/es-abstract@1.22.2:
resolution: {integrity: sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==}
engines: {node: '>= 0.4'}
@ -5178,7 +5131,7 @@ packages:
resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==}
dependencies:
call-bind: 1.0.2
get-intrinsic: 1.1.3
get-intrinsic: 1.2.1
has-symbols: 1.0.3
is-arguments: 1.1.1
is-map: 2.0.2
@ -5299,8 +5252,8 @@ packages:
source-map: 0.6.1
dev: true
/eslint-config-next@13.5.2(eslint@8.50.0)(typescript@5.1.6):
resolution: {integrity: sha512-kCF7k7fHBtFtxfP6J6AP6Mo0vW3CrFeoIuoZ7NHGIvLFc/RUaIspJ6inO/R33zE1o9t/lbJgTnsqnRB++sxCUQ==}
/eslint-config-next@13.5.3(eslint@8.50.0)(typescript@5.1.6):
resolution: {integrity: sha512-VN2qbCpq2DMWgs7SVF8KTmc8bVaWz3s4nmcFqRLs7PNBt5AXejOhJuZ4zg2sCEHOvz5RvqdwLeI++NSCV6qHVg==}
peerDependencies:
eslint: ^7.23.0 || ^8.0.0
typescript: '>=3.3.1'
@ -5308,7 +5261,7 @@ packages:
typescript:
optional: true
dependencies:
'@next/eslint-plugin-next': 13.5.2
'@next/eslint-plugin-next': 13.5.3
'@rushstack/eslint-patch': 1.4.0
'@typescript-eslint/parser': 5.48.2(eslint@8.50.0)(typescript@5.1.6)
eslint: 8.50.0
@ -5880,16 +5833,6 @@ packages:
/function-bind@1.1.1:
resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
/function.prototype.name@1.1.5:
resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==}
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
functions-have-names: 1.2.3
dev: true
/function.prototype.name@1.1.6:
resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
engines: {node: '>= 0.4'}
@ -5924,14 +5867,6 @@ packages:
resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
engines: {node: 6.* || 8.* || >= 10.*}
/get-intrinsic@1.1.3:
resolution: {integrity: sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==}
dependencies:
function-bind: 1.1.1
has: 1.0.3
has-symbols: 1.0.3
dev: true
/get-intrinsic@1.2.1:
resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==}
dependencies:
@ -5955,7 +5890,7 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
get-intrinsic: 1.1.3
get-intrinsic: 1.2.1
dev: true
/get-tsconfig@4.3.0:
@ -6056,7 +5991,7 @@ packages:
/gopd@1.0.1:
resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
dependencies:
get-intrinsic: 1.1.3
get-intrinsic: 1.2.1
dev: true
/graceful-fs@4.2.10:
@ -6352,15 +6287,6 @@ packages:
resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==}
dev: true
/internal-slot@1.0.4:
resolution: {integrity: sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==}
engines: {node: '>= 0.4'}
dependencies:
get-intrinsic: 1.1.3
has: 1.0.3
side-channel: 1.0.4
dev: true
/internal-slot@1.0.5:
resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==}
engines: {node: '>= 0.4'}
@ -6406,14 +6332,6 @@ packages:
has-tostringtag: 1.0.0
dev: true
/is-array-buffer@3.0.1:
resolution: {integrity: sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==}
dependencies:
call-bind: 1.0.2
get-intrinsic: 1.1.3
is-typed-array: 1.1.10
dev: true
/is-array-buffer@3.0.2:
resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==}
dependencies:
@ -6649,17 +6567,6 @@ packages:
has-symbols: 1.0.3
dev: true
/is-typed-array@1.1.10:
resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==}
engines: {node: '>= 0.4'}
dependencies:
available-typed-arrays: 1.0.5
call-bind: 1.0.2
for-each: 0.3.3
gopd: 1.0.1
has-tostringtag: 1.0.0
dev: true
/is-typed-array@1.1.12:
resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==}
engines: {node: '>= 0.4'}
@ -6689,7 +6596,7 @@ packages:
resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==}
dependencies:
call-bind: 1.0.2
get-intrinsic: 1.1.3
get-intrinsic: 1.2.1
dev: true
/is-wsl@1.1.0:
@ -6734,7 +6641,7 @@ packages:
'@jest/environment': 29.7.0
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
'@types/node': 18.17.19
'@types/node': 20.6.5
jest-mock: 29.7.0
jest-util: 29.7.0
@ -6761,7 +6668,7 @@ packages:
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
'@jest/types': 29.6.3
'@types/node': 18.17.19
'@types/node': 20.6.5
jest-util: 29.7.0
/jest-regex-util@27.5.1:
@ -6773,7 +6680,7 @@ packages:
engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
dependencies:
'@jest/types': 27.5.1
'@types/node': 18.17.19
'@types/node': 20.6.5
chalk: 4.1.2
ci-info: 3.8.0
graceful-fs: 4.2.11
@ -6784,10 +6691,10 @@ packages:
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
'@jest/types': 29.6.3
'@types/node': 18.17.19
'@types/node': 20.6.5
chalk: 4.1.2
ci-info: 3.8.0
graceful-fs: 4.2.10
graceful-fs: 4.2.11
picomatch: 2.3.1
/jest-validate@29.7.0:
@ -6805,7 +6712,7 @@ packages:
resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
engines: {node: '>= 10.13.0'}
dependencies:
'@types/node': 18.17.19
'@types/node': 20.6.5
merge-stream: 2.0.0
supports-color: 8.1.1
@ -8196,8 +8103,8 @@ packages:
- supports-color
dev: true
/next@13.5.2(@babel/core@7.22.20)(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-vog4UhUaMYAzeqfiAAmgB/QWLW7p01/sg+2vn6bqc/CxHFYizMzLv6gjxKzl31EVFkfl/F+GbxlKizlkTE9RdA==}
/next@13.5.3(@babel/core@7.22.20)(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-4Nt4HRLYDW/yRpJ/QR2t1v63UOMS55A38dnWv3UDOWGezuY0ZyFO1ABNbD7mulVzs9qVhgy2+ppjdsANpKP1mg==}
engines: {node: '>=16.14.0'}
hasBin: true
peerDependencies:
@ -8211,7 +8118,7 @@ packages:
sass:
optional: true
dependencies:
'@next/env': 13.5.2
'@next/env': 13.5.3
'@swc/helpers': 0.5.2
busboy: 1.6.0
caniuse-lite: 1.0.30001538
@ -8222,15 +8129,15 @@ packages:
watchpack: 2.4.0
zod: 3.21.4
optionalDependencies:
'@next/swc-darwin-arm64': 13.5.2
'@next/swc-darwin-x64': 13.5.2
'@next/swc-linux-arm64-gnu': 13.5.2
'@next/swc-linux-arm64-musl': 13.5.2
'@next/swc-linux-x64-gnu': 13.5.2
'@next/swc-linux-x64-musl': 13.5.2
'@next/swc-win32-arm64-msvc': 13.5.2
'@next/swc-win32-ia32-msvc': 13.5.2
'@next/swc-win32-x64-msvc': 13.5.2
'@next/swc-darwin-arm64': 13.5.3
'@next/swc-darwin-x64': 13.5.3
'@next/swc-linux-arm64-gnu': 13.5.3
'@next/swc-linux-arm64-musl': 13.5.3
'@next/swc-linux-x64-gnu': 13.5.3
'@next/swc-linux-x64-musl': 13.5.3
'@next/swc-win32-arm64-msvc': 13.5.3
'@next/swc-win32-ia32-msvc': 13.5.3
'@next/swc-win32-x64-msvc': 13.5.3
transitivePeerDependencies:
- '@babel/core'
- babel-plugin-macros
@ -8332,7 +8239,7 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
define-properties: 1.2.1
dev: true
/object-keys@1.1.1:
@ -8345,7 +8252,7 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
define-properties: 1.2.1
has-symbols: 1.0.3
object-keys: 1.1.1
dev: true
@ -8355,8 +8262,8 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
define-properties: 1.2.1
es-abstract: 1.22.2
dev: true
/object.fromentries@2.0.6:
@ -8364,8 +8271,8 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
define-properties: 1.2.1
es-abstract: 1.22.2
dev: true
/object.groupby@1.0.1:
@ -8380,8 +8287,8 @@ packages:
/object.hasown@1.1.2:
resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==}
dependencies:
define-properties: 1.1.4
es-abstract: 1.21.1
define-properties: 1.2.1
es-abstract: 1.22.2
dev: true
/object.values@1.1.6:
@ -8389,8 +8296,8 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
define-properties: 1.2.1
es-abstract: 1.22.2
dev: true
/on-finished@2.3.0:
@ -8982,15 +8889,6 @@ packages:
dependencies:
'@babel/runtime': 7.22.15
/regexp.prototype.flags@1.4.3:
resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==}
engines: {node: '>= 0.4'}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
functions-have-names: 1.2.3
dev: true
/regexp.prototype.flags@1.5.1:
resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==}
engines: {node: '>= 0.4'}
@ -9224,7 +9122,7 @@ packages:
resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==}
dependencies:
call-bind: 1.0.2
get-intrinsic: 1.1.3
get-intrinsic: 1.2.1
is-regex: 1.1.4
dev: true
@ -9342,7 +9240,7 @@ packages:
resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
dependencies:
call-bind: 1.0.2
get-intrinsic: 1.1.3
get-intrinsic: 1.2.1
object-inspect: 1.12.3
dev: true
@ -9456,7 +9354,7 @@ packages:
resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==}
engines: {node: '>= 0.4'}
dependencies:
internal-slot: 1.0.4
internal-slot: 1.0.5
dev: true
/streamsearch@1.1.0:
@ -9490,12 +9388,12 @@ packages:
resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
get-intrinsic: 1.1.3
define-properties: 1.2.1
es-abstract: 1.22.2
get-intrinsic: 1.2.1
has-symbols: 1.0.3
internal-slot: 1.0.4
regexp.prototype.flags: 1.4.3
internal-slot: 1.0.5
regexp.prototype.flags: 1.5.1
side-channel: 1.0.4
dev: true
@ -9508,14 +9406,6 @@ packages:
es-abstract: 1.22.2
dev: true
/string.prototype.trimend@1.0.6:
resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
dev: true
/string.prototype.trimend@1.0.7:
resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==}
dependencies:
@ -9524,14 +9414,6 @@ packages:
es-abstract: 1.22.2
dev: true
/string.prototype.trimstart@1.0.6:
resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==}
dependencies:
call-bind: 1.0.2
define-properties: 1.1.4
es-abstract: 1.21.1
dev: true
/string.prototype.trimstart@1.0.7:
resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==}
dependencies:
@ -9910,7 +9792,7 @@ packages:
dependencies:
call-bind: 1.0.2
for-each: 0.3.3
is-typed-array: 1.1.10
is-typed-array: 1.1.12
dev: true
/typescript@5.0.4:
@ -10432,7 +10314,7 @@ packages:
resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==}
engines: {node: '>= 0.4'}
dependencies:
function.prototype.name: 1.1.5
function.prototype.name: 1.1.6
has-tostringtag: 1.0.0
is-async-function: 2.0.0
is-date-object: 1.0.5
@ -10443,7 +10325,7 @@ packages:
isarray: 2.0.5
which-boxed-primitive: 1.0.2
which-collection: 1.0.1
which-typed-array: 1.1.9
which-typed-array: 1.1.11
dev: true
/which-collection@1.0.1:
@ -10469,18 +10351,6 @@ packages:
has-tostringtag: 1.0.0
dev: true
/which-typed-array@1.1.9:
resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==}
engines: {node: '>= 0.4'}
dependencies:
available-typed-arrays: 1.0.5
call-bind: 1.0.2
for-each: 0.3.3
gopd: 1.0.1
has-tostringtag: 1.0.0
is-typed-array: 1.1.10
dev: true
/which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}