diff --git a/.eslintignore b/.eslintignore
index 6ceff293f..2f4ad0b42 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -35,3 +35,5 @@ yarn-error.log*
# packages
cli-template-*
+
+!apps/website/src/app/build
diff --git a/.eslintrc.json b/.eslintrc.json
index d9b4b80a3..81bfd3bc8 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -3,7 +3,7 @@
"env": {
"es6": true
},
- "extends": ["airbnb-base", "airbnb-typescript/base", "plugin:jest/recommended", "plugin:jest/style", "prettier"],
+ "extends": ["airbnb", "airbnb-typescript/base", "plugin:jest/recommended", "plugin:jest/style", "prettier"],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": 6,
@@ -12,6 +12,12 @@
},
"plugins": ["@typescript-eslint", "jest"],
"rules": {
+ "react/require-default-props": "off",
+ "react/jsx-props-no-spreading": "off",
+ "react/react-in-jsx-scope": "off",
+ "react/jsx-filename-extension": [1, { "extensions": [".tsx"] }],
+ "import/prefer-default-export": "off",
+ "import/extensions": "off",
"no-underscore-dangle": "off",
"import/no-extraneous-dependencies": "off",
"no-bitwise": "off",
diff --git a/.prettierignore b/.prettierignore
index 7d9431b3d..bc9b12a74 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -44,4 +44,6 @@ snark-artifacts
# Next.js
.next/
-public
\ No newline at end of file
+public
+
+!apps/website/src/app/build
diff --git a/apps/website/.gitignore b/apps/website/.gitignore
new file mode 100644
index 000000000..3a80bb798
--- /dev/null
+++ b/apps/website/.gitignore
@@ -0,0 +1,37 @@
+# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
+
+# dependencies
+/node_modules
+/.pnp
+.pnp.js
+
+# testing
+/coverage
+
+# next.js
+/.next/
+/out/
+
+# production
+/build
+
+# misc
+.DS_Store
+*.pem
+
+# debug
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# local env files
+.env*.local
+
+# vercel
+.vercel
+
+# typescript
+*.tsbuildinfo
+next-env.d.ts
+
+!src/app/build
\ No newline at end of file
diff --git a/apps/website/README.md b/apps/website/README.md
new file mode 100644
index 000000000..5ce4a7c66
--- /dev/null
+++ b/apps/website/README.md
@@ -0,0 +1,36 @@
+This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
+
+## Getting Started
+
+First, run the development server:
+
+```bash
+npm run dev
+# or
+yarn dev
+# or
+pnpm dev
+# or
+bun dev
+```
+
+Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
+
+You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
+
+This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
+
+## Learn More
+
+To learn more about Next.js, take a look at the following resources:
+
+- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
+- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
+
+You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
+
+## Deploy on Vercel
+
+The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
+
+Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
diff --git a/apps/website/next.config.js b/apps/website/next.config.js
new file mode 100644
index 000000000..dda562e2a
--- /dev/null
+++ b/apps/website/next.config.js
@@ -0,0 +1,13 @@
+/** @type {import('next').NextConfig} */
+const nextConfig = {
+ images: {
+ remotePatterns: [
+ {
+ protocol: "https",
+ hostname: "semaphore.cedoor.dev"
+ }
+ ]
+ }
+}
+
+module.exports = nextConfig
diff --git a/apps/website/package.json b/apps/website/package.json
new file mode 100644
index 000000000..ee979e363
--- /dev/null
+++ b/apps/website/package.json
@@ -0,0 +1,29 @@
+{
+ "name": "semaphore-website",
+ "version": "2.0.0",
+ "private": true,
+ "scripts": {
+ "dev": "next dev",
+ "build": "next build",
+ "start": "next start"
+ },
+ "dependencies": {
+ "@chakra-ui/next-js": "^2.1.5",
+ "@chakra-ui/react": "^2.8.1",
+ "@chakra-ui/theme": "^3.3.0",
+ "@chakra-ui/theme-tools": "^2.1.1",
+ "@emotion/react": "^11.11.1",
+ "@emotion/styled": "^11.11.0",
+ "framer-motion": "^10.16.4",
+ "next": "13.5.5",
+ "react": "^18",
+ "react-code-blocks": "^0.1.4",
+ "react-dom": "^18"
+ },
+ "devDependencies": {
+ "@types/node": "^20",
+ "@types/react": "^18",
+ "@types/react-dom": "^18",
+ "typescript": "^5"
+ }
+}
diff --git a/apps/website/public/apple-icon.png b/apps/website/public/apple-icon.png
new file mode 100644
index 000000000..ed4cb2bca
Binary files /dev/null and b/apps/website/public/apple-icon.png differ
diff --git a/apps/website/public/icon.svg b/apps/website/public/icon.svg
new file mode 100644
index 000000000..4d16a5525
--- /dev/null
+++ b/apps/website/public/icon.svg
@@ -0,0 +1,4 @@
+
diff --git a/apps/website/public/semaphore-icon.svg b/apps/website/public/semaphore-icon.svg
new file mode 100644
index 000000000..11db9b12b
--- /dev/null
+++ b/apps/website/public/semaphore-icon.svg
@@ -0,0 +1,4 @@
+
diff --git a/apps/website/public/semaphore-logo.svg b/apps/website/public/semaphore-logo.svg
new file mode 100644
index 000000000..82ab73c3e
--- /dev/null
+++ b/apps/website/public/semaphore-logo.svg
@@ -0,0 +1,13 @@
+
diff --git a/apps/website/public/social-media.png b/apps/website/public/social-media.png
new file mode 100644
index 000000000..3ad281151
Binary files /dev/null and b/apps/website/public/social-media.png differ
diff --git a/apps/website/src/app/build/page.tsx b/apps/website/src/app/build/page.tsx
new file mode 100644
index 000000000..10a183aee
--- /dev/null
+++ b/apps/website/src/app/build/page.tsx
@@ -0,0 +1,159 @@
+import { Flex, Link, Text, VStack, Box, Image } from "@chakra-ui/react"
+import ActionCard from "../../components/ActionCard"
+import ToolsCard from "../../components/ToolsCard"
+import IconArrowRight from "../../icons/IconArrowRight"
+import IconBook from "../../icons/IconBook"
+import IconBox from "../../icons/IconBox"
+import IconCli from "../../icons/IconCli"
+
+export default function Build() {
+ const toolCardsInfo = [
+ {
+ icon: ,
+ title: "CLI",
+ subtitle: "INTEGRATE TO YOUR PROJECT",
+ url: "https://github.com/semaphore-protocol/semaphore/tree/main/packages/cli#readme",
+ details: [
+ "Streamline setting up a new Semaphore project",
+ "Interact with group, members & proofs data easily",
+ "Reduce set-up time from a few minutes to a few seconds"
+ ]
+ },
+ {
+ icon: ,
+ title: "Boilerplate",
+ subtitle: "START FROM TEMPLATE",
+ url: "https://github.com/semaphore-protocol/boilerplate",
+ details: [
+ "Begin your projects with a ready-to-use example template",
+ "Create identity, join group, send anonmous feedback",
+ "Easily modify to align with specific project goals"
+ ]
+ },
+ {
+ icon: ,
+ title: "Packages",
+ subtitle: "LEVERAGE DEVELOPED LIBRARIES",
+ url: "https://github.com/semaphore-protocol/semaphore/tree/main/packages",
+ details: [
+ "Curated libraries to enhance your development process",
+ "Preconfigured deployments with Hardhat plugin",
+ "Facilitate offchain & onchain groups, members & proofs interactions"
+ ]
+ }
+ ]
+
+ const linksInfo = [
+ {
+ title: "Good first issues",
+ href: "https://github.com/semaphore-protocol/semaphore/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22"
+ },
+ {
+ title: "Enhance the protocol",
+ href: "https://github.com/semaphore-protocol/semaphore/discussions/new?category=ideas"
+ },
+ {
+ title: "Give feedback about the website",
+ href: "https://github.com/semaphore-protocol/semaphore/discussions/new?category=website"
+ }
+ ]
+ return (
+
+
+
+ Let’s build something new
+
+
+ Jumpstart your app development process with these building tools.
+
+
+
+ {toolCardsInfo.map((toolCardInfo) => (
+
+ ))}
+
+
+
+
+
+
+
+ Contribute to Semaphore
+
+
+ Semaphore is open source with dozens of community contributors. You can propose improvements
+ to the protocol or take good first issues to get started.
+
+
+ {linksInfo.map((linkInfo) => (
+
+
+ {linkInfo.title}
+
+
+
+ ))}
+
+
+
+
+
+
+
+
+
+
+
+
+ )
+}
diff --git a/apps/website/src/app/layout.tsx b/apps/website/src/app/layout.tsx
new file mode 100644
index 000000000..2ec56487e
--- /dev/null
+++ b/apps/website/src/app/layout.tsx
@@ -0,0 +1,42 @@
+import { Box, Container } from "@chakra-ui/react"
+import type { Metadata } from "next"
+import Footer from "../components/Footer"
+import Navbar from "../components/Navbar"
+import Providers from "./providers"
+
+export const metadata: Metadata = {
+ title: "Semaphore",
+ description: "A zero-knowledge protocol for anonymous signaling on Ethereum.",
+ icons: { icon: "/icon.svg", apple: "/apple-icon.png" },
+ metadataBase: new URL("https://website.semaphore.pse.dev"),
+ openGraph: {
+ type: "website",
+ url: "https://website.semaphore.pse.dev",
+ title: "Semaphore",
+ description: "A zero-knowledge protocol for anonymous signaling on Ethereum.",
+ siteName: "Semaphore",
+ images: [
+ {
+ url: "https://website.semaphore.pse.dev/social-media.png"
+ }
+ ]
+ },
+ twitter: { card: "summary_large_image", images: "https://website.semaphore.pse.dev/social-media.png" }
+}
+
+export default function RootLayout({ children }: { children: React.ReactNode }) {
+ return (
+
+
+
+
+
+
+ {children}
+
+
+
+
+
+ )
+}
diff --git a/apps/website/src/app/learn/page.tsx b/apps/website/src/app/learn/page.tsx
new file mode 100644
index 000000000..b7f2dc046
--- /dev/null
+++ b/apps/website/src/app/learn/page.tsx
@@ -0,0 +1,394 @@
+import {
+ Flex,
+ Link,
+ Text,
+ VStack,
+ Tabs,
+ TabList,
+ TabPanels,
+ Tab,
+ TabPanel,
+ Divider,
+ Box,
+ Image
+} from "@chakra-ui/react"
+import InfoCard, { InfoBlock } from "../../components/InfoCard"
+import SectionBlock, { SectionBlockProps } from "../../components/SectionBlock"
+import IconEyelash from "@/icons/IconEyelash"
+import IconEye from "@/icons/IconEye"
+import IconUser from "@/icons/IconUser"
+import IconTree from "@/icons/IconTree"
+import IconManageUsers from "@/icons/IconManageUsers"
+import IconGroup from "@/icons/IconGroup"
+import IconBadge from "@/icons/IconBadge"
+import IconCheck from "@/icons/IconCheck"
+import IconFlag from "@/icons/IconFlag"
+import Carousel from "@/components/Carousel"
+import videos from "../../data/videos.json"
+import VideoCard from "../../components/VideoCard"
+import articles from "../../data/articles.json"
+import ArticleCard from "../../components/ArticleCard"
+import { sortByDate } from "@/utils/sortByDate"
+
+export default function Learn() {
+ const infoCardTexts: InfoBlock[][] = [
+ [
+ {
+ title: "Accessibility",
+ body: "To reach a very large group of developers, a protocol needs to be extremely user-friendly, understandable and simple."
+ },
+ {
+ title: "Composability",
+ body: "Achieve an excellent balance between simplicity and functionality through modularity, autonomy, and interoperability. "
+ },
+ {
+ title: "Efficiency",
+ body: "A protocol must not only work, it must also be extremely efficient if the goal is to support privacy by default for everyone."
+ }
+ ],
+ [
+ {
+ title: "Developer experience",
+ body: "Enabling developers to focus on innovation by simplifying complexities while supporting diverse use cases."
+ },
+ {
+ title: "Education",
+ body: "Empowering individuals with knowledge, resources, and support, ensuring they're equipped to innovate and solve challenges."
+ },
+ {
+ title: "Community",
+ body: "Fostering spaces where collaboration thrives, ideas flourish, and diverse voices are celebrated."
+ }
+ ],
+ [
+ {
+ title: "Completeness",
+ body: "If the statement is true, an honest verifier will be convinced of this fact by an honest prover every time."
+ },
+ {
+ title: "Soundness",
+ body: "If the statement is false, no cheating prover can convince an honest verifier that is true, except with some small probability."
+ },
+ {
+ title: "Zero-knowledge",
+ body: "If the statement is true, no verifier learns anything other than the fact that the statement is true."
+ }
+ ]
+ ]
+
+ const sectionBlockTexts: SectionBlockProps[] = [
+ {
+ title: "Semaphore identities",
+ description:
+ "Given to all Semaphore group members, it is comprised of three parts - identity commitment, trapdoor, and nullifier.",
+ linkText: "Create Semaphore identities",
+ linkUrl: "https://semaphore.pse.dev/docs/guides/identities",
+ codeText: `import { Identity } from "@semaphore-protocol/identity"
+
+const identity = new Identity()
+
+const trapdoor = identity.getTrapdoor()
+const nullifier = identity.getNullifier()
+const commitment = identity.generateCommitment()`,
+ itemList: [
+ {
+ icon: ,
+ heading: "Private values",
+ body: "Trapdoor and nullifier values are the private values of the Semaphore identity. To avoid fraud, the owner must keep both values secret."
+ },
+ {
+ icon: ,
+ heading: "Public values",
+ body: "Semaphore uses the Poseidon hash function to create the identity commitment from the identity private values. Identity commitments can be made public, similarly to Ethereum addresses."
+ },
+ {
+ icon: ,
+ heading: "Generate identities",
+ body: "Semaphore identities can be generated deterministically or randomly. Deterministic identities can be generated from the hash of a secret message."
+ }
+ ]
+ },
+ {
+ title: "Semaphore groups",
+ description:
+ "Semaphore groups are binary incremental Merkle trees that store the public identity commitment of each member.",
+ linkText: "Create Semaphore groups",
+ linkUrl: "https://semaphore.pse.dev/docs/guides/groups",
+ codeText: `import { Group } from "@semaphore-protocol/group"
+
+const group = new Group(1)
+
+group.addMember(commitment)`,
+ itemList: [
+ {
+ icon: ,
+ heading: "Merkle trees",
+ body: "Each leaf contains an identity commitment for a user. The identity commitment proves that the user is a group member without revealing the private identity of the user."
+ },
+ {
+ icon: ,
+ heading: "Types of groups",
+ body: "Groups can be created and managed in a decentralized fashion with Semaphore contracts or off-chain with our JavaScript libraries."
+ },
+ {
+ icon: ,
+ heading: "Group management",
+ body: "Users can join and leave groups by themselves, or an admin can add and remove them. Admins can be centralized authorities, Ethereum accounts, multi-sig wallets or smart contracts."
+ }
+ ]
+ },
+ {
+ title: "Semaphore proofs",
+ description:
+ "Semaphore group members can anonymously prove that they are part of a group and that they are generating their own proofs and signals.",
+ linkText: "Generate Semaphore proofs",
+ linkUrl: "https://semaphore.pse.dev/docs/guides/proofs",
+ codeText: `import { generateProof, verifyProof } from "@semaphore-protocol/proof"
+
+const externalNullifier = BigInt(1)
+const signal = "Hello world"
+
+const fullProof = await generateProof(identity, group, externalNullifier, signal, {
+ zkeyFilePath: "./semaphore.zkey",
+ wasmFilePath: "./semaphore.wasm"
+})
+
+const verificationKey = JSON.parse(fs.readFileSync("./semaphore.json", "utf-8"))
+
+await verifyProof(verificationKey, fullProof)`,
+ itemList: [
+ {
+ icon: ,
+ heading: "Membership",
+ body: "Only users who are part of a group can generate a valid proof for that group."
+ },
+ {
+ icon: ,
+ heading: "Signals",
+ body: "Group users can anonymously broadcast signals such as votes or endorsements without revealing their original identity."
+ },
+ {
+ icon: ,
+ heading: "Verifiers",
+ body: "Semaphore proofs can be verified with our contracts or off-chain with our JavaScript libraries."
+ }
+ ]
+ }
+ ]
+
+ const renderTabBlockSemaphore = () => (
+
+
+
+ Semaphore: Anonymous interactions
+
+
+ Using zero knowledge, Semaphore allows users to prove their membership of a group and send signals
+ such as votes or endorsements without revealing their original identity. The goal is to make
+ Semaphore a standard for anonymous signaling and group membership proving.
+
+
+
+
+
+
+ Principles
+
+
+
+
+
+ Main focus
+
+
+
+
+
+
+ )
+
+ const renderTabBlockZeroKnowledge = () => (
+
+
+
+ Zero Knowledge: new cryptography
+
+
+ Zero-knowledge is a new field in cryptography that allows developers to build apps that allow users
+ to share information with each other without revealing their identities or the contents of the
+ information being shared.
+
+
+
+ Learn more
+
+
+
+
+
+
+ Characteristics
+
+
+
+
+
+ )
+
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ About Semaphore
+
+
+ About Zero Knowledge
+
+
+
+
+ {renderTabBlockSemaphore()}
+ {renderTabBlockZeroKnowledge()}
+
+
+
+
+
+ {sectionBlockTexts.map((sectionBlockText, i) => (
+
+
+ {i !== sectionBlockTexts.length - 1 && }
+
+ ))}
+
+
+
+
+
+
+
+
+
+
+
+ Videos
+
+
+ {sortByDate(videos).map((video) => (
+
+
+
+
+
+ ))}
+
+
+ Articles
+
+
+ {sortByDate(articles).map((article) => (
+
+
+
+ ))}
+
+
+
+ )
+}
diff --git a/apps/website/src/app/page.tsx b/apps/website/src/app/page.tsx
new file mode 100644
index 000000000..a6eebe560
--- /dev/null
+++ b/apps/website/src/app/page.tsx
@@ -0,0 +1,256 @@
+import { Box, Button, Card, CardBody, Heading, HStack, Link, Stack, Text, VStack, Image } from "@chakra-ui/react"
+import { Sora } from "next/font/google"
+import Carousel from "../components/Carousel"
+import ProjectCard from "../components/ProjectCard"
+import events from "../data/events.json"
+import projects from "../data/projects.json"
+import IconDiscord from "../icons/IconDiscord"
+
+const sora = Sora({
+ subsets: ["latin"]
+})
+
+export default function Home() {
+ return (
+
+
+
+
+
+
+
+
+ Anonymous interactions
+
+
+ Using zero knowledge, users can prove their group membership and send signals such as votes or
+ endorsements without revealing their original identity.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Explore projects built with Semaphore
+
+
+
+ {projects.slice(0, 3).map((project) => (
+
+ ))}
+
+
+
+
+
+
+
+ Semaphore Features
+
+
+
+
+
+
+ 1
+
+
+
+ Simplified privacy
+
+
+ Semaphore streamlines privacy-centric app development. It empowers developers to
+ effortlessly incorporate robust privacy features.
+
+
+
+
+
+ 3
+
+
+
+ Universal integrations
+
+
+ Semaphore is a protocol for Web2 and Web3. It integrates into any front-end
+ framework or pure HTML/CSS/JS. It is cross-chain compatible with EVM, L2s, and
+ alt-blockchains.
+
+
+
+
+
+
+
+ 2
+
+
+
+ Leverage Zero Knowledge
+
+
+ Semaphore leverages Zero Knowledge, allowing us to verify information without
+ revealing any underlying data. This powerful primitive allows one to prove
+ membership and signal anonymously.
+
+
+
+
+
+ 4
+
+
+
+ Free open source software
+
+
+ Semaphore is a Public Good. This means it will never seek to profit, it is owned
+ by the community and will always remain open source.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Join the Semaphore community
+
+ Ask questions, suggest ideas, stay up-to-date, and meet other people building privacy
+ applications with Zero Knowledge.
+
+
+ } size="lg">
+ Discord
+
+
+
+
+
+
+
+ Upcoming Events
+
+
+
+ {events.map((event) => (
+
+
+
+ {event.date} | {event.name}
+
+ {event.description}
+
+
+ ))}
+
+
+
+
+
+
+ )
+}
diff --git a/apps/website/src/app/projects/page.tsx b/apps/website/src/app/projects/page.tsx
new file mode 100644
index 000000000..7bbfae385
--- /dev/null
+++ b/apps/website/src/app/projects/page.tsx
@@ -0,0 +1,56 @@
+import { Box, Heading, Text, VStack, Image } from "@chakra-ui/react"
+import ActionCard from "../../components/ActionCard"
+import ProjectsList from "../../components/ProjectsList"
+
+export default function Projects() {
+ return (
+
+
+
+
+
+
+
+ Built with Semaphore
+
+
+ Discover a curated showcase of innovative projects
and applications developed using the
+ Semaphore Protocol.
+
+
+
+
+
+
+
+
+
+
+ )
+}
diff --git a/apps/website/src/app/providers.tsx b/apps/website/src/app/providers.tsx
new file mode 100644
index 000000000..910643fc2
--- /dev/null
+++ b/apps/website/src/app/providers.tsx
@@ -0,0 +1,13 @@
+"use client"
+
+import { CacheProvider } from "@chakra-ui/next-js"
+import { ChakraProvider } from "@chakra-ui/react"
+import theme from "../styles/index"
+
+export default function Providers({ children }: { children: React.ReactNode }) {
+ return (
+
+ {children}
+
+ )
+}
diff --git a/apps/website/src/components/ActionCard.tsx b/apps/website/src/components/ActionCard.tsx
new file mode 100644
index 000000000..dbcde8981
--- /dev/null
+++ b/apps/website/src/components/ActionCard.tsx
@@ -0,0 +1,66 @@
+import { Heading, Text, Card, CardBody, Stack, Flex, Link } from "@chakra-ui/react"
+
+export type ActionCardProps = {
+ title: string
+ description: string
+ buttonText: string
+ buttonUrl: string
+}
+
+export default function ActionCard({ title, description, buttonText, buttonUrl }: ActionCardProps) {
+ return (
+
+
+
+
+
+ {title}
+
+
+ {description}
+
+
+
+
+ {buttonText}
+
+
+
+
+
+ )
+}
diff --git a/apps/website/src/components/ArticleCard.tsx b/apps/website/src/components/ArticleCard.tsx
new file mode 100644
index 000000000..73d1732e4
--- /dev/null
+++ b/apps/website/src/components/ArticleCard.tsx
@@ -0,0 +1,34 @@
+import { Heading, Text, Card, CardBody, CardFooter, Link } from "@chakra-ui/react"
+
+export type ArticleCardProps = {
+ title: string
+ minRead: number
+ url: string
+}
+
+export default function ArticleCard({ title, minRead, url }: ArticleCardProps) {
+ return (
+
+
+
+
+ {title}
+
+
+
+
+ {`${minRead} min read`}
+
+
+
+
+ )
+}
diff --git a/apps/website/src/components/Carousel.tsx b/apps/website/src/components/Carousel.tsx
new file mode 100644
index 000000000..832ee5466
--- /dev/null
+++ b/apps/website/src/components/Carousel.tsx
@@ -0,0 +1,161 @@
+"use client"
+
+import { Box, HStack, Heading, IconButton, Link, StackProps, VStack, useBreakpointValue } from "@chakra-ui/react"
+import NextLink from "next/link"
+import { useCallback, useState } from "react"
+import articles from "../data/articles.json"
+import projects from "../data/projects.json"
+import videos from "../data/videos.json"
+import IconArrowLeft from "../icons/IconArrowLeft"
+import IconArrowRight from "../icons/IconArrowRight"
+import { getDataLength } from "../utils/getDataLength"
+import ArticleCard from "./ArticleCard"
+import ProjectCard from "./ProjectCard"
+import VideoCard from "./VideoCard"
+import { sortByDate } from "@/utils/sortByDate"
+
+export type CarouselProps = {
+ title: string
+ sizes: {
+ base?: number
+ sm?: number
+ md?: number
+ lg?: number
+ }
+ type: "projects" | "videos" | "articles"
+}
+
+export default function Carousel({ title, sizes, type, ...props }: CarouselProps & StackProps) {
+ const [index, setIndex] = useState(0)
+ const size = useBreakpointValue(sizes)
+
+ const nextProject = useCallback(() => {
+ if (index + 1 === Math.ceil(getDataLength(type) / size!)) {
+ setIndex(0)
+ } else {
+ setIndex((prevIndex) => prevIndex + 1)
+ }
+ }, [index, size])
+
+ const previousProject = useCallback(() => {
+ if (index === 0) {
+ setIndex(Math.ceil(getDataLength(type) / size!) - 1)
+ } else {
+ setIndex((prevIndex) => prevIndex - 1)
+ }
+ }, [index, size])
+
+ return (
+
+
+
+ {title}
+
+
+ {type !== "projects" && (
+
+ }
+ />
+ }
+ />
+
+ )}
+
+
+
+
+ {type === "projects" &&
+ projects.map((project) => (
+
+
+
+ ))}
+
+ {type === "articles" &&
+ sortByDate(articles).map((article) => (
+
+
+
+ ))}
+
+ {type === "videos" &&
+ sortByDate(videos).map((video) => (
+
+
+
+ ))}
+
+
+
+ {type === "projects" && (
+
+
+
+
+ }
+ />
+ }
+ />
+
+
+
+
+ View more
+
+
+
+ )}
+
+ )
+}
diff --git a/apps/website/src/components/CodeBlock.tsx b/apps/website/src/components/CodeBlock.tsx
new file mode 100644
index 000000000..e76b28cc2
--- /dev/null
+++ b/apps/website/src/components/CodeBlock.tsx
@@ -0,0 +1,43 @@
+import { Flex, useClipboard, Button } from "@chakra-ui/react"
+import { CodeBlock, ocean } from "react-code-blocks"
+
+export type CodekBlockProps = {
+ text: string
+}
+
+export default function CodekBlock({ text }: CodekBlockProps) {
+ const { onCopy, hasCopied } = useClipboard(text)
+
+ const copyBlockProps = {
+ text,
+ language: "ts",
+ showLineNumbers: false,
+ wrapLines: true,
+ theme: ocean,
+ customStyle: {
+ background: "transparent",
+ overflow: "auto",
+ padding: "24px",
+ paddingRight: "120px",
+ paddingTop: "60px"
+ }
+ }
+ return (
+
+
+
+
+ )
+}
diff --git a/apps/website/src/components/Footer.tsx b/apps/website/src/components/Footer.tsx
new file mode 100644
index 000000000..3b1f4751a
--- /dev/null
+++ b/apps/website/src/components/Footer.tsx
@@ -0,0 +1,100 @@
+import { Divider, Heading, HStack, Link, Stack, Text, VStack } from "@chakra-ui/react"
+import Image from "next/image"
+import NextLink from "next/link"
+import IconArrowUpRight from "../icons/IconArrowUpRight"
+import IconDiscord from "../icons/IconDiscord"
+import IconThumbsUp from "../icons/IconThumbsUp"
+import IconX from "@/icons/IconX"
+
+export default function Footer() {
+ return (
+
+
+
+
+
+
+ Projects
+
+
+
+
+ Learn
+
+
+
+
+ Build
+
+
+
+
+
+ Documentation
+
+
+
+
+
+
+
+ Github
+
+
+
+
+
+
+
+ Design Kit
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Discord
+
+
+
+
+
+
+
+ Twitter
+
+
+
+
+
+
+
+
+
+
+ Give feedback about the website
+
+
+
+
+
+ Copyright © 2023 Ethereum Foundation
+
+
+
+
+ )
+}
diff --git a/apps/website/src/components/InfoCard.tsx b/apps/website/src/components/InfoCard.tsx
new file mode 100644
index 000000000..eeecb043b
--- /dev/null
+++ b/apps/website/src/components/InfoCard.tsx
@@ -0,0 +1,41 @@
+import { Heading, Text, Card, CardBody, VStack } from "@chakra-ui/react"
+
+export type InfoBlock = {
+ title: string
+ body: string
+}
+
+export type InfoCardProps = {
+ texts: InfoBlock[]
+}
+
+export default function InfoCard({ texts }: InfoCardProps) {
+ return (
+
+
+
+ {texts.map((text) => (
+
+
+ {text.title}
+
+
+ {text.body}
+
+
+ ))}
+
+
+
+ )
+}
diff --git a/apps/website/src/components/Navbar.tsx b/apps/website/src/components/Navbar.tsx
new file mode 100644
index 000000000..d1bcb3b8a
--- /dev/null
+++ b/apps/website/src/components/Navbar.tsx
@@ -0,0 +1,117 @@
+"use client"
+
+import {
+ Box,
+ Container,
+ Divider,
+ Drawer,
+ DrawerBody,
+ DrawerCloseButton,
+ DrawerContent,
+ DrawerFooter,
+ DrawerOverlay,
+ HStack,
+ Heading,
+ IconButton,
+ Link,
+ Text,
+ VStack,
+ useDisclosure
+} from "@chakra-ui/react"
+import Image from "next/image"
+import NextLink from "next/link"
+import IconDiscord from "../icons/IconDiscord"
+import IconMenu from "../icons/IconMenu"
+import IconThumbsUp from "../icons/IconThumbsUp"
+import NavbarLinks from "./NavbarLinks"
+import IconX from "@/icons/IconX"
+
+export default function Navbar() {
+ const { isOpen, onOpen, onClose } = useDisclosure()
+
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ }
+ />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Discord
+
+
+
+
+
+
+
+ Twitter
+
+
+
+
+
+
+
+
+
+
+ Give feedback about the website
+
+
+
+
+
+ Copyright © 2023 Ethereum Foundation
+
+
+
+
+
+
+
+
+
+ )
+}
diff --git a/apps/website/src/components/NavbarLinks.tsx b/apps/website/src/components/NavbarLinks.tsx
new file mode 100644
index 000000000..cdae53591
--- /dev/null
+++ b/apps/website/src/components/NavbarLinks.tsx
@@ -0,0 +1,68 @@
+"use client"
+
+import { HStack, Heading, Link } from "@chakra-ui/react"
+import NextLink from "next/link"
+import { usePathname } from "next/navigation"
+import IconArrowUpRight from "../icons/IconArrowUpRight"
+
+export type NavbarProps = {
+ onClick?: () => void
+}
+
+export default function NavbarLinks({ onClick }: NavbarProps) {
+ const pathname = usePathname()
+
+ return (
+ <>
+
+
+ Projects
+
+
+
+
+ Learn
+
+
+
+
+ Build
+
+
+
+
+
+ Documentation
+
+
+
+
+
+
+
+ Github
+
+
+
+
+ >
+ )
+}
diff --git a/apps/website/src/components/ProjectCard.tsx b/apps/website/src/components/ProjectCard.tsx
new file mode 100644
index 000000000..7cd242c76
--- /dev/null
+++ b/apps/website/src/components/ProjectCard.tsx
@@ -0,0 +1,42 @@
+import { Card, CardBody, HStack, Heading, Link, LinkProps, Tag, Text } from "@chakra-ui/react"
+
+export type ProjectCardProps = {
+ categories: string[]
+ title: string
+ description: string
+ url?: string
+}
+
+export default function ProjectCard({ categories, title, description, url, ...props }: ProjectCardProps & LinkProps) {
+ return (
+
+
+
+ {categories.map((category) => (
+
+ {category}
+
+ ))}
+
+
+
+ {title}
+
+
+ {description}
+
+
+
+
+ )
+}
diff --git a/apps/website/src/components/ProjectsList.tsx b/apps/website/src/components/ProjectsList.tsx
new file mode 100644
index 000000000..8c0a15609
--- /dev/null
+++ b/apps/website/src/components/ProjectsList.tsx
@@ -0,0 +1,154 @@
+"use client"
+
+import { Button, Grid, GridItem, HStack, IconButton, Text, VStack } from "@chakra-ui/react"
+import { useCallback, useEffect, useRef, useState } from "react"
+import ProjectCard from "../components/ProjectCard"
+import allProjects from "../data/projects.json"
+import IconChevronLeft from "../icons/IconChevronLeft"
+import IconChevronRight from "../icons/IconChevronRight"
+import IconCommunity from "../icons/IconCommunity"
+import IconPSE from "../icons/IconPSE"
+import { chunkArray } from "../utils/chunkArray"
+import { getProjectCategories } from "../utils/getProjectCategories"
+
+export default function ProjectsList(props: any) {
+ const [projects, setProjects] = useState<(typeof allProjects)[]>(chunkArray(allProjects))
+ const [index, setIndex] = useState(0)
+ const [selectedCategories, setSelectedCategories] = useState([])
+ const [onlyPSE, setOnlyPSE] = useState(null)
+ const viewToScrollRef = useRef(null)
+
+ const filterProjects = useCallback(() => {
+ let filteredProjects = allProjects
+
+ if (selectedCategories.length > 0) {
+ filteredProjects = filteredProjects.filter((project) =>
+ selectedCategories.every((category) => project.categories.includes(category))
+ )
+ }
+
+ if (onlyPSE === true) {
+ filteredProjects = filteredProjects.filter((project) => project.pse)
+ } else if (onlyPSE === false) {
+ filteredProjects = filteredProjects.filter((project) => !project.pse)
+ }
+
+ filteredProjects = filteredProjects.sort((a, b) => a.name.localeCompare(b.name))
+
+ setProjects(chunkArray(filteredProjects))
+ }, [selectedCategories, onlyPSE])
+
+ useEffect(() => {
+ filterProjects()
+ }, [selectedCategories, onlyPSE])
+
+ useEffect(() => {
+ if (viewToScrollRef.current) {
+ viewToScrollRef.current.scrollIntoView({ behavior: "smooth" })
+ }
+ }, [index])
+
+ useEffect(() => {
+ if (viewToScrollRef.current) {
+ viewToScrollRef.current.scrollIntoView({ behavior: "smooth" })
+ }
+ }, [index])
+
+ return (
+
+
+ Projects created by
+
+
+ }
+ variant={onlyPSE === true ? "solid" : "outline"}
+ onClick={() => setOnlyPSE(onlyPSE === true ? null : true)}
+ >
+ PSE
+
+ }
+ variant={onlyPSE === false ? "solid" : "outline"}
+ onClick={() => setOnlyPSE(onlyPSE === false ? null : false)}
+ >
+ Community
+
+
+
+
+
+ Category
+
+ {getProjectCategories(allProjects).map((category) => (
+
+ ))}
+
+
+
+
+ {projects[index].map((project) => (
+
+
+
+ ))}
+
+
+ {projects.length > 1 && (
+
+
+ 0 ? "visible" : "hidden"}
+ onClick={() => setIndex((i) => i - 1)}
+ variant="link"
+ aria-label="Arrow left"
+ icon={}
+ />
+
+
+ {projects.map((_, i) => (
+ setIndex(i)}
+ cursor="pointer"
+ color={i === index ? "primary.600" : "text.400"}
+ >
+ {i + 1}
+
+ ))}
+
+
+ setIndex((i) => i + 1)}
+ variant="link"
+ aria-label="Arrow right"
+ icon={}
+ />
+
+
+ )}
+
+ )
+}
diff --git a/apps/website/src/components/SectionBlock.tsx b/apps/website/src/components/SectionBlock.tsx
new file mode 100644
index 000000000..52773f1c7
--- /dev/null
+++ b/apps/website/src/components/SectionBlock.tsx
@@ -0,0 +1,62 @@
+"use client"
+
+import { Text, VStack, Flex, Link } from "@chakra-ui/react"
+import IconArrowRight from "@/icons/IconArrowRight"
+import CodekBlock from "./CodeBlock"
+
+export type SectionItem = {
+ icon: any
+ heading: string
+ body: string
+}
+
+export type SectionBlockProps = {
+ title: string
+ description: string
+ linkText: string
+ linkUrl: string
+ codeText: string
+ itemList: SectionItem[]
+}
+
+export default function SectionBlock({ title, description, linkText, linkUrl, codeText, itemList }: SectionBlockProps) {
+ return (
+
+
+
+
+ {title}
+
+
+ {description}
+
+
+
+ {linkText}
+
+
+
+
+
+
+
+
+ {itemList.map((item) => (
+
+ {item.icon}
+ {item.heading}
+
+ {item.body}
+
+
+ ))}
+
+
+ )
+}
diff --git a/apps/website/src/components/ToolsCard.tsx b/apps/website/src/components/ToolsCard.tsx
new file mode 100644
index 000000000..63528e6d3
--- /dev/null
+++ b/apps/website/src/components/ToolsCard.tsx
@@ -0,0 +1,86 @@
+import {
+ Heading,
+ Text,
+ HStack,
+ Card,
+ CardBody,
+ List,
+ ListItem,
+ VStack,
+ StackDivider,
+ Box,
+ Link,
+ Flex
+} from "@chakra-ui/react"
+import IconChevronRight from "@/icons/IconChevronRight"
+
+export type ToolsCardProps = {
+ icon: any
+ title: string
+ subtitle: string
+ details: string[]
+ url: string
+}
+
+export default function ToolsCard({ icon, title, subtitle, details, url }: ToolsCardProps) {
+ return (
+
+ {icon}
+
+ } spacing="24px" align="stretch">
+
+
+ {title}
+
+
+ Select tool
+
+
+
+
+ {subtitle}
+
+
+
+ {details.map((elem) => (
+
+
+
+
+
+
+ {elem}
+
+
+
+ ))}
+
+
+
+
+
+ )
+}
diff --git a/apps/website/src/components/VideoCard.tsx b/apps/website/src/components/VideoCard.tsx
new file mode 100644
index 000000000..a8af3db50
--- /dev/null
+++ b/apps/website/src/components/VideoCard.tsx
@@ -0,0 +1,33 @@
+import { Heading, Card, CardBody, Image, AspectRatio, HStack, Link } from "@chakra-ui/react"
+
+export type VideoCardProps = {
+ thumbnail: string
+ url: string
+ title: string
+}
+
+export default function VideoCard({ thumbnail, url, title }: VideoCardProps) {
+ return (
+
+
+
+
+
+
+
+
+
+ {title}
+
+
+
+
+ )
+}
diff --git a/apps/website/src/data/articles.json b/apps/website/src/data/articles.json
new file mode 100644
index 000000000..eb5b445ef
--- /dev/null
+++ b/apps/website/src/data/articles.json
@@ -0,0 +1,37 @@
+[
+ {
+ "title": "To Mixers and Beyond: presenting Semaphore, a privacy gadget built on Ethereum",
+ "minRead": 8,
+ "date": "2019-09-02",
+ "authors": ["Koh Wei Jie"],
+ "url": "https://medium.com/coinmonks/to-mixers-and-beyond-presenting-semaphore-a-privacy-gadget-built-on-ethereum-4c8b00857c9b"
+ },
+ {
+ "title": "Community Proposal: Semaphore: Zero-Knowledge Signaling on Ethereum (Whitepaper v1)",
+ "minRead": 60,
+ "date": "2020-02-02",
+ "authors": ["Barry Whitehat", "Kobi Gurkan", "Koh Wei Jie"],
+ "url": "https://semaphore.pse.dev/whitepaper-v1.pdf"
+ },
+ {
+ "title": "Release announcement: Semaphore, a zero-knowledge gadget for Ethereum",
+ "minRead": 4,
+ "date": "2020-03-03",
+ "authors": ["Koh Wei Jie"],
+ "url": "https://weijiek.medium.com/release-announcement-semaphore-a-zero-knowledge-gadget-for-ethereum-5b671cd360d4"
+ },
+ {
+ "title": "Semaphore v3 Announcement",
+ "minRead": 4,
+ "date": "2023-02-08",
+ "authors": ["PSE"],
+ "url": "https://mirror.xyz/privacy-scaling-explorations.eth/Yi4muh-vzDZmIqJIcM9Mawu2e7jw8MRnwxvhFcyfns8"
+ },
+ {
+ "title": "Brief Introduction of Semaphore, a Zero-knowledge Group Membership Protocol",
+ "minRead": 7,
+ "date": "2023-10-30",
+ "authors": ["Laszlo Fazekas"],
+ "url": "https://hackernoon.com/brief-introduction-of-semaphore-a-zero-knowledge-group-membership-protocol"
+ }
+]
diff --git a/apps/website/src/data/events.json b/apps/website/src/data/events.json
new file mode 100644
index 000000000..723631b83
--- /dev/null
+++ b/apps/website/src/data/events.json
@@ -0,0 +1,14 @@
+[
+ {
+ "name": "Devconnect - ProgCrypto",
+ "date": "Nov 16-17, 2023",
+ "description": "Semaphore team will deliver a workshop on how to build applications with Semaphore.",
+ "link": "https://progcrypto.org"
+ },
+ {
+ "name": "Devconnect - Zero Knowledge Unleashed",
+ "date": "Nov 14, 2023",
+ "description": "Semaphore team will deliver a workshop on how to build zero-knowledge applications.",
+ "link": "https://lu.ma/tpgzkday_devconnect"
+ }
+]
diff --git a/apps/website/src/data/projects.json b/apps/website/src/data/projects.json
new file mode 100644
index 000000000..9a263bbee
--- /dev/null
+++ b/apps/website/src/data/projects.json
@@ -0,0 +1,508 @@
+[
+ {
+ "name": "ZK Proof of Humanity",
+ "tagline": "A project that allows humans, registered in Proof of Humanity, to prove their humanity without doxing.",
+ "categories": ["Identity", "Authenticity"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://zk-proof-of-humanity.vercel.app",
+ "github": "https://github.com/elmol/zk-proof-of-humanity"
+ }
+ },
+ {
+ "name": "Signary",
+ "tagline": "Signary is a discussion platform with advanced privacy and reliable membership verification.",
+ "categories": ["Interoperability", "Identity", "Social"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://signary.poc-innovation.com",
+ "github": "https://github.com/RezaRahemtola/ETHGlobal-Paris2023"
+ }
+ },
+ {
+ "name": "Key Passport",
+ "tagline": "Key Passport offers secure identity and key management via Ethereum with Metamask Snaps, ensuring control and sovereignty.",
+ "categories": ["Identity", "Data"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://key-passport.vercel.app/",
+ "github": "https://github.com/wslyvh/key-passport"
+ }
+ },
+ {
+ "name": "Sharknado",
+ "tagline": "A platform for anonymous surveys, NFT authentication with zk proofs, and reward-based bounties.",
+ "categories": ["NFT", "Identity", "Coordination"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://sharknado.vercel.app",
+ "github": "https://github.com/Squalome"
+ }
+ },
+ {
+ "name": "zkPoo",
+ "tagline": "Secure voting delegation and privacy protection for impactful democratic participation.",
+ "categories": ["Voting", "Social"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://zkpoo.vercel.app",
+ "github": "https://github.com/zkPOO/zkPOO"
+ }
+ },
+ {
+ "name": "Cicada",
+ "tagline": "A private on-chain voting protocol based on homomorphic time-lock puzzles.",
+ "categories": ["Voting"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/a16z/cicada"
+ }
+ },
+ {
+ "name": "Semaphore Explorer",
+ "tagline": "Semaphore explorer for on-chain groups.",
+ "categories": ["Data", "Development"],
+ "pse": true,
+ "icon": "",
+ "links": {
+ "website": "https://community.semaphore.pse.dev/semaphore-explorer",
+ "github": "https://github.com/semaphore-protocol/explorer",
+ "discord": "https://semaphore.pse.dev/discord"
+ }
+ },
+ {
+ "name": "Semaphore Discord Bot",
+ "tagline": "A Discord Bot for Semaphore",
+ "categories": ["Development"],
+ "pse": true,
+ "icon": "",
+ "links": {
+ "website": "https://discord.com/api/oauth2/authorize?client_id=1082429985496772628&permissions=1024&scope=bot",
+ "github": "https://github.com/semaphore-protocol/discord-bot",
+ "discord": "https://semaphore.pse.dev/discord"
+ }
+ },
+ {
+ "name": "Unirep",
+ "tagline": "Private and nonrepudiable reputation system based on ZKP.",
+ "categories": ["Reputation", "Identity", "Social"],
+ "pse": true,
+ "icon": "",
+ "links": {
+ "website": "https://developer.unirep.io",
+ "github": "https://github.com/Unirep",
+ "discord": "https://discord.gg/VzMMDJmYc5"
+ }
+ },
+ {
+ "name": "Plurality",
+ "tagline": "An Identity Lego for DApps to verify users independently, preserving privacy without third-party KYC.",
+ "categories": ["Identity", "Trust"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/Web3-Plurality"
+ }
+ },
+ {
+ "name": "ZeroTherapy",
+ "tagline": "AMA privacy application built with Semaphore.",
+ "categories": ["Voting", "Health"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://zerotherapy.vercel.app",
+ "github": "https://github.com/Pushpit07/ZeroTherapy"
+ }
+ },
+ {
+ "name": "Block Qualified",
+ "tagline": "On-chain and privacy preserving education platform built on Semaphore.",
+ "categories": ["Education"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://bq2.netlify.app/",
+ "github": "https://github.com/0xdeenz/bq2"
+ }
+ },
+ {
+ "name": "StealthComms",
+ "tagline": "A project that allows users to prove their membership in a group and send messages/signals without revealing their original identity.",
+ "categories": ["Messaging"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://stealthcomms.surge.sh/",
+ "github": "https://github.com/atomniketh/zk-app"
+ }
+ },
+ {
+ "name": "n-per-epoch",
+ "categories": ["Data", "Infra"],
+ "tagline": "Simple contract modifier to add the ability to rate limit humans on any smart contract function call.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/rsproule/n-per-epoch",
+ "website": "https://blockchain.capital/privacy-preserving-smart-contract-rate-limiting"
+ }
+ },
+ {
+ "name": "Clique",
+ "categories": ["Data", "Identity", "Infra"],
+ "tagline": "Clique proves arbitrary user data that's accessible with TLS sessions with ZKPs, TEE, and MPC.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/CliqueOfficial/linea-attestations-registry/tree/main/lib",
+ "website": "https://clique.social/intro/attestor"
+ }
+ },
+ {
+ "name": "Bandada",
+ "categories": ["Infra", "Data"],
+ "tagline": "An open-source system for managing privacy-preserving groups of anonymous individuals.",
+ "pse": true,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/privacy-scaling-explorations/bandada",
+ "website": "https://bandada.pse.dev"
+ }
+ },
+ {
+ "name": "Interep",
+ "categories": ["Identity"],
+ "tagline": "A system that allows DApps or services to verify users' reputation without exposing their identities.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/interep-project"
+ }
+ },
+ {
+ "name": "Ballotbox",
+ "categories": ["Voting"],
+ "tagline": "Exploiting ZKP technology and IPFS to make the future of data by the user, for the user.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/KingGizzard/Ballotbox"
+ }
+ },
+ {
+ "name": "TAZ",
+ "categories": ["Identity"],
+ "tagline": "No-labels zone where Devcon VI attendees can learn through experience about privacy and anonymity.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/privacy-scaling-explorations/taz-apps"
+ }
+ },
+ {
+ "name": "DERP",
+ "categories": ["Authenticity", "Trust"],
+ "tagline": "An anonymous research peer-review-system.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/calebanderson526/peer-review-system",
+ "website": "https://www.youtube.com/watch?v=L_bzztshewA"
+ }
+ },
+ {
+ "name": "zmorph",
+ "categories": ["Identity", "IoT", "NFT"],
+ "tagline": "Pseudonymous, seamless zk-based token-gating solution.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/a42io/ETHBogota",
+ "website": "https://eth-bogota.web.app"
+ }
+ },
+ {
+ "name": "Zktokenproof",
+ "categories": ["NFT", "Ticketing"],
+ "tagline": "Decentralized private ZK based ticketing.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/hiroism007/zktp",
+ "website": "https://polygon.zktokenproof.xyz"
+ }
+ },
+ {
+ "name": "heyanoun",
+ "categories": ["Coordination", "Identity"],
+ "tagline": "Credible pseudonymous messages for noun governance prop discussion.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/personaelabs/heyanoun",
+ "website": "https://www.heyanoun.xyz"
+ }
+ },
+ {
+ "name": "Iris-Bound Tokens",
+ "categories": ["Identity"],
+ "tagline": "A non-transferrable token that is bound to a person's Iris.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/kevincharm/iris-bound-token",
+ "website": "https://irisbound.vercel.app/ https://ethglobal.com/showcase/iris-bound-tokens-3neee"
+ }
+ },
+ {
+ "name": "ClubSpace",
+ "categories": ["Social"],
+ "tagline": "A live listening party for creators to share their curated music NFTs with their Lens frens.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://ethglobal.com/showcase/clubspace-cwzqx"
+ }
+ },
+ {
+ "name": "Truth",
+ "categories": ["Authenticity"],
+ "tagline": "A photo-sharing app using ZKP for secure, accessible content verification.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/ETHBogotaTeam/truth",
+ "website": "https://ethglobal.com/showcase/truth-2wbd7"
+ }
+ },
+ {
+ "name": "Terrarium",
+ "categories": ["NFT"],
+ "tagline": "Protecting endangered species from poachers and enabling wildlife conservation.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://ethglobal.com/showcase/terrarium-ztoes"
+ }
+ },
+ {
+ "name": "zkVoice",
+ "categories": ["Coordination"],
+ "tagline": "A coordination tool that allows community members with less voting power to secretly signal their disapproval.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/santteegt/Baal",
+ "website": "https://ethglobal.com/showcase/zkvoice-fighting-plutocrat-dao-communities-ptrzp"
+ }
+ },
+ {
+ "name": "Menshen",
+ "categories": ["Identity"],
+ "tagline": "An app that turns selfies into private, secure NFTs without needing IDs, accessible to most people worldwide.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/jasonwcfan/menshen",
+ "website": "https://ethglobal.com/showcase/menshen-i2kq1"
+ }
+ },
+ {
+ "name": "Chain Statements",
+ "categories": ["Identity"],
+ "tagline": "A way to generate Statements for your crypto funds using ZK , privately and permissionlessly.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://ethglobal.com/showcase/chain-statements-kdurw"
+ }
+ },
+ {
+ "name": "Mina World ID",
+ "categories": ["Identity"],
+ "tagline": "Bringing Worldcoins World ID to Mina zero-knowledge apps.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/mitschabaude/mina-world-id",
+ "website": "https://ethglobal.com/showcase/world-id-mina-embt9"
+ }
+ },
+ {
+ "name": "Semaphore ZK3 - Lens",
+ "categories": ["Social"],
+ "tagline": "Lens Protocol + Semaphore integration to create zero-knowledge proofs using Semaphore on Lens.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/monemetrics/lensbot-docs/blob/master/docs/zk3.md"
+ }
+ },
+ {
+ "name": "zkIdentity",
+ "categories": ["Identity", "NFT"],
+ "tagline": "Private identity claim system with zero-knowledge for Dark Forest.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/sigridjineth/zkIdentity",
+ "website": "http://zk-identity.s3-website.ap-northeast-2.amazonaws.com"
+ }
+ },
+ {
+ "name": "Coeo",
+ "categories": ["Coordination"],
+ "tagline": "A privacy-focused collaboration tool.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/coeo",
+ "website": "https://showcase.ethglobal.com/hackfs/coeo"
+ }
+ },
+ {
+ "name": "Tampopo",
+ "categories": ["Social"],
+ "tagline": "A space in Web3 where everyone can share their stories freely.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/thisispalash/tampopo"
+ }
+ },
+ {
+ "name": "Continuum",
+ "categories": ["Identity"],
+ "tagline": "Proof of concept for a background checker that verifies data using Zero Knowledge proofs without exposing any personal information.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/tomoima525/continuum",
+ "website": "https://continuum.tomoima525.com"
+ }
+ },
+ {
+ "name": "Notebook Labs",
+ "categories": ["Identity"],
+ "tagline": "Utilizing cutting edge cryptography to democratize financial infrastructure.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/Notebook-Labs",
+ "website": "https://www.notebooklabs.xyz"
+ }
+ },
+ {
+ "name": "PreciDatos",
+ "categories": ["Climate", "Whistleblowing"],
+ "tagline": "A blockchain-based system for incentivizing actors to disclose accurate climate data.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/datadrivenenvirolab/PreciDatos"
+ }
+ },
+ {
+ "name": "Semaphore Demo",
+ "categories": ["Education"],
+ "tagline": "A simple demo to explain the main Semaphore concepts.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/VGLoic/semaphore-demo-frontend",
+ "website": "https://semaphore-demo.netlify.app"
+ }
+ },
+ {
+ "name": "zkVote",
+ "categories": ["Voting"],
+ "tagline": "A zero-knowledge voting app based on Semaphore.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/KimiWu123/zkvote"
+ }
+ },
+ {
+ "name": "Arbor",
+ "categories": ["NFT"],
+ "tagline": "A collaborative, music-making NFT platform for artists and collectors, built on Ethereum.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/arbor-protocol/ui",
+ "website": "https://arbor.audio"
+ }
+ },
+ {
+ "name": "Emergence",
+ "categories": ["Coordination"],
+ "tagline": "An on-chain video platform rewarding token participation, automating DAO documentation, and enhancing DAO health and onboarding.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/orgs/Emergence-Dapp",
+ "website": "https://ethglobal.com/showcase/emergence-o3tns"
+ }
+ },
+ {
+ "name": "heyanon",
+ "categories": ["Social"],
+ "tagline": "A tool to broadcast messages anonymously on Twitter.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/personaelabs/heyanon",
+ "website": "https://www.heyanon.xyz"
+ }
+ },
+ {
+ "name": "Om",
+ "categories": ["Data", "Identity"],
+ "tagline": "A DAO platform with a decentralized and private data storage layer.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/OmHackFS/om",
+ "website": "https://om-rose.vercel.app"
+ }
+ },
+ {
+ "name": "Worldcoin",
+ "categories": ["Identity"],
+ "tagline": "A global digital currency offering universal access to a more inclusive financial system.",
+ "pse": false,
+ "icon": "",
+ "links": {
+ "github": "https://github.com/worldcoin",
+ "website": "https://worldcoin.org"
+ }
+ },
+ {
+ "name": "Sacred",
+ "tagline": "Engage in anonymous DAO forums with Sacred LĂ³gos to voice your opinions and vote discreetly.",
+ "categories": [""],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://www.thatsacred.place"
+ }
+ },
+ {
+ "name": "Zero Voting",
+ "tagline": "Submit new proposals or cast your vote on existing ones.",
+ "categories": ["Voting"],
+ "pse": false,
+ "icon": "",
+ "links": {
+ "website": "https://zkvote.vercel.app"
+ }
+ }
+]
diff --git a/apps/website/src/data/videos.json b/apps/website/src/data/videos.json
new file mode 100644
index 000000000..5d11863d9
--- /dev/null
+++ b/apps/website/src/data/videos.json
@@ -0,0 +1,98 @@
+[
+ {
+ "title": "Snarks for mixing, signaling and scaling",
+ "eventName": "Devcon4",
+ "date": "2018-12-10",
+ "speakers": ["Barry Whitehat"],
+ "url": "https://youtu.be/lv6iK9qezBY",
+ "thumbnail": "https://img.youtube.com/vi/lv6iK9qezBY/0.jpg"
+ },
+ {
+ "title": "Succinct Proofs in Ethereum",
+ "eventName": "2nd ZKProof Workshop",
+ "date": "2019-04-30",
+ "speakers": ["Barry Whitehat"],
+ "url": "https://youtu.be/TtsDNneTDDY",
+ "thumbnail": "https://img.youtube.com/vi/TtsDNneTDDY/0.jpg"
+ },
+ {
+ "title": "Privacy in Ethereum",
+ "eventName": "Taipei Ethereum Meetup",
+ "date": "2019-05-21",
+ "speakers": ["Barry Whitehat"],
+ "url": "https://youtu.be/maDHYyj30kg",
+ "thumbnail": "https://img.youtube.com/vi/maDHYyj30kg/0.jpg"
+ },
+ {
+ "title": "Semaphore Roadmap for Ethereum",
+ "eventName": "Zcon1",
+ "date": "2019-06-23",
+ "speakers": ["Barry Whitehat"],
+ "url": "https://youtu.be/gOub903iWFs",
+ "thumbnail": "https://img.youtube.com/vi/gOub903iWFs/0.jpg"
+ },
+ {
+ "title": "Privacy in Ethereum",
+ "eventName": "Devcon5",
+ "date": "2019-12-07",
+ "speakers": ["Barry Whitehat"],
+ "url": "https://youtu.be/zBUo7G95wYE",
+ "thumbnail": "https://img.youtube.com/vi/zBUo7G95wYE/0.jpg"
+ },
+ {
+ "title": "Hands-on Applications of Zero-Knowledge Signaling",
+ "eventName": "Devcon5",
+ "date": "2019-12-26",
+ "speakers": ["Wei Jie Koh"],
+ "url": "https://youtu.be/7wd2aAN2jXI",
+ "thumbnail": "https://img.youtube.com/vi/7wd2aAN2jXI/0.jpg"
+ },
+ {
+ "title": "A trustless Ethereum mixer using zero-knowledge signalling",
+ "eventName": "Devcon5",
+ "date": "2019-12-31",
+ "speakers": ["Wei Jie Koh", "Barry WhiteHat"],
+ "url": "https://youtu.be/GzVT16lFOHU",
+ "thumbnail": "https://img.youtube.com/vi/GzVT16lFOHU/0.jpg"
+ },
+ {
+ "title": "Proposal: Semaphore - Zero-Knowledge Signaling on Ethereum",
+ "eventName": "ZKProof Home Edition",
+ "date": "2020-05-25",
+ "speakers": ["Kobi Gurkan", "Koh Wei Jie"],
+ "url": "https://youtu.be/y5uV9eRb3-w",
+ "thumbnail": "https://img.youtube.com/vi/y5uV9eRb3-w/0.jpg"
+ },
+ {
+ "title": "Anonymous Signalling on Ethereum",
+ "eventName": "Devcon Bogota",
+ "date": "2022-10-18",
+ "speakers": ["Cedoor"],
+ "url": "https://youtu.be/dxAfL91Sbw4",
+ "thumbnail": "https://img.youtube.com/vi/dxAfL91Sbw4/0.jpg"
+ },
+ {
+ "title": "Old & New Primitives",
+ "eventName": "EDCON 2023",
+ "date": "2023-06-25",
+ "speakers": ["Barry Whitehat"],
+ "url": "https://youtu.be/cbyTXVm9NPI",
+ "thumbnail": "https://img.youtube.com/vi/cbyTXVm9NPI/0.jpg"
+ },
+ {
+ "title": "Building zero-knowledge applications using Semaphore",
+ "eventName": "ETHShangai",
+ "date": "2023-07-19",
+ "speakers": ["Vivian Plasencia"],
+ "url": "https://youtu.be/_isrY1pXJpY",
+ "thumbnail": "https://img.youtube.com/vi/_isrY1pXJpY/0.jpg"
+ },
+ {
+ "title": "Semaphore",
+ "eventName": "zkMonth",
+ "date": "2023-10-31",
+ "speakers": ["Vivian Plasencia"],
+ "url": "https://youtu.be/h4iVFKhAI8g",
+ "thumbnail": "https://img.youtube.com/vi/h4iVFKhAI8g/0.jpg"
+ }
+]
diff --git a/apps/website/src/icons/IconArrowLeft.tsx b/apps/website/src/icons/IconArrowLeft.tsx
new file mode 100644
index 000000000..b5e9d4527
--- /dev/null
+++ b/apps/website/src/icons/IconArrowLeft.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconArrowLeft(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconArrowRight.tsx b/apps/website/src/icons/IconArrowRight.tsx
new file mode 100644
index 000000000..3bd8721d6
--- /dev/null
+++ b/apps/website/src/icons/IconArrowRight.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconArrowRight(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconArrowUpRight.tsx b/apps/website/src/icons/IconArrowUpRight.tsx
new file mode 100644
index 000000000..e12b78a90
--- /dev/null
+++ b/apps/website/src/icons/IconArrowUpRight.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconArrowUpRight(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconBadge.tsx b/apps/website/src/icons/IconBadge.tsx
new file mode 100644
index 000000000..91336738f
--- /dev/null
+++ b/apps/website/src/icons/IconBadge.tsx
@@ -0,0 +1,15 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconBadge(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconBook.tsx b/apps/website/src/icons/IconBook.tsx
new file mode 100644
index 000000000..1d6aa7e25
--- /dev/null
+++ b/apps/website/src/icons/IconBook.tsx
@@ -0,0 +1,14 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconBook(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconBox.tsx b/apps/website/src/icons/IconBox.tsx
new file mode 100644
index 000000000..bfb9d6c86
--- /dev/null
+++ b/apps/website/src/icons/IconBox.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconBox(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconCheck.tsx b/apps/website/src/icons/IconCheck.tsx
new file mode 100644
index 000000000..2931fff89
--- /dev/null
+++ b/apps/website/src/icons/IconCheck.tsx
@@ -0,0 +1,15 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconCheck(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconChevronLeft.tsx b/apps/website/src/icons/IconChevronLeft.tsx
new file mode 100644
index 000000000..1fdd4d467
--- /dev/null
+++ b/apps/website/src/icons/IconChevronLeft.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconChevronLeft(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconChevronRight.tsx b/apps/website/src/icons/IconChevronRight.tsx
new file mode 100644
index 000000000..4e7503c2f
--- /dev/null
+++ b/apps/website/src/icons/IconChevronRight.tsx
@@ -0,0 +1,10 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconChevronRight(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconCli.tsx b/apps/website/src/icons/IconCli.tsx
new file mode 100644
index 000000000..45b5a0697
--- /dev/null
+++ b/apps/website/src/icons/IconCli.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconCli(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconCommunity.tsx b/apps/website/src/icons/IconCommunity.tsx
new file mode 100644
index 000000000..0c05140dd
--- /dev/null
+++ b/apps/website/src/icons/IconCommunity.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconCommunity(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconDiscord.tsx b/apps/website/src/icons/IconDiscord.tsx
new file mode 100644
index 000000000..e518dc5ad
--- /dev/null
+++ b/apps/website/src/icons/IconDiscord.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconDiscord(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconEye.tsx b/apps/website/src/icons/IconEye.tsx
new file mode 100644
index 000000000..29e20b4c1
--- /dev/null
+++ b/apps/website/src/icons/IconEye.tsx
@@ -0,0 +1,21 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconEye(props: IconProps): JSX.Element {
+ return (
+
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconEyelash.tsx b/apps/website/src/icons/IconEyelash.tsx
new file mode 100644
index 000000000..373fdd8a6
--- /dev/null
+++ b/apps/website/src/icons/IconEyelash.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconEyelash(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconFlag.tsx b/apps/website/src/icons/IconFlag.tsx
new file mode 100644
index 000000000..3438f9ab5
--- /dev/null
+++ b/apps/website/src/icons/IconFlag.tsx
@@ -0,0 +1,15 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconFlag(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconGroup.tsx b/apps/website/src/icons/IconGroup.tsx
new file mode 100644
index 000000000..8ddae556d
--- /dev/null
+++ b/apps/website/src/icons/IconGroup.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconGroup(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconManageUsers.tsx b/apps/website/src/icons/IconManageUsers.tsx
new file mode 100644
index 000000000..e0b7b4d7c
--- /dev/null
+++ b/apps/website/src/icons/IconManageUsers.tsx
@@ -0,0 +1,15 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconManageUsers(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconMenu.tsx b/apps/website/src/icons/IconMenu.tsx
new file mode 100644
index 000000000..f286bf868
--- /dev/null
+++ b/apps/website/src/icons/IconMenu.tsx
@@ -0,0 +1,10 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconMenu(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconPSE.tsx b/apps/website/src/icons/IconPSE.tsx
new file mode 100644
index 000000000..eae3a7c9c
--- /dev/null
+++ b/apps/website/src/icons/IconPSE.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconPSE(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconSemaphore.tsx b/apps/website/src/icons/IconSemaphore.tsx
new file mode 100644
index 000000000..0bd196506
--- /dev/null
+++ b/apps/website/src/icons/IconSemaphore.tsx
@@ -0,0 +1,19 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconSemaphore(props: IconProps): JSX.Element {
+ return (
+
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconSemaphoreLogo.tsx b/apps/website/src/icons/IconSemaphoreLogo.tsx
new file mode 100644
index 000000000..666c805d4
--- /dev/null
+++ b/apps/website/src/icons/IconSemaphoreLogo.tsx
@@ -0,0 +1,65 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconSemaphoreLogo(props: IconProps): JSX.Element {
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconThumbsUp.tsx b/apps/website/src/icons/IconThumbsUp.tsx
new file mode 100644
index 000000000..862d47dbb
--- /dev/null
+++ b/apps/website/src/icons/IconThumbsUp.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconThumbsUp(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconTree.tsx b/apps/website/src/icons/IconTree.tsx
new file mode 100644
index 000000000..020666a90
--- /dev/null
+++ b/apps/website/src/icons/IconTree.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconTree(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconUser.tsx b/apps/website/src/icons/IconUser.tsx
new file mode 100644
index 000000000..d95c805cd
--- /dev/null
+++ b/apps/website/src/icons/IconUser.tsx
@@ -0,0 +1,21 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconUser(props: IconProps): JSX.Element {
+ return (
+
+
+
+
+ )
+}
diff --git a/apps/website/src/icons/IconX.tsx b/apps/website/src/icons/IconX.tsx
new file mode 100644
index 000000000..c09289bc5
--- /dev/null
+++ b/apps/website/src/icons/IconX.tsx
@@ -0,0 +1,13 @@
+import { Icon, IconProps } from "@chakra-ui/react"
+import React from "react"
+
+export default function IconX(props: IconProps): JSX.Element {
+ return (
+
+
+
+ )
+}
diff --git a/apps/website/src/styles/colors.ts b/apps/website/src/styles/colors.ts
new file mode 100644
index 000000000..6a3b7c5ef
--- /dev/null
+++ b/apps/website/src/styles/colors.ts
@@ -0,0 +1,41 @@
+const colors = {
+ darkBlue: "#0E101B",
+ darkBlueBg: "#00020D",
+ ceruleanBlue: "#3555DF",
+ semaphore: "linear(to-r, primary.500, primary.800)",
+ alabaster: {
+ 300: "#B8B9C1",
+ 400: "#92939E",
+ 600: "#5E5F6B",
+ 800: "#42424A",
+ 950: "#26262B"
+ },
+ primary: {
+ 50: "#f0f4fe",
+ 100: "#dde6fc",
+ 200: "#c3d4fa",
+ 300: "#9abaf6",
+ 400: "#6a95f0",
+ 500: "#4771ea",
+ 600: "#3555df",
+ 700: "#2940cc",
+ 800: "#2735a6",
+ 900: "#253183",
+ 950: "#1b2050"
+ },
+ text: {
+ 50: "#f7f7f8",
+ 100: "#eeeef0",
+ 200: "#d9d9de",
+ 300: "#b8b9c1",
+ 400: "#92939e",
+ 500: "#747583",
+ 600: "#5e5f6b",
+ 700: "#4d4e57",
+ 800: "#42424a",
+ 900: "#3a3a40",
+ 950: "#26262b"
+ }
+}
+
+export default colors
diff --git a/apps/website/src/styles/components/Button.ts b/apps/website/src/styles/components/Button.ts
new file mode 100644
index 000000000..c05375d3d
--- /dev/null
+++ b/apps/website/src/styles/components/Button.ts
@@ -0,0 +1,53 @@
+import { StyleFunctionProps, SystemStyleObject } from "@chakra-ui/theme-tools"
+import { font } from "../styles"
+import colors from "../colors"
+
+const Button = {
+ baseStyle: {
+ _focus: {
+ boxShadow: "none"
+ },
+ borderRadius: "100px",
+ fontFamily: font.style.fontFamily,
+ fontWeight: "400",
+ paddingLeft: "18px !important",
+ paddingRight: "18px !important"
+ },
+ defaultProps: {
+ colorScheme: "#FFFFFF"
+ },
+ variants: {
+ solid: (props: StyleFunctionProps): SystemStyleObject => {
+ const { colorScheme: c } = props
+
+ return {
+ bg: c,
+ color: colors.darkBlueBg,
+ _hover: {
+ color: c,
+ bgGradient: colors.semaphore,
+ _disabled: {
+ bg: c
+ }
+ }
+ }
+ },
+ outline: (props: StyleFunctionProps): SystemStyleObject => {
+ const { colorScheme: c } = props
+
+ return {
+ color: c,
+ border: `1.2px solid ${c}`,
+ _hover: {
+ bg: colors.darkBlueBg,
+ color: c,
+ border: `1.2px solid ${colors.primary["600"]}`,
+ _disabled: {
+ bg: c
+ }
+ }
+ }
+ }
+ }
+}
+export default Button
diff --git a/apps/website/src/styles/components/Link.ts b/apps/website/src/styles/components/Link.ts
new file mode 100644
index 000000000..4095111cc
--- /dev/null
+++ b/apps/website/src/styles/components/Link.ts
@@ -0,0 +1,25 @@
+import { SystemStyleObject } from "@chakra-ui/theme-tools"
+
+const Link = {
+ baseStyle: {
+ _focus: {
+ boxShadow: "none"
+ },
+ _hover: { textDecoration: "none" }
+ },
+ variants: {
+ navlink: (): SystemStyleObject => ({
+ borderBottomColor: "transparent",
+ borderBottomWidth: "2px",
+ pb: "5px",
+ pt: "6px",
+ _hover: { borderBottomColor: "ceruleanBlue" }
+ }),
+ buttonlink: (): SystemStyleObject => ({
+ borderRadius: "100px",
+ fontWeight: "500"
+ })
+ }
+}
+
+export default Link
diff --git a/apps/website/src/styles/components/Tag.ts b/apps/website/src/styles/components/Tag.ts
new file mode 100644
index 000000000..2cf7db284
--- /dev/null
+++ b/apps/website/src/styles/components/Tag.ts
@@ -0,0 +1,52 @@
+import { StyleFunctionProps, SystemStyleObject } from "@chakra-ui/theme-tools"
+
+const Tag = {
+ baseStyle: {
+ container: {
+ borderRadius: "100px",
+ padding: "5px 16px 5px 16px"
+ }
+ },
+ defaultProps: {
+ colorScheme: "white"
+ },
+ variants: {
+ solid: (props: StyleFunctionProps): SystemStyleObject => {
+ const { colorScheme: c } = props
+
+ if (c === "primary") {
+ // const bgGradient = "linear(to-r, primary.500, primary.800)"
+ const bg = `${c}.600`
+ const color = "white"
+
+ return {
+ container: {
+ bg,
+ color
+ }
+ }
+ }
+
+ const bg = c
+
+ return {
+ container: {
+ bg,
+ color: `darkBlue`
+ }
+ }
+ },
+ outline: (props: StyleFunctionProps): SystemStyleObject => {
+ const { colorScheme: c } = props
+
+ return {
+ container: {
+ color: c,
+ shadow: `inset 0 0 0px 1px ${c}`
+ }
+ }
+ }
+ }
+}
+
+export default Tag
diff --git a/apps/website/src/styles/components/Tooltip.ts b/apps/website/src/styles/components/Tooltip.ts
new file mode 100644
index 000000000..6df3a97d7
--- /dev/null
+++ b/apps/website/src/styles/components/Tooltip.ts
@@ -0,0 +1,13 @@
+import { SystemStyleObject } from "@chakra-ui/react"
+
+const Tooltip = {
+ baseStyle: (): SystemStyleObject => ({
+ borderRadius: "4px",
+ py: "10px",
+ px: "15px",
+ fontWeight: "bold",
+ maxW: "350px"
+ })
+}
+
+export default Tooltip
diff --git a/apps/website/src/styles/components/index.ts b/apps/website/src/styles/components/index.ts
new file mode 100644
index 000000000..4555f9c0f
--- /dev/null
+++ b/apps/website/src/styles/components/index.ts
@@ -0,0 +1,11 @@
+import Button from "./Button"
+import Link from "./Link"
+import Tooltip from "./Tooltip"
+import Tag from "./Tag"
+
+export default {
+ Link,
+ Button,
+ Tooltip,
+ Tag
+}
diff --git a/apps/website/src/styles/index.ts b/apps/website/src/styles/index.ts
new file mode 100644
index 000000000..16d3a961b
--- /dev/null
+++ b/apps/website/src/styles/index.ts
@@ -0,0 +1,24 @@
+import { extendTheme } from "@chakra-ui/react"
+import colors from "./colors"
+import components from "./components"
+import styles, { font } from "./styles"
+
+const config = {
+ fonts: {
+ heading: font.style.fontFamily,
+ body: "DM Sans, sans-serif"
+ },
+ colors,
+ styles,
+ components,
+ breakpoints: {
+ base: "0px",
+ sm: "320px",
+ md: "768px",
+ lg: "960px",
+ xl: "1200px",
+ "2xl": "1440px"
+ }
+}
+
+export default extendTheme(config)
diff --git a/apps/website/src/styles/styles.ts b/apps/website/src/styles/styles.ts
new file mode 100644
index 000000000..c64b832e4
--- /dev/null
+++ b/apps/website/src/styles/styles.ts
@@ -0,0 +1,27 @@
+import { SystemStyleObject } from "@chakra-ui/react"
+import { Styles } from "@chakra-ui/theme-tools"
+import { Outfit } from "next/font/google"
+
+export const font = Outfit({ subsets: ["latin"] })
+
+const styles: Styles = {
+ global: (): SystemStyleObject => ({
+ body: {
+ bg: "darkBlueBg",
+ color: "white"
+ },
+ "body, #__next": {
+ minHeight: "100vh",
+ overflowX: "hidden"
+ },
+ "#__next": {
+ display: "flex",
+ flexDirection: "column"
+ },
+ "h1, h2, h3, h4": {
+ fontWeight: "500 !important"
+ }
+ })
+}
+
+export default styles
diff --git a/apps/website/src/utils/chunkArray.ts b/apps/website/src/utils/chunkArray.ts
new file mode 100644
index 000000000..a77053f62
--- /dev/null
+++ b/apps/website/src/utils/chunkArray.ts
@@ -0,0 +1,18 @@
+/**
+ * This function takes an array and divides it into smaller arrays,
+ * or "chunks", each containing a specified number of elements.
+ * @param array The array to be split into chunks.
+ * @param size The size of each chunk. The default size is 10.
+ * @returns An array containing smaller subarrays (chunks), each with a length defined by the size.
+ */
+export function chunkArray(array: any[], size = 15): any[] {
+ const result = []
+
+ for (let i = 0; i < array.length; i += size) {
+ const chunk = array.slice(i, i + size)
+
+ result.push(chunk)
+ }
+
+ return result.length === 0 ? [[]] : result
+}
diff --git a/apps/website/src/utils/circularSlice.ts b/apps/website/src/utils/circularSlice.ts
new file mode 100644
index 000000000..2df198de9
--- /dev/null
+++ b/apps/website/src/utils/circularSlice.ts
@@ -0,0 +1,20 @@
+/**
+ * Extracts a specified number of elements from an input list, starting
+ * from a given index, in a circular manner. If the end of the list is
+ * reached before the desired number of elements are extracted, the
+ * function will wrap around and continue extracting from the beginning
+ * of the list, thus behaving like a circular list or ring buffer.
+ * @param list The input list from which elements are to be extracted.
+ * @param index The starting position in the list from where the extraction begins.
+ * @param The number of elements to extract from the list.
+ * @returns A new array containing the extracted elements.
+ */
+export function circularSlice(list: any[], index: number, numberOfItems: number): any[] {
+ const result = []
+
+ for (let i = 0; i < numberOfItems; i += 1) {
+ result.push(list[(index + i) % list.length])
+ }
+
+ return result
+}
diff --git a/apps/website/src/utils/getDataLength.ts b/apps/website/src/utils/getDataLength.ts
new file mode 100644
index 000000000..daf17cefb
--- /dev/null
+++ b/apps/website/src/utils/getDataLength.ts
@@ -0,0 +1,16 @@
+import projects from "../data/projects.json"
+import videos from "../data/videos.json"
+import articles from "../data/articles.json"
+
+export function getDataLength(type: "projects" | "videos" | "articles"): number {
+ switch (type) {
+ case "projects":
+ return projects.length
+ case "videos":
+ return videos.length
+ case "articles":
+ return articles.length
+ default:
+ return 0
+ }
+}
diff --git a/apps/website/src/utils/getProjectCategories.ts b/apps/website/src/utils/getProjectCategories.ts
new file mode 100644
index 000000000..ae85d1f1e
--- /dev/null
+++ b/apps/website/src/utils/getProjectCategories.ts
@@ -0,0 +1,15 @@
+import type Projects from "../data/projects.json"
+
+/**
+ * Iterates over a list of project objects, each with its own collection of categories,
+ * and compiles a unique set of all categories encountered across these projects.
+ * It ensures that each category is only listed once, regardless of how
+ * many projects the category is associated with.
+ * @param projects An array of objects where each object represents a project.
+ * @returns An array of strings, where each string is a unique category from across all projects.
+ */
+export function getProjectCategories(projects: typeof Projects): string[] {
+ const categories = projects.flatMap((project) => project.categories).filter((category) => category !== "")
+
+ return Array.from(new Set(categories))
+}
diff --git a/apps/website/src/utils/sortByDate.ts b/apps/website/src/utils/sortByDate.ts
new file mode 100644
index 000000000..667c0902d
--- /dev/null
+++ b/apps/website/src/utils/sortByDate.ts
@@ -0,0 +1,29 @@
+export type SortType = "asc" | "desc"
+
+function propComparator(propName: string, sortType: SortType) {
+ return (a: any, b: any) => {
+ const elem1 = new Date(a[propName]).valueOf()
+ const elem2 = new Date(b[propName]).valueOf()
+
+ if (elem1 === elem2) {
+ return 0
+ }
+
+ if (sortType === "asc") {
+ return elem1 < elem2 ? -1 : 1
+ }
+
+ return elem1 > elem2 ? -1 : 1
+ }
+}
+
+/**
+ * Sort an array using a specific property and type descending or ascending.
+ * @param elems An array of objects with the property propName.
+ * @param propName A string which represents the property that will be used to sort.
+ * @param sortType The type that will be used to sort, it can be ascending or descending.
+ * @returns The initial array sorted.
+ */
+export function sortByDate(elems: any[], propName: string = "date", sortType: SortType = "desc") {
+ return elems.sort(propComparator(propName, sortType))
+}
diff --git a/apps/website/tsconfig.json b/apps/website/tsconfig.json
new file mode 100644
index 000000000..19987c91c
--- /dev/null
+++ b/apps/website/tsconfig.json
@@ -0,0 +1,27 @@
+{
+ "compilerOptions": {
+ "target": "es5",
+ "lib": ["dom", "dom.iterable", "esnext"],
+ "allowJs": true,
+ "skipLibCheck": true,
+ "strict": true,
+ "noEmit": true,
+ "esModuleInterop": true,
+ "module": "esnext",
+ "moduleResolution": "node",
+ "resolveJsonModule": true,
+ "isolatedModules": true,
+ "jsx": "preserve",
+ "incremental": true,
+ "plugins": [
+ {
+ "name": "next"
+ }
+ ],
+ "paths": {
+ "@/*": ["./src/*"]
+ }
+ },
+ "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
+ "exclude": ["node_modules"]
+}
diff --git a/package.json b/package.json
index 5a00d6339..3dd2b6424 100644
--- a/package.json
+++ b/package.json
@@ -14,7 +14,7 @@
"test": "yarn test:libraries && yarn test:contracts",
"test:libraries": "jest --coverage",
"test:contracts": "yarn workspace contracts test:coverage",
- "lint": "eslint . --ext .js,.ts && yarn workspace contracts lint",
+ "lint": "eslint . --ext .js,.ts,.tsx && yarn workspace contracts lint",
"prettier": "prettier -c .",
"prettier:write": "prettier -w .",
"docs": "typedoc --cname js.semaphore.pse.dev --githubPages true",
@@ -39,6 +39,7 @@
"monorepo"
],
"workspaces": [
+ "apps/*",
"packages/*",
"packages/contracts/contracts"
],
@@ -65,11 +66,14 @@
"cz-conventional-changelog": "^3.3.0",
"dotenv": "^16.0.2",
"eslint": "^8.2.0",
- "eslint-config-airbnb-base": "15.0.0",
+ "eslint-config-airbnb": "^19.0.4",
"eslint-config-airbnb-typescript": "^16.1.0",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-import": "^2.25.2",
"eslint-plugin-jest": "^25.7.0",
+ "eslint-plugin-jsx-a11y": "^6.8.0",
+ "eslint-plugin-react": "^7.33.2",
+ "eslint-plugin-react-hooks": "^4.6.0",
"husky": "^8.0.3",
"jest": "^27.4.1",
"jest-config": "^27.4.7",
diff --git a/projects.json b/projects.json
deleted file mode 100644
index 34a8896c9..000000000
--- a/projects.json
+++ /dev/null
@@ -1,76 +0,0 @@
-[
- {
- "name": "Semaphore Explorer",
- "tagline": "Semaphore explorer for on-chain groups.",
- "icon": "",
- "links": {
- "website": "https://community.semaphore.pse.dev/semaphore-explorer",
- "github": "https://github.com/semaphore-protocol/explorer",
- "discord": "https://semaphore.pse.dev/discord"
- }
- },
- {
- "name": "Semaphore Discord Bot",
- "tagline": "A Discord Bot for Semaphore",
- "icon": "",
- "links": {
- "website": "https://discord.com/api/oauth2/authorize?client_id=1082429985496772628&permissions=1024&scope=bot",
- "github": "https://github.com/semaphore-protocol/discord-bot",
- "discord": "https://semaphore.pse.dev/discord"
- }
- },
- {
- "name": "Unirep",
- "tagline": "Private and nonrepudiable reputation system based on ZKP.",
- "icon": "",
- "links": {
- "website": "https://developer.unirep.io",
- "github": "https://github.com/Unirep",
- "discord": "https://discord.gg/VzMMDJmYc5"
- }
- },
- {
- "name": "Plurality",
- "tagline": "An Identity Lego Building Block for dapp creators that lets them identify their users without using any third-party KYC provider or other middlemen, whilst preserving the privacy of users.",
- "icon": "",
- "links": {
- "github": "https://github.com/Web3-Plurality"
- }
- },
- {
- "name": "ZK Proof of Humanity",
- "tagline": "A project that allows humans, registered in Proof of Humanity, to prove their humanity without doxing.",
- "icon": "",
- "links": {
- "website": "https://zk-proof-of-humanity.vercel.app",
- "github": "https://github.com/elmol/zk-proof-of-humanity"
- }
- },
- {
- "name": "ZeroTherapy",
- "tagline": "AMA privacy application built with Semaphore.",
- "icon": "",
- "links": {
- "website": "https://zerotherapy.vercel.app",
- "github": "https://github.com/Pushpit07/ZeroTherapy"
- }
- },
- {
- "name": "Block Qualified",
- "tagline": "On-chain and privacy preserving education platform built on Semaphore.",
- "icon": "",
- "links": {
- "website": "https://bq2.netlify.app/",
- "github": "https://github.com/0xdeenz/bq2"
- }
- },
- {
- "name": "StealthComms",
- "tagline": "A project that allows users to prove their membership in a group and send messages/signals without revealing their original identity.",
- "icon": "",
- "links": {
- "website": "https://stealthcomms.surge.sh/",
- "github": "https://github.com/atomniketh/zk-app"
- }
- }
-]
diff --git a/yarn.lock b/yarn.lock
index 6080ca0da..c45775a0c 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -304,6 +304,15 @@ __metadata:
languageName: node
linkType: hard
+"@babel/helper-module-imports@npm:^7.16.7":
+ version: 7.22.15
+ resolution: "@babel/helper-module-imports@npm:7.22.15"
+ dependencies:
+ "@babel/types": ^7.22.15
+ checksum: ecd7e457df0a46f889228f943ef9b4a47d485d82e030676767e6a2fdcbdaa63594d8124d4b55fd160b41c201025aec01fc27580352b1c87a37c9c6f33d116702
+ languageName: node
+ linkType: hard
+
"@babel/helper-module-imports@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-module-imports@npm:7.18.6"
@@ -468,6 +477,13 @@ __metadata:
languageName: node
linkType: hard
+"@babel/helper-string-parser@npm:^7.22.5":
+ version: 7.22.5
+ resolution: "@babel/helper-string-parser@npm:7.22.5"
+ checksum: 836851ca5ec813077bbb303acc992d75a360267aa3b5de7134d220411c852a6f17de7c0d0b8c8dcc0f567f67874c00f4528672b2a4f1bc978a3ada64c8c78467
+ languageName: node
+ linkType: hard
+
"@babel/helper-validator-identifier@npm:^7.18.6, @babel/helper-validator-identifier@npm:^7.19.1":
version: 7.19.1
resolution: "@babel/helper-validator-identifier@npm:7.19.1"
@@ -475,6 +491,13 @@ __metadata:
languageName: node
linkType: hard
+"@babel/helper-validator-identifier@npm:^7.22.20":
+ version: 7.22.20
+ resolution: "@babel/helper-validator-identifier@npm:7.22.20"
+ checksum: 136412784d9428266bcdd4d91c32bcf9ff0e8d25534a9d94b044f77fe76bc50f941a90319b05aafd1ec04f7d127cd57a179a3716009ff7f3412ef835ada95bdc
+ languageName: node
+ linkType: hard
+
"@babel/helper-validator-option@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-validator-option@npm:7.18.6"
@@ -1855,6 +1878,15 @@ __metadata:
languageName: node
linkType: hard
+"@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.10.4, @babel/runtime@npm:^7.12.13, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.23.2, @babel/runtime@npm:^7.3.1":
+ version: 7.23.2
+ resolution: "@babel/runtime@npm:7.23.2"
+ dependencies:
+ regenerator-runtime: ^0.14.0
+ checksum: 6c4df4839ec75ca10175f636d6362f91df8a3137f86b38f6cd3a4c90668a0fe8e9281d320958f4fbd43b394988958585a17c3aab2a4ea6bf7316b22916a371fb
+ languageName: node
+ linkType: hard
+
"@babel/runtime@npm:^7.11.2":
version: 7.21.0
resolution: "@babel/runtime@npm:7.21.0"
@@ -1946,59 +1978,1276 @@ __metadata:
version: 7.19.0
resolution: "@babel/types@npm:7.19.0"
dependencies:
- "@babel/helper-string-parser": ^7.18.10
- "@babel/helper-validator-identifier": ^7.18.6
- to-fast-properties: ^2.0.0
- checksum: 9b346715a68aeede70ba9c685a144b0b26c53bcd595d448e24c8fa8df4d5956a5712e56ebadb7c85dcc32f218ee42788e37b93d50d3295c992072224cb3ef3fe
+ "@babel/helper-string-parser": ^7.18.10
+ "@babel/helper-validator-identifier": ^7.18.6
+ to-fast-properties: ^2.0.0
+ checksum: 9b346715a68aeede70ba9c685a144b0b26c53bcd595d448e24c8fa8df4d5956a5712e56ebadb7c85dcc32f218ee42788e37b93d50d3295c992072224cb3ef3fe
+ languageName: node
+ linkType: hard
+
+"@babel/types@npm:^7.22.15":
+ version: 7.23.0
+ resolution: "@babel/types@npm:7.23.0"
+ dependencies:
+ "@babel/helper-string-parser": ^7.22.5
+ "@babel/helper-validator-identifier": ^7.22.20
+ to-fast-properties: ^2.0.0
+ checksum: 215fe04bd7feef79eeb4d33374b39909ce9cad1611c4135a4f7fdf41fe3280594105af6d7094354751514625ea92d0875aba355f53e86a92600f290e77b0e604
+ languageName: node
+ linkType: hard
+
+"@bcoe/v8-coverage@npm:^0.2.3":
+ version: 0.2.3
+ resolution: "@bcoe/v8-coverage@npm:0.2.3"
+ checksum: 850f9305536d0f2bd13e9e0881cb5f02e4f93fad1189f7b2d4bebf694e3206924eadee1068130d43c11b750efcc9405f88a8e42ef098b6d75239c0f047de1a27
+ languageName: node
+ linkType: hard
+
+"@cbor-extract/cbor-extract-darwin-arm64@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@cbor-extract/cbor-extract-darwin-arm64@npm:2.1.1"
+ conditions: os=darwin & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@cbor-extract/cbor-extract-darwin-x64@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@cbor-extract/cbor-extract-darwin-x64@npm:2.1.1"
+ conditions: os=darwin & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@cbor-extract/cbor-extract-linux-arm64@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@cbor-extract/cbor-extract-linux-arm64@npm:2.1.1"
+ conditions: os=linux & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@cbor-extract/cbor-extract-linux-arm@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@cbor-extract/cbor-extract-linux-arm@npm:2.1.1"
+ conditions: os=linux & cpu=arm
+ languageName: node
+ linkType: hard
+
+"@cbor-extract/cbor-extract-linux-x64@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@cbor-extract/cbor-extract-linux-x64@npm:2.1.1"
+ conditions: os=linux & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@cbor-extract/cbor-extract-win32-x64@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@cbor-extract/cbor-extract-win32-x64@npm:2.1.1"
+ conditions: os=win32 & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/accordion@npm:2.3.1":
+ version: 2.3.1
+ resolution: "@chakra-ui/accordion@npm:2.3.1"
+ dependencies:
+ "@chakra-ui/descendant": 3.1.0
+ "@chakra-ui/icon": 3.2.0
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-use-controllable-state": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ "@chakra-ui/transition": 2.1.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ framer-motion: ">=4.0.0"
+ react: ">=18"
+ checksum: 3839a77ad235cc4fd322e3118457eb12433df7b5937e5145570277ee54f4d8ce0a7a4f0a02474524d3c7fa8dab9f7d083d21a097e5bed9d5a5d15e345c5d1f49
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/alert@npm:2.2.1":
+ version: 2.2.1
+ resolution: "@chakra-ui/alert@npm:2.2.1"
+ dependencies:
+ "@chakra-ui/icon": 3.2.0
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ "@chakra-ui/spinner": 2.1.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 23a48b4bf8b8ca73bf2b94a4b18bc3d9e27709fe9d8968fb00ea6b0890c3d52503ebfbab91c8a7820045924b4fb37c414a50fb1bc1a9fe51a51263f775bf4f47
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/anatomy@npm:2.2.1":
+ version: 2.2.1
+ resolution: "@chakra-ui/anatomy@npm:2.2.1"
+ checksum: 61f529cf47166a9a8de76411e2e64f533c2b7d3ca36c59d628e9dc532470f899b45c09c9da5d43048fe30564a2258309301c6266f4c1b828ff865373812d3481
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/avatar@npm:2.3.0":
+ version: 2.3.0
+ resolution: "@chakra-ui/avatar@npm:2.3.0"
+ dependencies:
+ "@chakra-ui/image": 2.1.0
+ "@chakra-ui/react-children-utils": 2.0.6
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: a54120d7bf2096c09c19248050e511b379e93ac4d541cb6882ebc3690552b026bd4e7a2da1fa6cf486938bc438c7e3fd1aad5c5d77c247ddc81832b02d4016d9
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/breadcrumb@npm:2.2.0":
+ version: 2.2.0
+ resolution: "@chakra-ui/breadcrumb@npm:2.2.0"
+ dependencies:
+ "@chakra-ui/react-children-utils": 2.0.6
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 27ff90194166a34a33c7d39bc18920e3a379d476afabed80e806328ac18c6e0d3c66ab912f23fa68fc07033b1fd0cfd80564fb7fc1e5ff1986c6693a6d8b4fc2
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/breakpoint-utils@npm:2.0.8":
+ version: 2.0.8
+ resolution: "@chakra-ui/breakpoint-utils@npm:2.0.8"
+ dependencies:
+ "@chakra-ui/shared-utils": 2.0.5
+ checksum: 83aec47331a9dd7e65ba28795508a8e7b0fb5c1ff8cd805a416c0adfc897a7c8b7e08f070587080f575d7260a307b878edb1a32fa6ae902a8d1efa597b1b50aa
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/button@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/button@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ "@chakra-ui/spinner": 2.1.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 749f11334d7d5bf7257d40fdebb0e0156ce64a53b21d56016d9fb9431a2c934db33f78b2e092872aa5f19e1de4745af1cc893aa70d75092b9f07020c07224e7f
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/card@npm:2.2.0":
+ version: 2.2.0
+ resolution: "@chakra-ui/card@npm:2.2.0"
+ dependencies:
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: e8333b521cba8be8193dfb4784697942efc820890f8c89aa1484fab3fa7b69ababffea24eaecc331b1c901407b94f4a465113bf115ab965be1f87b913f31d53d
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/checkbox@npm:2.3.1":
+ version: 2.3.1
+ resolution: "@chakra-ui/checkbox@npm:2.3.1"
+ dependencies:
+ "@chakra-ui/form-control": 2.1.1
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ "@chakra-ui/react-use-controllable-state": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/react-use-safe-layout-effect": 2.1.0
+ "@chakra-ui/react-use-update-effect": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ "@chakra-ui/visually-hidden": 2.2.0
+ "@zag-js/focus-visible": 0.16.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 26f14892b10df284102b9614216be25aa81925ca8307b20083157af5f3339247f220fb14963570120ca51b26d0ff6de1c7d41cf6d47ed81f026429d645f2a8d8
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/clickable@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/clickable@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ react: ">=18"
+ checksum: 8f5da4b8e1e19a7752e10fb04a5c0afe6b7332415837272388c5249b11f70caf5d2654050c61d81a4d2a24e43ff47933a4096671af26b57aa0d72ab9025f86a1
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/close-button@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/close-button@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/icon": 3.2.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 7b81bb592b19a81aea5f616b3d244a0e54b8a90a7beae56253bf18d29351b3b14bf934473ed940244340fef6066d3e1001d970c3692f02ce984e4a6d926cedd4
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/color-mode@npm:2.2.0":
+ version: 2.2.0
+ resolution: "@chakra-ui/color-mode@npm:2.2.0"
+ dependencies:
+ "@chakra-ui/react-use-safe-layout-effect": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: ccba3ebb0131094f4844ea9b61333128ebd33eb70b16cc9117dd078f2df888d48573e47a9ac73ebc03283b2f49008cd56758aa7c15c159de3eb184a3819cb7e2
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/control-box@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/control-box@npm:2.1.0"
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: c52ff6ba03fae9818372a7a11ef22b2389ed5e7c046355eb3f6ae6d348db4c32058a841d502c759ee30a6efdd18c831274b31fc79a3f67ac1f1ca60bcc67e608
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/counter@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/counter@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/number-utils": 2.0.7
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ react: ">=18"
+ checksum: d955281ef594a26b31116c1323ae4231b809957048d0fa414f46d759f038a8d193227486f4b2a76320c83deff0a69078e850d83a10c10797ba986e458779dbb8
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/css-reset@npm:2.3.0":
+ version: 2.3.0
+ resolution: "@chakra-ui/css-reset@npm:2.3.0"
+ peerDependencies:
+ "@emotion/react": ">=10.0.35"
+ react: ">=18"
+ checksum: 1c760c7475c4b781c73a5174c265e05cd0f8cdca5420910fd53a29c565555863eeeb5967eb2deeb0c5219600a9dae4d14cbe0d4817db9c83e43f41963988df4e
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/descendant@npm:3.1.0":
+ version: 3.1.0
+ resolution: "@chakra-ui/descendant@npm:3.1.0"
+ dependencies:
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: 9d0031df94b668a11805c01ce80e4945fb957132a7f5cc880a2496f2ad6952cbeefdc462ddad0a0b4ba0907332bceb6838a43054303d7735ff26242bd8e6e21c
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/dom-utils@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/dom-utils@npm:2.1.0"
+ checksum: 935f5b4d3fb9af6030ae4beba14ae745c9ca9ca6c5476f5ebd72dc50934fb5ee7683bbad8172994dd029f59b3dfdd79e2be1e21b38156b6b9a70166341f5db07
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/editable@npm:3.1.0":
+ version: 3.1.0
+ resolution: "@chakra-ui/editable@npm:3.1.0"
+ dependencies:
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ "@chakra-ui/react-use-controllable-state": 2.1.0
+ "@chakra-ui/react-use-focus-on-pointer-down": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/react-use-safe-layout-effect": 2.1.0
+ "@chakra-ui/react-use-update-effect": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: f9ee2ab959371607662b6a3c23c95aeead810f3da3a2469ec2e5ca9effe176b74e1a742d0e10584978129c4174cca24f5c096f74cb8ed1996b1e1a190ff9b18b
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/event-utils@npm:2.0.8":
+ version: 2.0.8
+ resolution: "@chakra-ui/event-utils@npm:2.0.8"
+ checksum: a38c91533b2e3e7a9ba3eb8b76fca9e9d667ac1168d6c679e88e00a6b59acf1ee06aa95b748a3f0787dda5996deab799dd9491c9a6df517126c49b6d594c8afd
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/focus-lock@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/focus-lock@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/dom-utils": 2.1.0
+ react-focus-lock: ^2.9.4
+ peerDependencies:
+ react: ">=18"
+ checksum: 741671f132f4a772b0a65441ec50e96e8d718875aa634d1847285b4be0aa4ed1f0dbd7fe5eae0f50742454f8aa047d536ec1398de742f1269d25545f5b7b4871
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/form-control@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/form-control@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/icon": 3.2.0
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 4b0ad7a597f1e1858e279cf2daa07d81b5246d67adda86f6fec3e289bbfba5d174fb240614d0395067322396ffbbad6529a53a2cd4468f29dcdd5ab7f3d56a8c
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/hooks@npm:2.2.1":
+ version: 2.2.1
+ resolution: "@chakra-ui/hooks@npm:2.2.1"
+ dependencies:
+ "@chakra-ui/react-utils": 2.0.12
+ "@chakra-ui/utils": 2.0.15
+ compute-scroll-into-view: 3.0.3
+ copy-to-clipboard: 3.3.3
+ peerDependencies:
+ react: ">=18"
+ checksum: d0700e06c316d158c98a9a70448ee2a80379346c1ba0becafe968ebd1e1c81ecf4d5e4ebe07d58d1b5c81c62d9d90ff8fc7dd4f2b610937a4901bbc4ac6296ab
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/icon@npm:3.2.0":
+ version: 3.2.0
+ resolution: "@chakra-ui/icon@npm:3.2.0"
+ dependencies:
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: d417e2b343837d6862eb37739e3d02b8e8bbeeefa4c7e4f1d4a7fcfcdf1c7a4401de9094d7a08ba1419f73465ab30456427f8dbf2f2ffe29b77a14ad4b341b00
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/image@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/image@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-use-safe-layout-effect": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 83bd16de9780e64e05ada5ddcccc0048228cdb9af73ca5dc75514fdbf14aed4fecee9c976cea768755b3ea3aae2d8f90d2bf63909c16d238331c9c9b31f5a31f
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/input@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/input@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/form-control": 2.1.1
+ "@chakra-ui/object-utils": 2.1.0
+ "@chakra-ui/react-children-utils": 2.0.6
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 539413039aadc8cf0594351978b9ada796d9c6be18fa852509a5f390a2bf3f83645ce1f6b8b6772d77b3c71e3879c9bcab8542c04f61acee12cc1262d26760e2
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/layout@npm:2.3.1":
+ version: 2.3.1
+ resolution: "@chakra-ui/layout@npm:2.3.1"
+ dependencies:
+ "@chakra-ui/breakpoint-utils": 2.0.8
+ "@chakra-ui/icon": 3.2.0
+ "@chakra-ui/object-utils": 2.1.0
+ "@chakra-ui/react-children-utils": 2.0.6
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 388f150b1b7d2d55a2a8a1dbeec706bf82f56eefe867b670d6d7036e8715479e59b999e962c35c4bfef7f9196a6130a1a2436f20db0253a1b0cf6332fff1848c
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/lazy-utils@npm:2.0.5":
+ version: 2.0.5
+ resolution: "@chakra-ui/lazy-utils@npm:2.0.5"
+ checksum: f8f52a85d50ae06068611eb90bd6f10afcc87ca838e78313f6d08c08fa4935007f46488df4a537315484df26b69baed8afdbecd67b9e6375a6b23cc082fb24bd
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/live-region@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/live-region@npm:2.1.0"
+ peerDependencies:
+ react: ">=18"
+ checksum: 5a89dd76febf090f0b1f8ead616d4af6233276ab12df4b42c1dc48d329aeb4672732dd755613038f64cb92d02c32bb4a8e56922610de4e7d1f9df34e1087b01f
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/media-query@npm:3.3.0":
+ version: 3.3.0
+ resolution: "@chakra-ui/media-query@npm:3.3.0"
+ dependencies:
+ "@chakra-ui/breakpoint-utils": 2.0.8
+ "@chakra-ui/react-env": 3.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 44ea1532ead0214256d157edc904ab14836c00197e163d441111dfdc47307a46dfca6020401507f8398ecf8bc1690e0589f9e7dcfdf0fd2adc56e9ec8cfbd27a
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/menu@npm:2.2.1":
+ version: 2.2.1
+ resolution: "@chakra-ui/menu@npm:2.2.1"
+ dependencies:
+ "@chakra-ui/clickable": 2.1.0
+ "@chakra-ui/descendant": 3.1.0
+ "@chakra-ui/lazy-utils": 2.0.5
+ "@chakra-ui/popper": 3.1.0
+ "@chakra-ui/react-children-utils": 2.0.6
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-use-animation-state": 2.1.0
+ "@chakra-ui/react-use-controllable-state": 2.1.0
+ "@chakra-ui/react-use-disclosure": 2.1.0
+ "@chakra-ui/react-use-focus-effect": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/react-use-outside-click": 2.2.0
+ "@chakra-ui/react-use-update-effect": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ "@chakra-ui/transition": 2.1.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ framer-motion: ">=4.0.0"
+ react: ">=18"
+ checksum: 883dfefcd11297f1a4771186fb0cc1976ef0fa8e537f38bdbfed2a7195e8387d4ea41da47b01677eb3188927d49724676a567289dfdb58e00746a46ea283de4f
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/modal@npm:2.3.1":
+ version: 2.3.1
+ resolution: "@chakra-ui/modal@npm:2.3.1"
+ dependencies:
+ "@chakra-ui/close-button": 2.1.1
+ "@chakra-ui/focus-lock": 2.1.0
+ "@chakra-ui/portal": 2.1.0
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ "@chakra-ui/transition": 2.1.0
+ aria-hidden: ^1.2.3
+ react-remove-scroll: ^2.5.6
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ framer-motion: ">=4.0.0"
+ react: ">=18"
+ react-dom: ">=18"
+ checksum: 2f2e3965199a3fa8f867f2fcb6c125763ac5c982b15f29cf1e462e2e49b5466a675b5a41f24fcf0ba40c25bf70fc401cee600ddb7642d250469a15df3352924e
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/next-js@npm:^2.1.5":
+ version: 2.1.5
+ resolution: "@chakra-ui/next-js@npm:2.1.5"
+ dependencies:
+ "@emotion/cache": ^11.11.0
+ peerDependencies:
+ "@chakra-ui/react": ">=2.4.0"
+ "@emotion/react": ">=11"
+ next: ">=13"
+ react: ">=18"
+ checksum: 8996a41f3d69663279749367cdc815398efe3c4b22f03832bab4e393cda386784be1cfe6de79c3736f0879a9476931b0e61346734ce8866c9c6e0ffa6aeb227b
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/number-input@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/number-input@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/counter": 2.1.0
+ "@chakra-ui/form-control": 2.1.1
+ "@chakra-ui/icon": 3.2.0
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ "@chakra-ui/react-use-event-listener": 2.1.0
+ "@chakra-ui/react-use-interval": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/react-use-safe-layout-effect": 2.1.0
+ "@chakra-ui/react-use-update-effect": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: ed8fa2f5d71e31f87025724865b1da8b70a216104bcd04d354b141d2349bc9b5c5d15f7a600f432903b8f8b61e51ed22bdb308cc7cb78de6699fe0e10643bf0d
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/number-utils@npm:2.0.7":
+ version: 2.0.7
+ resolution: "@chakra-ui/number-utils@npm:2.0.7"
+ checksum: e9773385f9f1758687d9f42b88487199725ccdd8e565b73832d89f38e95d80a748c55a44752dc9966c380dc7768e88394bdd369e2415f3b05adfc0e06588c55e
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/object-utils@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/object-utils@npm:2.1.0"
+ checksum: ed4bf4365dcc77557f88a24a4844dbad47dfea9c426a1732895d151178561a3e8ab12d1c8638a5b00046fa2944c6b450ecccd4bc249b591cef7d70390af546fe
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/pin-input@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/pin-input@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/descendant": 3.1.0
+ "@chakra-ui/react-children-utils": 2.0.6
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-use-controllable-state": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: fc1cbeb1646fe6466086b578f3375f453457fab6cda59e36390dad7999689d4ccd64392bc49a92dfa5bf1a5929ee56931eab523190d43698977bd5e1cdd70334
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/popover@npm:2.2.1":
+ version: 2.2.1
+ resolution: "@chakra-ui/popover@npm:2.2.1"
+ dependencies:
+ "@chakra-ui/close-button": 2.1.1
+ "@chakra-ui/lazy-utils": 2.0.5
+ "@chakra-ui/popper": 3.1.0
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-animation-state": 2.1.0
+ "@chakra-ui/react-use-disclosure": 2.1.0
+ "@chakra-ui/react-use-focus-effect": 2.1.0
+ "@chakra-ui/react-use-focus-on-pointer-down": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ framer-motion: ">=4.0.0"
+ react: ">=18"
+ checksum: 5034e2b156180da2875c75b8828bf2d83a21d814101ab27db8f057e601f1cdf109568360db229f9a73c67e029d88f9f25670e42eb80eea21a908d3f7f91274fa
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/popper@npm:3.1.0":
+ version: 3.1.0
+ resolution: "@chakra-ui/popper@npm:3.1.0"
+ dependencies:
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@popperjs/core": ^2.9.3
+ peerDependencies:
+ react: ">=18"
+ checksum: 4e2797a16ca2f1d6071790489e7a9811b791a51437ca8a44c6aed8b04f3192d2159b2b033fe1c9fa2dd79fb28977668e1721ae922af43807be1bb9901c39b618
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/portal@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/portal@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-use-safe-layout-effect": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ react-dom: ">=18"
+ checksum: fa9799f99614943f17e32797e2daf7fe7d96da6d2ccd8bb96b817ffac8a1301b29d398d96c1c0c1ba72ab8f6c2e4e6835eeb11cb1f56968ff3934c611068900c
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/progress@npm:2.2.0":
+ version: 2.2.0
+ resolution: "@chakra-ui/progress@npm:2.2.0"
+ dependencies:
+ "@chakra-ui/react-context": 2.1.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 4936959f3bfe645d4a715808c273eb8da74238bff35da26ae62cf03b709233852a22563a571160637cd509082208008220421ca887efee6b7f73e0d8401b50c8
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/provider@npm:2.4.1":
+ version: 2.4.1
+ resolution: "@chakra-ui/provider@npm:2.4.1"
+ dependencies:
+ "@chakra-ui/css-reset": 2.3.0
+ "@chakra-ui/portal": 2.1.0
+ "@chakra-ui/react-env": 3.1.0
+ "@chakra-ui/system": 2.6.1
+ "@chakra-ui/utils": 2.0.15
+ peerDependencies:
+ "@emotion/react": ^11.0.0
+ "@emotion/styled": ^11.0.0
+ react: ">=18"
+ react-dom: ">=18"
+ checksum: 0acbd0afb52f8f79dc800babf7e75270886e446b2fb891e4ca780429b7a75921f9a02818172d2068e88270e930072768fbbe1a19db3fccec1e79bb4751771240
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/radio@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/radio@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/form-control": 2.1.1
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ "@zag-js/focus-visible": 0.16.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 946adad1d03b66eb73a72d5e8af4196869c118f3baec19be5269d3258e500a15573b48035e543a4b5f67414ea65279ee4af68438daa8b2ac2f503dcecc909294
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-children-utils@npm:2.0.6":
+ version: 2.0.6
+ resolution: "@chakra-ui/react-children-utils@npm:2.0.6"
+ peerDependencies:
+ react: ">=18"
+ checksum: b8917fd4019e304ca55fcdd129647bd0765fa9ff940516859c7db509c22581297463da6142e78c7e68fca49046d79f40d3bcfadbe67f16f4a6447acee00e0c12
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-context@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-context@npm:2.1.0"
+ peerDependencies:
+ react: ">=18"
+ checksum: 2e9c0f4e011a5a05cc811478d61db4b8d06cc2a4cc484ce44ef1f95aa6e9bb9df5407a92d74f840a1fea6e680b704909af9a1744308d6da4c8f939feb81b75b0
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-env@npm:3.1.0":
+ version: 3.1.0
+ resolution: "@chakra-ui/react-env@npm:3.1.0"
+ dependencies:
+ "@chakra-ui/react-use-safe-layout-effect": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: 54edb02ffdb9109bdc6d7f48dc88e5a8fd994b0d1d278920fd6c8cfc52f4ea676e6ef37ba07fbcb01f21c7aaa0bbae5a8de6c8ab3747c9391753bd26914f6e51
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-types@npm:2.0.7":
+ version: 2.0.7
+ resolution: "@chakra-ui/react-types@npm:2.0.7"
+ peerDependencies:
+ react: ">=18"
+ checksum: e0f9f32348407b7fa90170cb2f983c4be8986c51d2e4ec58d2307fa61c709f05e3bca40ce92e4d97e06e1a8e4aa7577f44227f80afa151c39efadfcfd5b91a82
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-animation-state@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-animation-state@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/dom-utils": 2.1.0
+ "@chakra-ui/react-use-event-listener": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: 9bea609a07e9a0c04a14169a3c72bc99b03972cdddd790faadb549ed7f3354024ca6aa20fba5a498182bb8666af6a0dac764dac68104051cff98170a78795914
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-callback-ref@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-callback-ref@npm:2.1.0"
+ peerDependencies:
+ react: ">=18"
+ checksum: 2f1aa7803663ec211628b4a1a20d66df89c1d83bf0c2a8f0508682ca47cb2cb76b48296fe9166d2ea47caa0161c19b1eb99cd6307a4d285871a1f8d913cc40c6
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-controllable-state@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-controllable-state@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: e19a5994f4ec1d726a98cada72e234aa55c7de2619afcf19209f945f596f8224d4b727a2941a42b879f7bc2442d60d1aa807a3f2af5bf6e8f0ec6191c75c70cf
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-disclosure@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-disclosure@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: 97f2b51aca023deadbd5538482eb89a9d5ae5248146dfa275ae69ea97ade300e732af02a377cad243f6f02665aabeadc9d79f7ee754a079da7dcd73eb3929469
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-event-listener@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-event-listener@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: dac679bf7eb611a3ee336a884ba87a055a0bc3a224dba14ea0760f7b149b624f2eb77bb00e3786cb4ce172b6473d6e7a2d11f1e38b456cc6f599861213fedafb
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-focus-effect@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-focus-effect@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/dom-utils": 2.1.0
+ "@chakra-ui/react-use-event-listener": 2.1.0
+ "@chakra-ui/react-use-safe-layout-effect": 2.1.0
+ "@chakra-ui/react-use-update-effect": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: b8cf78842d5a614fd2c3fb2b9f97888a4968a50ba84ba77a2585dae3cce7458863c4e2cb0f9d62f8188ada79222cc09afa692da2a291d96ecbeb857c65f874ca
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-focus-on-pointer-down@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-focus-on-pointer-down@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-use-event-listener": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: 02a3e2c49ddf8d36dacba7107bb93e26cd5fc9dbb0f1739e11f25daa3430efe4978d3cd590b1280d2ec70c8f03be90998c7f8398a8e8001f1ad1e3d00a1a1f30
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-interval@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-interval@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: 1e6336eb9bfbef0884550943d3cc4538ce7f333f21b3a5ec7696e3f5ebe6d44366fc2447c554a502337a2593d2a4ee83da49970b95f769a1fefff4fae9c2d9e6
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-latest-ref@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-latest-ref@npm:2.1.0"
+ peerDependencies:
+ react: ">=18"
+ checksum: 0384389bf695407122b6eda6e4c7c54b70100605280e69f4903c0ee4e57849c80361b24948fb63062566a5021190508fc652e64a3b3de05cff1232fdcca89986
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-merge-refs@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-merge-refs@npm:2.1.0"
+ peerDependencies:
+ react: ">=18"
+ checksum: e5a6e689b706f401de4dcb66191c476430e8215b56d7391568ebdabc0fee871405837619deb7f0d5ebc961f8952936a17726ebd42ccf9ec236348675afbe4cba
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-outside-click@npm:2.2.0":
+ version: 2.2.0
+ resolution: "@chakra-ui/react-use-outside-click@npm:2.2.0"
+ dependencies:
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: 4ef77e83b04b635f969746d2051a5e896a9e8380f08f6930538fc8ce85f13ebe94e42ca866d1882f8c51f4d9f0457994b94a7abf78606edba627c645c4d66568
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-pan-event@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-pan-event@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/event-utils": 2.0.8
+ "@chakra-ui/react-use-latest-ref": 2.1.0
+ framesync: 6.1.2
+ peerDependencies:
+ react: ">=18"
+ checksum: a084bfd8ace81079b46cb5825a7863cc6db7f4ee329e660ada74ad4343a37bb2b5af30215323787e3e94461a5812516740a28631747584c0f3c6de6823726b76
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-previous@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-previous@npm:2.1.0"
+ peerDependencies:
+ react: ">=18"
+ checksum: d868160842c271877c8d363e7a9626c7ff5f3f64b30d224418d5752abd39df0855fc98580f9f698e6e9fbf043b3a3e4bfdc9cb4964e972bf709be329752f4443
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-safe-layout-effect@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-safe-layout-effect@npm:2.1.0"
+ peerDependencies:
+ react: ">=18"
+ checksum: 83a3e905664dc1eba4a4c532d85b8d789a2c6596bac33dd8d6993433a0f344169b72e937d0eeb6337cb4d8bf85f39ab17039e40dc0626ec7090ce3f05ea378b7
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-size@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-size@npm:2.1.0"
+ dependencies:
+ "@zag-js/element-size": 0.10.5
+ peerDependencies:
+ react: ">=18"
+ checksum: cf0bfbcacfbfffdb7e13532300ff2df013d98a221b31af3248324976cd115fbd3ae76a4917c3e40ab44372bea66b709cb22550ab7d53a7d500624c1fefeb19b6
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-timeout@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-timeout@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ peerDependencies:
+ react: ">=18"
+ checksum: c23b6ec5a4a02465cdf01cf5a268dbe11d597e47ad922b6120dbf3ffa98e8dfddf59f7661ee41ecdb21d67aee5eb98067351a5e33b92798d7bc1c5b4fb532710
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-use-update-effect@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/react-use-update-effect@npm:2.1.0"
+ peerDependencies:
+ react: ">=18"
+ checksum: 14ab86a6c487101033e7f3252a98488fc45667d9c7cfd4b76219deeafe8b22f3026b3384b7c2a895ff73831eaa239c598b44d0741bb05ffcf264b57bd8a71f0c
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react-utils@npm:2.0.12":
+ version: 2.0.12
+ resolution: "@chakra-ui/react-utils@npm:2.0.12"
+ dependencies:
+ "@chakra-ui/utils": 2.0.15
+ peerDependencies:
+ react: ">=18"
+ checksum: c02267b412b1c205a2bb9bc580c66b8c729bf0a46c4dc09d88437c24406f4ade8873a5d0b726acaead410f393352b5fae16f1d7d9e6fc13ab26c74ac82f5d30e
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/react@npm:^2.8.1":
+ version: 2.8.1
+ resolution: "@chakra-ui/react@npm:2.8.1"
+ dependencies:
+ "@chakra-ui/accordion": 2.3.1
+ "@chakra-ui/alert": 2.2.1
+ "@chakra-ui/avatar": 2.3.0
+ "@chakra-ui/breadcrumb": 2.2.0
+ "@chakra-ui/button": 2.1.0
+ "@chakra-ui/card": 2.2.0
+ "@chakra-ui/checkbox": 2.3.1
+ "@chakra-ui/close-button": 2.1.1
+ "@chakra-ui/control-box": 2.1.0
+ "@chakra-ui/counter": 2.1.0
+ "@chakra-ui/css-reset": 2.3.0
+ "@chakra-ui/editable": 3.1.0
+ "@chakra-ui/focus-lock": 2.1.0
+ "@chakra-ui/form-control": 2.1.1
+ "@chakra-ui/hooks": 2.2.1
+ "@chakra-ui/icon": 3.2.0
+ "@chakra-ui/image": 2.1.0
+ "@chakra-ui/input": 2.1.1
+ "@chakra-ui/layout": 2.3.1
+ "@chakra-ui/live-region": 2.1.0
+ "@chakra-ui/media-query": 3.3.0
+ "@chakra-ui/menu": 2.2.1
+ "@chakra-ui/modal": 2.3.1
+ "@chakra-ui/number-input": 2.1.1
+ "@chakra-ui/pin-input": 2.1.0
+ "@chakra-ui/popover": 2.2.1
+ "@chakra-ui/popper": 3.1.0
+ "@chakra-ui/portal": 2.1.0
+ "@chakra-ui/progress": 2.2.0
+ "@chakra-ui/provider": 2.4.1
+ "@chakra-ui/radio": 2.1.1
+ "@chakra-ui/react-env": 3.1.0
+ "@chakra-ui/select": 2.1.1
+ "@chakra-ui/skeleton": 2.1.0
+ "@chakra-ui/skip-nav": 2.1.0
+ "@chakra-ui/slider": 2.1.0
+ "@chakra-ui/spinner": 2.1.0
+ "@chakra-ui/stat": 2.1.1
+ "@chakra-ui/stepper": 2.3.1
+ "@chakra-ui/styled-system": 2.9.1
+ "@chakra-ui/switch": 2.1.1
+ "@chakra-ui/system": 2.6.1
+ "@chakra-ui/table": 2.1.0
+ "@chakra-ui/tabs": 3.0.0
+ "@chakra-ui/tag": 3.1.1
+ "@chakra-ui/textarea": 2.1.1
+ "@chakra-ui/theme": 3.3.0
+ "@chakra-ui/theme-utils": 2.0.20
+ "@chakra-ui/toast": 7.0.1
+ "@chakra-ui/tooltip": 2.3.0
+ "@chakra-ui/transition": 2.1.0
+ "@chakra-ui/utils": 2.0.15
+ "@chakra-ui/visually-hidden": 2.2.0
+ peerDependencies:
+ "@emotion/react": ^11.0.0
+ "@emotion/styled": ^11.0.0
+ framer-motion: ">=4.0.0"
+ react: ">=18"
+ react-dom: ">=18"
+ checksum: e15028e1a19b7d0ed20c20bc033ce623ad33f229400b2640991af4c24baa0c2e1fafaeea2788b5ab4e9cc4a084482476d18abe44ad895d9899dfa1ff1e5cc6ed
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/select@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/select@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/form-control": 2.1.1
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: c8c2aa4c02d6a17b2bf85a82513ebb52c8948859919a7d81552f89d8c49b2219a0617a30910b459d521e3a37fc60f15f10dcdfa4586a8d0140bdfd5d84baf395
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/shared-utils@npm:2.0.5":
+ version: 2.0.5
+ resolution: "@chakra-ui/shared-utils@npm:2.0.5"
+ checksum: 7274b168bf188d1dc098d1f73a60676c6702454bd4dd9919f9b8447205bc1053b4faab6e38702f33cc25694f18bb598c39777f70b44dba221c078c839f42f2bd
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/skeleton@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/skeleton@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/media-query": 3.3.0
+ "@chakra-ui/react-use-previous": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: f153cfd46453a167fd1d93e26326f5ae11a4ce7b80e8847ce117e2c2d930e908dcdff1faa1f8768675596daa9a1aaef2304da1528975924178e97ed9e589ca24
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/skip-nav@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/skip-nav@npm:2.1.0"
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 3a7ea19d7414b3ad91a01685d47ec5eed59d74d58853fef18445b6e15d94e3fbc4a8fed43951d6e5542d33549275ed13093e0df5b9b449fd7b872fd85db2d319
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/slider@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/slider@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/number-utils": 2.0.7
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-callback-ref": 2.1.0
+ "@chakra-ui/react-use-controllable-state": 2.1.0
+ "@chakra-ui/react-use-latest-ref": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/react-use-pan-event": 2.1.0
+ "@chakra-ui/react-use-size": 2.1.0
+ "@chakra-ui/react-use-update-effect": 2.1.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 8e11468e0ef7d07cf8784b8034e4d6fad867d0fe06723f02fd8cf3427524ba29fb64f3ebf56aaf91cb0f11f3bf0af96e18ea732a0dfd0d734e1a609567014bb4
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/spinner@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/spinner@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: f1aa36799e0cc5d791f11cb70deaaff85bef0af3fa4d51919f56fb9457a06e58be6ec1a7f98d8054eba62308d4e44bba719e3c820b29b6c2ae2e807d705971c0
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/stat@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/stat@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/icon": 3.2.0
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: f7fa51912a313a7cf0ddd1f1a71c32cb4cd01c2da11b43f232cba2b0ef772bf401fba81dd7469c354c43b718ce1a13c01feef62fcae45bdd66c33698a6fb5fab
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/stepper@npm:2.3.1":
+ version: 2.3.1
+ resolution: "@chakra-ui/stepper@npm:2.3.1"
+ dependencies:
+ "@chakra-ui/icon": 3.2.0
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: a638ffb2a5132dd79f6e0a27b2716115610f7370877b28985bb2618208c84bd76921431659a98cf6afa56f46aeb9f42f78cee9ed73692c5d1cba2412f37921c1
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/styled-system@npm:2.9.1":
+ version: 2.9.1
+ resolution: "@chakra-ui/styled-system@npm:2.9.1"
+ dependencies:
+ "@chakra-ui/shared-utils": 2.0.5
+ csstype: ^3.0.11
+ lodash.mergewith: 4.6.2
+ checksum: 23ee15b4b49e3981e3ff28f040f410715e9abc1957d6808a6d3d625acdb2223201f3a89f714813da36988e11b921adcc5f842ec3ec992fffebfb89edee4dac4e
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/switch@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/switch@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/checkbox": 2.3.1
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ framer-motion: ">=4.0.0"
+ react: ">=18"
+ checksum: c499e1121c828c1acf1ef5832d0ddb5e775d8fc26e13e8b2322fd789f6145cfd6f3a3740101ae6103f86fe9d12bea0467bac90b397681072481d784b73b1535a
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/system@npm:2.6.1":
+ version: 2.6.1
+ resolution: "@chakra-ui/system@npm:2.6.1"
+ dependencies:
+ "@chakra-ui/color-mode": 2.2.0
+ "@chakra-ui/object-utils": 2.1.0
+ "@chakra-ui/react-utils": 2.0.12
+ "@chakra-ui/styled-system": 2.9.1
+ "@chakra-ui/theme-utils": 2.0.20
+ "@chakra-ui/utils": 2.0.15
+ react-fast-compare: 3.2.2
+ peerDependencies:
+ "@emotion/react": ^11.0.0
+ "@emotion/styled": ^11.0.0
+ react: ">=18"
+ checksum: 638812588ce10e5966837ee66465a18936030267701dbac675374086cb574e5b618f9dd1f9ceea2a8f1d48c1aea1f286f848f4d41452423a88bc24b2a5ce60e1
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/table@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/table@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: c82cfc78f2312777ab51c872640549c8d3f3ac9b40eb312ceb61c7651547ebced194729bfb228b5b191e7e965a0371f521c171c60f02d1c09edbe296a37aa09e
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/tabs@npm:3.0.0":
+ version: 3.0.0
+ resolution: "@chakra-ui/tabs@npm:3.0.0"
+ dependencies:
+ "@chakra-ui/clickable": 2.1.0
+ "@chakra-ui/descendant": 3.1.0
+ "@chakra-ui/lazy-utils": 2.0.5
+ "@chakra-ui/react-children-utils": 2.0.6
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-use-controllable-state": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/react-use-safe-layout-effect": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 6c030d8f437c7311159a17c76082487524b0f990572f27e9ef7f7ee2c48e0b246d8e5e1454fe903e6451493f40fc2f865f15d6bc6e26efe88bbf04b5f748b18d
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/tag@npm:3.1.1":
+ version: 3.1.1
+ resolution: "@chakra-ui/tag@npm:3.1.1"
+ dependencies:
+ "@chakra-ui/icon": 3.2.0
+ "@chakra-ui/react-context": 2.1.0
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: c22abdb6bef8994481ec28266df197d89900688716820b842018b6352eff2df9cbd937d945905e12c1393613d6a1e1f6360e394d29d7dbcf424239787faaef0b
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/textarea@npm:2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/textarea@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/form-control": 2.1.1
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 07f9067fe027da882be00715a45ea93504c84b2ca991031ef0a196636b85e747413d6bb28620414b877ce935fd71ded774f4fc64ca060064f7acf504394393eb
+ languageName: node
+ linkType: hard
+
+"@chakra-ui/theme-tools@npm:2.1.1, @chakra-ui/theme-tools@npm:^2.1.1":
+ version: 2.1.1
+ resolution: "@chakra-ui/theme-tools@npm:2.1.1"
+ dependencies:
+ "@chakra-ui/anatomy": 2.2.1
+ "@chakra-ui/shared-utils": 2.0.5
+ color2k: ^2.0.2
+ peerDependencies:
+ "@chakra-ui/styled-system": ">=2.0.0"
+ checksum: c038686d489401395f551298096c66236fe204a943fd859565b2804ec2a448241245032e702297dfc6c3d4e7fc1945e2998f8350eace1c4ab2ac23cd7688863f
languageName: node
linkType: hard
-"@bcoe/v8-coverage@npm:^0.2.3":
- version: 0.2.3
- resolution: "@bcoe/v8-coverage@npm:0.2.3"
- checksum: 850f9305536d0f2bd13e9e0881cb5f02e4f93fad1189f7b2d4bebf694e3206924eadee1068130d43c11b750efcc9405f88a8e42ef098b6d75239c0f047de1a27
+"@chakra-ui/theme-utils@npm:2.0.20":
+ version: 2.0.20
+ resolution: "@chakra-ui/theme-utils@npm:2.0.20"
+ dependencies:
+ "@chakra-ui/shared-utils": 2.0.5
+ "@chakra-ui/styled-system": 2.9.1
+ "@chakra-ui/theme": 3.3.0
+ lodash.mergewith: 4.6.2
+ checksum: be8bd98609d95d64eb5db2f54dbf26f2113342f724b31899455be71a46de4d8751327c2055735a2ec8021ada55a7575f7063df18b55f9393e880db3d1376e242
languageName: node
linkType: hard
-"@cbor-extract/cbor-extract-darwin-arm64@npm:2.1.1":
- version: 2.1.1
- resolution: "@cbor-extract/cbor-extract-darwin-arm64@npm:2.1.1"
- conditions: os=darwin & cpu=arm64
+"@chakra-ui/theme@npm:3.3.0, @chakra-ui/theme@npm:^3.3.0":
+ version: 3.3.0
+ resolution: "@chakra-ui/theme@npm:3.3.0"
+ dependencies:
+ "@chakra-ui/anatomy": 2.2.1
+ "@chakra-ui/shared-utils": 2.0.5
+ "@chakra-ui/theme-tools": 2.1.1
+ peerDependencies:
+ "@chakra-ui/styled-system": ">=2.8.0"
+ checksum: 6648d760e47fdc95d10cfa85f943e1ab1206be652f0db77c864e95e938b8ee13a012a53e1941b22fd81c12cc2c27504d64c06682daf141267b86ec3c7f4c165b
languageName: node
linkType: hard
-"@cbor-extract/cbor-extract-darwin-x64@npm:2.1.1":
- version: 2.1.1
- resolution: "@cbor-extract/cbor-extract-darwin-x64@npm:2.1.1"
- conditions: os=darwin & cpu=x64
+"@chakra-ui/toast@npm:7.0.1":
+ version: 7.0.1
+ resolution: "@chakra-ui/toast@npm:7.0.1"
+ dependencies:
+ "@chakra-ui/alert": 2.2.1
+ "@chakra-ui/close-button": 2.1.1
+ "@chakra-ui/portal": 2.1.0
+ "@chakra-ui/react-context": 2.1.0
+ "@chakra-ui/react-use-timeout": 2.1.0
+ "@chakra-ui/react-use-update-effect": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ "@chakra-ui/styled-system": 2.9.1
+ "@chakra-ui/theme": 3.3.0
+ peerDependencies:
+ "@chakra-ui/system": 2.6.1
+ framer-motion: ">=4.0.0"
+ react: ">=18"
+ react-dom: ">=18"
+ checksum: 21df2923492de633f81085b8aa22b421c1f5b2f3c6bf2d3280dc04c2f4211f44aaf1e5c3b9aa4367827ba33b74ffc777823ecdbeddb7940389e7d9da0bfb37d1
languageName: node
linkType: hard
-"@cbor-extract/cbor-extract-linux-arm64@npm:2.1.1":
- version: 2.1.1
- resolution: "@cbor-extract/cbor-extract-linux-arm64@npm:2.1.1"
- conditions: os=linux & cpu=arm64
+"@chakra-ui/tooltip@npm:2.3.0":
+ version: 2.3.0
+ resolution: "@chakra-ui/tooltip@npm:2.3.0"
+ dependencies:
+ "@chakra-ui/dom-utils": 2.1.0
+ "@chakra-ui/popper": 3.1.0
+ "@chakra-ui/portal": 2.1.0
+ "@chakra-ui/react-types": 2.0.7
+ "@chakra-ui/react-use-disclosure": 2.1.0
+ "@chakra-ui/react-use-event-listener": 2.1.0
+ "@chakra-ui/react-use-merge-refs": 2.1.0
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ framer-motion: ">=4.0.0"
+ react: ">=18"
+ react-dom: ">=18"
+ checksum: aaab684191f3e45803353ffec9c17bf7ebecdf090b0d6422527886995c7d2be32e3bdd0442b19d4ab0e0baf1f0a9202095b5ed2fe47e07b2f684ae2150b5c7bf
languageName: node
linkType: hard
-"@cbor-extract/cbor-extract-linux-arm@npm:2.1.1":
- version: 2.1.1
- resolution: "@cbor-extract/cbor-extract-linux-arm@npm:2.1.1"
- conditions: os=linux & cpu=arm
+"@chakra-ui/transition@npm:2.1.0":
+ version: 2.1.0
+ resolution: "@chakra-ui/transition@npm:2.1.0"
+ dependencies:
+ "@chakra-ui/shared-utils": 2.0.5
+ peerDependencies:
+ framer-motion: ">=4.0.0"
+ react: ">=18"
+ checksum: 502b6136f6e1583935ac5b204981c6bd78f7a4699a98ab8876bccfd6cbbc6e26308098b2f3d4dc81ff9ccc638463dfd2e188e4f380e3852c89b9cbaa5c572cb6
languageName: node
linkType: hard
-"@cbor-extract/cbor-extract-linux-x64@npm:2.1.1":
- version: 2.1.1
- resolution: "@cbor-extract/cbor-extract-linux-x64@npm:2.1.1"
- conditions: os=linux & cpu=x64
+"@chakra-ui/utils@npm:2.0.15":
+ version: 2.0.15
+ resolution: "@chakra-ui/utils@npm:2.0.15"
+ dependencies:
+ "@types/lodash.mergewith": 4.6.7
+ css-box-model: 1.2.1
+ framesync: 6.1.2
+ lodash.mergewith: 4.6.2
+ checksum: 91d46cb277329c48d2311c0a313e235631e9f52cfa94a0ba977f6a164fb7cf4760368fdf78278126c8a75e64bd768e2f0bf2480122c0ab9266dc63495c3e4609
languageName: node
linkType: hard
-"@cbor-extract/cbor-extract-win32-x64@npm:2.1.1":
- version: 2.1.1
- resolution: "@cbor-extract/cbor-extract-win32-x64@npm:2.1.1"
- conditions: os=win32 & cpu=x64
+"@chakra-ui/visually-hidden@npm:2.2.0":
+ version: 2.2.0
+ resolution: "@chakra-ui/visually-hidden@npm:2.2.0"
+ peerDependencies:
+ "@chakra-ui/system": ">=2.0.0"
+ react: ">=18"
+ checksum: 47d6ceb0e26c0d272d1fa19b385d0a16bc8467d8f942d0f6447cc8b86f81c3f479340f4c27a4270667fd36aad32ebf903c6f05b355d106d88086858290761c4a
languageName: node
linkType: hard
@@ -2261,6 +3510,168 @@ __metadata:
languageName: node
linkType: hard
+"@emotion/babel-plugin@npm:^11.11.0":
+ version: 11.11.0
+ resolution: "@emotion/babel-plugin@npm:11.11.0"
+ dependencies:
+ "@babel/helper-module-imports": ^7.16.7
+ "@babel/runtime": ^7.18.3
+ "@emotion/hash": ^0.9.1
+ "@emotion/memoize": ^0.8.1
+ "@emotion/serialize": ^1.1.2
+ babel-plugin-macros: ^3.1.0
+ convert-source-map: ^1.5.0
+ escape-string-regexp: ^4.0.0
+ find-root: ^1.1.0
+ source-map: ^0.5.7
+ stylis: 4.2.0
+ checksum: 6b363edccc10290f7a23242c06f88e451b5feb2ab94152b18bb8883033db5934fb0e421e2d67d09907c13837c21218a3ac28c51707778a54d6cd3706c0c2f3f9
+ languageName: node
+ linkType: hard
+
+"@emotion/cache@npm:^11.11.0":
+ version: 11.11.0
+ resolution: "@emotion/cache@npm:11.11.0"
+ dependencies:
+ "@emotion/memoize": ^0.8.1
+ "@emotion/sheet": ^1.2.2
+ "@emotion/utils": ^1.2.1
+ "@emotion/weak-memoize": ^0.3.1
+ stylis: 4.2.0
+ checksum: 8eb1dc22beaa20c21a2e04c284d5a2630a018a9d51fb190e52de348c8d27f4e8ca4bbab003d68b4f6cd9cc1c569ca747a997797e0f76d6c734a660dc29decf08
+ languageName: node
+ linkType: hard
+
+"@emotion/hash@npm:^0.9.1":
+ version: 0.9.1
+ resolution: "@emotion/hash@npm:0.9.1"
+ checksum: 716e17e48bf9047bf9383982c071de49f2615310fb4e986738931776f5a823bc1f29c84501abe0d3df91a3803c80122d24e28b57351bca9e01356ebb33d89876
+ languageName: node
+ linkType: hard
+
+"@emotion/is-prop-valid@npm:^0.8.2":
+ version: 0.8.8
+ resolution: "@emotion/is-prop-valid@npm:0.8.8"
+ dependencies:
+ "@emotion/memoize": 0.7.4
+ checksum: bb7ec6d48c572c540e24e47cc94fc2f8dec2d6a342ae97bc9c8b6388d9b8d283862672172a1bb62d335c02662afe6291e10c71e9b8642664a8b43416cdceffac
+ languageName: node
+ linkType: hard
+
+"@emotion/is-prop-valid@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "@emotion/is-prop-valid@npm:1.2.1"
+ dependencies:
+ "@emotion/memoize": ^0.8.1
+ checksum: 8f42dc573a3fad79b021479becb639b8fe3b60bdd1081a775d32388bca418ee53074c7602a4c845c5f75fa6831eb1cbdc4d208cc0299f57014ed3a02abcad16a
+ languageName: node
+ linkType: hard
+
+"@emotion/memoize@npm:0.7.4":
+ version: 0.7.4
+ resolution: "@emotion/memoize@npm:0.7.4"
+ checksum: 4e3920d4ec95995657a37beb43d3f4b7d89fed6caa2b173a4c04d10482d089d5c3ea50bbc96618d918b020f26ed6e9c4026bbd45433566576c1f7b056c3271dc
+ languageName: node
+ linkType: hard
+
+"@emotion/memoize@npm:^0.8.1":
+ version: 0.8.1
+ resolution: "@emotion/memoize@npm:0.8.1"
+ checksum: a19cc01a29fcc97514948eaab4dc34d8272e934466ed87c07f157887406bc318000c69ae6f813a9001c6a225364df04249842a50e692ef7a9873335fbcc141b0
+ languageName: node
+ linkType: hard
+
+"@emotion/react@npm:^11.11.1":
+ version: 11.11.1
+ resolution: "@emotion/react@npm:11.11.1"
+ dependencies:
+ "@babel/runtime": ^7.18.3
+ "@emotion/babel-plugin": ^11.11.0
+ "@emotion/cache": ^11.11.0
+ "@emotion/serialize": ^1.1.2
+ "@emotion/use-insertion-effect-with-fallbacks": ^1.0.1
+ "@emotion/utils": ^1.2.1
+ "@emotion/weak-memoize": ^0.3.1
+ hoist-non-react-statics: ^3.3.1
+ peerDependencies:
+ react: ">=16.8.0"
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ checksum: aec3c36650f5f0d3d4445ff44d73dd88712b1609645b6af3e6d08049cfbc51f1785fe13dea1a1d4ab1b0800d68f2339ab11e459687180362b1ef98863155aae5
+ languageName: node
+ linkType: hard
+
+"@emotion/serialize@npm:^1.1.2":
+ version: 1.1.2
+ resolution: "@emotion/serialize@npm:1.1.2"
+ dependencies:
+ "@emotion/hash": ^0.9.1
+ "@emotion/memoize": ^0.8.1
+ "@emotion/unitless": ^0.8.1
+ "@emotion/utils": ^1.2.1
+ csstype: ^3.0.2
+ checksum: 413c352e657f1b5e27ea6437b3ef7dcc3860669b7ae17fd5c18bfbd44e033af1acc56b64d252284a813ca4f3b3e1b0841c42d3fb08e02d2df56fd3cd63d72986
+ languageName: node
+ linkType: hard
+
+"@emotion/sheet@npm:^1.2.2":
+ version: 1.2.2
+ resolution: "@emotion/sheet@npm:1.2.2"
+ checksum: d973273c9c15f1c291ca2269728bf044bd3e92a67bca87943fa9ec6c3cd2b034f9a6bfe95ef1b5d983351d128c75b547b43ff196a00a3875f7e1d269793cecfe
+ languageName: node
+ linkType: hard
+
+"@emotion/styled@npm:^11.11.0":
+ version: 11.11.0
+ resolution: "@emotion/styled@npm:11.11.0"
+ dependencies:
+ "@babel/runtime": ^7.18.3
+ "@emotion/babel-plugin": ^11.11.0
+ "@emotion/is-prop-valid": ^1.2.1
+ "@emotion/serialize": ^1.1.2
+ "@emotion/use-insertion-effect-with-fallbacks": ^1.0.1
+ "@emotion/utils": ^1.2.1
+ peerDependencies:
+ "@emotion/react": ^11.0.0-rc.0
+ react: ">=16.8.0"
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ checksum: 904f641aad3892c65d7d6c0808b036dae1e6d6dad4861c1c7dc0baa59977047c6cad220691206eba7b4059f1a1c6e6c1ef4ebb8c829089e280fa0f2164a01e6b
+ languageName: node
+ linkType: hard
+
+"@emotion/unitless@npm:^0.8.0, @emotion/unitless@npm:^0.8.1":
+ version: 0.8.1
+ resolution: "@emotion/unitless@npm:0.8.1"
+ checksum: 385e21d184d27853bb350999471f00e1429fa4e83182f46cd2c164985999d9b46d558dc8b9cc89975cb337831ce50c31ac2f33b15502e85c299892e67e7b4a88
+ languageName: node
+ linkType: hard
+
+"@emotion/use-insertion-effect-with-fallbacks@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "@emotion/use-insertion-effect-with-fallbacks@npm:1.0.1"
+ peerDependencies:
+ react: ">=16.8.0"
+ checksum: 700b6e5bbb37a9231f203bb3af11295eed01d73b2293abece0bc2a2237015e944d7b5114d4887ad9a79776504aa51ed2a8b0ddbc117c54495dd01a6b22f93786
+ languageName: node
+ linkType: hard
+
+"@emotion/utils@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "@emotion/utils@npm:1.2.1"
+ checksum: e0b44be0705b56b079c55faff93952150be69e79b660ae70ddd5b6e09fc40eb1319654315a9f34bb479d7f4ec94be6068c061abbb9e18b9778ae180ad5d97c73
+ languageName: node
+ linkType: hard
+
+"@emotion/weak-memoize@npm:^0.3.1":
+ version: 0.3.1
+ resolution: "@emotion/weak-memoize@npm:0.3.1"
+ checksum: b2be47caa24a8122622ea18cd2d650dbb4f8ad37b636dc41ed420c2e082f7f1e564ecdea68122b546df7f305b159bf5ab9ffee872abd0f052e687428459af594
+ languageName: node
+ linkType: hard
+
"@eslint-community/eslint-utils@npm:^4.2.0":
version: 4.4.0
resolution: "@eslint-community/eslint-utils@npm:4.4.0"
@@ -3168,6 +4579,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/env@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/env@npm:13.5.5"
+ checksum: 4e3a92f2bd60189d81eb0437bf8141de26dec371edc125553c2d93b1de4c40ce99e8c81f60d8450961fab5c8880a6bcfccd23d9ef9c86aceab2f5380776def9f
+ languageName: node
+ linkType: hard
+
"@next/font@npm:13.0.3":
version: 13.0.3
resolution: "@next/font@npm:13.0.3"
@@ -3196,6 +4614,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/swc-darwin-arm64@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/swc-darwin-arm64@npm:13.5.5"
+ conditions: os=darwin & cpu=arm64
+ languageName: node
+ linkType: hard
+
"@next/swc-darwin-x64@npm:13.0.3":
version: 13.0.3
resolution: "@next/swc-darwin-x64@npm:13.0.3"
@@ -3203,6 +4628,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/swc-darwin-x64@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/swc-darwin-x64@npm:13.5.5"
+ conditions: os=darwin & cpu=x64
+ languageName: node
+ linkType: hard
+
"@next/swc-freebsd-x64@npm:13.0.3":
version: 13.0.3
resolution: "@next/swc-freebsd-x64@npm:13.0.3"
@@ -3224,6 +4656,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/swc-linux-arm64-gnu@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/swc-linux-arm64-gnu@npm:13.5.5"
+ conditions: os=linux & cpu=arm64 & libc=glibc
+ languageName: node
+ linkType: hard
+
"@next/swc-linux-arm64-musl@npm:13.0.3":
version: 13.0.3
resolution: "@next/swc-linux-arm64-musl@npm:13.0.3"
@@ -3231,6 +4670,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/swc-linux-arm64-musl@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/swc-linux-arm64-musl@npm:13.5.5"
+ conditions: os=linux & cpu=arm64 & libc=musl
+ languageName: node
+ linkType: hard
+
"@next/swc-linux-x64-gnu@npm:13.0.3":
version: 13.0.3
resolution: "@next/swc-linux-x64-gnu@npm:13.0.3"
@@ -3238,6 +4684,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/swc-linux-x64-gnu@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/swc-linux-x64-gnu@npm:13.5.5"
+ conditions: os=linux & cpu=x64 & libc=glibc
+ languageName: node
+ linkType: hard
+
"@next/swc-linux-x64-musl@npm:13.0.3":
version: 13.0.3
resolution: "@next/swc-linux-x64-musl@npm:13.0.3"
@@ -3245,6 +4698,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/swc-linux-x64-musl@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/swc-linux-x64-musl@npm:13.5.5"
+ conditions: os=linux & cpu=x64 & libc=musl
+ languageName: node
+ linkType: hard
+
"@next/swc-win32-arm64-msvc@npm:13.0.3":
version: 13.0.3
resolution: "@next/swc-win32-arm64-msvc@npm:13.0.3"
@@ -3252,6 +4712,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/swc-win32-arm64-msvc@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/swc-win32-arm64-msvc@npm:13.5.5"
+ conditions: os=win32 & cpu=arm64
+ languageName: node
+ linkType: hard
+
"@next/swc-win32-ia32-msvc@npm:13.0.3":
version: 13.0.3
resolution: "@next/swc-win32-ia32-msvc@npm:13.0.3"
@@ -3259,6 +4726,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/swc-win32-ia32-msvc@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/swc-win32-ia32-msvc@npm:13.5.5"
+ conditions: os=win32 & cpu=ia32
+ languageName: node
+ linkType: hard
+
"@next/swc-win32-x64-msvc@npm:13.0.3":
version: 13.0.3
resolution: "@next/swc-win32-x64-msvc@npm:13.0.3"
@@ -3266,6 +4740,13 @@ __metadata:
languageName: node
linkType: hard
+"@next/swc-win32-x64-msvc@npm:13.5.5":
+ version: 13.5.5
+ resolution: "@next/swc-win32-x64-msvc@npm:13.5.5"
+ conditions: os=win32 & cpu=x64
+ languageName: node
+ linkType: hard
+
"@noble/hashes@npm:1.2.0, @noble/hashes@npm:~1.2.0":
version: 1.2.0
resolution: "@noble/hashes@npm:1.2.0"
@@ -4068,6 +5549,13 @@ __metadata:
languageName: node
linkType: hard
+"@popperjs/core@npm:^2.9.3":
+ version: 2.11.8
+ resolution: "@popperjs/core@npm:2.11.8"
+ checksum: e5c69fdebf52a4012f6a1f14817ca8e9599cb1be73dd1387e1785e2ed5e5f0862ff817f420a87c7fc532add1f88a12e25aeb010ffcbdc98eace3d55ce2139cf0
+ languageName: node
+ linkType: hard
+
"@rollup/plugin-babel@npm:^5.2.0":
version: 5.3.1
resolution: "@rollup/plugin-babel@npm:5.3.1"
@@ -4807,6 +6295,15 @@ __metadata:
languageName: node
linkType: hard
+"@swc/helpers@npm:0.5.2":
+ version: 0.5.2
+ resolution: "@swc/helpers@npm:0.5.2"
+ dependencies:
+ tslib: ^2.4.0
+ checksum: 51d7e3d8bd56818c49d6bfbd715f0dbeedc13cf723af41166e45c03e37f109336bbcb57a1f2020f4015957721aeb21e1a7fff281233d797ff7d3dd1f447fa258
+ languageName: node
+ linkType: hard
+
"@szmarczak/http-timer@npm:^1.1.2":
version: 1.1.2
resolution: "@szmarczak/http-timer@npm:1.1.2"
@@ -5171,6 +6668,15 @@ __metadata:
languageName: node
linkType: hard
+"@types/hast@npm:^2.0.0":
+ version: 2.3.7
+ resolution: "@types/hast@npm:2.3.7"
+ dependencies:
+ "@types/unist": ^2
+ checksum: 3e63332825ed88117e7f355ba0cfd35367f1d951a1c381333b56188f7645947c3bbbe96abb4c8239324ba1317fd241d5afdb42e104a3654a424327340d49052c
+ languageName: node
+ linkType: hard
+
"@types/http-cache-semantics@npm:*":
version: 4.0.1
resolution: "@types/http-cache-semantics@npm:4.0.1"
@@ -5246,6 +6752,22 @@ __metadata:
languageName: node
linkType: hard
+"@types/lodash.mergewith@npm:4.6.7":
+ version: 4.6.7
+ resolution: "@types/lodash.mergewith@npm:4.6.7"
+ dependencies:
+ "@types/lodash": "*"
+ checksum: 71e86dfd3f6058213f102b5f11087976c042709003e9ef1d62bf29363b8c2608c130bb8804ec8d54b2bfd9f1fae8bcf5478db602b36884022550c6dcfd7d69ab
+ languageName: node
+ linkType: hard
+
+"@types/lodash@npm:*":
+ version: 4.14.199
+ resolution: "@types/lodash@npm:4.14.199"
+ checksum: e68d1fcbbfce953ed87b296a628573f62939227bcda0c934954e862b421e8a34c5e71cad6fea27b9980567909e6a4698f09025692958e36d64ea9ed99ec6fb2e
+ languageName: node
+ linkType: hard
+
"@types/lru-cache@npm:^5.1.0":
version: 5.1.1
resolution: "@types/lru-cache@npm:5.1.1"
@@ -5332,6 +6854,15 @@ __metadata:
languageName: node
linkType: hard
+"@types/node@npm:^20":
+ version: 20.8.6
+ resolution: "@types/node@npm:20.8.6"
+ dependencies:
+ undici-types: ~5.25.1
+ checksum: ccfb7ac482c5a96edeb239893c5c099f5257fcc2ed9ae62fefdfbc782b79e16dbc2af9a85b379665237bf759904b44ca2be68e75d239e0297882aad42f61905c
+ languageName: node
+ linkType: hard
+
"@types/node@npm:^8.0.0":
version: 8.10.66
resolution: "@types/node@npm:8.10.66"
@@ -5431,6 +6962,24 @@ __metadata:
languageName: node
linkType: hard
+"@types/react-dom@npm:^18":
+ version: 18.2.13
+ resolution: "@types/react-dom@npm:18.2.13"
+ dependencies:
+ "@types/react": "*"
+ checksum: 22ba066b141dca5a5a9227fae0afc7c94b470fff8e8a38ade72649da57a8ea04d0cb2ba3e22005e7d8e772d49bddd28855b1dd98e6defd033bba6afb6edff883
+ languageName: node
+ linkType: hard
+
+"@types/react-syntax-highlighter@npm:^15.5.7":
+ version: 15.5.9
+ resolution: "@types/react-syntax-highlighter@npm:15.5.9"
+ dependencies:
+ "@types/react": "*"
+ checksum: b03c2b4b62a950f29cb46a5eae95b81add333b0d2b107d1d35c4efe639529ba424dab364d09b3d57ecef0f0394369d6680caaed80872184ebf5fb84749095808
+ languageName: node
+ linkType: hard
+
"@types/react@npm:*":
version: 18.0.32
resolution: "@types/react@npm:18.0.32"
@@ -5453,6 +7002,17 @@ __metadata:
languageName: node
linkType: hard
+"@types/react@npm:^18":
+ version: 18.2.28
+ resolution: "@types/react@npm:18.2.28"
+ dependencies:
+ "@types/prop-types": "*"
+ "@types/scheduler": "*"
+ csstype: ^3.0.2
+ checksum: 81381bedeba83278f4c9febb0b83e0bd3f42a25897a50b9cb36ef53651d34b3d50f87ebf11211ea57ea575131f85d31e93e496ce46478a00b0f9bf7b26b5917a
+ languageName: node
+ linkType: hard
+
"@types/resolve@npm:1.17.1":
version: 1.17.1
resolution: "@types/resolve@npm:1.17.1"
@@ -5534,6 +7094,13 @@ __metadata:
languageName: node
linkType: hard
+"@types/stylis@npm:^4.0.2":
+ version: 4.2.2
+ resolution: "@types/stylis@npm:4.2.2"
+ checksum: 8cd30200c4d541664344d66240793641246f6f79239b985d1879c6ff271c569e053b4823d594bbb302d8c697d77582988bd27c0317ebbf2cb6594d22206245e3
+ languageName: node
+ linkType: hard
+
"@types/through@npm:*":
version: 0.0.30
resolution: "@types/through@npm:0.0.30"
@@ -5557,6 +7124,13 @@ __metadata:
languageName: node
linkType: hard
+"@types/unist@npm:^2":
+ version: 2.0.9
+ resolution: "@types/unist@npm:2.0.9"
+ checksum: 53e63a9ecebc8dca8b9dbc69cd0369ea0c993188ebb6e3b41c222281b4e95d8e0b524bcb1556fd210ea7f39771551be0c1c8fe0000bdcc0cd184cd2cd2794256
+ languageName: node
+ linkType: hard
+
"@types/yargs-parser@npm:*":
version: 21.0.0
resolution: "@types/yargs-parser@npm:21.0.0"
@@ -5716,6 +7290,29 @@ __metadata:
languageName: node
linkType: hard
+"@zag-js/dom-query@npm:0.16.0":
+ version: 0.16.0
+ resolution: "@zag-js/dom-query@npm:0.16.0"
+ checksum: a207018be1215716487b789c50056c6e28ebf067db26e31147bdef6f4ae1a20fb74b6a7f1a1334210c92295479761df7da2fb60a9cef9aaf64ea376dead3a1f7
+ languageName: node
+ linkType: hard
+
+"@zag-js/element-size@npm:0.10.5":
+ version: 0.10.5
+ resolution: "@zag-js/element-size@npm:0.10.5"
+ checksum: 1a269fbe5124b430008617e705049c929301fae98af4f4ad9da9e533784c883ba899083242a9b7b2a15e503f94dcc7958e8489e98dbd0e098d2d968fb1b41355
+ languageName: node
+ linkType: hard
+
+"@zag-js/focus-visible@npm:0.16.0":
+ version: 0.16.0
+ resolution: "@zag-js/focus-visible@npm:0.16.0"
+ dependencies:
+ "@zag-js/dom-query": 0.16.0
+ checksum: 4bf4530a865200c175d04a70169929defce865a69e7c068a365106cb0b19dbae5ed56163f02cbf543f4b26e60449e150e4aec67dbd819a9d1b3eba9fc667f488
+ languageName: node
+ linkType: hard
+
"@zk-kit/groth16@npm:0.3.0":
version: 0.3.0
resolution: "@zk-kit/groth16@npm:0.3.0"
@@ -6162,6 +7759,24 @@ __metadata:
languageName: node
linkType: hard
+"aria-hidden@npm:^1.2.3":
+ version: 1.2.3
+ resolution: "aria-hidden@npm:1.2.3"
+ dependencies:
+ tslib: ^2.0.0
+ checksum: 7d7d211629eef315e94ed3b064c6823d13617e609d3f9afab1c2ed86399bb8e90405f9bdd358a85506802766f3ecb468af985c67c846045a34b973bcc0289db9
+ languageName: node
+ linkType: hard
+
+"aria-query@npm:^5.3.0":
+ version: 5.3.0
+ resolution: "aria-query@npm:5.3.0"
+ dependencies:
+ dequal: ^2.0.3
+ checksum: 305bd73c76756117b59aba121d08f413c7ff5e80fa1b98e217a3443fcddb9a232ee790e24e432b59ae7625aebcf4c47cb01c2cac872994f0b426f5bdfcd96ba9
+ languageName: node
+ linkType: hard
+
"array-back@npm:^3.0.1, array-back@npm:^3.1.0":
version: 3.1.0
resolution: "array-back@npm:3.1.0"
@@ -6213,6 +7828,19 @@ __metadata:
languageName: node
linkType: hard
+"array-includes@npm:^3.1.7":
+ version: 3.1.7
+ resolution: "array-includes@npm:3.1.7"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ get-intrinsic: ^1.2.1
+ is-string: ^1.0.7
+ checksum: 06f9e4598fac12a919f7c59a3f04f010ea07f0b7f0585465ed12ef528a60e45f374e79d1bddbb34cdd4338357d00023ddbd0ac18b0be36964f5e726e8965d7fc
+ languageName: node
+ linkType: hard
+
"array-union@npm:^1.0.1":
version: 1.0.2
resolution: "array-union@npm:1.0.2"
@@ -6260,16 +7888,56 @@ __metadata:
languageName: node
linkType: hard
+"array.prototype.flatmap@npm:^1.3.2":
+ version: 1.3.2
+ resolution: "array.prototype.flatmap@npm:1.3.2"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ es-shim-unscopables: ^1.0.0
+ checksum: ce09fe21dc0bcd4f30271f8144083aa8c13d4639074d6c8dc82054b847c7fc9a0c97f857491f4da19d4003e507172a78f4bcd12903098adac8b9cd374f734be3
+ languageName: node
+ linkType: hard
+
"array.prototype.reduce@npm:^1.0.5":
version: 1.0.5
resolution: "array.prototype.reduce@npm:1.0.5"
dependencies:
call-bind: ^1.0.2
- define-properties: ^1.1.4
- es-abstract: ^1.20.4
- es-array-method-boxes-properly: ^1.0.0
- is-string: ^1.0.7
- checksum: f44691395f9202aba5ec2446468d4c27209bfa81464f342ae024b7157dbf05b164e47cca01250b8c7c2a8219953fb57651cca16aab3d16f43b85c0d92c26eef3
+ define-properties: ^1.1.4
+ es-abstract: ^1.20.4
+ es-array-method-boxes-properly: ^1.0.0
+ is-string: ^1.0.7
+ checksum: f44691395f9202aba5ec2446468d4c27209bfa81464f342ae024b7157dbf05b164e47cca01250b8c7c2a8219953fb57651cca16aab3d16f43b85c0d92c26eef3
+ languageName: node
+ linkType: hard
+
+"array.prototype.tosorted@npm:^1.1.1":
+ version: 1.1.2
+ resolution: "array.prototype.tosorted@npm:1.1.2"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ es-shim-unscopables: ^1.0.0
+ get-intrinsic: ^1.2.1
+ checksum: 3607a7d6b117f0ffa6f4012457b7af0d47d38cf05e01d50e09682fd2fb782a66093a5e5fbbdbad77c8c824794a9d892a51844041641f719ad41e3a974f0764de
+ languageName: node
+ linkType: hard
+
+"arraybuffer.prototype.slice@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "arraybuffer.prototype.slice@npm:1.0.2"
+ dependencies:
+ array-buffer-byte-length: ^1.0.0
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ get-intrinsic: ^1.2.1
+ is-array-buffer: ^3.0.2
+ is-shared-array-buffer: ^1.0.2
+ checksum: c200faf437786f5b2c80d4564ff5481c886a16dee642ef02abdc7306c7edd523d1f01d1dd12b769c7eb42ac9bc53874510db19a92a2c035c0f6696172aafa5d3
languageName: node
linkType: hard
@@ -6340,6 +8008,13 @@ __metadata:
languageName: node
linkType: hard
+"ast-types-flow@npm:^0.0.8":
+ version: 0.0.8
+ resolution: "ast-types-flow@npm:0.0.8"
+ checksum: 0a64706609a179233aac23817837abab614f3548c252a2d3d79ea1e10c74aa28a0846e11f466cf72771b6ed8713abc094dcf8c40c3ec4207da163efa525a94a8
+ languageName: node
+ linkType: hard
+
"astral-regex@npm:^2.0.0":
version: 2.0.0
resolution: "astral-regex@npm:2.0.0"
@@ -6386,6 +8061,15 @@ __metadata:
languageName: node
linkType: hard
+"asynciterator.prototype@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "asynciterator.prototype@npm:1.0.0"
+ dependencies:
+ has-symbols: ^1.0.3
+ checksum: e8ebfd9493ac651cf9b4165e9d64030b3da1d17181bb1963627b59e240cdaf021d9b59d44b827dc1dde4e22387ec04c2d0f8720cf58a1c282e34e40cc12721b3
+ languageName: node
+ linkType: hard
+
"asynckit@npm:^0.4.0":
version: 0.4.0
resolution: "asynckit@npm:0.4.0"
@@ -6421,6 +8105,13 @@ __metadata:
languageName: node
linkType: hard
+"axe-core@npm:=4.7.0":
+ version: 4.7.0
+ resolution: "axe-core@npm:4.7.0"
+ checksum: f086bcab42be1761ba2b0b127dec350087f4c3a853bba8dd58f69d898cefaac31a1561da23146f6f3c07954c76171d1f2ce460e555e052d2b02cd79af628fa4a
+ languageName: node
+ linkType: hard
+
"axios@npm:^0.27.2":
version: 0.27.2
resolution: "axios@npm:0.27.2"
@@ -6442,6 +8133,15 @@ __metadata:
languageName: node
linkType: hard
+"axobject-query@npm:^3.2.1":
+ version: 3.2.1
+ resolution: "axobject-query@npm:3.2.1"
+ dependencies:
+ dequal: ^2.0.3
+ checksum: a94047e702b57c91680e6a952ec4a1aaa2cfd0d80ead76bc8c954202980d8c51968a6ea18b4d8010e8e2cf95676533d8022a8ebba9abc1dfe25686721df26fd2
+ languageName: node
+ linkType: hard
+
"b4a@npm:^1.0.1":
version: 1.6.3
resolution: "b4a@npm:1.6.3"
@@ -6516,6 +8216,17 @@ __metadata:
languageName: node
linkType: hard
+"babel-plugin-macros@npm:^3.1.0":
+ version: 3.1.0
+ resolution: "babel-plugin-macros@npm:3.1.0"
+ dependencies:
+ "@babel/runtime": ^7.12.5
+ cosmiconfig: ^7.0.0
+ resolve: ^1.19.0
+ checksum: 765de4abebd3e4688ebdfbff8571ddc8cd8061f839bb6c3e550b0344a4027b04c60491f843296ce3f3379fb356cc873d57a9ee6694262547eb822c14a25be9a6
+ languageName: node
+ linkType: hard
+
"babel-plugin-polyfill-corejs2@npm:^0.3.3":
version: 0.3.3
resolution: "babel-plugin-polyfill-corejs2@npm:0.3.3"
@@ -7083,7 +8794,7 @@ __metadata:
languageName: node
linkType: hard
-"busboy@npm:^1.6.0":
+"busboy@npm:1.6.0, busboy@npm:^1.6.0":
version: 1.6.0
resolution: "busboy@npm:1.6.0"
dependencies:
@@ -7261,6 +8972,17 @@ __metadata:
languageName: node
linkType: hard
+"call-bind@npm:^1.0.4, call-bind@npm:^1.0.5":
+ version: 1.0.5
+ resolution: "call-bind@npm:1.0.5"
+ dependencies:
+ function-bind: ^1.1.2
+ get-intrinsic: ^1.2.1
+ set-function-length: ^1.1.1
+ checksum: 449e83ecbd4ba48e7eaac5af26fea3b50f8f6072202c2dd7c5a6e7a6308f2421abe5e13a3bbd55221087f76320c5e09f25a8fdad1bab2b77c68ae74d92234ea5
+ languageName: node
+ linkType: hard
+
"callsites@npm:^3.0.0":
version: 3.1.0
resolution: "callsites@npm:3.1.0"
@@ -7300,10 +9022,17 @@ __metadata:
languageName: node
linkType: hard
+"camelize@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "camelize@npm:1.0.1"
+ checksum: 91d8611d09af725e422a23993890d22b2b72b4cabf7239651856950c76b4bf53fe0d0da7c5e4db05180e898e4e647220e78c9fbc976113bd96d603d1fcbfcb99
+ languageName: node
+ linkType: hard
+
"caniuse-lite@npm:^1.0.30001406, caniuse-lite@npm:^1.0.30001449":
- version: 1.0.30001473
- resolution: "caniuse-lite@npm:1.0.30001473"
- checksum: 007ad17463612d38080fc59b5fa115ccb1016a1aff8daab92199a7cf8eb91cf987e85e7015cb0bca830ee2ef45f252a016c29a98a6497b334cceb038526b73f1
+ version: 1.0.30001550
+ resolution: "caniuse-lite@npm:1.0.30001550"
+ checksum: b48d5a0bd25d634d61f410e0130c5e6c328724285c3c6065644eb41f86a227f5db0eb77da25d0fe3c6c9b04bbd040c9c164bf8dc50dd75cb30fc578aaae562f1
languageName: node
linkType: hard
@@ -7511,6 +9240,27 @@ __metadata:
languageName: node
linkType: hard
+"character-entities-legacy@npm:^1.0.0":
+ version: 1.1.4
+ resolution: "character-entities-legacy@npm:1.1.4"
+ checksum: fe03a82c154414da3a0c8ab3188e4237ec68006cbcd681cf23c7cfb9502a0e76cd30ab69a2e50857ca10d984d57de3b307680fff5328ccd427f400e559c3a811
+ languageName: node
+ linkType: hard
+
+"character-entities@npm:^1.0.0":
+ version: 1.2.4
+ resolution: "character-entities@npm:1.2.4"
+ checksum: e1545716571ead57beac008433c1ff69517cd8ca5b336889321c5b8ff4a99c29b65589a701e9c086cda8a5e346a67295e2684f6c7ea96819fe85cbf49bf8686d
+ languageName: node
+ linkType: hard
+
+"character-reference-invalid@npm:^1.0.0":
+ version: 1.1.4
+ resolution: "character-reference-invalid@npm:1.1.4"
+ checksum: 20274574c70e05e2f81135f3b93285536bc8ff70f37f0809b0d17791a832838f1e49938382899ed4cb444e5bbd4314ca1415231344ba29f4222ce2ccf24fea0b
+ languageName: node
+ linkType: hard
+
"chardet@npm:^0.7.0":
version: 0.7.0
resolution: "chardet@npm:0.7.0"
@@ -7905,6 +9655,13 @@ __metadata:
languageName: node
linkType: hard
+"color2k@npm:^2.0.2":
+ version: 2.0.2
+ resolution: "color2k@npm:2.0.2"
+ checksum: a024d05c0eb24c6cf4f50b73fc948734ebd8cd0ce1fcfd17f4a17e6965c29764fa4b528161de4e65939d6fc32b3063d496c327eb0f48c084b4d79707ddb5965f
+ languageName: node
+ linkType: hard
+
"colorette@npm:^2.0.16, colorette@npm:^2.0.19":
version: 2.0.19
resolution: "colorette@npm:2.0.19"
@@ -7928,6 +9685,13 @@ __metadata:
languageName: node
linkType: hard
+"comma-separated-tokens@npm:^1.0.0":
+ version: 1.0.8
+ resolution: "comma-separated-tokens@npm:1.0.8"
+ checksum: 0adcb07174fa4d08cf0f5c8e3aec40a36b5ff0c2c720e5e23f50fe02e6789d1d00a67036c80e0c1e1539f41d3e7f0101b074039dd833b4e4a59031b659d6ca0d
+ languageName: node
+ linkType: hard
+
"command-exists@npm:^1.2.8":
version: 1.2.9
resolution: "command-exists@npm:1.2.9"
@@ -8044,6 +9808,13 @@ __metadata:
languageName: node
linkType: hard
+"compute-scroll-into-view@npm:3.0.3":
+ version: 3.0.3
+ resolution: "compute-scroll-into-view@npm:3.0.3"
+ checksum: 7143869648d4de8ff2cb60eb8e96a21b47948c3210d15d1bfaa7e88de722c7f83f06676b97ebff94831dde0c03e42458ecfbde466747945187ee5c7667c68395
+ languageName: node
+ linkType: hard
+
"concat-map@npm:0.0.1":
version: 0.0.1
resolution: "concat-map@npm:0.0.1"
@@ -8199,7 +9970,7 @@ __metadata:
languageName: node
linkType: hard
-"convert-source-map@npm:^1.4.0, convert-source-map@npm:^1.6.0, convert-source-map@npm:^1.7.0":
+"convert-source-map@npm:^1.4.0, convert-source-map@npm:^1.5.0, convert-source-map@npm:^1.6.0, convert-source-map@npm:^1.7.0":
version: 1.9.0
resolution: "convert-source-map@npm:1.9.0"
checksum: dc55a1f28ddd0e9485ef13565f8f756b342f9a46c4ae18b843fe3c30c675d058d6a4823eff86d472f187b176f0adf51ea7b69ea38be34be4a63cbbf91b0593c8
@@ -8234,6 +10005,15 @@ __metadata:
languageName: node
linkType: hard
+"copy-to-clipboard@npm:3.3.3":
+ version: 3.3.3
+ resolution: "copy-to-clipboard@npm:3.3.3"
+ dependencies:
+ toggle-selection: ^1.0.6
+ checksum: e0a325e39b7615108e6c1c8ac110ae7b829cdc4ee3278b1df6a0e4228c490442cc86444cd643e2da344fbc424b3aab8909e2fec82f8bc75e7e5b190b7c24eecf
+ languageName: node
+ linkType: hard
+
"core-js-compat@npm:^3.25.1":
version: 3.29.1
resolution: "core-js-compat@npm:3.29.1"
@@ -8424,6 +10204,33 @@ __metadata:
languageName: node
linkType: hard
+"css-box-model@npm:1.2.1":
+ version: 1.2.1
+ resolution: "css-box-model@npm:1.2.1"
+ dependencies:
+ tiny-invariant: ^1.0.6
+ checksum: 4d113f26fed6b9150e2c314502d00dabe06f12ae43a01a7e9b6e57f3de49b4281dbb0dc46a1158a7349618f8f34d9250af57cb43d7337e9485e73e6b821e470e
+ languageName: node
+ linkType: hard
+
+"css-color-keywords@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "css-color-keywords@npm:1.0.0"
+ checksum: 8f125e3ad477bd03c77b533044bd9e8a6f7c0da52d49bbc0bbe38327b3829d6ba04d368ca49dd9ff3b667d2fc8f1698d891c198bbf8feade1a5501bf5a296408
+ languageName: node
+ linkType: hard
+
+"css-to-react-native@npm:^3.2.0":
+ version: 3.2.0
+ resolution: "css-to-react-native@npm:3.2.0"
+ dependencies:
+ camelize: ^1.0.0
+ css-color-keywords: ^1.0.0
+ postcss-value-parser: ^4.0.2
+ checksum: 263be65e805aef02c3f20c064665c998a8c35293e1505dbe6e3054fb186b01a9897ac6cf121f9840e5a9dfe3fb3994f6fcd0af84a865f1df78ba5bf89e77adce
+ languageName: node
+ linkType: hard
+
"cssom@npm:^0.4.4":
version: 0.4.4
resolution: "cssom@npm:0.4.4"
@@ -8447,7 +10254,7 @@ __metadata:
languageName: node
linkType: hard
-"csstype@npm:^3.0.2":
+"csstype@npm:^3.0.11, csstype@npm:^3.0.2, csstype@npm:^3.1.2":
version: 3.1.2
resolution: "csstype@npm:3.1.2"
checksum: e1a52e6c25c1314d6beef5168da704ab29c5186b877c07d822bd0806717d9a265e8493a2e35ca7e68d0f5d472d43fac1cdce70fd79fd0853dff81f3028d857b5
@@ -8482,6 +10289,13 @@ __metadata:
languageName: node
linkType: hard
+"damerau-levenshtein@npm:^1.0.8":
+ version: 1.0.8
+ resolution: "damerau-levenshtein@npm:1.0.8"
+ checksum: d240b7757544460ae0586a341a53110ab0a61126570ef2d8c731e3eab3f0cb6e488e2609e6a69b46727635de49be20b071688698744417ff1b6c1d7ccd03e0de
+ languageName: node
+ linkType: hard
+
"dargs@npm:^7.0.0":
version: 7.0.0
resolution: "dargs@npm:7.0.0"
@@ -8750,6 +10564,17 @@ __metadata:
languageName: node
linkType: hard
+"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "define-data-property@npm:1.1.1"
+ dependencies:
+ get-intrinsic: ^1.2.1
+ gopd: ^1.0.1
+ has-property-descriptors: ^1.0.0
+ checksum: a29855ad3f0630ea82e3c5012c812efa6ca3078d5c2aa8df06b5f597c1cde6f7254692df41945851d903e05a1668607b6d34e778f402b9ff9ffb38111f1a3f0d
+ languageName: node
+ linkType: hard
+
"define-properties@npm:^1.1.2, define-properties@npm:^1.1.3, define-properties@npm:^1.1.4":
version: 1.2.0
resolution: "define-properties@npm:1.2.0"
@@ -8760,6 +10585,17 @@ __metadata:
languageName: node
linkType: hard
+"define-properties@npm:^1.2.0, define-properties@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "define-properties@npm:1.2.1"
+ dependencies:
+ define-data-property: ^1.0.1
+ has-property-descriptors: ^1.0.0
+ object-keys: ^1.1.1
+ checksum: b4ccd00597dd46cb2d4a379398f5b19fca84a16f3374e2249201992f36b30f6835949a9429669ee6b41b6e837205a163eadd745e472069e70dfc10f03e5fcc12
+ languageName: node
+ linkType: hard
+
"defu@npm:^6.0.0, defu@npm:^6.1.0, defu@npm:^6.1.2":
version: 6.1.2
resolution: "defu@npm:6.1.2"
@@ -8803,6 +10639,13 @@ __metadata:
languageName: node
linkType: hard
+"dequal@npm:^2.0.3":
+ version: 2.0.3
+ resolution: "dequal@npm:2.0.3"
+ checksum: 8679b850e1a3d0ebbc46ee780d5df7b478c23f335887464023a631d1b9af051ad4a6595a44220f9ff8ff95a8ddccf019b5ad778a976fd7bbf77383d36f412f90
+ languageName: node
+ linkType: hard
+
"des.js@npm:^1.0.0":
version: 1.0.1
resolution: "des.js@npm:1.0.1"
@@ -8848,6 +10691,13 @@ __metadata:
languageName: node
linkType: hard
+"detect-node-es@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "detect-node-es@npm:1.1.0"
+ checksum: e46307d7264644975b71c104b9f028ed1d3d34b83a15b8a22373640ce5ea630e5640b1078b8ea15f202b54641da71e4aa7597093bd4b91f113db520a26a37449
+ languageName: node
+ linkType: hard
+
"detect-port@npm:^1.3.0":
version: 1.5.1
resolution: "detect-port@npm:1.5.1"
@@ -9223,6 +11073,53 @@ __metadata:
languageName: node
linkType: hard
+"es-abstract@npm:^1.22.1":
+ version: 1.22.3
+ resolution: "es-abstract@npm:1.22.3"
+ dependencies:
+ array-buffer-byte-length: ^1.0.0
+ arraybuffer.prototype.slice: ^1.0.2
+ available-typed-arrays: ^1.0.5
+ call-bind: ^1.0.5
+ es-set-tostringtag: ^2.0.1
+ es-to-primitive: ^1.2.1
+ function.prototype.name: ^1.1.6
+ get-intrinsic: ^1.2.2
+ get-symbol-description: ^1.0.0
+ globalthis: ^1.0.3
+ gopd: ^1.0.1
+ has-property-descriptors: ^1.0.0
+ has-proto: ^1.0.1
+ has-symbols: ^1.0.3
+ hasown: ^2.0.0
+ internal-slot: ^1.0.5
+ is-array-buffer: ^3.0.2
+ 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.12
+ is-weakref: ^1.0.2
+ object-inspect: ^1.13.1
+ object-keys: ^1.1.1
+ object.assign: ^4.1.4
+ regexp.prototype.flags: ^1.5.1
+ safe-array-concat: ^1.0.1
+ safe-regex-test: ^1.0.0
+ string.prototype.trim: ^1.2.8
+ string.prototype.trimend: ^1.0.7
+ string.prototype.trimstart: ^1.0.7
+ typed-array-buffer: ^1.0.0
+ typed-array-byte-length: ^1.0.0
+ typed-array-byte-offset: ^1.0.0
+ typed-array-length: ^1.0.4
+ unbox-primitive: ^1.0.2
+ which-typed-array: ^1.1.13
+ checksum: b1bdc962856836f6e72be10b58dc128282bdf33771c7a38ae90419d920fc3b36cc5d2b70a222ad8016e3fc322c367bf4e9e89fc2bc79b7e933c05b218e83d79a
+ languageName: node
+ linkType: hard
+
"es-array-method-boxes-properly@npm:^1.0.0":
version: 1.0.0
resolution: "es-array-method-boxes-properly@npm:1.0.0"
@@ -9230,6 +11127,28 @@ __metadata:
languageName: node
linkType: hard
+"es-iterator-helpers@npm:^1.0.12, es-iterator-helpers@npm:^1.0.15":
+ version: 1.0.15
+ resolution: "es-iterator-helpers@npm:1.0.15"
+ dependencies:
+ asynciterator.prototype: ^1.0.0
+ call-bind: ^1.0.2
+ define-properties: ^1.2.1
+ es-abstract: ^1.22.1
+ es-set-tostringtag: ^2.0.1
+ function-bind: ^1.1.1
+ get-intrinsic: ^1.2.1
+ globalthis: ^1.0.3
+ has-property-descriptors: ^1.0.0
+ has-proto: ^1.0.1
+ has-symbols: ^1.0.3
+ internal-slot: ^1.0.5
+ iterator.prototype: ^1.1.2
+ safe-array-concat: ^1.0.1
+ checksum: 50081ae5c549efe62e5c1d244df0194b40b075f7897fc2116b7e1aa437eb3c41f946d2afda18c33f9b31266ec544765932542765af839f76fa6d7b7855d1e0e1
+ languageName: node
+ linkType: hard
+
"es-set-tostringtag@npm:^2.0.1":
version: 2.0.1
resolution: "es-set-tostringtag@npm:2.0.1"
@@ -9409,6 +11328,23 @@ __metadata:
languageName: node
linkType: hard
+"eslint-config-airbnb@npm:^19.0.4":
+ version: 19.0.4
+ resolution: "eslint-config-airbnb@npm:19.0.4"
+ dependencies:
+ eslint-config-airbnb-base: ^15.0.0
+ object.assign: ^4.1.2
+ object.entries: ^1.1.5
+ peerDependencies:
+ eslint: ^7.32.0 || ^8.2.0
+ eslint-plugin-import: ^2.25.3
+ eslint-plugin-jsx-a11y: ^6.5.1
+ eslint-plugin-react: ^7.28.0
+ eslint-plugin-react-hooks: ^4.3.0
+ checksum: 253178689c3c80eef2567e3aaf0612e18973bc9cf51d9be36074b5dd58210e8b6942200a424bcccbb81ac884e41303479ab09f251a2a97addc2de61efdc9576c
+ languageName: node
+ linkType: hard
+
"eslint-config-prettier@npm:^8.3.0":
version: 8.8.0
resolution: "eslint-config-prettier@npm:8.8.0"
@@ -9485,6 +11421,67 @@ __metadata:
languageName: node
linkType: hard
+"eslint-plugin-jsx-a11y@npm:^6.8.0":
+ version: 6.8.0
+ resolution: "eslint-plugin-jsx-a11y@npm:6.8.0"
+ dependencies:
+ "@babel/runtime": ^7.23.2
+ aria-query: ^5.3.0
+ array-includes: ^3.1.7
+ array.prototype.flatmap: ^1.3.2
+ ast-types-flow: ^0.0.8
+ axe-core: =4.7.0
+ axobject-query: ^3.2.1
+ damerau-levenshtein: ^1.0.8
+ emoji-regex: ^9.2.2
+ es-iterator-helpers: ^1.0.15
+ hasown: ^2.0.0
+ jsx-ast-utils: ^3.3.5
+ language-tags: ^1.0.9
+ minimatch: ^3.1.2
+ object.entries: ^1.1.7
+ object.fromentries: ^2.0.7
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
+ checksum: 3dec00e2a3089c4c61ac062e4196a70985fb7eda1fd67fe035363d92578debde92fdb8ed2e472321fc0d71e75f4a1e8888c6a3218c14dd93c8e8d19eb6f51554
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-react-hooks@npm:^4.6.0":
+ version: 4.6.0
+ resolution: "eslint-plugin-react-hooks@npm:4.6.0"
+ peerDependencies:
+ eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
+ checksum: 23001801f14c1d16bf0a837ca7970d9dd94e7b560384b41db378b49b6e32dc43d6e2790de1bd737a652a86f81a08d6a91f402525061b47719328f586a57e86c3
+ languageName: node
+ linkType: hard
+
+"eslint-plugin-react@npm:^7.33.2":
+ version: 7.33.2
+ resolution: "eslint-plugin-react@npm:7.33.2"
+ dependencies:
+ array-includes: ^3.1.6
+ array.prototype.flatmap: ^1.3.1
+ array.prototype.tosorted: ^1.1.1
+ doctrine: ^2.1.0
+ es-iterator-helpers: ^1.0.12
+ estraverse: ^5.3.0
+ jsx-ast-utils: ^2.4.1 || ^3.0.0
+ minimatch: ^3.1.2
+ object.entries: ^1.1.6
+ object.fromentries: ^2.0.6
+ object.hasown: ^1.1.2
+ object.values: ^1.1.6
+ prop-types: ^15.8.1
+ resolve: ^2.0.0-next.4
+ semver: ^6.3.1
+ string.prototype.matchall: ^4.0.8
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
+ checksum: b4c3d76390b0ae6b6f9fed78170604cc2c04b48e6778a637db339e8e3911ec9ef22510b0ae77c429698151d0f1b245f282177f384105b6830e7b29b9c9b26610
+ languageName: node
+ linkType: hard
+
"eslint-scope@npm:^5.1.1":
version: 5.1.1
resolution: "eslint-scope@npm:5.1.1"
@@ -9625,7 +11622,7 @@ __metadata:
languageName: node
linkType: hard
-"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0":
+"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0, estraverse@npm:^5.3.0":
version: 5.3.0
resolution: "estraverse@npm:5.3.0"
checksum: 072780882dc8416ad144f8fe199628d2b3e7bbc9989d9ed43795d2c90309a2047e6bc5979d7e2322a341163d22cfad9e21f4110597fe487519697389497e4e2b
@@ -10161,6 +12158,15 @@ __metadata:
languageName: node
linkType: hard
+"fault@npm:^1.0.0":
+ version: 1.0.4
+ resolution: "fault@npm:1.0.4"
+ dependencies:
+ format: ^0.2.0
+ checksum: 5ac610d8b09424e0f2fa8cf913064372f2ee7140a203a79957f73ed557c0e79b1a3d096064d7f40bde8132a69204c1fe25ec23634c05c6da2da2039cff26c4e7
+ languageName: node
+ linkType: hard
+
"fb-watchman@npm:^2.0.0":
version: 2.0.2
resolution: "fb-watchman@npm:2.0.2"
@@ -10351,7 +12357,7 @@ __metadata:
languageName: node
linkType: hard
-"find-root@npm:1.1.0":
+"find-root@npm:1.1.0, find-root@npm:^1.1.0":
version: 1.1.0
resolution: "find-root@npm:1.1.0"
checksum: b2a59fe4b6c932eef36c45a048ae8f93c85640212ebe8363164814990ee20f154197505965f3f4f102efc33bfb1cbc26fd17c4a2fc739ebc51b886b137cbefaf
@@ -10445,6 +12451,15 @@ __metadata:
languageName: node
linkType: hard
+"focus-lock@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "focus-lock@npm:1.0.0"
+ dependencies:
+ tslib: ^2.0.3
+ checksum: 85eb62534e8c0314026453c4f734bf6450054a19b248280f3f69c98b5d5481707124e2206d7dc515650a6f28da827a2de297455056a9c8f398e5f8ba5dba8419
+ languageName: node
+ linkType: hard
+
"follow-redirects@npm:^1.12.1, follow-redirects@npm:^1.14.9, follow-redirects@npm:^1.15.0":
version: 1.15.2
resolution: "follow-redirects@npm:1.15.2"
@@ -10532,6 +12547,13 @@ __metadata:
languageName: node
linkType: hard
+"format@npm:^0.2.0":
+ version: 0.2.2
+ resolution: "format@npm:0.2.2"
+ checksum: 646a60e1336250d802509cf24fb801e43bd4a70a07510c816fa133aa42cdbc9c21e66e9cc0801bb183c5b031c9d68be62e7fbb6877756e52357850f92aa28799
+ languageName: node
+ linkType: hard
+
"formdata-polyfill@npm:^4.0.10":
version: 4.0.10
resolution: "formdata-polyfill@npm:4.0.10"
@@ -10562,6 +12584,36 @@ __metadata:
languageName: node
linkType: hard
+"framer-motion@npm:^10.16.4":
+ version: 10.16.4
+ resolution: "framer-motion@npm:10.16.4"
+ dependencies:
+ "@emotion/is-prop-valid": ^0.8.2
+ tslib: ^2.4.0
+ peerDependencies:
+ react: ^18.0.0
+ react-dom: ^18.0.0
+ dependenciesMeta:
+ "@emotion/is-prop-valid":
+ optional: true
+ peerDependenciesMeta:
+ react:
+ optional: true
+ react-dom:
+ optional: true
+ checksum: 57eb252f25a2c4ee14b024295c6a1162a53a05e0321bdb9c8a22ec266fbe777832823eaa0309e42854170fcde16c42915c6c5d0208b628fd000d6fab013c501f
+ languageName: node
+ linkType: hard
+
+"framesync@npm:6.1.2":
+ version: 6.1.2
+ resolution: "framesync@npm:6.1.2"
+ dependencies:
+ tslib: 2.4.0
+ checksum: 250dec78c351b087a47558b8bcf85a91a878507a73f05c095f7728617d40432b8ca0cb21deee98026d582c67610e961f83e535990035f6c9902e721580daff76
+ languageName: node
+ linkType: hard
+
"fresh@npm:0.5.2":
version: 0.5.2
resolution: "fresh@npm:0.5.2"
@@ -10741,6 +12793,13 @@ __metadata:
languageName: node
linkType: hard
+"function-bind@npm:^1.1.2":
+ version: 1.1.2
+ resolution: "function-bind@npm:1.1.2"
+ checksum: 2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1
+ languageName: node
+ linkType: hard
+
"function.prototype.name@npm:^1.1.5":
version: 1.1.5
resolution: "function.prototype.name@npm:1.1.5"
@@ -10753,6 +12812,18 @@ __metadata:
languageName: node
linkType: hard
+"function.prototype.name@npm:^1.1.6":
+ version: 1.1.6
+ resolution: "function.prototype.name@npm:1.1.6"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ functions-have-names: ^1.2.3
+ checksum: 7a3f9bd98adab09a07f6e1f03da03d3f7c26abbdeaeee15223f6c04a9fb5674792bdf5e689dac19b97ac71de6aad2027ba3048a9b883aa1b3173eed6ab07f479
+ languageName: node
+ linkType: hard
+
"functional-red-black-tree@npm:^1.0.1":
version: 1.0.1
resolution: "functional-red-black-tree@npm:1.0.1"
@@ -10760,7 +12831,7 @@ __metadata:
languageName: node
linkType: hard
-"functions-have-names@npm:^1.2.2":
+"functions-have-names@npm:^1.2.2, functions-have-names@npm:^1.2.3":
version: 1.2.3
resolution: "functions-have-names@npm:1.2.3"
checksum: c3f1f5ba20f4e962efb71344ce0a40722163e85bee2101ce25f88214e78182d2d2476aa85ef37950c579eb6cf6ee811c17b3101bb84004bb75655f3e33f3fdb5
@@ -10826,6 +12897,25 @@ __metadata:
languageName: node
linkType: hard
+"get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.2":
+ version: 1.2.2
+ resolution: "get-intrinsic@npm:1.2.2"
+ dependencies:
+ function-bind: ^1.1.2
+ has-proto: ^1.0.1
+ has-symbols: ^1.0.3
+ hasown: ^2.0.0
+ checksum: 447ff0724df26829908dc033b62732359596fcf66027bc131ab37984afb33842d9cd458fd6cecadfe7eac22fd8a54b349799ed334cf2726025c921c7250e7417
+ languageName: node
+ linkType: hard
+
+"get-nonce@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "get-nonce@npm:1.0.1"
+ checksum: e2614e43b4694c78277bb61b0f04583d45786881289285c73770b07ded246a98be7e1f78b940c80cbe6f2b07f55f0b724e6db6fd6f1bcbd1e8bdac16521074ed
+ languageName: node
+ linkType: hard
+
"get-own-enumerable-property-symbols@npm:^3.0.0":
version: 3.0.2
resolution: "get-own-enumerable-property-symbols@npm:3.0.2"
@@ -10980,6 +13070,13 @@ __metadata:
languageName: node
linkType: hard
+"glob-to-regexp@npm:^0.4.1":
+ version: 0.4.1
+ resolution: "glob-to-regexp@npm:0.4.1"
+ checksum: e795f4e8f06d2a15e86f76e4d92751cf8bbfcf0157cea5c2f0f35678a8195a750b34096b1256e436f0cebc1883b5ff0888c47348443e69546a5a87f9e1eb1167
+ languageName: node
+ linkType: hard
+
"glob@npm:7.1.3":
version: 7.1.3
resolution: "glob@npm:7.1.3"
@@ -11715,13 +13812,42 @@ __metadata:
languageName: node
linkType: hard
-"hash.js@npm:1.1.7, hash.js@npm:^1.0.0, hash.js@npm:^1.0.3, hash.js@npm:^1.1.7":
- version: 1.1.7
- resolution: "hash.js@npm:1.1.7"
+"hash.js@npm:1.1.7, hash.js@npm:^1.0.0, hash.js@npm:^1.0.3, hash.js@npm:^1.1.7":
+ version: 1.1.7
+ resolution: "hash.js@npm:1.1.7"
+ dependencies:
+ inherits: ^2.0.3
+ minimalistic-assert: ^1.0.1
+ checksum: e350096e659c62422b85fa508e4b3669017311aa4c49b74f19f8e1bc7f3a54a584fdfd45326d4964d6011f2b2d882e38bea775a96046f2a61b7779a979629d8f
+ languageName: node
+ linkType: hard
+
+"hasown@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "hasown@npm:2.0.0"
+ dependencies:
+ function-bind: ^1.1.2
+ checksum: 6151c75ca12554565098641c98a40f4cc86b85b0fd5b6fe92360967e4605a4f9610f7757260b4e8098dd1c2ce7f4b095f2006fe72a570e3b6d2d28de0298c176
+ languageName: node
+ linkType: hard
+
+"hast-util-parse-selector@npm:^2.0.0":
+ version: 2.2.5
+ resolution: "hast-util-parse-selector@npm:2.2.5"
+ checksum: 22ee4afbd11754562144cb3c4f3ec52524dafba4d90ee52512902d17cf11066d83b38f7bdf6ca571bbc2541f07ba30db0d234657b6ecb8ca4631587466459605
+ languageName: node
+ linkType: hard
+
+"hastscript@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "hastscript@npm:6.0.0"
dependencies:
- inherits: ^2.0.3
- minimalistic-assert: ^1.0.1
- checksum: e350096e659c62422b85fa508e4b3669017311aa4c49b74f19f8e1bc7f3a54a584fdfd45326d4964d6011f2b2d882e38bea775a96046f2a61b7779a979629d8f
+ "@types/hast": ^2.0.0
+ comma-separated-tokens: ^1.0.0
+ hast-util-parse-selector: ^2.0.0
+ property-information: ^5.0.0
+ space-separated-tokens: ^1.0.0
+ checksum: 5e50b85af0d2cb7c17979cb1ddca75d6b96b53019dd999b39e7833192c9004201c3cee6445065620ea05d0087d9ae147a4844e582d64868be5bc6b0232dfe52d
languageName: node
linkType: hard
@@ -11741,6 +13867,13 @@ __metadata:
languageName: node
linkType: hard
+"highlight.js@npm:^10.4.1, highlight.js@npm:~10.7.0":
+ version: 10.7.3
+ resolution: "highlight.js@npm:10.7.3"
+ checksum: defeafcd546b535d710d8efb8e650af9e3b369ef53e28c3dc7893eacfe263200bba4c5fcf43524ae66d5c0c296b1af0870523ceae3e3104d24b7abf6374a4fea
+ languageName: node
+ linkType: hard
+
"hmac-drbg@npm:^1.0.1":
version: 1.0.1
resolution: "hmac-drbg@npm:1.0.1"
@@ -11752,6 +13885,15 @@ __metadata:
languageName: node
linkType: hard
+"hoist-non-react-statics@npm:^3.3.1":
+ version: 3.3.2
+ resolution: "hoist-non-react-statics@npm:3.3.2"
+ dependencies:
+ react-is: ^16.7.0
+ checksum: b1538270429b13901ee586aa44f4cc3ecd8831c061d06cb8322e50ea17b3f5ce4d0e2e66394761e6c8e152cd8c34fb3b4b690116c6ce2bd45b18c746516cb9e8
+ languageName: node
+ linkType: hard
+
"homedir-polyfill@npm:^1.0.1":
version: 1.0.3
resolution: "homedir-polyfill@npm:1.0.3"
@@ -12157,6 +14299,15 @@ __metadata:
languageName: node
linkType: hard
+"invariant@npm:^2.2.4":
+ version: 2.2.4
+ resolution: "invariant@npm:2.2.4"
+ dependencies:
+ loose-envify: ^1.0.0
+ checksum: cc3182d793aad82a8d1f0af697b462939cb46066ec48bbf1707c150ad5fad6406137e91a262022c269702e01621f35ef60269f6c0d7fd178487959809acdfb14
+ languageName: node
+ linkType: hard
+
"io-ts@npm:1.10.4":
version: 1.10.4
resolution: "io-ts@npm:1.10.4"
@@ -12187,6 +14338,23 @@ __metadata:
languageName: node
linkType: hard
+"is-alphabetical@npm:^1.0.0":
+ version: 1.0.4
+ resolution: "is-alphabetical@npm:1.0.4"
+ checksum: 6508cce44fd348f06705d377b260974f4ce68c74000e7da4045f0d919e568226dc3ce9685c5a2af272195384df6930f748ce9213fc9f399b5d31b362c66312cb
+ languageName: node
+ linkType: hard
+
+"is-alphanumerical@npm:^1.0.0":
+ version: 1.0.4
+ resolution: "is-alphanumerical@npm:1.0.4"
+ dependencies:
+ is-alphabetical: ^1.0.0
+ is-decimal: ^1.0.0
+ checksum: e2e491acc16fcf5b363f7c726f666a9538dba0a043665740feb45bba1652457a73441e7c5179c6768a638ed396db3437e9905f403644ec7c468fb41f4813d03f
+ languageName: node
+ linkType: hard
+
"is-arguments@npm:^1.0.4":
version: 1.1.1
resolution: "is-arguments@npm:1.1.1"
@@ -12215,6 +14383,15 @@ __metadata:
languageName: node
linkType: hard
+"is-async-function@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "is-async-function@npm:2.0.0"
+ dependencies:
+ has-tostringtag: ^1.0.0
+ checksum: e3471d95e6c014bf37cad8a93f2f4b6aac962178e0a5041e8903147166964fdc1c5c1d2ef87e86d77322c370ca18f2ea004fa7420581fa747bcaf7c223069dbd
+ languageName: node
+ linkType: hard
+
"is-bigint@npm:^1.0.1":
version: 1.0.4
resolution: "is-bigint@npm:1.0.4"
@@ -12282,6 +14459,15 @@ __metadata:
languageName: node
linkType: hard
+"is-core-module@npm:^2.13.0":
+ version: 2.13.1
+ resolution: "is-core-module@npm:2.13.1"
+ dependencies:
+ hasown: ^2.0.0
+ checksum: 256559ee8a9488af90e4bad16f5583c6d59e92f0742e9e8bb4331e758521ee86b810b93bae44f390766ffbc518a0488b18d9dab7da9a5ff997d499efc9403f7c
+ languageName: node
+ linkType: hard
+
"is-core-module@npm:^2.5.0, is-core-module@npm:^2.8.1, is-core-module@npm:^2.9.0":
version: 2.10.0
resolution: "is-core-module@npm:2.10.0"
@@ -12291,7 +14477,7 @@ __metadata:
languageName: node
linkType: hard
-"is-date-object@npm:^1.0.1":
+"is-date-object@npm:^1.0.1, is-date-object@npm:^1.0.5":
version: 1.0.5
resolution: "is-date-object@npm:1.0.5"
dependencies:
@@ -12300,6 +14486,13 @@ __metadata:
languageName: node
linkType: hard
+"is-decimal@npm:^1.0.0":
+ version: 1.0.4
+ resolution: "is-decimal@npm:1.0.4"
+ checksum: ed483a387517856dc395c68403a10201fddcc1b63dc56513fbe2fe86ab38766120090ecdbfed89223d84ca8b1cd28b0641b93cb6597b6e8f4c097a7c24e3fb96
+ languageName: node
+ linkType: hard
+
"is-extglob@npm:^2.1.1":
version: 2.1.1
resolution: "is-extglob@npm:2.1.1"
@@ -12307,6 +14500,15 @@ __metadata:
languageName: node
linkType: hard
+"is-finalizationregistry@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "is-finalizationregistry@npm:1.0.2"
+ dependencies:
+ call-bind: ^1.0.2
+ checksum: 4f243a8e06228cd45bdab8608d2cb7abfc20f6f0189c8ac21ea8d603f1f196eabd531ce0bb8e08cbab047e9845ef2c191a3761c9a17ad5cabf8b35499c4ad35d
+ languageName: node
+ linkType: hard
+
"is-fullwidth-code-point@npm:^2.0.0":
version: 2.0.0
resolution: "is-fullwidth-code-point@npm:2.0.0"
@@ -12342,7 +14544,7 @@ __metadata:
languageName: node
linkType: hard
-"is-generator-function@npm:^1.0.7":
+"is-generator-function@npm:^1.0.10, is-generator-function@npm:^1.0.7":
version: 1.0.10
resolution: "is-generator-function@npm:1.0.10"
dependencies:
@@ -12367,6 +14569,13 @@ __metadata:
languageName: node
linkType: hard
+"is-hexadecimal@npm:^1.0.0":
+ version: 1.0.4
+ resolution: "is-hexadecimal@npm:1.0.4"
+ checksum: a452e047587b6069332d83130f54d30da4faf2f2ebaa2ce6d073c27b5703d030d58ed9e0b729c8e4e5b52c6f1dab26781bb77b7bc6c7805f14f320e328ff8cd5
+ languageName: node
+ linkType: hard
+
"is-interactive@npm:^1.0.0":
version: 1.0.0
resolution: "is-interactive@npm:1.0.0"
@@ -12388,6 +14597,13 @@ __metadata:
languageName: node
linkType: hard
+"is-map@npm:^2.0.1":
+ version: 2.0.2
+ resolution: "is-map@npm:2.0.2"
+ checksum: ace3d0ecd667bbdefdb1852de601268f67f2db725624b1958f279316e13fecb8fa7df91fd60f690d7417b4ec180712f5a7ee967008e27c65cfd475cc84337728
+ languageName: node
+ linkType: hard
+
"is-module@npm:^1.0.0":
version: 1.0.0
resolution: "is-module@npm:1.0.0"
@@ -12532,6 +14748,13 @@ __metadata:
languageName: node
linkType: hard
+"is-set@npm:^2.0.1":
+ version: 2.0.2
+ resolution: "is-set@npm:2.0.2"
+ checksum: b64343faf45e9387b97a6fd32be632ee7b269bd8183701f3b3f5b71a7cf00d04450ed8669d0bd08753e08b968beda96fca73a10fd0ff56a32603f64deba55a57
+ languageName: node
+ linkType: hard
+
"is-shared-array-buffer@npm:^1.0.2":
version: 1.0.2
resolution: "is-shared-array-buffer@npm:1.0.2"
@@ -12602,6 +14825,15 @@ __metadata:
languageName: node
linkType: hard
+"is-typed-array@npm:^1.1.12":
+ version: 1.1.12
+ resolution: "is-typed-array@npm:1.1.12"
+ dependencies:
+ which-typed-array: ^1.1.11
+ checksum: 4c89c4a3be07186caddadf92197b17fda663a9d259ea0d44a85f171558270d36059d1c386d34a12cba22dfade5aba497ce22778e866adc9406098c8fc4771796
+ languageName: node
+ linkType: hard
+
"is-typed-array@npm:^1.1.3, is-typed-array@npm:^1.1.9":
version: 1.1.9
resolution: "is-typed-array@npm:1.1.9"
@@ -12643,6 +14875,13 @@ __metadata:
languageName: node
linkType: hard
+"is-weakmap@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "is-weakmap@npm:2.0.1"
+ checksum: 1222bb7e90c32bdb949226e66d26cb7bce12e1e28e3e1b40bfa6b390ba3e08192a8664a703dff2a00a84825f4e022f9cd58c4599ff9981ab72b1d69479f4f7f6
+ languageName: node
+ linkType: hard
+
"is-weakref@npm:^1.0.2":
version: 1.0.2
resolution: "is-weakref@npm:1.0.2"
@@ -12652,6 +14891,16 @@ __metadata:
languageName: node
linkType: hard
+"is-weakset@npm:^2.0.1":
+ version: 2.0.2
+ resolution: "is-weakset@npm:2.0.2"
+ dependencies:
+ call-bind: ^1.0.2
+ get-intrinsic: ^1.1.1
+ checksum: 5d8698d1fa599a0635d7ca85be9c26d547b317ed8fd83fc75f03efbe75d50001b5eececb1e9971de85fcde84f69ae6f8346bc92d20d55d46201d328e4c74a367
+ languageName: node
+ linkType: hard
+
"is-windows@npm:^1.0.1":
version: 1.0.2
resolution: "is-windows@npm:1.0.2"
@@ -12659,6 +14908,13 @@ __metadata:
languageName: node
linkType: hard
+"isarray@npm:^2.0.5":
+ version: 2.0.5
+ resolution: "isarray@npm:2.0.5"
+ checksum: bd5bbe4104438c4196ba58a54650116007fa0262eccef13a4c55b2e09a5b36b59f1e75b9fcc49883dd9d4953892e6fc007eef9e9155648ceea036e184b0f930a
+ languageName: node
+ linkType: hard
+
"isarray@npm:~1.0.0":
version: 1.0.0
resolution: "isarray@npm:1.0.0"
@@ -12742,6 +14998,19 @@ __metadata:
languageName: node
linkType: hard
+"iterator.prototype@npm:^1.1.2":
+ version: 1.1.2
+ resolution: "iterator.prototype@npm:1.1.2"
+ dependencies:
+ define-properties: ^1.2.1
+ get-intrinsic: ^1.2.1
+ has-symbols: ^1.0.3
+ reflect.getprototypeof: ^1.0.4
+ set-function-name: ^2.0.1
+ checksum: d8a507e2ccdc2ce762e8a1d3f4438c5669160ac72b88b648e59a688eec6bc4e64b22338e74000518418d9e693faf2a092d2af21b9ec7dbf7763b037a54701168
+ languageName: node
+ linkType: hard
+
"jackspeak@npm:^2.3.5":
version: 2.3.6
resolution: "jackspeak@npm:2.3.6"
@@ -13600,6 +15869,18 @@ __metadata:
languageName: node
linkType: hard
+"jsx-ast-utils@npm:^2.4.1 || ^3.0.0, jsx-ast-utils@npm:^3.3.5":
+ version: 3.3.5
+ resolution: "jsx-ast-utils@npm:3.3.5"
+ dependencies:
+ array-includes: ^3.1.6
+ array.prototype.flat: ^1.3.1
+ object.assign: ^4.1.4
+ object.values: ^1.1.6
+ checksum: f4b05fa4d7b5234230c905cfa88d36dc8a58a6666975a3891429b1a8cdc8a140bca76c297225cb7a499fad25a2c052ac93934449a2c31a44fc9edd06c773780a
+ languageName: node
+ linkType: hard
+
"keccak@npm:^3.0.0, keccak@npm:^3.0.2":
version: 3.0.3
resolution: "keccak@npm:3.0.3"
@@ -13672,6 +15953,22 @@ __metadata:
languageName: node
linkType: hard
+"language-subtag-registry@npm:^0.3.20":
+ version: 0.3.22
+ resolution: "language-subtag-registry@npm:0.3.22"
+ checksum: 8ab70a7e0e055fe977ac16ea4c261faec7205ac43db5e806f72e5b59606939a3b972c4bd1e10e323b35d6ffa97c3e1c4c99f6553069dad2dfdd22020fa3eb56a
+ languageName: node
+ linkType: hard
+
+"language-tags@npm:^1.0.9":
+ version: 1.0.9
+ resolution: "language-tags@npm:1.0.9"
+ dependencies:
+ language-subtag-registry: ^0.3.20
+ checksum: 57c530796dc7179914dee71bc94f3747fd694612480241d0453a063777265dfe3a951037f7acb48f456bf167d6eb419d4c00263745326b3ba1cdcf4657070e78
+ languageName: node
+ linkType: hard
+
"level-supports@npm:^4.0.0":
version: 4.0.1
resolution: "level-supports@npm:4.0.1"
@@ -13869,7 +16166,7 @@ __metadata:
languageName: node
linkType: hard
-"lodash.mergewith@npm:^4.6.2":
+"lodash.mergewith@npm:4.6.2, lodash.mergewith@npm:^4.6.2":
version: 4.6.2
resolution: "lodash.mergewith@npm:4.6.2"
checksum: a6db2a9339752411f21b956908c404ec1e088e783a65c8b29e30ae5b3b6384f82517662d6f425cc97c2070b546cc2c7daaa8d33f78db7b6e9be06cd834abdeb8
@@ -13952,7 +16249,7 @@ __metadata:
languageName: node
linkType: hard
-"loose-envify@npm:^1.1.0":
+"loose-envify@npm:^1.0.0, loose-envify@npm:^1.1.0, loose-envify@npm:^1.4.0":
version: 1.4.0
resolution: "loose-envify@npm:1.4.0"
dependencies:
@@ -14000,6 +16297,16 @@ __metadata:
languageName: node
linkType: hard
+"lowlight@npm:^1.17.0":
+ version: 1.20.0
+ resolution: "lowlight@npm:1.20.0"
+ dependencies:
+ fault: ^1.0.0
+ highlight.js: ~10.7.0
+ checksum: 14a1815d6bae202ddee313fc60f06d46e5235c02fa483a77950b401d85b4c1e12290145ccd17a716b07f9328bd5864aa2d402b6a819ff3be7c833d9748ff8ba7
+ languageName: node
+ linkType: hard
+
"lru-cache@npm:^5.1.1":
version: 5.1.1
resolution: "lru-cache@npm:5.1.1"
@@ -15032,7 +17339,7 @@ __metadata:
languageName: node
linkType: hard
-"nanoid@npm:^3.3.4":
+"nanoid@npm:^3.3.4, nanoid@npm:^3.3.6":
version: 3.3.6
resolution: "nanoid@npm:3.3.6"
bin:
@@ -15168,6 +17475,61 @@ __metadata:
languageName: node
linkType: hard
+"next@npm:13.5.5":
+ version: 13.5.5
+ resolution: "next@npm:13.5.5"
+ dependencies:
+ "@next/env": 13.5.5
+ "@next/swc-darwin-arm64": 13.5.5
+ "@next/swc-darwin-x64": 13.5.5
+ "@next/swc-linux-arm64-gnu": 13.5.5
+ "@next/swc-linux-arm64-musl": 13.5.5
+ "@next/swc-linux-x64-gnu": 13.5.5
+ "@next/swc-linux-x64-musl": 13.5.5
+ "@next/swc-win32-arm64-msvc": 13.5.5
+ "@next/swc-win32-ia32-msvc": 13.5.5
+ "@next/swc-win32-x64-msvc": 13.5.5
+ "@swc/helpers": 0.5.2
+ busboy: 1.6.0
+ caniuse-lite: ^1.0.30001406
+ postcss: 8.4.31
+ styled-jsx: 5.1.1
+ watchpack: 2.4.0
+ peerDependencies:
+ "@opentelemetry/api": ^1.1.0
+ react: ^18.2.0
+ react-dom: ^18.2.0
+ sass: ^1.3.0
+ dependenciesMeta:
+ "@next/swc-darwin-arm64":
+ optional: true
+ "@next/swc-darwin-x64":
+ optional: true
+ "@next/swc-linux-arm64-gnu":
+ optional: true
+ "@next/swc-linux-arm64-musl":
+ optional: true
+ "@next/swc-linux-x64-gnu":
+ optional: true
+ "@next/swc-linux-x64-musl":
+ optional: true
+ "@next/swc-win32-arm64-msvc":
+ optional: true
+ "@next/swc-win32-ia32-msvc":
+ optional: true
+ "@next/swc-win32-x64-msvc":
+ optional: true
+ peerDependenciesMeta:
+ "@opentelemetry/api":
+ optional: true
+ sass:
+ optional: true
+ bin:
+ next: dist/bin/next
+ checksum: 034a52cf9a5df79912ad67467e00ab98e6505a7544514a12d6310d67fea760764f6b04ade344d457aadecb6170dd50eb0709346fd97a9e6659fcabd5e510fb97
+ languageName: node
+ linkType: hard
+
"node-addon-api@npm:^2.0.0":
version: 2.0.2
resolution: "node-addon-api@npm:2.0.2"
@@ -15583,6 +17945,13 @@ __metadata:
languageName: node
linkType: hard
+"object-inspect@npm:^1.13.1":
+ version: 1.13.1
+ resolution: "object-inspect@npm:1.13.1"
+ checksum: 7d9fa9221de3311dcb5c7c307ee5dc011cdd31dc43624b7c184b3840514e118e05ef0002be5388304c416c0eb592feb46e983db12577fc47e47d5752fbbfb61f
+ languageName: node
+ linkType: hard
+
"object-keys@npm:^1.0.11, object-keys@npm:^1.1.1":
version: 1.1.1
resolution: "object-keys@npm:1.1.1"
@@ -15625,6 +17994,28 @@ __metadata:
languageName: node
linkType: hard
+"object.entries@npm:^1.1.6, object.entries@npm:^1.1.7":
+ version: 1.1.7
+ resolution: "object.entries@npm:1.1.7"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: da287d434e7e32989586cd734382364ba826a2527f2bc82e6acbf9f9bfafa35d51018b66ec02543ffdfa2a5ba4af2b6f1ca6e588c65030cb4fd9c67d6ced594c
+ languageName: node
+ linkType: hard
+
+"object.fromentries@npm:^2.0.6, object.fromentries@npm:^2.0.7":
+ version: 2.0.7
+ resolution: "object.fromentries@npm:2.0.7"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: 7341ce246e248b39a431b87a9ddd331ff52a454deb79afebc95609f94b1f8238966cf21f52188f2a353f0fdf83294f32f1ebf1f7826aae915ebad21fd0678065
+ languageName: node
+ linkType: hard
+
"object.getownpropertydescriptors@npm:^2.0.3":
version: 2.1.5
resolution: "object.getownpropertydescriptors@npm:2.1.5"
@@ -15637,6 +18028,16 @@ __metadata:
languageName: node
linkType: hard
+"object.hasown@npm:^1.1.2":
+ version: 1.1.3
+ resolution: "object.hasown@npm:1.1.3"
+ dependencies:
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: 76bc17356f6124542fb47e5d0e78d531eafa4bba3fc2d6fc4b1a8ce8b6878912366c0d99f37ce5c84ada8fd79df7aa6ea1214fddf721f43e093ad2df51f27da1
+ languageName: node
+ linkType: hard
+
"object.values@npm:^1.1.6":
version: 1.1.6
resolution: "object.values@npm:1.1.6"
@@ -15998,6 +18399,20 @@ __metadata:
languageName: node
linkType: hard
+"parse-entities@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "parse-entities@npm:2.0.0"
+ dependencies:
+ character-entities: ^1.0.0
+ character-entities-legacy: ^1.0.0
+ character-reference-invalid: ^1.0.0
+ is-alphanumerical: ^1.0.0
+ is-decimal: ^1.0.0
+ is-hexadecimal: ^1.0.0
+ checksum: 7addfd3e7d747521afac33c8121a5f23043c6973809756920d37e806639b4898385d386fcf4b3c8e2ecf1bc28aac5ae97df0b112d5042034efbe80f44081ebce
+ languageName: node
+ linkType: hard
+
"parse-headers@npm:^2.0.0":
version: 2.0.5
resolution: "parse-headers@npm:2.0.5"
@@ -16315,6 +18730,13 @@ __metadata:
languageName: node
linkType: hard
+"postcss-value-parser@npm:^4.0.2":
+ version: 4.2.0
+ resolution: "postcss-value-parser@npm:4.2.0"
+ checksum: 819ffab0c9d51cf0acbabf8996dffbfafbafa57afc0e4c98db88b67f2094cb44488758f06e5da95d7036f19556a4a732525e84289a425f4f6fd8e412a9d7442f
+ languageName: node
+ linkType: hard
+
"postcss@npm:8.4.14":
version: 8.4.14
resolution: "postcss@npm:8.4.14"
@@ -16326,6 +18748,17 @@ __metadata:
languageName: node
linkType: hard
+"postcss@npm:8.4.31, postcss@npm:^8.4.31":
+ version: 8.4.31
+ resolution: "postcss@npm:8.4.31"
+ dependencies:
+ nanoid: ^3.3.6
+ picocolors: ^1.0.0
+ source-map-js: ^1.0.2
+ checksum: 1d8611341b073143ad90486fcdfeab49edd243377b1f51834dc4f6d028e82ce5190e4f11bb2633276864503654fb7cab28e67abdc0fbf9d1f88cad4a0ff0beea
+ languageName: node
+ linkType: hard
+
"prelude-ls@npm:^1.2.1":
version: 1.2.1
resolution: "prelude-ls@npm:1.2.1"
@@ -16396,6 +18829,20 @@ __metadata:
languageName: node
linkType: hard
+"prismjs@npm:^1.27.0":
+ version: 1.29.0
+ resolution: "prismjs@npm:1.29.0"
+ checksum: 007a8869d4456ff8049dc59404e32d5666a07d99c3b0e30a18bd3b7676dfa07d1daae9d0f407f20983865fd8da56de91d09cb08e6aa61f5bc420a27c0beeaf93
+ languageName: node
+ linkType: hard
+
+"prismjs@npm:~1.27.0":
+ version: 1.27.0
+ resolution: "prismjs@npm:1.27.0"
+ checksum: 85c7f4a3e999073502cc9e1882af01e3709706369ec254b60bff1149eda701f40d02512acab956012dc7e61cfd61743a3a34c1bd0737e8dbacd79141e5698bbc
+ languageName: node
+ linkType: hard
+
"proc-log@npm:^3.0.0":
version: 3.0.0
resolution: "proc-log@npm:3.0.0"
@@ -16453,6 +18900,26 @@ __metadata:
languageName: node
linkType: hard
+"prop-types@npm:^15.6.2, prop-types@npm:^15.8.1":
+ version: 15.8.1
+ resolution: "prop-types@npm:15.8.1"
+ dependencies:
+ loose-envify: ^1.4.0
+ object-assign: ^4.1.1
+ react-is: ^16.13.1
+ checksum: c056d3f1c057cb7ff8344c645450e14f088a915d078dcda795041765047fa080d38e5d626560ccaac94a4e16e3aa15f3557c1a9a8d1174530955e992c675e459
+ languageName: node
+ linkType: hard
+
+"property-information@npm:^5.0.0":
+ version: 5.6.0
+ resolution: "property-information@npm:5.6.0"
+ dependencies:
+ xtend: ^4.0.0
+ checksum: fcf87c6542e59a8bbe31ca0b3255a4a63ac1059b01b04469680288998bcfa97f341ca989566adbb63975f4d85339030b82320c324a511532d390910d1c583893
+ languageName: node
+ linkType: hard
+
"proxy-addr@npm:~2.0.7":
version: 2.0.7
resolution: "proxy-addr@npm:2.0.7"
@@ -16674,26 +19141,153 @@ __metadata:
languageName: node
linkType: hard
-"react-dom@npm:18.2.0":
- version: 18.2.0
- resolution: "react-dom@npm:18.2.0"
+"react-clientside-effect@npm:^1.2.6":
+ version: 1.2.6
+ resolution: "react-clientside-effect@npm:1.2.6"
+ dependencies:
+ "@babel/runtime": ^7.12.13
+ peerDependencies:
+ react: ^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0
+ checksum: 7db6110027a51458b1a46109d2b63dd822825f483c71afef7c0c0a671f3b1aa155049dbd8651c9d536ffac83601f8823b7c3f8916b4f4ee5c3cb7647a85cce4e
+ languageName: node
+ linkType: hard
+
+"react-code-blocks@npm:^0.1.4":
+ version: 0.1.4
+ resolution: "react-code-blocks@npm:0.1.4"
+ dependencies:
+ "@babel/runtime": ^7.10.4
+ "@types/react-syntax-highlighter": ^15.5.7
+ react-syntax-highlighter: ^15.5.0
+ styled-components: ^6.0.5
+ tslib: ^2.6.0
+ peerDependencies:
+ react: ">=16"
+ checksum: f487a146f57e059428c7c770b59d23eed2e3d2c6b7679415088f8cc3b2cb494c8914fa8fc670be04e0c3e12375b7584d98a1f0a804b864185442a8fb87d13c4d
+ languageName: node
+ linkType: hard
+
+"react-dom@npm:18.2.0, react-dom@npm:^18":
+ version: 18.2.0
+ resolution: "react-dom@npm:18.2.0"
+ dependencies:
+ loose-envify: ^1.1.0
+ scheduler: ^0.23.0
+ peerDependencies:
+ react: ^18.2.0
+ checksum: 7d323310bea3a91be2965f9468d552f201b1c27891e45ddc2d6b8f717680c95a75ae0bc1e3f5cf41472446a2589a75aed4483aee8169287909fcd59ad149e8cc
+ languageName: node
+ linkType: hard
+
+"react-fast-compare@npm:3.2.2":
+ version: 3.2.2
+ resolution: "react-fast-compare@npm:3.2.2"
+ checksum: 2071415b4f76a3e6b55c84611c4d24dcb12ffc85811a2840b5a3f1ff2d1a99be1020d9437ee7c6e024c9f4cbb84ceb35e48cf84f28fcb00265ad2dfdd3947704
+ languageName: node
+ linkType: hard
+
+"react-focus-lock@npm:^2.9.4":
+ version: 2.9.6
+ resolution: "react-focus-lock@npm:2.9.6"
+ dependencies:
+ "@babel/runtime": ^7.0.0
+ focus-lock: ^1.0.0
+ prop-types: ^15.6.2
+ react-clientside-effect: ^1.2.6
+ use-callback-ref: ^1.3.0
+ use-sidecar: ^1.1.2
+ peerDependencies:
+ "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ checksum: 3ee2b32dfe479839548baf097d53ddab0b9a8df71cd51763edc9dd900eb85ac98e0255130a9152de9a424a038bae6e1782fca6fde0d89ae1f37c2ca802d94351
+ languageName: node
+ linkType: hard
+
+"react-is@npm:^16.13.1, react-is@npm:^16.7.0":
+ version: 16.13.1
+ resolution: "react-is@npm:16.13.1"
+ checksum: f7a19ac3496de32ca9ae12aa030f00f14a3d45374f1ceca0af707c831b2a6098ef0d6bdae51bd437b0a306d7f01d4677fcc8de7c0d331eb47ad0f46130e53c5f
+ languageName: node
+ linkType: hard
+
+"react-is@npm:^17.0.1":
+ version: 17.0.2
+ resolution: "react-is@npm:17.0.2"
+ checksum: 9d6d111d8990dc98bc5402c1266a808b0459b5d54830bbea24c12d908b536df7883f268a7868cfaedde3dd9d4e0d574db456f84d2e6df9c4526f99bb4b5344d8
+ languageName: node
+ linkType: hard
+
+"react-remove-scroll-bar@npm:^2.3.4":
+ version: 2.3.4
+ resolution: "react-remove-scroll-bar@npm:2.3.4"
+ dependencies:
+ react-style-singleton: ^2.2.1
+ tslib: ^2.0.0
+ peerDependencies:
+ "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ checksum: b5ce5f2f98d65c97a3e975823ae4043a4ba2a3b63b5ba284b887e7853f051b5cd6afb74abde6d57b421931c52f2e1fdbb625dc858b1cb5a32c27c14ab85649d4
+ languageName: node
+ linkType: hard
+
+"react-remove-scroll@npm:^2.5.6":
+ version: 2.5.7
+ resolution: "react-remove-scroll@npm:2.5.7"
+ dependencies:
+ react-remove-scroll-bar: ^2.3.4
+ react-style-singleton: ^2.2.1
+ tslib: ^2.1.0
+ use-callback-ref: ^1.3.0
+ use-sidecar: ^1.1.2
+ peerDependencies:
+ "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ checksum: e0dbb6856beaed2cff4996d9ca62d775686ff72e3e9de34043034d932223b588993b2fc7a18644750dd3d73eb19bd3f2cedb8d91f0e424c1ef8403010da24b1d
+ languageName: node
+ linkType: hard
+
+"react-style-singleton@npm:^2.2.1":
+ version: 2.2.1
+ resolution: "react-style-singleton@npm:2.2.1"
dependencies:
- loose-envify: ^1.1.0
- scheduler: ^0.23.0
+ get-nonce: ^1.0.0
+ invariant: ^2.2.4
+ tslib: ^2.0.0
peerDependencies:
- react: ^18.2.0
- checksum: 7d323310bea3a91be2965f9468d552f201b1c27891e45ddc2d6b8f717680c95a75ae0bc1e3f5cf41472446a2589a75aed4483aee8169287909fcd59ad149e8cc
+ "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ checksum: 7ee8ef3aab74c7ae1d70ff34a27643d11ba1a8d62d072c767827d9ff9a520905223e567002e0bf6c772929d8ea1c781a3ba0cc4a563e92b1e3dc2eaa817ecbe8
languageName: node
linkType: hard
-"react-is@npm:^17.0.1":
- version: 17.0.2
- resolution: "react-is@npm:17.0.2"
- checksum: 9d6d111d8990dc98bc5402c1266a808b0459b5d54830bbea24c12d908b536df7883f268a7868cfaedde3dd9d4e0d574db456f84d2e6df9c4526f99bb4b5344d8
+"react-syntax-highlighter@npm:^15.5.0":
+ version: 15.5.0
+ resolution: "react-syntax-highlighter@npm:15.5.0"
+ dependencies:
+ "@babel/runtime": ^7.3.1
+ highlight.js: ^10.4.1
+ lowlight: ^1.17.0
+ prismjs: ^1.27.0
+ refractor: ^3.6.0
+ peerDependencies:
+ react: ">= 0.14.0"
+ checksum: c082b48f30f8ba8d0c55ed1d761910630860077c7ff5793c4c912adcb5760df06436ed0ad62be0de28113aac9ad2af55eccd995f8eee98df53382e4ced2072fb
languageName: node
linkType: hard
-"react@npm:18.2.0":
+"react@npm:18.2.0, react@npm:^18":
version: 18.2.0
resolution: "react@npm:18.2.0"
dependencies:
@@ -16826,6 +19420,31 @@ __metadata:
languageName: node
linkType: hard
+"reflect.getprototypeof@npm:^1.0.4":
+ version: 1.0.4
+ resolution: "reflect.getprototypeof@npm:1.0.4"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ get-intrinsic: ^1.2.1
+ globalthis: ^1.0.3
+ which-builtin-type: ^1.1.3
+ checksum: 16e2361988dbdd23274b53fb2b1b9cefeab876c3941a2543b4cadac6f989e3db3957b07a44aac46cfceb3e06e2871785ec2aac992d824f76292f3b5ee87f66f2
+ languageName: node
+ linkType: hard
+
+"refractor@npm:^3.6.0":
+ version: 3.6.0
+ resolution: "refractor@npm:3.6.0"
+ dependencies:
+ hastscript: ^6.0.0
+ parse-entities: ^2.0.0
+ prismjs: ~1.27.0
+ checksum: 39b01c4168c77c5c8486f9bf8907bbb05f257f15026057ba5728535815a2d90eed620468a4bfbb2b8ceefbb3ce3931a1be8b17152dbdbc8b0eef92450ff750a2
+ languageName: node
+ linkType: hard
+
"regenerate-unicode-properties@npm:^10.1.0":
version: 10.1.0
resolution: "regenerate-unicode-properties@npm:10.1.0"
@@ -16856,6 +19475,13 @@ __metadata:
languageName: node
linkType: hard
+"regenerator-runtime@npm:^0.14.0":
+ version: 0.14.0
+ resolution: "regenerator-runtime@npm:0.14.0"
+ checksum: 1c977ad82a82a4412e4f639d65d22be376d3ebdd30da2c003eeafdaaacd03fc00c2320f18120007ee700900979284fc78a9f00da7fb593f6e6eeebc673fba9a3
+ languageName: node
+ linkType: hard
+
"regenerator-transform@npm:^0.15.0":
version: 0.15.0
resolution: "regenerator-transform@npm:0.15.0"
@@ -16885,6 +19511,17 @@ __metadata:
languageName: node
linkType: hard
+"regexp.prototype.flags@npm:^1.5.0, regexp.prototype.flags@npm:^1.5.1":
+ version: 1.5.1
+ resolution: "regexp.prototype.flags@npm:1.5.1"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ set-function-name: ^2.0.0
+ checksum: 869edff00288442f8d7fa4c9327f91d85f3b3acf8cbbef9ea7a220345cf23e9241b6def9263d2c1ebcf3a316b0aa52ad26a43a84aa02baca3381717b3e307f47
+ languageName: node
+ linkType: hard
+
"regexpu-core@npm:^5.1.0":
version: 5.2.1
resolution: "regexpu-core@npm:5.2.1"
@@ -17121,6 +19758,19 @@ __metadata:
languageName: node
linkType: hard
+"resolve@npm:^2.0.0-next.4":
+ version: 2.0.0-next.5
+ resolution: "resolve@npm:2.0.0-next.5"
+ dependencies:
+ is-core-module: ^2.13.0
+ path-parse: ^1.0.7
+ supports-preserve-symlinks-flag: ^1.0.0
+ bin:
+ resolve: bin/resolve
+ checksum: a73ac69a1c4bd34c56b213d91f5b17ce390688fdb4a1a96ed3025cc7e08e7bfb90b3a06fcce461780cb0b589c958afcb0080ab802c71c01a7ecc8c64feafc89f
+ languageName: node
+ linkType: hard
+
"resolve@patch:resolve@1.1.x#~builtin":
version: 1.1.7
resolution: "resolve@patch:resolve@npm%3A1.1.7#~builtin::version=1.1.7&hash=07638b"
@@ -17150,6 +19800,19 @@ __metadata:
languageName: node
linkType: hard
+"resolve@patch:resolve@^2.0.0-next.4#~builtin":
+ version: 2.0.0-next.5
+ resolution: "resolve@patch:resolve@npm%3A2.0.0-next.5#~builtin::version=2.0.0-next.5&hash=07638b"
+ dependencies:
+ is-core-module: ^2.13.0
+ path-parse: ^1.0.7
+ supports-preserve-symlinks-flag: ^1.0.0
+ bin:
+ resolve: bin/resolve
+ checksum: 064d09c1808d0c51b3d90b5d27e198e6d0c5dad0eb57065fd40803d6a20553e5398b07f76739d69cbabc12547058bec6b32106ea66622375fb0d7e8fca6a846c
+ languageName: node
+ linkType: hard
+
"responselike@npm:1.0.2, responselike@npm:^1.0.2":
version: 1.0.2
resolution: "responselike@npm:1.0.2"
@@ -17443,6 +20106,18 @@ __metadata:
languageName: node
linkType: hard
+"safe-array-concat@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "safe-array-concat@npm:1.0.1"
+ dependencies:
+ call-bind: ^1.0.2
+ get-intrinsic: ^1.2.1
+ has-symbols: ^1.0.3
+ isarray: ^2.0.5
+ checksum: 001ecf1d8af398251cbfabaf30ed66e3855127fbceee178179524b24160b49d15442f94ed6c0db0b2e796da76bb05b73bf3cc241490ec9c2b741b41d33058581
+ languageName: node
+ linkType: hard
+
"safe-buffer@npm:5.2.1, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.0, safe-buffer@npm:^5.2.1, safe-buffer@npm:~5.2.0":
version: 5.2.1
resolution: "safe-buffer@npm:5.2.1"
@@ -17609,11 +20284,14 @@ __metadata:
cz-conventional-changelog: ^3.3.0
dotenv: ^16.0.2
eslint: ^8.2.0
- eslint-config-airbnb-base: 15.0.0
+ eslint-config-airbnb: ^19.0.4
eslint-config-airbnb-typescript: ^16.1.0
eslint-config-prettier: ^8.3.0
eslint-plugin-import: ^2.25.2
eslint-plugin-jest: ^25.7.0
+ eslint-plugin-jsx-a11y: ^6.8.0
+ eslint-plugin-react: ^7.33.2
+ eslint-plugin-react-hooks: ^4.6.0
husky: ^8.0.3
jest: ^27.4.1
jest-config: ^27.4.7
@@ -17628,6 +20306,28 @@ __metadata:
languageName: unknown
linkType: soft
+"semaphore-website@workspace:apps/website":
+ version: 0.0.0-use.local
+ resolution: "semaphore-website@workspace:apps/website"
+ dependencies:
+ "@chakra-ui/next-js": ^2.1.5
+ "@chakra-ui/react": ^2.8.1
+ "@chakra-ui/theme": ^3.3.0
+ "@chakra-ui/theme-tools": ^2.1.1
+ "@emotion/react": ^11.11.1
+ "@emotion/styled": ^11.11.0
+ "@types/node": ^20
+ "@types/react": ^18
+ "@types/react-dom": ^18
+ framer-motion: ^10.16.4
+ next: 13.5.5
+ react: ^18
+ react-code-blocks: ^0.1.4
+ react-dom: ^18
+ typescript: ^5
+ languageName: unknown
+ linkType: soft
+
"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.5.0, semver@npm:^5.6.0, semver@npm:^5.7.0":
version: 5.7.1
resolution: "semver@npm:5.7.1"
@@ -17657,6 +20357,15 @@ __metadata:
languageName: node
linkType: hard
+"semver@npm:^6.3.1":
+ version: 6.3.1
+ resolution: "semver@npm:6.3.1"
+ bin:
+ semver: bin/semver.js
+ checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2
+ languageName: node
+ linkType: hard
+
"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8":
version: 7.3.8
resolution: "semver@npm:7.3.8"
@@ -17748,6 +20457,29 @@ __metadata:
languageName: node
linkType: hard
+"set-function-length@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "set-function-length@npm:1.1.1"
+ dependencies:
+ define-data-property: ^1.1.1
+ get-intrinsic: ^1.2.1
+ gopd: ^1.0.1
+ has-property-descriptors: ^1.0.0
+ checksum: c131d7569cd7e110cafdfbfbb0557249b538477624dfac4fc18c376d879672fa52563b74029ca01f8f4583a8acb35bb1e873d573a24edb80d978a7ee607c6e06
+ languageName: node
+ linkType: hard
+
+"set-function-name@npm:^2.0.0, set-function-name@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "set-function-name@npm:2.0.1"
+ dependencies:
+ define-data-property: ^1.0.1
+ functions-have-names: ^1.2.3
+ has-property-descriptors: ^1.0.0
+ checksum: 4975d17d90c40168eee2c7c9c59d023429f0a1690a89d75656306481ece0c3c1fb1ebcc0150ea546d1913e35fbd037bace91372c69e543e51fc5d1f31a9fa126
+ languageName: node
+ linkType: hard
+
"setimmediate@npm:1.0.4":
version: 1.0.4
resolution: "setimmediate@npm:1.0.4"
@@ -17791,6 +20523,13 @@ __metadata:
languageName: node
linkType: hard
+"shallowequal@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "shallowequal@npm:1.1.0"
+ checksum: f4c1de0837f106d2dbbfd5d0720a5d059d1c66b42b580965c8f06bb1db684be8783538b684092648c981294bf817869f743a066538771dbecb293df78f765e00
+ languageName: node
+ linkType: hard
+
"shebang-command@npm:^2.0.0":
version: 2.0.0
resolution: "shebang-command@npm:2.0.0"
@@ -18149,6 +20888,13 @@ __metadata:
languageName: node
linkType: hard
+"source-map@npm:^0.5.7":
+ version: 0.5.7
+ resolution: "source-map@npm:0.5.7"
+ checksum: 5dc2043b93d2f194142c7f38f74a24670cd7a0063acdaf4bf01d2964b402257ae843c2a8fa822ad5b71013b5fcafa55af7421383da919752f22ff488bc553f4d
+ languageName: node
+ linkType: hard
+
"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.1":
version: 0.6.1
resolution: "source-map@npm:0.6.1"
@@ -18188,6 +20934,13 @@ __metadata:
languageName: node
linkType: hard
+"space-separated-tokens@npm:^1.0.0":
+ version: 1.1.5
+ resolution: "space-separated-tokens@npm:1.1.5"
+ checksum: 8ef68f1cfa8ccad316b7f8d0df0919d0f1f6d32101e8faeee34ea3a923ce8509c1ad562f57388585ee4951e92d27afa211ed0a077d3d5995b5ba9180331be708
+ languageName: node
+ linkType: hard
+
"spdx-correct@npm:^3.0.0":
version: 3.2.0
resolution: "spdx-correct@npm:3.2.0"
@@ -18415,6 +21168,23 @@ __metadata:
languageName: node
linkType: hard
+"string.prototype.matchall@npm:^4.0.8":
+ version: 4.0.10
+ resolution: "string.prototype.matchall@npm:4.0.10"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ get-intrinsic: ^1.2.1
+ has-symbols: ^1.0.3
+ internal-slot: ^1.0.5
+ regexp.prototype.flags: ^1.5.0
+ set-function-name: ^2.0.0
+ side-channel: ^1.0.4
+ checksum: 3c78bdeff39360c8e435d7c4c6ea19f454aa7a63eda95fa6fadc3a5b984446a2f9f2c02d5c94171ce22268a573524263fbd0c8edbe3ce2e9890d7cc036cdc3ed
+ languageName: node
+ linkType: hard
+
"string.prototype.trim@npm:^1.2.7":
version: 1.2.7
resolution: "string.prototype.trim@npm:1.2.7"
@@ -18426,6 +21196,17 @@ __metadata:
languageName: node
linkType: hard
+"string.prototype.trim@npm:^1.2.8":
+ version: 1.2.8
+ resolution: "string.prototype.trim@npm:1.2.8"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: 49eb1a862a53aba73c3fb6c2a53f5463173cb1f4512374b623bcd6b43ad49dd559a06fb5789bdec771a40fc4d2a564411c0a75d35fb27e76bbe738c211ecff07
+ languageName: node
+ linkType: hard
+
"string.prototype.trimend@npm:^1.0.5":
version: 1.0.5
resolution: "string.prototype.trimend@npm:1.0.5"
@@ -18448,6 +21229,17 @@ __metadata:
languageName: node
linkType: hard
+"string.prototype.trimend@npm:^1.0.7":
+ version: 1.0.7
+ resolution: "string.prototype.trimend@npm:1.0.7"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: 2375516272fd1ba75992f4c4aa88a7b5f3c7a9ca308d963bcd5645adf689eba6f8a04ebab80c33e30ec0aefc6554181a3a8416015c38da0aa118e60ec896310c
+ languageName: node
+ linkType: hard
+
"string.prototype.trimstart@npm:^1.0.5":
version: 1.0.5
resolution: "string.prototype.trimstart@npm:1.0.5"
@@ -18470,6 +21262,17 @@ __metadata:
languageName: node
linkType: hard
+"string.prototype.trimstart@npm:^1.0.7":
+ version: 1.0.7
+ resolution: "string.prototype.trimstart@npm:1.0.7"
+ dependencies:
+ call-bind: ^1.0.2
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: 13d0c2cb0d5ff9e926fa0bec559158b062eed2b68cd5be777ffba782c96b2b492944e47057274e064549b94dd27cf81f48b27a31fee8af5b574cff253e7eb613
+ languageName: node
+ linkType: hard
+
"string_decoder@npm:^1.1.1":
version: 1.3.0
resolution: "string_decoder@npm:1.3.0"
@@ -18620,6 +21423,26 @@ __metadata:
languageName: node
linkType: hard
+"styled-components@npm:^6.0.5":
+ version: 6.1.0
+ resolution: "styled-components@npm:6.1.0"
+ dependencies:
+ "@emotion/is-prop-valid": ^1.2.1
+ "@emotion/unitless": ^0.8.0
+ "@types/stylis": ^4.0.2
+ css-to-react-native: ^3.2.0
+ csstype: ^3.1.2
+ postcss: ^8.4.31
+ shallowequal: ^1.1.0
+ stylis: ^4.3.0
+ tslib: ^2.5.0
+ peerDependencies:
+ react: ">= 16.8.0"
+ react-dom: ">= 16.8.0"
+ checksum: 989262a2be35f09fc0a277da9ed21280d11e0de90e4160d4c0612faed3f4bf2d1667f227e3ee1393a0bf037869075e5c3b4160627777dc7cc533fed89c6d64e0
+ languageName: node
+ linkType: hard
+
"styled-jsx@npm:5.1.0":
version: 5.1.0
resolution: "styled-jsx@npm:5.1.0"
@@ -18636,6 +21459,36 @@ __metadata:
languageName: node
linkType: hard
+"styled-jsx@npm:5.1.1":
+ version: 5.1.1
+ resolution: "styled-jsx@npm:5.1.1"
+ dependencies:
+ client-only: 0.0.1
+ peerDependencies:
+ react: ">= 16.8.0 || 17.x.x || ^18.0.0-0"
+ peerDependenciesMeta:
+ "@babel/core":
+ optional: true
+ babel-plugin-macros:
+ optional: true
+ checksum: 523a33b38603492547e861b98e29c873939b04e15fbe5ef16132c6f1e15958126647983c7d4675325038b428a5e91183d996e90141b18bdd1bbadf6e2c45b2fa
+ languageName: node
+ linkType: hard
+
+"stylis@npm:4.2.0":
+ version: 4.2.0
+ resolution: "stylis@npm:4.2.0"
+ checksum: 0eb6cc1b866dc17a6037d0a82ac7fa877eba6a757443e79e7c4f35bacedbf6421fadcab4363b39667b43355cbaaa570a3cde850f776498e5450f32ed2f9b7584
+ languageName: node
+ linkType: hard
+
+"stylis@npm:^4.3.0":
+ version: 4.3.0
+ resolution: "stylis@npm:4.3.0"
+ checksum: 6120de3f03eacf3b5adc8e7919c4cca991089156a6badc5248752a3088106afaaf74996211a6817a7760ebeadca09004048eea31875bd8d4df51386365c50025
+ languageName: node
+ linkType: hard
+
"supports-color@npm:6.0.0":
version: 6.0.0
resolution: "supports-color@npm:6.0.0"
@@ -18973,6 +21826,13 @@ __metadata:
languageName: node
linkType: hard
+"tiny-invariant@npm:^1.0.6":
+ version: 1.3.1
+ resolution: "tiny-invariant@npm:1.3.1"
+ checksum: 872dbd1ff20a21303a2fd20ce3a15602cfa7fcf9b228bd694a52e2938224313b5385a1078cb667ed7375d1612194feaca81c4ecbe93121ca1baebe344de4f84c
+ languageName: node
+ linkType: hard
+
"tmp@npm:0.0.33, tmp@npm:^0.0.33":
version: 0.0.33
resolution: "tmp@npm:0.0.33"
@@ -19019,6 +21879,13 @@ __metadata:
languageName: node
linkType: hard
+"toggle-selection@npm:^1.0.6":
+ version: 1.0.6
+ resolution: "toggle-selection@npm:1.0.6"
+ checksum: a90dc80ed1e7b18db8f4e16e86a5574f87632dc729cfc07d9ea3ced50021ad42bb4e08f22c0913e0b98e3837b0b717e0a51613c65f30418e21eb99da6556a74c
+ languageName: node
+ linkType: hard
+
"toidentifier@npm:1.0.1":
version: 1.0.1
resolution: "toidentifier@npm:1.0.1"
@@ -19163,6 +22030,13 @@ __metadata:
languageName: node
linkType: hard
+"tslib@npm:2.4.0":
+ version: 2.4.0
+ resolution: "tslib@npm:2.4.0"
+ checksum: 8c4aa6a3c5a754bf76aefc38026134180c053b7bd2f81338cb5e5ebf96fefa0f417bff221592bf801077f5bf990562f6264fecbc42cd3309b33872cb6fc3b113
+ languageName: node
+ linkType: hard
+
"tslib@npm:^1.8.1, tslib@npm:^1.9.3":
version: 1.14.1
resolution: "tslib@npm:1.14.1"
@@ -19177,6 +22051,13 @@ __metadata:
languageName: node
linkType: hard
+"tslib@npm:^2.0.0, tslib@npm:^2.0.3, tslib@npm:^2.5.0, tslib@npm:^2.6.0":
+ version: 2.6.2
+ resolution: "tslib@npm:2.6.2"
+ checksum: 329ea56123005922f39642318e3d1f0f8265d1e7fcb92c633e0809521da75eeaca28d2cf96d7248229deb40e5c19adf408259f4b9640afd20d13aecc1430f3ad
+ languageName: node
+ linkType: hard
+
"tsort@npm:0.0.1":
version: 0.0.1
resolution: "tsort@npm:0.0.1"
@@ -19369,6 +22250,42 @@ __metadata:
languageName: node
linkType: hard
+"typed-array-buffer@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "typed-array-buffer@npm:1.0.0"
+ dependencies:
+ call-bind: ^1.0.2
+ get-intrinsic: ^1.2.1
+ is-typed-array: ^1.1.10
+ checksum: 3e0281c79b2a40cd97fe715db803884301993f4e8c18e8d79d75fd18f796e8cd203310fec8c7fdb5e6c09bedf0af4f6ab8b75eb3d3a85da69328f28a80456bd3
+ languageName: node
+ linkType: hard
+
+"typed-array-byte-length@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "typed-array-byte-length@npm:1.0.0"
+ dependencies:
+ call-bind: ^1.0.2
+ for-each: ^0.3.3
+ has-proto: ^1.0.1
+ is-typed-array: ^1.1.10
+ checksum: b03db16458322b263d87a702ff25388293f1356326c8a678d7515767ef563ef80e1e67ce648b821ec13178dd628eb2afdc19f97001ceae7a31acf674c849af94
+ languageName: node
+ linkType: hard
+
+"typed-array-byte-offset@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "typed-array-byte-offset@npm:1.0.0"
+ dependencies:
+ available-typed-arrays: ^1.0.5
+ call-bind: ^1.0.2
+ for-each: ^0.3.3
+ has-proto: ^1.0.1
+ is-typed-array: ^1.1.10
+ checksum: 04f6f02d0e9a948a95fbfe0d5a70b002191fae0b8fe0fe3130a9b2336f043daf7a3dda56a31333c35a067a97e13f539949ab261ca0f3692c41603a46a94e960b
+ languageName: node
+ linkType: hard
+
"typed-array-length@npm:^1.0.4":
version: 1.0.4
resolution: "typed-array-length@npm:1.0.4"
@@ -19442,6 +22359,16 @@ __metadata:
languageName: node
linkType: hard
+"typescript@npm:^5":
+ version: 5.2.2
+ resolution: "typescript@npm:5.2.2"
+ bin:
+ tsc: bin/tsc
+ tsserver: bin/tsserver
+ checksum: 7912821dac4d962d315c36800fe387cdc0a6298dba7ec171b350b4a6e988b51d7b8f051317786db1094bd7431d526b648aba7da8236607febb26cf5b871d2d3c
+ languageName: node
+ linkType: hard
+
"typescript@patch:typescript@>=4.5.0#~builtin":
version: 4.9.4
resolution: "typescript@patch:typescript@npm%3A4.9.4#~builtin::version=4.9.4&hash=7ad353"
@@ -19472,6 +22399,16 @@ __metadata:
languageName: node
linkType: hard
+"typescript@patch:typescript@^5#~builtin":
+ version: 5.2.2
+ resolution: "typescript@patch:typescript@npm%3A5.2.2#~builtin::version=5.2.2&hash=7ad353"
+ bin:
+ tsc: bin/tsc
+ tsserver: bin/tsserver
+ checksum: 07106822b4305de3f22835cbba949a2b35451cad50888759b6818421290ff95d522b38ef7919e70fb381c5fe9c1c643d7dea22c8b31652a717ddbd57b7f4d554
+ languageName: node
+ linkType: hard
+
"typical@npm:^4.0.0":
version: 4.0.0
resolution: "typical@npm:4.0.0"
@@ -19538,6 +22475,13 @@ __metadata:
languageName: node
linkType: hard
+"undici-types@npm:~5.25.1":
+ version: 5.25.3
+ resolution: "undici-types@npm:5.25.3"
+ checksum: ec9d2cc36520cbd9fbe3b3b6c682a87fe5be214699e1f57d1e3d9a2cb5be422e62735f06e0067dc325fd3dd7404c697e4d479f9147dc8a804e049e29f357f2ff
+ languageName: node
+ linkType: hard
+
"undici@npm:^5.12.0":
version: 5.21.0
resolution: "undici@npm:5.21.0"
@@ -19749,6 +22693,37 @@ __metadata:
languageName: node
linkType: hard
+"use-callback-ref@npm:^1.3.0":
+ version: 1.3.0
+ resolution: "use-callback-ref@npm:1.3.0"
+ dependencies:
+ tslib: ^2.0.0
+ peerDependencies:
+ "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ checksum: 7913df383a5a6fcb399212eedefaac2e0c6f843555202d4e3010bac3848afe38ecaa3d0d6500ad1d936fbeffd637e6c517e68edb024af5e6beca7f27f3ce7b21
+ languageName: node
+ linkType: hard
+
+"use-sidecar@npm:^1.1.2":
+ version: 1.1.2
+ resolution: "use-sidecar@npm:1.1.2"
+ dependencies:
+ detect-node-es: ^1.1.0
+ tslib: ^2.0.0
+ peerDependencies:
+ "@types/react": ^16.9.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ checksum: 925d1922f9853e516eaad526b6fed1be38008073067274f0ecc3f56b17bb8ab63480140dd7c271f94150027c996cea4efe83d3e3525e8f3eda22055f6a39220b
+ languageName: node
+ linkType: hard
+
"use-sync-external-store@npm:1.2.0":
version: 1.2.0
resolution: "use-sync-external-store@npm:1.2.0"
@@ -19973,6 +22948,16 @@ __metadata:
languageName: node
linkType: hard
+"watchpack@npm:2.4.0":
+ version: 2.4.0
+ resolution: "watchpack@npm:2.4.0"
+ dependencies:
+ glob-to-regexp: ^0.4.1
+ graceful-fs: ^4.1.2
+ checksum: 23d4bc58634dbe13b86093e01c6a68d8096028b664ab7139d58f0c37d962d549a940e98f2f201cecdabd6f9c340338dc73ef8bf094a2249ef582f35183d1a131
+ languageName: node
+ linkType: hard
+
"wcwidth@npm:^1.0.1":
version: 1.0.1
resolution: "wcwidth@npm:1.0.1"
@@ -20680,6 +23665,38 @@ __metadata:
languageName: node
linkType: hard
+"which-builtin-type@npm:^1.1.3":
+ version: 1.1.3
+ resolution: "which-builtin-type@npm:1.1.3"
+ dependencies:
+ function.prototype.name: ^1.1.5
+ has-tostringtag: ^1.0.0
+ is-async-function: ^2.0.0
+ is-date-object: ^1.0.5
+ is-finalizationregistry: ^1.0.2
+ is-generator-function: ^1.0.10
+ is-regex: ^1.1.4
+ is-weakref: ^1.0.2
+ isarray: ^2.0.5
+ which-boxed-primitive: ^1.0.2
+ which-collection: ^1.0.1
+ which-typed-array: ^1.1.9
+ checksum: 43730f7d8660ff9e33d1d3f9f9451c4784265ee7bf222babc35e61674a11a08e1c2925019d6c03154fcaaca4541df43abe35d2720843b9b4cbcebdcc31408f36
+ languageName: node
+ linkType: hard
+
+"which-collection@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "which-collection@npm:1.0.1"
+ dependencies:
+ is-map: ^2.0.1
+ is-set: ^2.0.1
+ is-weakmap: ^2.0.1
+ is-weakset: ^2.0.1
+ checksum: c815bbd163107ef9cb84f135e6f34453eaf4cca994e7ba85ddb0d27cea724c623fae2a473ceccfd5549c53cc65a5d82692de418166df3f858e1e5dc60818581c
+ languageName: node
+ linkType: hard
+
"which-module@npm:^2.0.0":
version: 2.0.0
resolution: "which-module@npm:2.0.0"
@@ -20687,6 +23704,19 @@ __metadata:
languageName: node
linkType: hard
+"which-typed-array@npm:^1.1.11, which-typed-array@npm:^1.1.13":
+ version: 1.1.13
+ resolution: "which-typed-array@npm:1.1.13"
+ dependencies:
+ available-typed-arrays: ^1.0.5
+ call-bind: ^1.0.4
+ for-each: ^0.3.3
+ gopd: ^1.0.1
+ has-tostringtag: ^1.0.0
+ checksum: 3828a0d5d72c800e369d447e54c7620742a4cc0c9baf1b5e8c17e9b6ff90d8d861a3a6dd4800f1953dbf80e5e5cec954a289e5b4a223e3bee4aeb1f8c5f33309
+ languageName: node
+ linkType: hard
+
"which-typed-array@npm:^1.1.2, which-typed-array@npm:^1.1.9":
version: 1.1.9
resolution: "which-typed-array@npm:1.1.9"