mirror of
https://github.com/Steffo99/steffoweb.git
synced 2024-11-21 23:54:30 +00:00
Start working on something
This commit is contained in:
parent
0575bc7adf
commit
dd6cad2a87
22 changed files with 511 additions and 1272 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -4,6 +4,7 @@
|
|||
/node_modules
|
||||
/.pnp
|
||||
.pnp.js
|
||||
.npmrc
|
||||
|
||||
# testing
|
||||
/coverage
|
||||
|
|
|
@ -1,31 +0,0 @@
|
|||
import {faCar, faGlobe} from "@fortawesome/free-solid-svg-icons"
|
||||
import React from "react"
|
||||
import {LinkPanel} from "../../components/LinkPanel"
|
||||
|
||||
|
||||
export default function GarasautoPage() {
|
||||
return (
|
||||
<div className={"chapter-1"}>
|
||||
<section className={"panel box"}>
|
||||
<h3>
|
||||
Shrine of the Garasauto
|
||||
</h3>
|
||||
<LinkPanel
|
||||
icon={faCar}
|
||||
text={"Location"}
|
||||
href={"https://www.google.com/maps/@44.6332007,10.9484818,3a,32.4y,316.16h,84.93t/data=!3m6!1e1!3m4!1sWfvO44ELO7i2ct3S-P55ew!2e0!7i16384!8i8192"}
|
||||
/>
|
||||
<LinkPanel
|
||||
icon={faGlobe}
|
||||
text={"garasfunny.tk"}
|
||||
href={"https://garasfunny.tk/"}
|
||||
/>
|
||||
<LinkPanel
|
||||
icon={faGlobe}
|
||||
text={"garasauto.it"}
|
||||
href={"https://garasauto.it/"}
|
||||
/>
|
||||
</section>
|
||||
</div>
|
||||
)
|
||||
}
|
141
app/layout.css
Normal file
141
app/layout.css
Normal file
|
@ -0,0 +1,141 @@
|
|||
@property --c-bg0 {
|
||||
syntax: "<color>";
|
||||
inherits: true;
|
||||
initial-value: #E9ECF7;
|
||||
}
|
||||
|
||||
@property --c-bg1 {
|
||||
syntax: "<color>";
|
||||
inherits: true;
|
||||
initial-value: #C7D7FA;
|
||||
}
|
||||
|
||||
@property --c-bg2 {
|
||||
syntax: "<color>";
|
||||
inherits: true;
|
||||
initial-value: #96B5F8;
|
||||
}
|
||||
|
||||
@property --c-bg3 {
|
||||
syntax: "<color>";
|
||||
inherits: true;
|
||||
initial-value: #6A95F0;
|
||||
}
|
||||
|
||||
@property --c-bg4 {
|
||||
syntax: "<color>";
|
||||
inherits: true;
|
||||
initial-value: #4176E6;
|
||||
}
|
||||
|
||||
@property --c-fg {
|
||||
syntax: "<color>";
|
||||
inherits: true;
|
||||
initial-value: #00080F;
|
||||
}
|
||||
|
||||
@property --c-ac {
|
||||
syntax: "<color>";
|
||||
inherits: true;
|
||||
initial-value: #0068CC;
|
||||
}
|
||||
|
||||
@property --c-li {
|
||||
syntax: "<color>";
|
||||
inherits: true;
|
||||
initial-value: #0A5C5C;
|
||||
}
|
||||
|
||||
@property --e-shadow {
|
||||
syntax: "<length> <length> <length> <color>";
|
||||
inherits: true;
|
||||
initial-value: -4px 8px 8px hsl(229, 95%, 8%, 30%);
|
||||
}
|
||||
|
||||
@property --l-padding {
|
||||
syntax: "<length>";
|
||||
inherits: true;
|
||||
initial-value: 8px;
|
||||
}
|
||||
|
||||
@property --l-radius {
|
||||
syntax: "<length>";
|
||||
inherits: true;
|
||||
initial-value: 8px;
|
||||
}
|
||||
|
||||
@media screen and (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--c-bg0: #090D18;
|
||||
--c-bg1: #051436;
|
||||
--c-bg2: #0C1F4B;
|
||||
--c-bg3: #152A5B;
|
||||
--c-bg4: #213769;
|
||||
--c-fg: #F0F7FF;
|
||||
--c-ac: #85C3FF;
|
||||
--c-li: #00FFFF;
|
||||
--e-sh: -4px 8px 8px hsl(229, 95%, 8%, 30%);
|
||||
}
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: var(--c-bg0);
|
||||
color: var(--c-fg);
|
||||
|
||||
font-family: var(--f-fira-sans), sans-serif;
|
||||
}
|
||||
|
||||
a {
|
||||
color: var(--c-li);
|
||||
}
|
||||
|
||||
.panel {
|
||||
--c-panel-bg: var(--c-bg1);
|
||||
}
|
||||
|
||||
.panel .panel {
|
||||
--c-panel-bg: var(--c-bg2);
|
||||
}
|
||||
|
||||
.panel .panel .panel {
|
||||
--c-panel-bg: var(--c-bg3);
|
||||
}
|
||||
|
||||
.panel .panel .panel .panel {
|
||||
--c-panel-bg: var(--c-bg4);
|
||||
}
|
||||
|
||||
.panel {
|
||||
background-color: var(--c-panel-bg);
|
||||
box-shadow: var(--e-shadow);
|
||||
padding: var(--l-padding);
|
||||
border-radius: var(--l-radius);
|
||||
}
|
||||
|
||||
a .panel {
|
||||
background-color: color-mix(in srgb, var(--c-li) 15%, var(--c-panel-bg));
|
||||
}
|
||||
|
||||
body {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: start;
|
||||
|
||||
gap: calc(var(--l-padding) * 2);
|
||||
margin: 0;
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
nav {
|
||||
display: flex;
|
||||
justify-content: start;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
|
||||
gap: var(--l-padding);
|
||||
}
|
|
@ -1,20 +1,33 @@
|
|||
import Image from "next/image"
|
||||
import {default as Link} from "next/link"
|
||||
import React, {ReactNode} from "react"
|
||||
import { config as fontawesomeConfig } from '@fortawesome/fontawesome-svg-core'
|
||||
import {default as imgSRound} from "../public/avatar.svg"
|
||||
import React, { ReactNode } from "react"
|
||||
import { Fira_Sans as FiraSans, Zilla_Slab as ZillaSlab, Source_Serif_4 as SourceSerif } from 'next/font/google'
|
||||
import { config as faConfig } from "@fortawesome/fontawesome-svg-core"
|
||||
|
||||
import '@steffo/bluelib/dist/base.root.css'
|
||||
import '@steffo/bluelib/dist/layouts-center.root.css'
|
||||
import '@steffo/bluelib/dist/layouts-flex.root.css'
|
||||
import '@steffo/bluelib/dist/classic.root.css'
|
||||
import '@steffo/bluelib/dist/glass.root.css'
|
||||
import '@steffo/bluelib/dist/colors-royalblue.root.css'
|
||||
import '@steffo/bluelib/dist/fonts-fira-ghpages.root.css'
|
||||
import '@fortawesome/fontawesome-svg-core/styles.css'
|
||||
import "../public/style.css"
|
||||
faConfig.autoAddCss = false
|
||||
|
||||
const firaSans = FiraSans({
|
||||
weight: ["400", "700"],
|
||||
subsets: ["latin"],
|
||||
variable: "--f-fira-sans",
|
||||
display: "swap",
|
||||
})
|
||||
|
||||
const zillaSlab = ZillaSlab({
|
||||
weight: ["700"],
|
||||
subsets: ["latin"],
|
||||
variable: "--f-zilla-slab",
|
||||
display: "swap",
|
||||
})
|
||||
|
||||
const sourceSerif = SourceSerif({
|
||||
weight: ["400"],
|
||||
subsets: ["latin"],
|
||||
variable: "--f-source-serif",
|
||||
display: "swap",
|
||||
})
|
||||
|
||||
import "./layout.css"
|
||||
import classNames from "classnames"
|
||||
|
||||
fontawesomeConfig.autoAddCss = false
|
||||
|
||||
export type LayoutProps = {
|
||||
children: ReactNode,
|
||||
|
@ -22,30 +35,53 @@ export type LayoutProps = {
|
|||
|
||||
export default function RootLayout({children}: LayoutProps) {
|
||||
return <>
|
||||
<html lang={"en"}>
|
||||
{/* TODO: Set the lang attribute */}
|
||||
<html lang="" className={classNames(
|
||||
firaSans.variable,
|
||||
zillaSlab.variable,
|
||||
sourceSerif.variable,
|
||||
)}>
|
||||
<head>
|
||||
<title>Steffo</title>
|
||||
</head>
|
||||
<body className={"layout-center"}>
|
||||
<body>
|
||||
<header>
|
||||
<h1>
|
||||
<Image
|
||||
alt={""}
|
||||
src={imgSRound}
|
||||
width={48}
|
||||
height={48}
|
||||
style={{
|
||||
display: "inline-block",
|
||||
verticalAlign: "text-bottom",
|
||||
}}
|
||||
/>
|
||||
<a>
|
||||
<span>
|
||||
Steffo
|
||||
</span>
|
||||
</a>
|
||||
<small>
|
||||
{" is "}
|
||||
</small>
|
||||
<a>
|
||||
<small>
|
||||
working
|
||||
</small>
|
||||
</a>
|
||||
</h1>
|
||||
</header>
|
||||
<nav>
|
||||
<a>
|
||||
<div className="panel">
|
||||
AAAAaa
|
||||
</div>
|
||||
</a>
|
||||
<a>
|
||||
<div className="panel">
|
||||
BBBBbb
|
||||
</div>
|
||||
</a>
|
||||
<a>
|
||||
<div className="panel">
|
||||
CCCCcc
|
||||
</div>
|
||||
</a>
|
||||
</nav>
|
||||
<main>
|
||||
{children}
|
||||
</main>
|
||||
<footer>
|
||||
© {new Date().getFullYear()} Stefano Pigozzi | <Link href={"https://github.com/Steffo99/steffoweb"}>Source code</Link>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
</>
|
||||
|
|
352
app/page.tsx
352
app/page.tsx
|
@ -1,361 +1,11 @@
|
|||
"use client";
|
||||
|
||||
import {faDiscord, faGithub, faItchIo, faLinkedin, faGitAlt, faSteam} from "@fortawesome/free-brands-svg-icons"
|
||||
import {faArrowLeft, faBookAtlas, faBorderAll, faCashRegister, faCircleNodes, faCog, faDiagramProject, faEnvelope, faStar, faGamepad, faGlobe, faPaintbrush, faPaintRoller, faPlus, faFire, faShield, faShieldAlt} from "@fortawesome/free-solid-svg-icons"
|
||||
import {default as Link} from "next/link"
|
||||
import {useRouter} from "next/navigation"
|
||||
import React from "react"
|
||||
import {FlipPanel} from "../components/FlipPanel"
|
||||
import {LinkPanel} from "../components/LinkPanel"
|
||||
import {ProjectsList} from "../components/ProjectsList"
|
||||
import {useGitHubRepositories} from "../hooks/useGitHubRepositories"
|
||||
import {useKonamiCode} from "../hooks/useKonamiCode"
|
||||
|
||||
|
||||
export default function RootPage() {
|
||||
const router = useRouter()
|
||||
|
||||
const repos = useGitHubRepositories("Steffo99")
|
||||
useKonamiCode(() => router.push("/garasauto"))
|
||||
|
||||
return <>
|
||||
<div className={"chapter-1"}>
|
||||
<section className={"panel box"} id={"panel-about"}>
|
||||
<h3>
|
||||
About me
|
||||
</h3>
|
||||
<p>
|
||||
I'm <dfn>Stefano Pigozzi</dfn>, an Italian Computer Science graduate and <b>Master's student</b> at <Link href={"https://www.unimore.it/"}>Unimore</Link>!
|
||||
</p>
|
||||
<hr/>
|
||||
<p>
|
||||
I like connecting people via technology!
|
||||
</p>
|
||||
<p>
|
||||
For that reason, I enjoy using, exploring, studying and developing:
|
||||
</p>
|
||||
<ul>
|
||||
<li>social applications and their communities;</li>
|
||||
<li>videogames and their competitions;</li>
|
||||
<li>websites and Internet protocols in general;</li>
|
||||
<li>chat bots and integrations.</li>
|
||||
</ul>
|
||||
<p>
|
||||
I'm also a supporter of the <a href={"https://fsfe.org/freesoftware/freesoftware.en.html"}>free software movement</a>, and try to release everything I make under <a href={"https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12"}>a free software license</a>.
|
||||
</p>
|
||||
<p>
|
||||
I hope to see you around the Internet, just like how you've stumbled on my homepage here!
|
||||
</p>
|
||||
</section>
|
||||
</div>
|
||||
<div className={"chapter-3"}>
|
||||
<FlipPanel
|
||||
className={"box"}
|
||||
front={(flip) => <>
|
||||
<h3>
|
||||
My projects
|
||||
</h3>
|
||||
<p>
|
||||
Often, while experimenting with a new technology, I notice something that can be improved, and I try to come up with a solution to it.
|
||||
</p>
|
||||
<hr className={"float-bottom"}/>
|
||||
<p>
|
||||
Here's a small sample of what I've worked on:
|
||||
</p>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"https://bluelib.steffo.eu/examples/index.html"}
|
||||
icon={faPaintRoller}
|
||||
text={"Bluelib"}
|
||||
description={"Customizable web stylesheet"}
|
||||
/>
|
||||
<LinkPanel
|
||||
href={"https://steffo.itch.io/hella-farm"}
|
||||
icon={faGamepad}
|
||||
text={"Hella Farm"}
|
||||
description={"Game jam prototype"}
|
||||
/>
|
||||
</div>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"https://github.com/Steffo99/greed"}
|
||||
icon={faCashRegister}
|
||||
text={"Greed"}
|
||||
description={"Telegram store bot"}
|
||||
/>
|
||||
<LinkPanel
|
||||
href={"https://github.com/Steffo99/sophon"}
|
||||
icon={faBookAtlas}
|
||||
text={"Sophon"}
|
||||
description={"Research hub for universities"}
|
||||
/>
|
||||
</div>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"https://marketplace.visualstudio.com/items?itemName=steffo.steffula-code"}
|
||||
icon={faPaintbrush}
|
||||
text={"Steffula Code"}
|
||||
description={"Color theme for the VSCode editor"}
|
||||
/>
|
||||
<LinkPanel
|
||||
href={"https://steffo.itch.io/pineapple-surf"}
|
||||
icon={faCog}
|
||||
text={"Micronfig"}
|
||||
description={"12-factor app config for Rust"}
|
||||
/>
|
||||
</div>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"https://stars.steffo.eu/"}
|
||||
icon={faStar}
|
||||
text={"Peafowl"}
|
||||
description={"Static website for reviews"}
|
||||
/>
|
||||
<LinkPanel
|
||||
href={"https://glassflame.github.io/"}
|
||||
icon={faFire}
|
||||
text={"Glassflame"}
|
||||
description={"Obsidian vault web viewer"}
|
||||
/>
|
||||
</div>
|
||||
<hr/>
|
||||
<p>
|
||||
If you're interested in seeing more, you can:
|
||||
</p>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"javascript:void(0)"}
|
||||
icon={faDiagramProject}
|
||||
text={"View all my projects"}
|
||||
description={"There's a lot of stuff there!"}
|
||||
onMouseOver={() => {
|
||||
repos.load().then()
|
||||
}}
|
||||
onPress={() => {
|
||||
repos.load().then()
|
||||
flip()
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
</>}
|
||||
back={(flip) => <>
|
||||
<h3>
|
||||
All my projects
|
||||
</h3>
|
||||
<ProjectsList
|
||||
repos={repos.data}
|
||||
/>
|
||||
<hr className={"float-bottom"}/>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"javascript:void(0)"}
|
||||
icon={faArrowLeft}
|
||||
text={"Go back"}
|
||||
description={"That's too much for me..."}
|
||||
onPress={flip}
|
||||
/>
|
||||
</div>
|
||||
</>}
|
||||
/>
|
||||
<section className={"panel box"} id={"panel-accounts"}>
|
||||
<h3>
|
||||
Me on the Internet
|
||||
</h3>
|
||||
<p>
|
||||
I sign up to basically any website I stumble upon to explore and study its functions, mechanisms, culture and community, so don't be surprised if you see me somewhere!
|
||||
</p>
|
||||
<hr className={"float-bottom"}/>
|
||||
<p>
|
||||
I'm currently mostly active on the Fediverse, in particular on:
|
||||
</p>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"https://junimo.party/users/steffo"}
|
||||
icon={faCircleNodes}
|
||||
text={"Junimo Party"}
|
||||
description={"@steffo@junimo.party"}
|
||||
me
|
||||
/>
|
||||
</div>
|
||||
<hr/>
|
||||
<p>
|
||||
Other services I often use are:
|
||||
</p>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"https://github.com/Steffo99"}
|
||||
icon={faGithub}
|
||||
text={"GitHub"}
|
||||
description={"Steffo99"}
|
||||
me
|
||||
/>
|
||||
<LinkPanel
|
||||
href={"https://forge.steffo.eu/steffo"}
|
||||
icon={faGitAlt}
|
||||
text={"Forgejo"}
|
||||
description={"steffo"}
|
||||
me
|
||||
/>
|
||||
</div>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"https://matrix.to/#/@steffo:uniberry.info?via=uniberry.info"}
|
||||
icon={faBorderAll}
|
||||
text={"Matrix"}
|
||||
description={"@steffo:uniberry.info"}
|
||||
me
|
||||
/>
|
||||
<LinkPanel
|
||||
href={"https://discord.com/users/77703771181817856"}
|
||||
icon={faDiscord}
|
||||
text={"Discord"}
|
||||
description={"steffo"}
|
||||
me
|
||||
/>
|
||||
</div>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"https://www.linkedin.com/in/steffo45/"}
|
||||
icon={faLinkedin}
|
||||
text={"Linkedin"}
|
||||
description={"Stefano Pigozzi"}
|
||||
me
|
||||
/>
|
||||
<LinkPanel
|
||||
href={"mailto:me@steffo.eu"}
|
||||
icon={faEnvelope}
|
||||
text={"Email"}
|
||||
description={"me@steffo.eu"}
|
||||
me
|
||||
/>
|
||||
</div>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
href={"https://steamcommunity.com/profiles/76561198034314260/"}
|
||||
icon={faSteam}
|
||||
text={"Steam"}
|
||||
description={"[U:1:74048532]"}
|
||||
me
|
||||
/>
|
||||
<LinkPanel
|
||||
href={"https://steffo.itch.io/"}
|
||||
icon={faItchIo}
|
||||
text={"Itch.io"}
|
||||
description={"Steffo"}
|
||||
me
|
||||
/>
|
||||
</div>
|
||||
</section>
|
||||
<section className={"panel box"} id={"panel-friends"}>
|
||||
<h3>
|
||||
My friends
|
||||
</h3>
|
||||
<p>
|
||||
I think that everyone should have their personal website, and to encourage that, I list the website of all my IRL friends here, so that other people may see them!
|
||||
</p>
|
||||
<hr className={"float-bottom"}/>
|
||||
<p>
|
||||
You can check them out here:
|
||||
</p>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
icon={faGlobe}
|
||||
text={"Gimbaro"}
|
||||
href={"https://gimbaro.dev/"}
|
||||
description={"gimbaro.dev"}
|
||||
/>
|
||||
<LinkPanel
|
||||
icon={faGlobe}
|
||||
text={"Zelda"}
|
||||
href={"https://zelda.sh/"}
|
||||
description={"zelda.sh"}
|
||||
/>
|
||||
</div>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
icon={faGlobe}
|
||||
text={"Malbyx"}
|
||||
href={"https://about.malbyx.eu/it"}
|
||||
description={"malbyx.eu"}
|
||||
/>
|
||||
<LinkPanel
|
||||
icon={faGlobe}
|
||||
text={"Nemesis"}
|
||||
href={"https://www.fermitech.dev/"}
|
||||
description={"fermitech.dev"}
|
||||
/>
|
||||
</div>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
icon={faGlobe}
|
||||
text={"Proto"}
|
||||
href={"https://fabiodesim.one/"}
|
||||
description={"fabiodesim.one"}
|
||||
/>
|
||||
<LinkPanel
|
||||
icon={faGlobe}
|
||||
text={"SnowyCoder"}
|
||||
href={"https://rossilorenzo.dev/"}
|
||||
description={"rossilorenzo.dev"}
|
||||
/>
|
||||
</div>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
icon={faGlobe}
|
||||
text={"Viktya"}
|
||||
href={"https://viktya.github.io/"}
|
||||
description={"viktya.github.io"}
|
||||
/>
|
||||
</div>
|
||||
<hr/>
|
||||
<p>
|
||||
Hey friends! If you make a website, please let me know:
|
||||
</p>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
icon={faPlus}
|
||||
text={"Made something?"}
|
||||
href={"mailto:imadeawebsite@steffo.eu"}
|
||||
description={"Tell me about it!"}
|
||||
/>
|
||||
</div>
|
||||
</section>
|
||||
<section className={"panel box home-ad"} id={"panel-adblocker"}>
|
||||
<h3>
|
||||
Fake advertisement
|
||||
</h3>
|
||||
<p>
|
||||
Hey! You're browsing the Internet without an ad-blocker!
|
||||
</p>
|
||||
<hr/>
|
||||
<p>
|
||||
For your safety and better browser performance, you should install:
|
||||
</p>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
icon={faShieldAlt}
|
||||
text={"uBlock Origin"}
|
||||
href={"https://ublockorigin.com"}
|
||||
description={"Free, open-source ad content blocker"}
|
||||
/>
|
||||
</div>
|
||||
<hr/>
|
||||
<p>
|
||||
Additionally, if you are technically inclined, consider setting up this on your network:
|
||||
</p>
|
||||
<div className={"group-lp"}>
|
||||
<LinkPanel
|
||||
icon={faShield}
|
||||
text={"Pi-Hole"}
|
||||
href={"https://pi-hole.net"}
|
||||
description={"Network-wide ad blocking"}
|
||||
/>
|
||||
</div>
|
||||
<hr/>
|
||||
<p>
|
||||
Enjoy a better Internet, and remember to pay for the services you find useful so that they don't need ads to keep existing!
|
||||
</p>
|
||||
</section>
|
||||
Garasauto
|
||||
</div>
|
||||
</>
|
||||
}
|
||||
|
|
|
@ -1,63 +0,0 @@
|
|||
@media (max-width: 492px) {
|
||||
.flipPanelContainer {
|
||||
max-width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 492px) {
|
||||
.flipPanelContainer {
|
||||
max-width: 476px;
|
||||
}
|
||||
}
|
||||
|
||||
.flipPanelContainer {
|
||||
display: flex;
|
||||
justify-content: stretch;
|
||||
align-items: stretch;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.flipPanelContainer .flipPanelContainer {
|
||||
max-width: unset;
|
||||
}
|
||||
|
||||
.flipPanel {
|
||||
height: 100%;
|
||||
|
||||
transition-property: transform, z-index, opacity;
|
||||
transition-duration: 1s, 1s, 0.5s;
|
||||
transition-delay: 0s, 0s, 0s;
|
||||
}
|
||||
|
||||
.flipPanelFront {
|
||||
transform: rotateY(180deg);
|
||||
z-index: 0;
|
||||
user-select: none;
|
||||
opacity: 0;
|
||||
transition-delay: 0s, 0s, 0.5s;
|
||||
}
|
||||
|
||||
.flipPanelFrontVisible {
|
||||
transform: rotateY(0);
|
||||
z-index: 1;
|
||||
user-select: auto;
|
||||
opacity: 1;
|
||||
transition-delay: 0s, 0s, 0s;
|
||||
}
|
||||
|
||||
.flipPanelBack {
|
||||
transform: rotateY(180deg);
|
||||
margin-left: -100%;
|
||||
z-index: 0;
|
||||
user-select: none;
|
||||
opacity: 0;
|
||||
transition-delay: 0s, 0s, 0.5s;
|
||||
}
|
||||
|
||||
.flipPanelBackVisible {
|
||||
transform: rotateY(0);
|
||||
z-index: 1;
|
||||
user-select: auto;
|
||||
opacity: 1;
|
||||
transition-delay: 0s, 0s, 0s;
|
||||
}
|
|
@ -1,53 +0,0 @@
|
|||
import React from "react"
|
||||
import {default as cn} from "classnames";
|
||||
import {default as style} from "./FlipPanel.module.css"
|
||||
|
||||
export type FlipPanelProps = {
|
||||
front: (f: () => void) => React.ReactNode,
|
||||
back: (f: () => void) => React.ReactNode,
|
||||
|
||||
containerClassName?: cn.Argument,
|
||||
className?: cn.Argument,
|
||||
frontClassName?: cn.Argument,
|
||||
backClassName?: cn.Argument,
|
||||
|
||||
containerProps?: {[prop: string]: any},
|
||||
props?: {[prop: string]: any},
|
||||
frontProps?: {[prop: string]: any},
|
||||
backProps?: {[prop: string]: any},
|
||||
}
|
||||
|
||||
export const FlipPanel = ({front, back, containerClassName, className, frontClassName, backClassName, containerProps, props, frontProps, backProps}: FlipPanelProps) => {
|
||||
const [isFront, setFront] = React.useState<boolean>(true)
|
||||
const frontElement = React.useRef<HTMLElement>(null)
|
||||
const backElement = React.useRef<HTMLElement>(null)
|
||||
|
||||
const flipToFront = React.useCallback(
|
||||
() => {
|
||||
setFront(true)
|
||||
if(frontElement.current) frontElement.current.inert = false
|
||||
if(backElement.current) backElement.current.inert = true
|
||||
},
|
||||
[frontElement, backElement]
|
||||
)
|
||||
|
||||
const flipToBack = React.useCallback(
|
||||
() => {
|
||||
setFront(false)
|
||||
if(frontElement.current) frontElement.current.inert = true
|
||||
if(backElement.current) backElement.current.inert = false
|
||||
},
|
||||
[frontElement, backElement]
|
||||
)
|
||||
|
||||
return (
|
||||
<div className={cn(style.flipPanelContainer, containerClassName)} {...containerProps}>
|
||||
<section ref={frontElement} className={cn("panel", style.flipPanel, style.flipPanelFront, {[style.flipPanelFrontVisible]: isFront}, className, frontClassName)} {...props} {...frontProps}>
|
||||
{front(flipToBack)}
|
||||
</section>
|
||||
<section ref={backElement} className={cn("panel", style.flipPanel, style.flipPanelBack, {[style.flipPanelBackVisible]: !isFront}, className, backClassName)} {...props} {...backProps}>
|
||||
{back(flipToFront)}
|
||||
</section>
|
||||
</div>
|
||||
)
|
||||
}
|
|
@ -1,62 +0,0 @@
|
|||
.linkPanel {
|
||||
display: grid;
|
||||
grid-template-areas:
|
||||
"icon text ext1"
|
||||
"desc desc ext2"
|
||||
;
|
||||
grid-template-columns: auto 1fr auto;
|
||||
grid-template-rows: auto 1fr;
|
||||
|
||||
grid-column-gap: 0;
|
||||
grid-row-gap: 0;
|
||||
|
||||
white-space: nowrap;
|
||||
text-decoration: none;
|
||||
|
||||
flex-basis: calc(50% - 4px);
|
||||
flex-grow: 1;
|
||||
}
|
||||
|
||||
@media (max-width: 492px) {
|
||||
.linkPanel {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.linkPanel[href]:hover, .linkPanel[href]:focus {
|
||||
--bhsl-current-lightness: calc(var(--bhsl-link-lightness) + 20%);
|
||||
}
|
||||
|
||||
.linkPanel[href]:active {
|
||||
--bhsl-current-lightness: calc(var(--bhsl-link-lightness) + 40%);
|
||||
}
|
||||
|
||||
.linkPanelIcon {
|
||||
grid-area: icon;
|
||||
justify-self: center;
|
||||
align-self: center;
|
||||
width: 20px;
|
||||
margin-right: 4px;
|
||||
}
|
||||
|
||||
.linkPanelText {
|
||||
grid-area: text;
|
||||
align-self: center;
|
||||
text-decoration: 1px solid underline currentColor;
|
||||
}
|
||||
|
||||
.linkPanelDescription {
|
||||
grid-area: desc;
|
||||
white-space: normal;
|
||||
align-self: start;
|
||||
}
|
||||
|
||||
.linkPanelExtraTop {
|
||||
grid-area: ext1;
|
||||
align-self: end;
|
||||
}
|
||||
|
||||
.linkPanelExtraBtm {
|
||||
grid-area: ext2;
|
||||
align-self: end;
|
||||
}
|
|
@ -1,76 +0,0 @@
|
|||
import {IconProp} from "@fortawesome/fontawesome-svg-core"
|
||||
import {FontAwesomeIcon} from "@fortawesome/react-fontawesome"
|
||||
import {default as Link} from "next/link"
|
||||
import {default as cn} from "classnames"
|
||||
import {default as style} from "./LinkPanel.module.css"
|
||||
import React from "react"
|
||||
|
||||
|
||||
export type LinkPanelProps = {
|
||||
href?: string,
|
||||
icon: IconProp,
|
||||
text: React.ReactNode,
|
||||
description?: React.ReactNode,
|
||||
extraTop?: React.ReactNode,
|
||||
extraBtm?: React.ReactNode,
|
||||
me?: boolean,
|
||||
fade?: boolean,
|
||||
onMouseOver?: React.EventHandler<React.SyntheticEvent<HTMLElement>>
|
||||
onPress?: React.EventHandler<React.SyntheticEvent<HTMLElement>>
|
||||
}
|
||||
|
||||
|
||||
export const LinkPanel = ({href, icon, text, description, extraTop, extraBtm, me, fade, onMouseOver, onPress}: LinkPanelProps) => {
|
||||
const panel = (
|
||||
<>
|
||||
<FontAwesomeIcon className={style.linkPanelIcon} icon={icon}/>
|
||||
<span className={style.linkPanelText}>
|
||||
{text}
|
||||
</span>
|
||||
<span className={"lynx-only"}>
|
||||
|
||||
</span>
|
||||
{extraTop &&
|
||||
<>
|
||||
<span className={style.linkPanelExtraTop}>
|
||||
{extraTop}
|
||||
</span>
|
||||
</>
|
||||
}
|
||||
{description &&
|
||||
<>
|
||||
<small className={style.linkPanelDescription}>
|
||||
{description}
|
||||
</small>
|
||||
</>
|
||||
}
|
||||
{extraBtm !== undefined &&
|
||||
<>
|
||||
<small className={style.linkPanelExtraBtm}>
|
||||
{extraBtm}
|
||||
</small>
|
||||
</>
|
||||
}
|
||||
<span className={"lynx-only"}>
|
||||
|
||||
</span>
|
||||
</>
|
||||
)
|
||||
|
||||
if(href) {
|
||||
return (
|
||||
<Link legacyBehavior={true} href={href}>
|
||||
<a className={cn({panel: true, [style.linkPanel]: true, fade: fade})} rel={me ? "me" : ""} onClick={onPress} onKeyPress={onPress} onMouseOver={onMouseOver}>
|
||||
{panel}
|
||||
</a>
|
||||
</Link>
|
||||
)
|
||||
}
|
||||
else {
|
||||
return (
|
||||
<div className={cn({panel: true, [style.linkPanel]: true, fade: fade})} onClick={onPress} onKeyPress={onPress} onMouseOver={onMouseOver}>
|
||||
{panel}
|
||||
</div>
|
||||
)
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
.projectsList {
|
||||
flex-basis: 460px;
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
overflow-y: scroll;
|
||||
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 8px;
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
import {default as style} from "./ProjectsList.module.css"
|
||||
import {LinkPanel} from "./LinkPanel"
|
||||
import {faBook, faCodeFork} from "@fortawesome/free-solid-svg-icons"
|
||||
|
||||
|
||||
export type ProjectsListProps = {
|
||||
repos: any[]
|
||||
}
|
||||
|
||||
|
||||
export function ProjectsList({repos}: ProjectsListProps) {
|
||||
return (
|
||||
<div className={style.projectsList}>
|
||||
{repos.map((repo) => <LinkPanel
|
||||
icon={repo.fork ? faCodeFork : faBook}
|
||||
text={repo.name}
|
||||
description={repo.description}
|
||||
href={repo.html_url}
|
||||
fade={repo.archived}
|
||||
extraBtm={repo.stargazers_count == 0 ? null : `${repo.stargazers_count} ★`}/>
|
||||
)}
|
||||
<noscript>
|
||||
The list of projects cannot be loaded, as JavaScript is disabled.
|
||||
</noscript>
|
||||
</div>
|
||||
)
|
||||
}
|
|
@ -1,24 +0,0 @@
|
|||
import React from "react"
|
||||
|
||||
|
||||
export function useGitHubRepositories(user: string) {
|
||||
const [data, setData] = React.useState<any[]>([])
|
||||
|
||||
const load = React.useCallback(
|
||||
async () => {
|
||||
if(data.length > 0) return
|
||||
let page = 1;
|
||||
let count = 100;
|
||||
while(count == 100) {
|
||||
const resp = await fetch(`https://api.github.com/users/${user}/repos?per_page=100&page=${page}&sort=pushed&direction=desc`)
|
||||
const data = await resp.json()
|
||||
count = data.length
|
||||
page += 1
|
||||
setData((old) => [...old, ...data])
|
||||
}
|
||||
},
|
||||
[data]
|
||||
)
|
||||
|
||||
return {data, load}
|
||||
}
|
|
@ -1,46 +0,0 @@
|
|||
import {useCallback, useEffect, useState} from "react"
|
||||
|
||||
|
||||
const KONAMI_CODE = ["ArrowUp", "ArrowUp", "ArrowDown", "ArrowDown", "ArrowLeft", "ArrowRight", "ArrowLeft", "ArrowRight", "KeyB", "KeyA"]
|
||||
|
||||
|
||||
export function useKonamiCode(onDone: () => void) {
|
||||
const [remainingKeys, setRemainingKeys] = useState(() => [...KONAMI_CODE])
|
||||
const nextKey = remainingKeys?.[0];
|
||||
|
||||
const checkInput = useCallback(
|
||||
(event: KeyboardEvent) => {
|
||||
if(event.code === nextKey) {
|
||||
setRemainingKeys(rem => {
|
||||
rem = [...rem]
|
||||
rem.shift()
|
||||
return rem
|
||||
})
|
||||
}
|
||||
else {
|
||||
setRemainingKeys([...KONAMI_CODE])
|
||||
}
|
||||
},
|
||||
[nextKey]
|
||||
)
|
||||
|
||||
useEffect(
|
||||
() => {
|
||||
if(!nextKey) {
|
||||
onDone()
|
||||
setRemainingKeys([...KONAMI_CODE])
|
||||
}
|
||||
},
|
||||
[nextKey, onDone]
|
||||
)
|
||||
|
||||
useEffect(
|
||||
() => {
|
||||
document.addEventListener("keydown", checkInput)
|
||||
return () => {
|
||||
document.removeEventListener("keydown", checkInput)
|
||||
}
|
||||
},
|
||||
[checkInput]
|
||||
)
|
||||
}
|
2
next-env.d.ts
vendored
2
next-env.d.ts
vendored
|
@ -2,4 +2,4 @@
|
|||
/// <reference types="next/image-types/global" />
|
||||
|
||||
// NOTE: This file should not be edited
|
||||
// see https://nextjs.org/docs/basic-features/typescript for more information.
|
||||
// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information.
|
||||
|
|
32
package.json
32
package.json
|
@ -1,26 +1,24 @@
|
|||
{
|
||||
"name": "@steffo/steffoweb",
|
||||
"version": "4.0.0",
|
||||
"version": "5.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@fortawesome/fontawesome-svg-core": "^6.2.0",
|
||||
"@fortawesome/free-brands-svg-icons": "^6.2.0",
|
||||
"@fortawesome/free-regular-svg-icons": "^6.2.0",
|
||||
"@fortawesome/free-solid-svg-icons": "^6.2.0",
|
||||
"@fortawesome/react-fontawesome": "^0.2.0",
|
||||
"@steffo/bluelib": "^9.0.1",
|
||||
"classnames": "^2.3.2",
|
||||
"next": "14.0.4",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"sharp": "^0.33.1",
|
||||
"typescript": "5.3.3",
|
||||
"web-vitals": "^3.0.3"
|
||||
"@fortawesome/fontawesome-svg-core": "^6.6.0",
|
||||
"@fortawesome/react-fontawesome": "^0.2.2",
|
||||
"@awesome.me/kit-61702d48ac": "*",
|
||||
"@steffo/bluelib": "^9.1.0",
|
||||
"classnames": "^2.5.1",
|
||||
"next": "^15.0.1",
|
||||
"react": "^18.3.1",
|
||||
"react-dom": "^18.3.1",
|
||||
"web-vitals": "^4.2.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "20.10.5",
|
||||
"@types/react": "^18.0.21",
|
||||
"@types/react-dom": "^18.0.6"
|
||||
"typescript": "^5.6.3",
|
||||
"sharp": "^0.33.5",
|
||||
"@types/node": "^22.8.1",
|
||||
"@types/react": "^18.3.12",
|
||||
"@types/react-dom": "^18.3.1"
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "next dev -p 8080",
|
||||
|
|
|
@ -1,111 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="512"
|
||||
height="512"
|
||||
version="1.1"
|
||||
viewBox="0 0 512 512"
|
||||
id="svg4"
|
||||
sodipodi:docname="avatar.svg"
|
||||
inkscape:version="1.3.2 (091e20ef0f, 2023-11-25, custom)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview4"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="0.82324218"
|
||||
inkscape:cx="218.64769"
|
||||
inkscape:cy="271.48755"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1020"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg4" />
|
||||
<defs
|
||||
id="defs4">
|
||||
<linearGradient
|
||||
id="background"
|
||||
x2="512"
|
||||
y1="512"
|
||||
gradientUnits="userSpaceOnUse">
|
||||
<stop
|
||||
stop-color="#051436"
|
||||
offset="0"
|
||||
id="stop1" />
|
||||
<stop
|
||||
stop-color="#001553"
|
||||
offset=".75"
|
||||
id="stop2" />
|
||||
<stop
|
||||
stop-color="#010a4e"
|
||||
offset="1"
|
||||
id="stop3" />
|
||||
</linearGradient>
|
||||
<filter
|
||||
id="shadow"
|
||||
x="-0.13011152"
|
||||
y="-0.082530949"
|
||||
width="1.2416357"
|
||||
height="1.1925722"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feFlood
|
||||
flood-color="rgb(1,8,40)"
|
||||
in="SourceGraphic"
|
||||
result="flood"
|
||||
id="feFlood3" />
|
||||
<feGaussianBlur
|
||||
in="SourceGraphic"
|
||||
result="blur"
|
||||
stdDeviation="10.000000"
|
||||
id="feGaussianBlur3" />
|
||||
<feOffset
|
||||
dx="-4.000000"
|
||||
dy="8.000000"
|
||||
in="blur"
|
||||
result="offset"
|
||||
id="feOffset3" />
|
||||
<feComposite
|
||||
in="flood"
|
||||
in2="offset"
|
||||
operator="in"
|
||||
result="comp1"
|
||||
id="feComposite3" />
|
||||
<feComposite
|
||||
in="SourceGraphic"
|
||||
in2="comp1"
|
||||
result="comp2"
|
||||
id="feComposite4" />
|
||||
</filter>
|
||||
</defs>
|
||||
<rect
|
||||
width="512"
|
||||
height="512"
|
||||
fill="url(#background)"
|
||||
id="rect4"
|
||||
x="0"
|
||||
y="0"
|
||||
style="fill:url(#background)" />
|
||||
<text
|
||||
x="144.8"
|
||||
y="394.60001"
|
||||
fill="#85c4ff"
|
||||
filter="url(#shadow)"
|
||||
font-family="'Fira Sans'"
|
||||
font-size="400px"
|
||||
font-weight="bold"
|
||||
stroke-width="1.0016"
|
||||
xml:space="preserve"
|
||||
id="text4"><tspan
|
||||
x="144.8"
|
||||
y="394.60001"
|
||||
fill="#85c4ff"
|
||||
id="tspan4">S</tspan></text>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.7 KiB |
Binary file not shown.
Before Width: | Height: | Size: 62 KiB |
|
@ -1,13 +1,7 @@
|
|||
{
|
||||
"short_name": "Steffoweb",
|
||||
"short_name": "Steffo",
|
||||
"name": "Steffo's website",
|
||||
"icons": [
|
||||
{
|
||||
"src": "favicon.ico",
|
||||
"sizes": "2048x2048",
|
||||
"type": "image/x-icon"
|
||||
}
|
||||
],
|
||||
"icons": [],
|
||||
"start_url": ".",
|
||||
"display": "browser",
|
||||
"theme_color": "#0d193b",
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 214 KiB |
Binary file not shown.
Before Width: | Height: | Size: 2.1 MiB |
|
@ -1,25 +0,0 @@
|
|||
@media (max-width: 492px) {
|
||||
.panel {
|
||||
max-width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 492px) {
|
||||
.panel {
|
||||
max-width: 476px;
|
||||
}
|
||||
}
|
||||
|
||||
.panel .panel {
|
||||
max-width: unset;
|
||||
}
|
||||
|
||||
.group-lp {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.lynx-only {
|
||||
display: none;
|
||||
}
|
593
yarn.lock
593
yarn.lock
|
@ -2,261 +2,241 @@
|
|||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@emnapi/runtime@^0.44.0":
|
||||
version "0.44.0"
|
||||
resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-0.44.0.tgz#1ef702f846cfcd559d28eb7673919087ba5b63e3"
|
||||
integrity sha512-ZX/etZEZw8DR7zAB1eVQT40lNo0jeqpb6dCgOvctB6FIQ5PoXfMuNY8+ayQfu8tNQbAB8gQWSSJupR8NxeiZXw==
|
||||
"@awesome.me/kit-61702d48ac@*":
|
||||
version "1.0.4"
|
||||
resolved "https://npm.fontawesome.com/@awesome.me/kit-61702d48ac/-/1.0.4/kit-61702d48ac-1.0.4.tgz#2083db81a82e65dc73f907d88fd59fe5f77d3007"
|
||||
integrity sha512-BMHOeTNZ3wImosFKlfyKtdby7njfoWd3NKUdiFKIg0fbJM52SzEMPMEB4xkeCKcRF/8BFpQwDc1w2KnlQqX36Q==
|
||||
dependencies:
|
||||
"@fortawesome/fontawesome-common-types" "^6.6.0"
|
||||
|
||||
"@emnapi/runtime@^1.2.0":
|
||||
version "1.3.1"
|
||||
resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.3.1.tgz#0fcaa575afc31f455fd33534c19381cfce6c6f60"
|
||||
integrity sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==
|
||||
dependencies:
|
||||
tslib "^2.4.0"
|
||||
|
||||
"@fortawesome/fontawesome-common-types@6.5.1":
|
||||
version "6.5.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.5.1.tgz#fdb1ec4952b689f5f7aa0bffe46180bb35490032"
|
||||
integrity sha512-GkWzv+L6d2bI5f/Vk6ikJ9xtl7dfXtoRu3YGE6nq0p/FFqA1ebMOAWg3XgRyb0I6LYyYkiAo+3/KrwuBp8xG7A==
|
||||
"@fortawesome/fontawesome-common-types@6.6.0", "@fortawesome/fontawesome-common-types@^6.6.0":
|
||||
version "6.6.0"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.6.0.tgz#31ab07ca6a06358c5de4d295d4711b675006163f"
|
||||
integrity sha512-xyX0X9mc0kyz9plIyryrRbl7ngsA9jz77mCZJsUkLl+ZKs0KWObgaEBoSgQiYWAsSmjz/yjl0F++Got0Mdp4Rw==
|
||||
|
||||
"@fortawesome/fontawesome-svg-core@^6.2.0":
|
||||
version "6.5.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.5.1.tgz#9d56d46bddad78a7ebb2043a97957039fcebcf0a"
|
||||
integrity sha512-MfRCYlQPXoLlpem+egxjfkEuP9UQswTrlCOsknus/NcMoblTH2g0jPrapbcIb04KGA7E2GZxbAccGZfWoYgsrQ==
|
||||
"@fortawesome/fontawesome-svg-core@^6.6.0":
|
||||
version "6.6.0"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.6.0.tgz#2a24c32ef92136e98eae2ff334a27145188295ff"
|
||||
integrity sha512-KHwPkCk6oRT4HADE7smhfsKudt9N/9lm6EJ5BVg0tD1yPA5hht837fB87F8pn15D8JfTqQOjhKTktwmLMiD7Kg==
|
||||
dependencies:
|
||||
"@fortawesome/fontawesome-common-types" "6.5.1"
|
||||
"@fortawesome/fontawesome-common-types" "6.6.0"
|
||||
|
||||
"@fortawesome/free-brands-svg-icons@^6.2.0":
|
||||
version "6.5.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-6.5.1.tgz#e948cc02404277cb8ad40fe3573ca75f2830e876"
|
||||
integrity sha512-093l7DAkx0aEtBq66Sf19MgoZewv1zeY9/4C7vSKPO4qMwEsW/2VYTUTpBtLwfb9T2R73tXaRDPmE4UqLCYHfg==
|
||||
dependencies:
|
||||
"@fortawesome/fontawesome-common-types" "6.5.1"
|
||||
|
||||
"@fortawesome/free-regular-svg-icons@^6.2.0":
|
||||
version "6.5.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.5.1.tgz#c98a91d2c9137ed54a7aa2362a916f46503e0627"
|
||||
integrity sha512-m6ShXn+wvqEU69wSP84coxLbNl7sGVZb+Ca+XZq6k30SzuP3X4TfPqtycgUh9ASwlNh5OfQCd8pDIWxl+O+LlQ==
|
||||
dependencies:
|
||||
"@fortawesome/fontawesome-common-types" "6.5.1"
|
||||
|
||||
"@fortawesome/free-solid-svg-icons@^6.2.0":
|
||||
version "6.5.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.5.1.tgz#737b8d787debe88b400ab7528f47be333031274a"
|
||||
integrity sha512-S1PPfU3mIJa59biTtXJz1oI0+KAXW6bkAb31XKhxdxtuXDiUIFsih4JR1v5BbxY7hVHsD1RKq+jRkVRaf773NQ==
|
||||
dependencies:
|
||||
"@fortawesome/fontawesome-common-types" "6.5.1"
|
||||
|
||||
"@fortawesome/react-fontawesome@^0.2.0":
|
||||
version "0.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz#d90dd8a9211830b4e3c08e94b63a0ba7291ddcf4"
|
||||
integrity sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==
|
||||
"@fortawesome/react-fontawesome@^0.2.2":
|
||||
version "0.2.2"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.2.tgz#68b058f9132b46c8599875f6a636dad231af78d4"
|
||||
integrity sha512-EnkrprPNqI6SXJl//m29hpaNzOp1bruISWaOiRtkMi/xSvHJlzc2j2JAYS7egxt/EbjSNV/k6Xy0AQI6vB2+1g==
|
||||
dependencies:
|
||||
prop-types "^15.8.1"
|
||||
|
||||
"@img/sharp-darwin-arm64@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.1.tgz#9d3cb0e4899b10b003608a018877b45b6db02861"
|
||||
integrity sha512-esr2BZ1x0bo+wl7Gx2hjssYhjrhUsD88VQulI0FrG8/otRQUOxLWHMBd1Y1qo2Gfg2KUvXNpT0ASnV9BzJCexw==
|
||||
"@img/sharp-darwin-arm64@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz#ef5b5a07862805f1e8145a377c8ba6e98813ca08"
|
||||
integrity sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==
|
||||
optionalDependencies:
|
||||
"@img/sharp-libvips-darwin-arm64" "1.0.0"
|
||||
"@img/sharp-libvips-darwin-arm64" "1.0.4"
|
||||
|
||||
"@img/sharp-darwin-x64@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.1.tgz#3ad6b275dba0ed9995ce4403fc2c59b0475a0162"
|
||||
integrity sha512-YrnuB3bXuWdG+hJlXtq7C73lF8ampkhU3tMxg5Hh+E7ikxbUVOU9nlNtVTloDXz6pRHt2y2oKJq7DY/yt+UXYw==
|
||||
"@img/sharp-darwin-x64@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz#e03d3451cd9e664faa72948cc70a403ea4063d61"
|
||||
integrity sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==
|
||||
optionalDependencies:
|
||||
"@img/sharp-libvips-darwin-x64" "1.0.0"
|
||||
"@img/sharp-libvips-darwin-x64" "1.0.4"
|
||||
|
||||
"@img/sharp-libvips-darwin-arm64@1.0.0":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.0.tgz#8baf27b01dabba524e885c30287e1916ab978de7"
|
||||
integrity sha512-VzYd6OwnUR81sInf3alj1wiokY50DjsHz5bvfnsFpxs5tqQxESoHtJO6xyksDs3RIkyhMWq2FufXo6GNSU9BMw==
|
||||
"@img/sharp-libvips-darwin-arm64@1.0.4":
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz#447c5026700c01a993c7804eb8af5f6e9868c07f"
|
||||
integrity sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==
|
||||
|
||||
"@img/sharp-libvips-darwin-x64@1.0.0":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.0.tgz#509113f649d3ea0e99b76d41437fc0049d8ba2f9"
|
||||
integrity sha512-dD9OznTlHD6aovRswaPNEy8dKtSAmNo4++tO7uuR4o5VxbVAOoEQ1uSmN4iFAdQneTHws1lkTZeiXPrcCkh6IA==
|
||||
"@img/sharp-libvips-darwin-x64@1.0.4":
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz#e0456f8f7c623f9dbfbdc77383caa72281d86062"
|
||||
integrity sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==
|
||||
|
||||
"@img/sharp-libvips-linux-arm64@1.0.0":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.0.tgz#9e131cc95f9f8aa36da9addee89efead21ad9993"
|
||||
integrity sha512-xTYThiqEZEZc0PRU90yVtM3KE7lw1bKdnDQ9kCTHWbqWyHOe4NpPOtMGy27YnN51q0J5dqRrvicfPbALIOeAZA==
|
||||
"@img/sharp-libvips-linux-arm64@1.0.4":
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz#979b1c66c9a91f7ff2893556ef267f90ebe51704"
|
||||
integrity sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==
|
||||
|
||||
"@img/sharp-libvips-linux-arm@1.0.0":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.0.tgz#a529f68a28ab1d219907071c41ace029121d1c4f"
|
||||
integrity sha512-VwgD2eEikDJUk09Mn9Dzi1OW2OJFRQK+XlBTkUNmAWPrtj8Ly0yq05DFgu1VCMx2/DqCGQVi5A1dM9hTmxf3uw==
|
||||
"@img/sharp-libvips-linux-arm@1.0.5":
|
||||
version "1.0.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz#99f922d4e15216ec205dcb6891b721bfd2884197"
|
||||
integrity sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==
|
||||
|
||||
"@img/sharp-libvips-linux-s390x@1.0.0":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.0.tgz#c26aaa9ee58b47ff901bb5f93f29c4ab3f03caf7"
|
||||
integrity sha512-o9E46WWBC6JsBlwU4QyU9578G77HBDT1NInd+aERfxeOPbk0qBZHgoDsQmA2v9TbqJRWzoBPx1aLOhprBMgPjw==
|
||||
"@img/sharp-libvips-linux-s390x@1.0.4":
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz#f8a5eb1f374a082f72b3f45e2fb25b8118a8a5ce"
|
||||
integrity sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==
|
||||
|
||||
"@img/sharp-libvips-linux-x64@1.0.0":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.0.tgz#7a04795fbf2668b9dd7c74bf8326cb779131d809"
|
||||
integrity sha512-naldaJy4hSVhWBgEjfdBY85CAa4UO+W1nx6a1sWStHZ7EUfNiuBTTN2KUYT5dH1+p/xij1t2QSXfCiFJoC5S/Q==
|
||||
"@img/sharp-libvips-linux-x64@1.0.4":
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz#d4c4619cdd157774906e15770ee119931c7ef5e0"
|
||||
integrity sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==
|
||||
|
||||
"@img/sharp-libvips-linuxmusl-arm64@1.0.0":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.0.tgz#600e7322faa5ce124d3ae2cbf63808ea47678591"
|
||||
integrity sha512-OdorplCyvmSAPsoJLldtLh3nLxRrkAAAOHsGWGDYfN0kh730gifK+UZb3dWORRa6EusNqCTjfXV4GxvgJ/nPDQ==
|
||||
"@img/sharp-libvips-linuxmusl-arm64@1.0.4":
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz#166778da0f48dd2bded1fa3033cee6b588f0d5d5"
|
||||
integrity sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==
|
||||
|
||||
"@img/sharp-libvips-linuxmusl-x64@1.0.0":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.0.tgz#af33a04e75f192c5396c6a41df8b7b7bf15a8006"
|
||||
integrity sha512-FW8iK6rJrg+X2jKD0Ajhjv6y74lToIBEvkZhl42nZt563FfxkCYacrXZtd+q/sRQDypQLzY5WdLkVTbJoPyqNg==
|
||||
"@img/sharp-libvips-linuxmusl-x64@1.0.4":
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz#93794e4d7720b077fcad3e02982f2f1c246751ff"
|
||||
integrity sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==
|
||||
|
||||
"@img/sharp-linux-arm64@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.1.tgz#3f419eb6f9ace924c511903a4d9034fb847de06b"
|
||||
integrity sha512-59B5GRO2d5N3tIfeGHAbJps7cLpuWEQv/8ySd9109ohQ3kzyCACENkFVAnGPX00HwPTQcaBNF7HQYEfZyZUFfw==
|
||||
"@img/sharp-linux-arm64@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz#edb0697e7a8279c9fc829a60fc35644c4839bb22"
|
||||
integrity sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==
|
||||
optionalDependencies:
|
||||
"@img/sharp-libvips-linux-arm64" "1.0.0"
|
||||
"@img/sharp-libvips-linux-arm64" "1.0.4"
|
||||
|
||||
"@img/sharp-linux-arm@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.1.tgz#87e157716c55fa274dd652e71bf9a5b7c260f8ab"
|
||||
integrity sha512-Ii4X1vnzzI4j0+cucsrYA5ctrzU9ciXERfJR633S2r39CiD8npqH2GMj63uFZRCFt3E687IenAdbwIpQOJ5BNA==
|
||||
"@img/sharp-linux-arm@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz#422c1a352e7b5832842577dc51602bcd5b6f5eff"
|
||||
integrity sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==
|
||||
optionalDependencies:
|
||||
"@img/sharp-libvips-linux-arm" "1.0.0"
|
||||
"@img/sharp-libvips-linux-arm" "1.0.5"
|
||||
|
||||
"@img/sharp-linux-s390x@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.1.tgz#c554567bb211cb1e916562752e70ef65df0cdcb7"
|
||||
integrity sha512-tRGrb2pHnFUXpOAj84orYNxHADBDIr0J7rrjwQrTNMQMWA4zy3StKmMvwsI7u3dEZcgwuMMooIIGWEWOjnmG8A==
|
||||
"@img/sharp-linux-s390x@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz#f5c077926b48e97e4a04d004dfaf175972059667"
|
||||
integrity sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==
|
||||
optionalDependencies:
|
||||
"@img/sharp-libvips-linux-s390x" "1.0.0"
|
||||
"@img/sharp-libvips-linux-s390x" "1.0.4"
|
||||
|
||||
"@img/sharp-linux-x64@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.1.tgz#c8623c743e2a68b460b63bd2e225b1b5a485d144"
|
||||
integrity sha512-4y8osC0cAc1TRpy02yn5omBeloZZwS62fPZ0WUAYQiLhSFSpWJfY/gMrzKzLcHB9ulUV6ExFiu2elMaixKDbeg==
|
||||
"@img/sharp-linux-x64@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz#d806e0afd71ae6775cc87f0da8f2d03a7c2209cb"
|
||||
integrity sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==
|
||||
optionalDependencies:
|
||||
"@img/sharp-libvips-linux-x64" "1.0.0"
|
||||
"@img/sharp-libvips-linux-x64" "1.0.4"
|
||||
|
||||
"@img/sharp-linuxmusl-arm64@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.1.tgz#1b17f9950246108cb22cf98f1822fbe4a5b0dc9e"
|
||||
integrity sha512-D3lV6clkqIKUizNS8K6pkuCKNGmWoKlBGh5p0sLO2jQERzbakhu4bVX1Gz+RS4vTZBprKlWaf+/Rdp3ni2jLfA==
|
||||
"@img/sharp-linuxmusl-arm64@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz#252975b915894fb315af5deea174651e208d3d6b"
|
||||
integrity sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==
|
||||
optionalDependencies:
|
||||
"@img/sharp-libvips-linuxmusl-arm64" "1.0.0"
|
||||
"@img/sharp-libvips-linuxmusl-arm64" "1.0.4"
|
||||
|
||||
"@img/sharp-linuxmusl-x64@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.1.tgz#69e2ab197c6d6e7a09748e0f2d03244d2c2afed7"
|
||||
integrity sha512-LOGKNu5w8uu1evVqUAUKTix2sQu1XDRIYbsi5Q0c/SrXhvJ4QyOx+GaajxmOg5PZSsSnCYPSmhjHHsRBx06/wQ==
|
||||
"@img/sharp-linuxmusl-x64@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz#3f4609ac5d8ef8ec7dadee80b560961a60fd4f48"
|
||||
integrity sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==
|
||||
optionalDependencies:
|
||||
"@img/sharp-libvips-linuxmusl-x64" "1.0.0"
|
||||
"@img/sharp-libvips-linuxmusl-x64" "1.0.4"
|
||||
|
||||
"@img/sharp-wasm32@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-wasm32/-/sharp-wasm32-0.33.1.tgz#aa6f33a8535e6bd4a66c59aeb569499db9d30043"
|
||||
integrity sha512-vWI/sA+0p+92DLkpAMb5T6I8dg4z2vzCUnp8yvxHlwBpzN8CIcO3xlSXrLltSvK6iMsVMNswAv+ub77rsf25lA==
|
||||
"@img/sharp-wasm32@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz#6f44f3283069d935bb5ca5813153572f3e6f61a1"
|
||||
integrity sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==
|
||||
dependencies:
|
||||
"@emnapi/runtime" "^0.44.0"
|
||||
"@emnapi/runtime" "^1.2.0"
|
||||
|
||||
"@img/sharp-win32-ia32@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.1.tgz#8df522d79b3c08f59e65fbe773849daa353c4f12"
|
||||
integrity sha512-/xhYkylsKL05R+NXGJc9xr2Tuw6WIVl2lubFJaFYfW4/MQ4J+dgjIo/T4qjNRizrqs/szF/lC9a5+updmY9jaQ==
|
||||
"@img/sharp-win32-ia32@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz#1a0c839a40c5351e9885628c85f2e5dfd02b52a9"
|
||||
integrity sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==
|
||||
|
||||
"@img/sharp-win32-x64@0.33.1":
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.1.tgz#8b56e97dc9d987b070d7530a357161d0f057c5af"
|
||||
integrity sha512-XaM69X0n6kTEsp9tVYYLhXdg7Qj32vYJlAKRutxUsm1UlgQNx6BOhHwZPwukCGXBU2+tH87ip2eV1I/E8MQnZg==
|
||||
"@img/sharp-win32-x64@0.33.5":
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz#56f00962ff0c4e0eb93d34a047d29fa995e3e342"
|
||||
integrity sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==
|
||||
|
||||
"@next/env@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/env/-/env-14.0.4.tgz#d5cda0c4a862d70ae760e58c0cd96a8899a2e49a"
|
||||
integrity sha512-irQnbMLbUNQpP1wcE5NstJtbuA/69kRfzBrpAD7Gsn8zm/CY6YQYc3HQBz8QPxwISG26tIm5afvvVbu508oBeQ==
|
||||
"@next/env@15.0.1":
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@next/env/-/env-15.0.1.tgz#660fe9303e255cec112d3f4198d2897a24bc60b3"
|
||||
integrity sha512-lc4HeDUKO9gxxlM5G2knTRifqhsY6yYpwuHspBZdboZe0Gp+rZHBNNSIjmQKDJIdRXiXGyVnSD6gafrbQPvILQ==
|
||||
|
||||
"@next/swc-darwin-arm64@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.4.tgz#27b1854c2cd04eb1d5e75081a1a792ad91526618"
|
||||
integrity sha512-mF05E/5uPthWzyYDyptcwHptucf/jj09i2SXBPwNzbgBNc+XnwzrL0U6BmPjQeOL+FiB+iG1gwBeq7mlDjSRPg==
|
||||
"@next/swc-darwin-arm64@15.0.1":
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.0.1.tgz#b80a25f1569bd0ca03eca9473f7e93e64937e404"
|
||||
integrity sha512-C9k/Xv4sxkQRTA37Z6MzNq3Yb1BJMmSqjmwowoWEpbXTkAdfOwnoKOpAb71ItSzoA26yUTIo6ZhN8rKGu4ExQw==
|
||||
|
||||
"@next/swc-darwin-x64@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.4.tgz#9940c449e757d0ee50bb9e792d2600cc08a3eb3b"
|
||||
integrity sha512-IZQ3C7Bx0k2rYtrZZxKKiusMTM9WWcK5ajyhOZkYYTCc8xytmwSzR1skU7qLgVT/EY9xtXDG0WhY6fyujnI3rw==
|
||||
"@next/swc-darwin-x64@15.0.1":
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-15.0.1.tgz#00dcf79ec7c638a85c3b9ff2e2de2bfb09c1c250"
|
||||
integrity sha512-uHl13HXOuq1G7ovWFxCACDJHTSDVbn/sbLv8V1p+7KIvTrYQ5HNoSmKBdYeEKRRCbEmd+OohOgg9YOp8Ux3MBg==
|
||||
|
||||
"@next/swc-linux-arm64-gnu@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.4.tgz#0eafd27c8587f68ace7b4fa80695711a8434de21"
|
||||
integrity sha512-VwwZKrBQo/MGb1VOrxJ6LrKvbpo7UbROuyMRvQKTFKhNaXjUmKTu7wxVkIuCARAfiI8JpaWAnKR+D6tzpCcM4w==
|
||||
"@next/swc-linux-arm64-gnu@15.0.1":
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.0.1.tgz#faab5f7ffcc6d1a15e8dea1cb9953966658b39bf"
|
||||
integrity sha512-LvyhvxHOihFTEIbb35KxOc3q8w8G4xAAAH/AQnsYDEnOvwawjL2eawsB59AX02ki6LJdgDaHoTEnC54Gw+82xw==
|
||||
|
||||
"@next/swc-linux-arm64-musl@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.4.tgz#2b0072adb213f36dada5394ea67d6e82069ae7dd"
|
||||
integrity sha512-8QftwPEW37XxXoAwsn+nXlodKWHfpMaSvt81W43Wh8dv0gkheD+30ezWMcFGHLI71KiWmHK5PSQbTQGUiidvLQ==
|
||||
"@next/swc-linux-arm64-musl@15.0.1":
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.0.1.tgz#97abada9a782ab5b3cb42cf0d4799cbc2e733351"
|
||||
integrity sha512-vFmCGUFNyk/A5/BYcQNhAQqPIw01RJaK6dRO+ZEhz0DncoW+hJW1kZ8aH2UvTX27zPq3m85zN5waMSbZEmANcQ==
|
||||
|
||||
"@next/swc-linux-x64-gnu@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.4.tgz#68c67d20ebc8e3f6ced6ff23a4ba2a679dbcec32"
|
||||
integrity sha512-/s/Pme3VKfZAfISlYVq2hzFS8AcAIOTnoKupc/j4WlvF6GQ0VouS2Q2KEgPuO1eMBwakWPB1aYFIA4VNVh667A==
|
||||
"@next/swc-linux-x64-gnu@15.0.1":
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.0.1.tgz#548bd47c49fe6d819302139aff8766eb704322e2"
|
||||
integrity sha512-5by7IYq0NCF8rouz6Qg9T97jYU68kaClHPfGpQG2lCZpSYHtSPQF1kjnqBTd34RIqPKMbCa4DqCufirgr8HM5w==
|
||||
|
||||
"@next/swc-linux-x64-musl@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.4.tgz#67cd81b42fb2caf313f7992fcf6d978af55a1247"
|
||||
integrity sha512-m8z/6Fyal4L9Bnlxde5g2Mfa1Z7dasMQyhEhskDATpqr+Y0mjOBZcXQ7G5U+vgL22cI4T7MfvgtrM2jdopqWaw==
|
||||
"@next/swc-linux-x64-musl@15.0.1":
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.0.1.tgz#84423fbd3a058dd6ae8322e530878f0ec7a1027a"
|
||||
integrity sha512-lmYr6H3JyDNBJLzklGXLfbehU3ay78a+b6UmBGlHls4xhDXBNZfgb0aI67sflrX+cGBnv1LgmWzFlYrAYxS1Qw==
|
||||
|
||||
"@next/swc-win32-arm64-msvc@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.4.tgz#be06585906b195d755ceda28f33c633e1443f1a3"
|
||||
integrity sha512-7Wv4PRiWIAWbm5XrGz3D8HUkCVDMMz9igffZG4NB1p4u1KoItwx9qjATHz88kwCEal/HXmbShucaslXCQXUM5w==
|
||||
"@next/swc-win32-arm64-msvc@15.0.1":
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.0.1.tgz#723c2ced12a998fb40dc901b8faea9170e788c2f"
|
||||
integrity sha512-DS8wQtl6diAj0eZTdH0sefykm4iXMbHT4MOvLwqZiIkeezKpkgPFcEdFlz3vKvXa2R/2UEgMh48z1nEpNhjeOQ==
|
||||
|
||||
"@next/swc-win32-ia32-msvc@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.4.tgz#e76cabefa9f2d891599c3d85928475bd8d3f6600"
|
||||
integrity sha512-zLeNEAPULsl0phfGb4kdzF/cAVIfaC7hY+kt0/d+y9mzcZHsMS3hAS829WbJ31DkSlVKQeHEjZHIdhN+Pg7Gyg==
|
||||
"@next/swc-win32-x64-msvc@15.0.1":
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.0.1.tgz#ec7e3befc0bcc47527537b1eda2b3745beb15a09"
|
||||
integrity sha512-4Ho2ggvDdMKlZ/0e9HNdZ9ngeaBwtc+2VS5oCeqrbXqOgutX6I4U2X/42VBw0o+M5evn4/7v3zKgGHo+9v/VjA==
|
||||
|
||||
"@next/swc-win32-x64-msvc@14.0.4":
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.4.tgz#e74892f1a9ccf41d3bf5979ad6d3d77c07b9cba1"
|
||||
integrity sha512-yEh2+R8qDlDCjxVpzOTEpBLQTEFAcP2A8fUFLaWNap9GitYKkKv1//y2S6XY6zsR4rCOPRpU7plYDR+az2n30A==
|
||||
"@steffo/bluelib@^9.1.0":
|
||||
version "9.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@steffo/bluelib/-/bluelib-9.1.0.tgz#48b03411ad66c53a1931e5ff3ae316a3cf3d9bb6"
|
||||
integrity sha512-S+MT4NLfcFu2oV22UabI8TXn9c3LOpx3FM6Nb4L/eiMTpE/XJf/NK4di8prHBabt8230JIDDv+SGxUzurG2I8g==
|
||||
|
||||
"@steffo/bluelib@^9.0.1":
|
||||
version "9.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@steffo/bluelib/-/bluelib-9.0.1.tgz#15932995ab67ff1b959601036042cd2f14c4d197"
|
||||
integrity sha512-r6/38m0LuapcF5Fung5yjITTcXNoWf03I5C2b4dBDGjt7IqBAiaoBbLsRcChZ5hRRn32TJO10yuDlgsPNwLhAg==
|
||||
"@swc/counter@0.1.3":
|
||||
version "0.1.3"
|
||||
resolved "https://registry.yarnpkg.com/@swc/counter/-/counter-0.1.3.tgz#cc7463bd02949611c6329596fccd2b0ec782b0e9"
|
||||
integrity sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==
|
||||
|
||||
"@swc/helpers@0.5.2":
|
||||
version "0.5.2"
|
||||
resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.2.tgz#85ea0c76450b61ad7d10a37050289eded783c27d"
|
||||
integrity sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==
|
||||
"@swc/helpers@0.5.13":
|
||||
version "0.5.13"
|
||||
resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.13.tgz#33e63ff3cd0cade557672bd7888a39ce7d115a8c"
|
||||
integrity sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==
|
||||
dependencies:
|
||||
tslib "^2.4.0"
|
||||
|
||||
"@types/node@20.10.5":
|
||||
version "20.10.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.10.5.tgz#47ad460b514096b7ed63a1dae26fad0914ed3ab2"
|
||||
integrity sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==
|
||||
"@types/node@^22.8.1":
|
||||
version "22.8.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.8.1.tgz#b39d4b98165e2ae792ce213f610c7c6108ccfa16"
|
||||
integrity sha512-k6Gi8Yyo8EtrNtkHXutUu2corfDf9su95VYVP10aGYMMROM6SAItZi0w1XszA6RtWTHSVp5OeFof37w0IEqCQg==
|
||||
dependencies:
|
||||
undici-types "~5.26.4"
|
||||
undici-types "~6.19.8"
|
||||
|
||||
"@types/prop-types@*":
|
||||
version "15.7.11"
|
||||
resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.11.tgz#2596fb352ee96a1379c657734d4b913a613ad563"
|
||||
integrity sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==
|
||||
version "15.7.13"
|
||||
resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.13.tgz#2af91918ee12d9d32914feb13f5326658461b451"
|
||||
integrity sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==
|
||||
|
||||
"@types/react-dom@^18.0.6":
|
||||
version "18.2.18"
|
||||
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.2.18.tgz#16946e6cd43971256d874bc3d0a72074bb8571dd"
|
||||
integrity sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==
|
||||
"@types/react-dom@^18.3.1":
|
||||
version "18.3.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.3.1.tgz#1e4654c08a9cdcfb6594c780ac59b55aad42fe07"
|
||||
integrity sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==
|
||||
dependencies:
|
||||
"@types/react" "*"
|
||||
|
||||
"@types/react@*", "@types/react@^18.0.21":
|
||||
version "18.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.45.tgz#253f4fac288e7e751ab3dc542000fb687422c15c"
|
||||
integrity sha512-TtAxCNrlrBp8GoeEp1npd5g+d/OejJHFxS3OWmrPBMFaVQMSN0OFySozJio5BHxTuTeug00AVXVAjfDSfk+lUg==
|
||||
"@types/react@*", "@types/react@^18.3.12":
|
||||
version "18.3.12"
|
||||
resolved "https://registry.yarnpkg.com/@types/react/-/react-18.3.12.tgz#99419f182ccd69151813b7ee24b792fe08774f60"
|
||||
integrity sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==
|
||||
dependencies:
|
||||
"@types/prop-types" "*"
|
||||
"@types/scheduler" "*"
|
||||
csstype "^3.0.2"
|
||||
|
||||
"@types/scheduler@*":
|
||||
version "0.16.8"
|
||||
resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.8.tgz#ce5ace04cfeabe7ef87c0091e50752e36707deff"
|
||||
integrity sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==
|
||||
|
||||
busboy@1.6.0:
|
||||
version "1.6.0"
|
||||
resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893"
|
||||
|
@ -264,15 +244,15 @@ busboy@1.6.0:
|
|||
dependencies:
|
||||
streamsearch "^1.1.0"
|
||||
|
||||
caniuse-lite@^1.0.30001406:
|
||||
version "1.0.30001570"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001570.tgz#b4e5c1fa786f733ab78fc70f592df6b3f23244ca"
|
||||
integrity sha512-+3e0ASu4sw1SWaoCtvPeyXp+5PsjigkSt8OXZbF9StH5pQWbxEjLAZE3n8Aup5udop1uRiKA7a4utUk/uoSpUw==
|
||||
caniuse-lite@^1.0.30001579:
|
||||
version "1.0.30001672"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001672.tgz#02ac296ad4765c6c4f93031525f60cf8bdf4a44f"
|
||||
integrity sha512-XhW1vRo1ob6aeK2w3rTohwTPBLse/rvjq+s3RTSBwnlZqoFFjx9cHsShJjAIbLsLjyoacaTxpLZy9v3gg6zypw==
|
||||
|
||||
classnames@^2.3.2:
|
||||
version "2.3.2"
|
||||
resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.2.tgz#351d813bf0137fcc6a76a16b88208d2560a0d924"
|
||||
integrity sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==
|
||||
classnames@^2.5.1:
|
||||
version "2.5.1"
|
||||
resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.5.1.tgz#ba774c614be0f016da105c858e7159eae8e7687b"
|
||||
integrity sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==
|
||||
|
||||
client-only@0.0.1:
|
||||
version "0.0.1"
|
||||
|
@ -312,20 +292,10 @@ csstype@^3.0.2:
|
|||
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81"
|
||||
integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==
|
||||
|
||||
detect-libc@^2.0.2:
|
||||
version "2.0.2"
|
||||
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.2.tgz#8ccf2ba9315350e1241b88d0ac3b0e1fbd99605d"
|
||||
integrity sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==
|
||||
|
||||
glob-to-regexp@^0.4.1:
|
||||
version "0.4.1"
|
||||
resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
|
||||
integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
|
||||
|
||||
graceful-fs@^4.1.2, graceful-fs@^4.2.11:
|
||||
version "4.2.11"
|
||||
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
|
||||
integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
|
||||
detect-libc@^2.0.3:
|
||||
version "2.0.3"
|
||||
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.3.tgz#f0cd503b40f9939b894697d19ad50895e30cf700"
|
||||
integrity sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==
|
||||
|
||||
is-arrayish@^0.3.1:
|
||||
version "0.3.2"
|
||||
|
@ -344,41 +314,33 @@ loose-envify@^1.1.0, loose-envify@^1.4.0:
|
|||
dependencies:
|
||||
js-tokens "^3.0.0 || ^4.0.0"
|
||||
|
||||
lru-cache@^6.0.0:
|
||||
version "6.0.0"
|
||||
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
|
||||
integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
|
||||
dependencies:
|
||||
yallist "^4.0.0"
|
||||
|
||||
nanoid@^3.3.6:
|
||||
version "3.3.7"
|
||||
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8"
|
||||
integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==
|
||||
|
||||
next@14.0.4:
|
||||
version "14.0.4"
|
||||
resolved "https://registry.yarnpkg.com/next/-/next-14.0.4.tgz#bf00b6f835b20d10a5057838fa2dfced1d0d84dc"
|
||||
integrity sha512-qbwypnM7327SadwFtxXnQdGiKpkuhaRLE2uq62/nRul9cj9KhQ5LhHmlziTNqUidZotw/Q1I9OjirBROdUJNgA==
|
||||
next@^15.0.1:
|
||||
version "15.0.1"
|
||||
resolved "https://registry.yarnpkg.com/next/-/next-15.0.1.tgz#a0e8eda35d803cb7f8092b2a2eb9d072e22bf21d"
|
||||
integrity sha512-PSkFkr/w7UnFWm+EP8y/QpHrJXMqpZzAXpergB/EqLPOh4SGPJXv1wj4mslr2hUZBAS9pX7/9YLIdxTv6fwytw==
|
||||
dependencies:
|
||||
"@next/env" "14.0.4"
|
||||
"@swc/helpers" "0.5.2"
|
||||
"@next/env" "15.0.1"
|
||||
"@swc/counter" "0.1.3"
|
||||
"@swc/helpers" "0.5.13"
|
||||
busboy "1.6.0"
|
||||
caniuse-lite "^1.0.30001406"
|
||||
graceful-fs "^4.2.11"
|
||||
caniuse-lite "^1.0.30001579"
|
||||
postcss "8.4.31"
|
||||
styled-jsx "5.1.1"
|
||||
watchpack "2.4.0"
|
||||
styled-jsx "5.1.6"
|
||||
optionalDependencies:
|
||||
"@next/swc-darwin-arm64" "14.0.4"
|
||||
"@next/swc-darwin-x64" "14.0.4"
|
||||
"@next/swc-linux-arm64-gnu" "14.0.4"
|
||||
"@next/swc-linux-arm64-musl" "14.0.4"
|
||||
"@next/swc-linux-x64-gnu" "14.0.4"
|
||||
"@next/swc-linux-x64-musl" "14.0.4"
|
||||
"@next/swc-win32-arm64-msvc" "14.0.4"
|
||||
"@next/swc-win32-ia32-msvc" "14.0.4"
|
||||
"@next/swc-win32-x64-msvc" "14.0.4"
|
||||
"@next/swc-darwin-arm64" "15.0.1"
|
||||
"@next/swc-darwin-x64" "15.0.1"
|
||||
"@next/swc-linux-arm64-gnu" "15.0.1"
|
||||
"@next/swc-linux-arm64-musl" "15.0.1"
|
||||
"@next/swc-linux-x64-gnu" "15.0.1"
|
||||
"@next/swc-linux-x64-musl" "15.0.1"
|
||||
"@next/swc-win32-arm64-msvc" "15.0.1"
|
||||
"@next/swc-win32-x64-msvc" "15.0.1"
|
||||
sharp "^0.33.5"
|
||||
|
||||
object-assign@^4.1.1:
|
||||
version "4.1.1"
|
||||
|
@ -386,9 +348,9 @@ object-assign@^4.1.1:
|
|||
integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
|
||||
|
||||
picocolors@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
|
||||
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b"
|
||||
integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==
|
||||
|
||||
postcss@8.4.31:
|
||||
version "8.4.31"
|
||||
|
@ -408,68 +370,66 @@ prop-types@^15.8.1:
|
|||
object-assign "^4.1.1"
|
||||
react-is "^16.13.1"
|
||||
|
||||
react-dom@^18.2.0:
|
||||
version "18.2.0"
|
||||
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d"
|
||||
integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==
|
||||
react-dom@^18.3.1:
|
||||
version "18.3.1"
|
||||
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4"
|
||||
integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
scheduler "^0.23.0"
|
||||
scheduler "^0.23.2"
|
||||
|
||||
react-is@^16.13.1:
|
||||
version "16.13.1"
|
||||
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
|
||||
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
|
||||
|
||||
react@^18.2.0:
|
||||
version "18.2.0"
|
||||
resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5"
|
||||
integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==
|
||||
react@^18.3.1:
|
||||
version "18.3.1"
|
||||
resolved "https://registry.yarnpkg.com/react/-/react-18.3.1.tgz#49ab892009c53933625bd16b2533fc754cab2891"
|
||||
integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
|
||||
scheduler@^0.23.0:
|
||||
version "0.23.0"
|
||||
resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe"
|
||||
integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==
|
||||
scheduler@^0.23.2:
|
||||
version "0.23.2"
|
||||
resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.2.tgz#414ba64a3b282892e944cf2108ecc078d115cdc3"
|
||||
integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
|
||||
semver@^7.5.4:
|
||||
version "7.5.4"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
|
||||
integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
|
||||
dependencies:
|
||||
lru-cache "^6.0.0"
|
||||
semver@^7.6.3:
|
||||
version "7.6.3"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143"
|
||||
integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==
|
||||
|
||||
sharp@^0.33.1:
|
||||
version "0.33.1"
|
||||
resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.33.1.tgz#81e8778b9f5e2b195666cf56b2e5a110c2399d70"
|
||||
integrity sha512-iAYUnOdTqqZDb3QjMneBKINTllCJDZ3em6WaWy7NPECM4aHncvqHRm0v0bN9nqJxMiwamv5KIdauJ6lUzKDpTQ==
|
||||
sharp@^0.33.5:
|
||||
version "0.33.5"
|
||||
resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.33.5.tgz#13e0e4130cc309d6a9497596715240b2ec0c594e"
|
||||
integrity sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==
|
||||
dependencies:
|
||||
color "^4.2.3"
|
||||
detect-libc "^2.0.2"
|
||||
semver "^7.5.4"
|
||||
detect-libc "^2.0.3"
|
||||
semver "^7.6.3"
|
||||
optionalDependencies:
|
||||
"@img/sharp-darwin-arm64" "0.33.1"
|
||||
"@img/sharp-darwin-x64" "0.33.1"
|
||||
"@img/sharp-libvips-darwin-arm64" "1.0.0"
|
||||
"@img/sharp-libvips-darwin-x64" "1.0.0"
|
||||
"@img/sharp-libvips-linux-arm" "1.0.0"
|
||||
"@img/sharp-libvips-linux-arm64" "1.0.0"
|
||||
"@img/sharp-libvips-linux-s390x" "1.0.0"
|
||||
"@img/sharp-libvips-linux-x64" "1.0.0"
|
||||
"@img/sharp-libvips-linuxmusl-arm64" "1.0.0"
|
||||
"@img/sharp-libvips-linuxmusl-x64" "1.0.0"
|
||||
"@img/sharp-linux-arm" "0.33.1"
|
||||
"@img/sharp-linux-arm64" "0.33.1"
|
||||
"@img/sharp-linux-s390x" "0.33.1"
|
||||
"@img/sharp-linux-x64" "0.33.1"
|
||||
"@img/sharp-linuxmusl-arm64" "0.33.1"
|
||||
"@img/sharp-linuxmusl-x64" "0.33.1"
|
||||
"@img/sharp-wasm32" "0.33.1"
|
||||
"@img/sharp-win32-ia32" "0.33.1"
|
||||
"@img/sharp-win32-x64" "0.33.1"
|
||||
"@img/sharp-darwin-arm64" "0.33.5"
|
||||
"@img/sharp-darwin-x64" "0.33.5"
|
||||
"@img/sharp-libvips-darwin-arm64" "1.0.4"
|
||||
"@img/sharp-libvips-darwin-x64" "1.0.4"
|
||||
"@img/sharp-libvips-linux-arm" "1.0.5"
|
||||
"@img/sharp-libvips-linux-arm64" "1.0.4"
|
||||
"@img/sharp-libvips-linux-s390x" "1.0.4"
|
||||
"@img/sharp-libvips-linux-x64" "1.0.4"
|
||||
"@img/sharp-libvips-linuxmusl-arm64" "1.0.4"
|
||||
"@img/sharp-libvips-linuxmusl-x64" "1.0.4"
|
||||
"@img/sharp-linux-arm" "0.33.5"
|
||||
"@img/sharp-linux-arm64" "0.33.5"
|
||||
"@img/sharp-linux-s390x" "0.33.5"
|
||||
"@img/sharp-linux-x64" "0.33.5"
|
||||
"@img/sharp-linuxmusl-arm64" "0.33.5"
|
||||
"@img/sharp-linuxmusl-x64" "0.33.5"
|
||||
"@img/sharp-wasm32" "0.33.5"
|
||||
"@img/sharp-win32-ia32" "0.33.5"
|
||||
"@img/sharp-win32-x64" "0.33.5"
|
||||
|
||||
simple-swizzle@^0.2.2:
|
||||
version "0.2.2"
|
||||
|
@ -479,51 +439,38 @@ simple-swizzle@^0.2.2:
|
|||
is-arrayish "^0.3.1"
|
||||
|
||||
source-map-js@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
|
||||
integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
|
||||
version "1.2.1"
|
||||
resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46"
|
||||
integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==
|
||||
|
||||
streamsearch@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764"
|
||||
integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==
|
||||
|
||||
styled-jsx@5.1.1:
|
||||
version "5.1.1"
|
||||
resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.1.tgz#839a1c3aaacc4e735fed0781b8619ea5d0009d1f"
|
||||
integrity sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==
|
||||
styled-jsx@5.1.6:
|
||||
version "5.1.6"
|
||||
resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.6.tgz#83b90c077e6c6a80f7f5e8781d0f311b2fe41499"
|
||||
integrity sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==
|
||||
dependencies:
|
||||
client-only "0.0.1"
|
||||
|
||||
tslib@^2.4.0:
|
||||
version "2.6.2"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae"
|
||||
integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==
|
||||
version "2.8.0"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.0.tgz#d124c86c3c05a40a91e6fdea4021bd31d377971b"
|
||||
integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==
|
||||
|
||||
typescript@5.3.3:
|
||||
version "5.3.3"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.3.tgz#b3ce6ba258e72e6305ba66f5c9b452aaee3ffe37"
|
||||
integrity sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==
|
||||
typescript@^5.6.3:
|
||||
version "5.6.3"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.6.3.tgz#5f3449e31c9d94febb17de03cc081dd56d81db5b"
|
||||
integrity sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==
|
||||
|
||||
undici-types@~5.26.4:
|
||||
version "5.26.5"
|
||||
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617"
|
||||
integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==
|
||||
undici-types@~6.19.8:
|
||||
version "6.19.8"
|
||||
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02"
|
||||
integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==
|
||||
|
||||
watchpack@2.4.0:
|
||||
version "2.4.0"
|
||||
resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d"
|
||||
integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==
|
||||
dependencies:
|
||||
glob-to-regexp "^0.4.1"
|
||||
graceful-fs "^4.1.2"
|
||||
|
||||
web-vitals@^3.0.3:
|
||||
version "3.5.0"
|
||||
resolved "https://registry.yarnpkg.com/web-vitals/-/web-vitals-3.5.0.tgz#3a5571f00743ecd059394b61e0adceec7fac2634"
|
||||
integrity sha512-f5YnCHVG9Y6uLCePD4tY8bO/Ge15NPEQWtvm3tPzDKygloiqtb4SVqRHBcrIAqo2ztqX5XueqDn97zHF0LdT6w==
|
||||
|
||||
yallist@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
|
||||
integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
|
||||
web-vitals@^4.2.4:
|
||||
version "4.2.4"
|
||||
resolved "https://registry.yarnpkg.com/web-vitals/-/web-vitals-4.2.4.tgz#1d20bc8590a37769bd0902b289550936069184b7"
|
||||
integrity sha512-r4DIlprAGwJ7YM11VZp4R884m0Vmgr6EAKe3P+kO0PPj3Unqyvv59rczf6UiGcb9Z8QxZVcqKNwv/g0WNdWwsw==
|
||||
|
|
Loading…
Reference in a new issue