fix favicon and add zustand
This commit is contained in:
parent
9425304ba5
commit
8914d83166
4 changed files with 124 additions and 95 deletions
46
package-lock.json
generated
46
package-lock.json
generated
|
@ -10,7 +10,8 @@
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"next": "14.1.0",
|
"next": "14.1.0",
|
||||||
"react": "^18",
|
"react": "^18",
|
||||||
"react-dom": "^18"
|
"react-dom": "^18",
|
||||||
|
"zustand": "^4.5.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/node": "^20",
|
"@types/node": "^20",
|
||||||
|
@ -465,13 +466,13 @@
|
||||||
"version": "15.7.11",
|
"version": "15.7.11",
|
||||||
"resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz",
|
"resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz",
|
||||||
"integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==",
|
"integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==",
|
||||||
"dev": true
|
"devOptional": true
|
||||||
},
|
},
|
||||||
"node_modules/@types/react": {
|
"node_modules/@types/react": {
|
||||||
"version": "18.2.55",
|
"version": "18.2.55",
|
||||||
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.55.tgz",
|
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.55.tgz",
|
||||||
"integrity": "sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==",
|
"integrity": "sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==",
|
||||||
"dev": true,
|
"devOptional": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/prop-types": "*",
|
"@types/prop-types": "*",
|
||||||
"@types/scheduler": "*",
|
"@types/scheduler": "*",
|
||||||
|
@ -491,7 +492,7 @@
|
||||||
"version": "0.16.8",
|
"version": "0.16.8",
|
||||||
"resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz",
|
"resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz",
|
||||||
"integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==",
|
"integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==",
|
||||||
"dev": true
|
"devOptional": true
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/parser": {
|
"node_modules/@typescript-eslint/parser": {
|
||||||
"version": "6.21.0",
|
"version": "6.21.0",
|
||||||
|
@ -1217,7 +1218,7 @@
|
||||||
"version": "3.1.3",
|
"version": "3.1.3",
|
||||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
|
||||||
"integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
|
"integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
|
||||||
"dev": true
|
"devOptional": true
|
||||||
},
|
},
|
||||||
"node_modules/damerau-levenshtein": {
|
"node_modules/damerau-levenshtein": {
|
||||||
"version": "1.0.8",
|
"version": "1.0.8",
|
||||||
|
@ -4569,6 +4570,14 @@
|
||||||
"punycode": "^2.1.0"
|
"punycode": "^2.1.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/use-sync-external-store": {
|
||||||
|
"version": "1.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz",
|
||||||
|
"integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==",
|
||||||
|
"peerDependencies": {
|
||||||
|
"react": "^16.8.0 || ^17.0.0 || ^18.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/util-deprecate": {
|
"node_modules/util-deprecate": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
||||||
|
@ -4792,6 +4801,33 @@
|
||||||
"funding": {
|
"funding": {
|
||||||
"url": "https://github.com/sponsors/sindresorhus"
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"node_modules/zustand": {
|
||||||
|
"version": "4.5.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/zustand/-/zustand-4.5.0.tgz",
|
||||||
|
"integrity": "sha512-zlVFqS5TQ21nwijjhJlx4f9iGrXSL0o/+Dpy4txAP22miJ8Ti6c1Ol1RLNN98BMib83lmDH/2KmLwaNXpjrO1A==",
|
||||||
|
"dependencies": {
|
||||||
|
"use-sync-external-store": "1.2.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12.7.0"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": ">=16.8",
|
||||||
|
"immer": ">=9.0.6",
|
||||||
|
"react": ">=16.8"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"immer": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,19 +9,20 @@
|
||||||
"lint": "next lint"
|
"lint": "next lint"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"next": "14.1.0",
|
||||||
"react": "^18",
|
"react": "^18",
|
||||||
"react-dom": "^18",
|
"react-dom": "^18",
|
||||||
"next": "14.1.0"
|
"zustand": "^4.5.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"typescript": "^5",
|
|
||||||
"@types/node": "^20",
|
"@types/node": "^20",
|
||||||
"@types/react": "^18",
|
"@types/react": "^18",
|
||||||
"@types/react-dom": "^18",
|
"@types/react-dom": "^18",
|
||||||
"autoprefixer": "^10.0.1",
|
"autoprefixer": "^10.0.1",
|
||||||
|
"eslint": "^8",
|
||||||
|
"eslint-config-next": "14.1.0",
|
||||||
"postcss": "^8",
|
"postcss": "^8",
|
||||||
"tailwindcss": "^3.3.0",
|
"tailwindcss": "^3.3.0",
|
||||||
"eslint": "^8",
|
"typescript": "^5"
|
||||||
"eslint-config-next": "14.1.0"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB |
|
@ -8,95 +8,87 @@ const inter = Inter({ subsets: ['latin'] })
|
||||||
const zillaSlab = Zilla_Slab({ subsets: ['latin'], weight: ['500', '700'] })
|
const zillaSlab = Zilla_Slab({ subsets: ['latin'], weight: ['500', '700'] })
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: 'eeXiv^2',
|
title: 'eeXiv^2',
|
||||||
description: 'eeXiv just got better',
|
description: 'eeXiv just got better',
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function RootLayout({
|
export default function RootLayout({
|
||||||
children,
|
children,
|
||||||
}: Readonly<{
|
}: Readonly<{
|
||||||
children: React.ReactNode
|
children: React.ReactNode
|
||||||
}>) {
|
}>) {
|
||||||
return (
|
return (
|
||||||
<html lang="en">
|
<html lang='en'>
|
||||||
<body className={inter.className}>
|
<body className={inter.className}>
|
||||||
<div className={styles.header}>
|
<div className={styles.header}>
|
||||||
<img className={styles.wordmark} src="/eecs-wordmark.png" />
|
<img className={styles.wordmark} src='/eecs-wordmark.png' />
|
||||||
<p className={styles.contributions}>
|
<p className={styles.contributions}>
|
||||||
We gratefully acknowledge support from our volunteer
|
We gratefully acknowledge support from our volunteer peer reviewers,
|
||||||
peer reviewers, member institutions, and all{' '}
|
member institutions, and all{' '}
|
||||||
<Link
|
<Link
|
||||||
href="https://github.com/Team-1280/eeXiv/graphs/contributors"
|
href='https://github.com/Team-1280/eeXiv/graphs/contributors'
|
||||||
target="_blank"
|
target='_blank'
|
||||||
>
|
>
|
||||||
open-source contributors
|
open-source contributors
|
||||||
</Link>
|
</Link>
|
||||||
.
|
.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div className={styles.banner}>
|
<div className={styles.banner}>
|
||||||
<h1
|
<h1 className={[styles.title, zillaSlab.className].join(' ')}>
|
||||||
className={[styles.title, zillaSlab.className].join(
|
<Link href='./'>
|
||||||
' '
|
eeXiv<sup>2</sup>
|
||||||
)}
|
</Link>
|
||||||
>
|
</h1>
|
||||||
<Link href="./">
|
<div className={styles.search}>
|
||||||
eeXiv<sup>2</sup>
|
<input
|
||||||
</Link>
|
type='text'
|
||||||
</h1>
|
className={styles.searchBox}
|
||||||
<div className={styles.search}>
|
name='q'
|
||||||
<input
|
placeholder='Search...'
|
||||||
type="text"
|
/>
|
||||||
className={styles.searchBox}
|
<button type='submit' className={styles.searchButton}>
|
||||||
name="q"
|
Search
|
||||||
placeholder="Search..."
|
</button>
|
||||||
/>
|
</div>
|
||||||
<button type="submit" className={styles.searchButton}>
|
</div>
|
||||||
Search
|
{children}
|
||||||
</button>
|
<footer>
|
||||||
</div>
|
<div className={styles.footerContent}>
|
||||||
</div>
|
<ul>
|
||||||
{children}
|
<li>
|
||||||
<footer>
|
<Link href='/about'>About</Link>
|
||||||
<div className={styles.footerContent}>
|
</li>
|
||||||
<ul>
|
<li>
|
||||||
<li>
|
<Link href='/help'>Help</Link>
|
||||||
<Link href="/about">About</Link>
|
</li>
|
||||||
</li>
|
<li>
|
||||||
<li>
|
<Link href='/contact'>Contact</Link>
|
||||||
<Link href="/help">Help</Link>
|
</li>
|
||||||
</li>
|
<li>
|
||||||
<li>
|
<Link href='/subscribe'>Subscribe</Link>
|
||||||
<Link href="/contact">Contact</Link>
|
</li>
|
||||||
</li>
|
<li>
|
||||||
<li>
|
<Link href='/legal/copyright'>Copyright</Link>
|
||||||
<Link href="/subscribe">Subscribe</Link>
|
</li>
|
||||||
</li>
|
<li>
|
||||||
<li>
|
<Link href='/legal/privacy'>Privacy Policy</Link>
|
||||||
<Link href="/legal/copyright">Copyright</Link>
|
</li>
|
||||||
</li>
|
<li>
|
||||||
<li>
|
<Link href='/help/accessibility'>Accessibility</Link>
|
||||||
<Link href="/legal/privacy">
|
</li>
|
||||||
Privacy Policy
|
<li>
|
||||||
</Link>
|
<Link href='/status'>eeXiv status</Link>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<Link href="/help/accessibility">
|
<Link href='/status/notifications'>
|
||||||
Accessibility
|
Get status notifications
|
||||||
</Link>
|
</Link>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
</ul>
|
||||||
<Link href="/status">eeXiv status</Link>
|
</div>
|
||||||
</li>
|
</footer>
|
||||||
<li>
|
</body>
|
||||||
<Link href="/status/notifications">
|
</html>
|
||||||
Get status notifications
|
)
|
||||||
</Link>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue