diff --git a/package.json b/package.json index 71d93df8f..694de4314 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "lodash": "^4.17.21", "motion": "^11.18.1", "nanoid": "^5.1.5", - "next": "15.1.4", + "next": "15.4.7", "notistack": "^3.0.1", "number-flip": "^1.2.3", "numbro": "^2.3.6", diff --git a/src/app/cloak/Control/ControlCard.tsx b/src/app/cloak/Control/ControlCard.tsx new file mode 100644 index 000000000..1a5de6d1a --- /dev/null +++ b/src/app/cloak/Control/ControlCard.tsx @@ -0,0 +1,38 @@ +import { Stack, Typography } from "@mui/material" + +const ControlCard = props => { + const { Icon, title, content, sx } = props + + return ( + + + + {title} + + + {content} + + + ) +} + +export default ControlCard diff --git a/src/app/cloak/Control/index.tsx b/src/app/cloak/Control/index.tsx new file mode 100644 index 000000000..3e7848338 --- /dev/null +++ b/src/app/cloak/Control/index.tsx @@ -0,0 +1,55 @@ +import { Box, Container, Typography } from "@mui/material" + +import AdminSvg from "@/assets/svgs/cloak/admin.svg" +import DisclosureSvg from "@/assets/svgs/cloak/disclosure.svg" +import ModularSvg from "@/assets/svgs/cloak/modular.svg" +import SelfHostedSvg from "@/assets/svgs/cloak/self-hosted.svg" +import WorkflowSvg from "@/assets/svgs/cloak/workflow.svg" +import { CLOAK_CONTROL_DESCS } from "@/constants" + +import SectionWrapper from "../SectionWrapper" +import ControlCard from "./ControlCard" + +const iconMap = { + "self-hosted": SelfHostedSvg, + admin: AdminSvg, + modular: ModularSvg, + workflow: WorkflowSvg, + disclosure: DisclosureSvg, +} + +const Control = () => { + return ( + + Sovereignty & Enterprise Control + > + } + subTitle="Cloak empowers you with full organizational control:" + backgroundColor="#D2FCF6" + > + + {CLOAK_CONTROL_DESCS.map(({ key, title, content }, index) => ( + + ))} + + + ) +} +export default Control diff --git a/src/app/cloak/Hero/index.tsx b/src/app/cloak/Hero/index.tsx new file mode 100644 index 000000000..0f3bee874 --- /dev/null +++ b/src/app/cloak/Hero/index.tsx @@ -0,0 +1,70 @@ +import Image from "next/image" + +import { Box, Container, Stack, Typography } from "@mui/material" + +import HeroImage from "@/assets/images/cloak/cloak-hero.webp" +import ExternalLinkSvg from "@/assets/svgs/common/external-link.svg" +import Button from "@/components/Button" +import ScrollLink from "@/components/Link" +import { CLOAK_HERO_LINKS, CLOAK_SIGNUP_URL } from "@/constants" + +const CloakHero = () => { + return ( + + + + Cloak — Privacy Layer for Onchain Finance + + Build a global payroll system, merchant payouts, or digital wallets with the transparency you need inside, and total privacy protection + outside. + + + Sign up for demo + + + {CLOAK_HERO_LINKS.map(({ key, label, href }) => ( + + {label} + + ))} + + + + + + ) +} + +export default CloakHero diff --git a/src/app/cloak/LearnMore/index.tsx b/src/app/cloak/LearnMore/index.tsx new file mode 100644 index 000000000..5ad4a679b --- /dev/null +++ b/src/app/cloak/LearnMore/index.tsx @@ -0,0 +1,26 @@ +"use client" + +import { Box, Container } from "@mui/material" + +import Button from "@/components/Button" +import { CLOAK_SIGNUP_URL } from "@/constants" +import useCheckViewport from "@/hooks/useCheckViewport" + +const LearnMore = () => { + const { isMobile } = useCheckViewport() + return ( + + + + Sign up for demo + + + + ) +} +export default LearnMore diff --git a/src/app/cloak/PrivateAccount/PrivateCard.tsx b/src/app/cloak/PrivateAccount/PrivateCard.tsx new file mode 100644 index 000000000..343aa4f4f --- /dev/null +++ b/src/app/cloak/PrivateAccount/PrivateCard.tsx @@ -0,0 +1,47 @@ +import { Stack, Typography } from "@mui/material" + +const PrivateCard = props => { + const { Icon, title, content, sx } = props + + return ( + + + + + {title} + + + + + {content} + + + ) +} + +export default PrivateCard diff --git a/src/app/cloak/PrivateAccount/index.tsx b/src/app/cloak/PrivateAccount/index.tsx new file mode 100644 index 000000000..2e825da75 --- /dev/null +++ b/src/app/cloak/PrivateAccount/index.tsx @@ -0,0 +1,94 @@ +import Image from "next/image" + +import { Box, Stack } from "@mui/material" + +import PrivateAccountMobileImage from "@/assets/images/cloak/cloak-private-mobile.webp" +import PrivateAccountImage from "@/assets/images/cloak/cloak-private.webp" +import BalanceSvg from "@/assets/svgs/cloak/balance.svg" +import DepositSvg from "@/assets/svgs/cloak/deposit.svg" +import HistorySvg from "@/assets/svgs/cloak/history.svg" +import { CLOAK_PRIVATE_DESCS } from "@/constants" + +import SectionWrapper from "../SectionWrapper" +import PrivateCard from "./PrivateCard" + +const iconMap = { + history: HistorySvg, + balance: BalanceSvg, + deposit: DepositSvg, +} + +const PrivateAccount = () => { + const [leftCard, ...rightCards] = CLOAK_PRIVATE_DESCS + + return ( + + + + + + + + + {rightCards.map(({ key, title, content }) => ( + + ))} + + + + ) +} +export default PrivateAccount diff --git a/src/app/cloak/SeamlessUserExp/SeamlessCard.tsx b/src/app/cloak/SeamlessUserExp/SeamlessCard.tsx new file mode 100644 index 000000000..e21dc5c8e --- /dev/null +++ b/src/app/cloak/SeamlessUserExp/SeamlessCard.tsx @@ -0,0 +1,41 @@ +import Image from "next/image" + +import { Stack, Typography } from "@mui/material" + +const SeamlessCard = props => { + const { imageURL, title, content, sx } = props + + return ( + + + + {title} + + + {content} + + + ) +} + +export default SeamlessCard diff --git a/src/app/cloak/SeamlessUserExp/index.tsx b/src/app/cloak/SeamlessUserExp/index.tsx new file mode 100644 index 000000000..babff83db --- /dev/null +++ b/src/app/cloak/SeamlessUserExp/index.tsx @@ -0,0 +1,19 @@ +import { Stack } from "@mui/material" + +import { CLOAK_USER_EXP_DESCS } from "@/constants/cloak" + +import SectionWrapper from "../SectionWrapper" +import SeamlessCard from "./SeamlessCard" + +const SeamlessUserExp = () => { + return ( + + + {CLOAK_USER_EXP_DESCS.map(({ key, imageURL, title, content }) => ( + + ))} + + + ) +} +export default SeamlessUserExp diff --git a/src/app/cloak/SectionWrapper/index.tsx b/src/app/cloak/SectionWrapper/index.tsx new file mode 100644 index 000000000..172a8071b --- /dev/null +++ b/src/app/cloak/SectionWrapper/index.tsx @@ -0,0 +1,47 @@ +// TODO: a new section wrapper, but not ready to replace components/SectionWrapper yet +import { Box, Container, Stack, Typography } from "@mui/material" + +interface SectionWrapperProps { + title: string | React.ReactNode + subTitle?: string + children: React.ReactNode + backgroundColor?: string + color?: string +} + +const SectionWrapper = (props: SectionWrapperProps) => { + const { title, subTitle, children, backgroundColor = "themeBackground.light", color = "text.primary" } = props + return ( + + + + + {title} + + {subTitle && ( + + {subTitle} + + )} + + {children} + + + ) +} + +export default SectionWrapper diff --git a/src/app/cloak/Workflow/AppCard/index.tsx b/src/app/cloak/Workflow/AppCard/index.tsx new file mode 100644 index 000000000..93dfa5bd1 --- /dev/null +++ b/src/app/cloak/Workflow/AppCard/index.tsx @@ -0,0 +1,104 @@ +import Image from "next/image" + +import { Box, Stack, Typography } from "@mui/material" + +const AppCard = props => { + const { imageURL, title, name, list, sx } = props + return ( + + + {title} + + {name} + + + + + {list.map((item, index) => ( + + + {item} + + + ))} + + + ) +} + +export default AppCard diff --git a/src/app/cloak/Workflow/StepCard/index.tsx b/src/app/cloak/Workflow/StepCard/index.tsx new file mode 100644 index 000000000..f278d1856 --- /dev/null +++ b/src/app/cloak/Workflow/StepCard/index.tsx @@ -0,0 +1,54 @@ +import Image from "next/image" + +import { Box, Stack, Typography } from "@mui/material" + +// translate-x-[-8px] translate-y-[-2px] +const StepCard = props => { + const { imageURL, content, content2, backgroundColor } = props + return ( + + + + + {content} + + + {content2} + + + + ) +} + +export default StepCard diff --git a/src/app/cloak/Workflow/StepLine/index.tsx b/src/app/cloak/Workflow/StepLine/index.tsx new file mode 100644 index 000000000..942aed455 --- /dev/null +++ b/src/app/cloak/Workflow/StepLine/index.tsx @@ -0,0 +1,29 @@ +import { Stack } from "@mui/material" +import { Typography } from "@mui/material" + +import WorkflowLineSvg from "@/assets/svgs/cloak/workflow-line.svg" + +const StepLine = props => { + const { content } = props + return ( + + + + {content} + + + ) +} + +export default StepLine diff --git a/src/app/cloak/Workflow/index.tsx b/src/app/cloak/Workflow/index.tsx new file mode 100644 index 000000000..f1f2f5bfd --- /dev/null +++ b/src/app/cloak/Workflow/index.tsx @@ -0,0 +1,66 @@ +import { Stack, Typography } from "@mui/material" + +import WorkflowLinesMobileSvg from "@/assets/svgs/cloak/workflow-double-lines-mobile.svg" +import WorkflowLinesSvg from "@/assets/svgs/cloak/workflow-double-lines.svg" +import { CLOAK_WORKFLOW_APPS, CLOAK_WORKFLOW_STEPS } from "@/constants/cloak" + +import SectionWrapper from "../SectionWrapper" +import AppCard from "./AppCard" +import StepCard from "./StepCard" +import StepLine from "./StepLine" + +const Workflow = () => { + return ( + + + + {CLOAK_WORKFLOW_APPS.map(({ key, imageURL, title, name, list }) => ( + + ))} + + + + + + Only send validity proofs. + No specific data can be accessed. + + + + {CLOAK_WORKFLOW_STEPS.map(({ key, imageURL, content, content2, backgroundColor, stepMark }) => ( + <> + + {stepMark && } + > + ))} + + + ) +} +export default Workflow diff --git a/src/app/cloak/page.tsx b/src/app/cloak/page.tsx new file mode 100644 index 000000000..901779d57 --- /dev/null +++ b/src/app/cloak/page.tsx @@ -0,0 +1,20 @@ +import Control from "./Control" +import Hero from "./Hero" +import LearnMore from "./LearnMore" +import PrivateAccount from "./PrivateAccount" +import SeamlessUserExp from "./SeamlessUserExp" +import Workflow from "./Workflow" + +const CloakPage = () => { + return ( + <> + + + + + + + > + ) +} +export default CloakPage diff --git a/src/app/template.tsx b/src/app/template.tsx index dec028f4f..befec2913 100644 --- a/src/app/template.tsx +++ b/src/app/template.tsx @@ -6,19 +6,15 @@ import { Box } from "@mui/material" import Footer from "@/components/Footer" import Header from "@/components/Header" -import useHideFooter from "@/hooks/useHideFooter" -import { isSepolia } from "@/utils" import "./global" export default function RootTemplate({ children }: { children: ReactNode }) { - const hideFooter = useHideFooter() - return ( {children} - {!(isSepolia || hideFooter) && } + ) } diff --git a/src/assets/images/cloak/cloak-exp-1.webp b/src/assets/images/cloak/cloak-exp-1.webp new file mode 100644 index 000000000..3641cacd5 Binary files /dev/null and b/src/assets/images/cloak/cloak-exp-1.webp differ diff --git a/src/assets/images/cloak/cloak-exp-2.webp b/src/assets/images/cloak/cloak-exp-2.webp new file mode 100644 index 000000000..466ac9eff Binary files /dev/null and b/src/assets/images/cloak/cloak-exp-2.webp differ diff --git a/src/assets/images/cloak/cloak-exp-3.webp b/src/assets/images/cloak/cloak-exp-3.webp new file mode 100644 index 000000000..33fc111f3 Binary files /dev/null and b/src/assets/images/cloak/cloak-exp-3.webp differ diff --git a/src/assets/images/cloak/cloak-hero.webp b/src/assets/images/cloak/cloak-hero.webp new file mode 100644 index 000000000..11a9c4167 Binary files /dev/null and b/src/assets/images/cloak/cloak-hero.webp differ diff --git a/src/assets/images/cloak/cloak-private-mobile.webp b/src/assets/images/cloak/cloak-private-mobile.webp new file mode 100644 index 000000000..2c069f01e Binary files /dev/null and b/src/assets/images/cloak/cloak-private-mobile.webp differ diff --git a/src/assets/images/cloak/cloak-private.webp b/src/assets/images/cloak/cloak-private.webp new file mode 100644 index 000000000..c8af11e6b Binary files /dev/null and b/src/assets/images/cloak/cloak-private.webp differ diff --git a/src/assets/images/cloak/cloak-workflow-1.svg b/src/assets/images/cloak/cloak-workflow-1.svg new file mode 100644 index 000000000..bd081f1bf --- /dev/null +++ b/src/assets/images/cloak/cloak-workflow-1.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/images/cloak/cloak-workflow-2.svg b/src/assets/images/cloak/cloak-workflow-2.svg new file mode 100644 index 000000000..27d4185e8 --- /dev/null +++ b/src/assets/images/cloak/cloak-workflow-2.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/assets/images/cloak/cloak-workflow-3.svg b/src/assets/images/cloak/cloak-workflow-3.svg new file mode 100644 index 000000000..7f3e923f4 --- /dev/null +++ b/src/assets/images/cloak/cloak-workflow-3.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/assets/images/cloak/cloak-workflow-4.svg b/src/assets/images/cloak/cloak-workflow-4.svg new file mode 100644 index 000000000..8027e8cc2 --- /dev/null +++ b/src/assets/images/cloak/cloak-workflow-4.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/assets/svgs/cloak/admin.svg b/src/assets/svgs/cloak/admin.svg new file mode 100644 index 000000000..aca3f7d73 --- /dev/null +++ b/src/assets/svgs/cloak/admin.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/assets/svgs/cloak/balance.svg b/src/assets/svgs/cloak/balance.svg new file mode 100644 index 000000000..7a3a8a3cc --- /dev/null +++ b/src/assets/svgs/cloak/balance.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/svgs/cloak/deposit.svg b/src/assets/svgs/cloak/deposit.svg new file mode 100644 index 000000000..31f7ce228 --- /dev/null +++ b/src/assets/svgs/cloak/deposit.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/svgs/cloak/disclosure.svg b/src/assets/svgs/cloak/disclosure.svg new file mode 100644 index 000000000..1f7e99739 --- /dev/null +++ b/src/assets/svgs/cloak/disclosure.svg @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/assets/svgs/cloak/history.svg b/src/assets/svgs/cloak/history.svg new file mode 100644 index 000000000..ec5a6a575 --- /dev/null +++ b/src/assets/svgs/cloak/history.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/svgs/cloak/modular.svg b/src/assets/svgs/cloak/modular.svg new file mode 100644 index 000000000..8f4800fb8 --- /dev/null +++ b/src/assets/svgs/cloak/modular.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/src/assets/svgs/cloak/self-hosted.svg b/src/assets/svgs/cloak/self-hosted.svg new file mode 100644 index 000000000..4de313368 --- /dev/null +++ b/src/assets/svgs/cloak/self-hosted.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/assets/svgs/cloak/workflow-double-lines-mobile.svg b/src/assets/svgs/cloak/workflow-double-lines-mobile.svg new file mode 100644 index 000000000..40948a6f3 --- /dev/null +++ b/src/assets/svgs/cloak/workflow-double-lines-mobile.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/svgs/cloak/workflow-double-lines.svg b/src/assets/svgs/cloak/workflow-double-lines.svg new file mode 100644 index 000000000..f770eed49 --- /dev/null +++ b/src/assets/svgs/cloak/workflow-double-lines.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/svgs/cloak/workflow-line.svg b/src/assets/svgs/cloak/workflow-line.svg new file mode 100644 index 000000000..f6ac958f0 --- /dev/null +++ b/src/assets/svgs/cloak/workflow-line.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/svgs/cloak/workflow.svg b/src/assets/svgs/cloak/workflow.svg new file mode 100644 index 000000000..c0e203e37 --- /dev/null +++ b/src/assets/svgs/cloak/workflow.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/components/Button/index.tsx b/src/components/Button/index.tsx index fd29a2035..08b192959 100644 --- a/src/components/Button/index.tsx +++ b/src/components/Button/index.tsx @@ -25,6 +25,19 @@ interface ScrollButtonProps extends Omit { rel?: string } +const sizes = { + small: { + height: "4rem", + fontSize: { desktop: "1.4rem", mobile: "1.4rem" }, + fontWeight: 600, + }, + medium: { + height: "4.8rem", + fontSize: { desktop: "1.8rem", mobile: "1.6rem" }, + fontWeight: 600, + }, +} + const gColor = (color, theme) => { switch (color) { case "primary": @@ -53,17 +66,17 @@ const cColor = (color, theme) => { const ButtonContainer = motion(Box) -const useStyles = makeStyles()((theme, { width, color, whiteButton }) => ({ +const useStyles = makeStyles()((theme, { width, color, size, whiteButton }) => ({ wrapper: { position: "relative", - height: "4.8rem", + height: sizes[size].height, overflow: "hidden", borderRadius: "1rem", backgroundColor: whiteButton ? "#ffffff" : "transparent", width: width ?? "24rem", [theme.breakpoints.down("sm")]: { width: width ?? "18.5rem", - height: "4.8rem", + height: sizes[size].height, }, }, wrapperLoading: { @@ -79,19 +92,19 @@ const useStyles = makeStyles()((theme, { width, color, whiteButton }) => ({ pointerEvents: "none", }, button: { - fontSize: "1.8rem", - fontWeight: 600, + fontSize: sizes[size].fontSize.desktop, + fontWeight: sizes[size].fontWeight, height: "100%", width: "100%", - paddingLeft: "4.8rem", + paddingLeft: sizes[size].height, borderWidth: "1.5px", borderStyle: "solid", borderColor: gColor(color, theme), color: gColor(color, theme), borderRadius: "1rem", [theme.breakpoints.down("sm")]: { - fontSize: "1.6rem", - paddingLeft: "4.8rem", + fontSize: sizes[size].fontSize.mobile, + paddingLeft: sizes[size].height, }, }, buttonDisabled: { @@ -109,13 +122,13 @@ const useStyles = makeStyles()((theme, { width, color, whiteButton }) => ({ color: cColor(color, theme), }, mask: { - width: "4.8rem", + width: sizes[size].height, height: "100%", position: "absolute", backgroundColor: gColor(color, theme), borderRadius: "1rem", [theme.breakpoints.down("sm")]: { - width: "4.8rem", + width: sizes[size].height, }, }, maskLoading: { @@ -126,43 +139,44 @@ const useStyles = makeStyles()((theme, { width, color, whiteButton }) => ({ }, icon: { - width: "4.8rem", + width: sizes[size].height, height: "100%", position: "absolute", zIndex: 1, color: `${cColor(color, theme)} !important`, cursor: "pointer", [theme.breakpoints.down("sm")]: { - width: "4.8rem", + width: sizes[size].height, }, }, })) -const maskDesktop = { +const maskDesktop = size => ({ normal: { - width: "4.8rem", + width: sizes[size].height, }, expanding: { width: "100%", }, -} +}) -const maskMobile = { +const maskMobile = size => ({ normal: { - width: "4.8rem", + width: sizes[size].height, }, expanding: { width: "100%", }, -} +}) const Button = (props: ScrollButtonProps) => { - const { id, className, width, sx, color, loading, disabled, gloomy, children, whiteButton, gaEvent, onClick, ...restProps } = props + const { id, className, size = "medium", width, sx, color, loading, disabled, gloomy, children, whiteButton, gaEvent, onClick, ...restProps } = props const { classes, cx } = useStyles({ color, width, disabled, loading, whiteButton, + size, }) const { isMobile } = useCheckViewport() @@ -212,7 +226,7 @@ const Button = (props: ScrollButtonProps) => { )} { + const { hideSupport } = useHideFooter() + + if (isSepolia) { + return null + } return ( <> - + {!hideSupport && } > ) diff --git a/src/components/Header/data.ts b/src/components/Header/data.ts index 1a51be31d..4528c7aa2 100644 --- a/src/components/Header/data.ts +++ b/src/components/Header/data.ts @@ -50,6 +50,7 @@ const sepoliaNavigations: Navigation[] = [ key: "block-explorer", href: process.env.NEXT_PUBLIC_EXTERNAL_EXPLORER_URI_L2, }, + // { // label: "Rollup Explorer", // key: "rollupscan", @@ -95,11 +96,17 @@ const mainnetNavigations: Navigation[] = [ href: process.env.NEXT_PUBLIC_EXTERNAL_EXPLORER_URI_L2, }, { - rootKey: "participate", + rootKey: "build", label: "Bug Bounty", key: "bug-bounty", href: "https://immunefi.com/bug-bounty/scroll/information/", }, + { + rootKey: "build", + label: "Cloak", + key: "cloak", + href: "/cloak", + }, ], }, { diff --git a/src/components/Link/index.tsx b/src/components/Link/index.tsx index fb7f3fd63..1fd5a16e6 100644 --- a/src/components/Link/index.tsx +++ b/src/components/Link/index.tsx @@ -7,6 +7,8 @@ const ScrollLink = props => { const { external, underline = "none", className, reloadDocument, children, href, ...restProps } = props const { cx } = useStyles() + const checkExternalLink = href.startsWith("http://") || href.startsWith("https://") + const handleClick = e => { e.preventDefault() window.location.href = href @@ -40,7 +42,7 @@ const ScrollLink = props => { className, )} href={href} - target={external ? "_blank" : ""} + target={external || checkExternalLink ? "_blank" : ""} rel="noopener noreferrer" {...restProps} > diff --git a/src/constants/cloak.ts b/src/constants/cloak.ts new file mode 100644 index 000000000..21daa96c4 --- /dev/null +++ b/src/constants/cloak.ts @@ -0,0 +1,124 @@ +import Exp1Image from "@/assets/images/cloak/cloak-exp-1.webp" +import Exp2Image from "@/assets/images/cloak/cloak-exp-2.webp" +import Exp3Image from "@/assets/images/cloak/cloak-exp-3.webp" +import Workflow1Image from "@/assets/images/cloak/cloak-workflow-1.svg?url" +import Workflow2Image from "@/assets/images/cloak/cloak-workflow-2.svg?url" +import Workflow3Image from "@/assets/images/cloak/cloak-workflow-3.svg?url" +import Workflow4Image from "@/assets/images/cloak/cloak-workflow-4.svg?url" + +export const CLOAK_SIGNUP_URL = "https://forms.gle/kqpuFXfMNpZLiKrp7" + +export const CLOAK_HERO_LINKS = [ + { + label: "Check out technical docs", + key: "tech", + href: "https://scroll-tech.github.io/cloak-documentation/", + }, + { + label: "Why we built Cloak", + key: "reason", + href: "/blog/introducing-cloak", + }, +] + +export const CLOAK_PRIVATE_DESCS = [ + { + key: "history", + title: "Private transaction history", + content: "Every transfer and payment details remains confidential within each client’s Cloak network; invisible from public chain.", + }, + { + key: "balance", + title: "Confidential Balances", + content: "Balances on Cloak layer are always hidden from public view—visible only to the owner.", + }, + { + key: "deposit", + title: "Shielded Deposits", + content: "With an encrypted address, recipient of a deposit stays private, preserving confidentiality end-to-end.", + }, +] + +export const CLOAK_USER_EXP_DESCS = [ + { + key: "fast", + imageURL: Exp1Image, + title: "Lightning-Fast Transfers", + content: "Deposits and withdrawals settle in under 2 seconds—delivering real-time UX for users.", + }, + { + key: "evm", + imageURL: Exp2Image, + title: "Full EVM Compatibility", + content: "Cloak supports all Ethereum smart contracts and tooling—no re‑engineering required.", + }, + { + key: "fees", + imageURL: Exp3Image, + title: "Optional Zero Fees", + content: "Offer fee-free txs if it suits your business model—fully optional and under your control.", + }, +] + +export const CLOAK_CONTROL_DESCS = [ + { + key: "self-hosted", + title: "Self‑Hosted or Cloud‑Hosted", + content: "Run Cloak entirely in your own infra—no vendor lock-in.", + }, + { + key: "admin", + title: "Administer Contracts & Assets", + content: "Full rights over data, bridges, contracts, keys, and governance—all under your management.", + }, + { + key: "modular", + title: "Modular Stack You Own", + content: "Customize as you like—all components built on Scroll’s open stack.", + }, + { + key: "workflow", + title: "Traceable Workflows", + content: "Every deposit-to-withdrawal flow is verifiable—yet remains shielded from the public.", + }, + { + key: "disclosure", + title: "Selective Disclosure", + content: "Grant regulators or auditors limited, cryptographically certified visibility—without exposing everything.", + }, +] + +export const CLOAK_WORKFLOW_APPS = [ + { + key: "bank", + imageURL: Workflow1Image, + title: "Application A:", + name: "Bank", + list: ["Indexer", "Prover", "Intent bridge", "Private RPC gateway"], + }, + { + key: "payment", + imageURL: Workflow2Image, + title: "Application B:", + name: "Payment app", + list: ["Indexer", "Prover", "Intent bridge", "Private RPC gateway"], + }, +] + +export const CLOAK_WORKFLOW_STEPS = [ + { + key: "step1", + imageURL: Workflow3Image, + content: "Scroll (Ethereum Layer 2):", + content2: "Verifier + Aggregator", + backgroundColor: "#F7F7AE", + stepMark: "Inherits Ethereum security", + }, + { + key: "step2", + imageURL: Workflow4Image, + content: "Ethereum: L2 Verifier & Settlement", + content2: "+ Data Availability Layer", + backgroundColor: "#DAFDF8", + }, +] diff --git a/src/constants/index.ts b/src/constants/index.ts index 617d2b104..42f259565 100644 --- a/src/constants/index.ts +++ b/src/constants/index.ts @@ -14,3 +14,4 @@ export * from "./badge" export * from "./canvas-badge" export * from "./community" export * from "./ai-assistant" +export * from "./cloak" diff --git a/src/hooks/useHideFooter.ts b/src/hooks/useHideFooter.ts index 71871674b..7d1c03210 100644 --- a/src/hooks/useHideFooter.ts +++ b/src/hooks/useHideFooter.ts @@ -1,15 +1,13 @@ -// import { usePathname } from "next/navigation" -// import { useMemo } from "react" +"use client" + +import { usePathname } from "next/navigation" +import { useMemo } from "react" const useHideFooter = () => { - // const pathname = usePathname() - - // const hidden = useMemo( - // () => pathname.match(/^\/canvas(\/\w*)?$/g), - // [pathname], - // ) - // return hidden - return false + const pathname = usePathname() + + const hideSupport = useMemo(() => pathname.match(/^\/cloak(\/\w*)?$/g), [pathname]) + return { hideSupport } } export default useHideFooter diff --git a/src/types/css.d.ts b/src/types/css.d.ts new file mode 100644 index 000000000..f4a4ddb73 --- /dev/null +++ b/src/types/css.d.ts @@ -0,0 +1,25 @@ +declare module "*.css" { + const content: { [className: string]: string } + export default content +} + +declare module "*.scss" { + const content: { [className: string]: string } + export default content +} + +declare module "*.sass" { + const content: { [className: string]: string } + export default content +} + +// 为第三方库的 CSS 导入添加声明 +declare module "swiper/css" { + const content: any + export default content +} + +declare module "swiper/css/*" { + const content: any + export default content +} diff --git a/yarn.lock b/yarn.lock index ebfe6b250..9609ab787 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1273,10 +1273,10 @@ dependencies: tslib "^2.0.0" -"@emnapi/runtime@^1.2.0": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.3.1.tgz#0fcaa575afc31f455fd33534c19381cfce6c6f60" - integrity sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw== +"@emnapi/runtime@^1.7.0": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.7.1.tgz#a73784e23f5d57287369c808197288b52276b791" + integrity sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA== dependencies: tslib "^2.4.0" @@ -1766,118 +1766,152 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz#d9fae00a2d5cb40f92cfe64b47ad749fbc38f917" integrity sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw== -"@img/sharp-darwin-arm64@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz#ef5b5a07862805f1e8145a377c8ba6e98813ca08" - integrity sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ== +"@img/colour@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@img/colour/-/colour-1.0.0.tgz#d2fabb223455a793bf3bf9c70de3d28526aa8311" + integrity sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw== + +"@img/sharp-darwin-arm64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz#6e0732dcade126b6670af7aa17060b926835ea86" + integrity sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w== optionalDependencies: - "@img/sharp-libvips-darwin-arm64" "1.0.4" + "@img/sharp-libvips-darwin-arm64" "1.2.4" -"@img/sharp-darwin-x64@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz#e03d3451cd9e664faa72948cc70a403ea4063d61" - integrity sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q== +"@img/sharp-darwin-x64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz#19bc1dd6eba6d5a96283498b9c9f401180ee9c7b" + integrity sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw== optionalDependencies: - "@img/sharp-libvips-darwin-x64" "1.0.4" + "@img/sharp-libvips-darwin-x64" "1.2.4" -"@img/sharp-libvips-darwin-arm64@1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz#447c5026700c01a993c7804eb8af5f6e9868c07f" - integrity sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg== +"@img/sharp-libvips-darwin-arm64@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz#2894c0cb87d42276c3889942e8e2db517a492c43" + integrity sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g== -"@img/sharp-libvips-darwin-x64@1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz#e0456f8f7c623f9dbfbdc77383caa72281d86062" - integrity sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ== +"@img/sharp-libvips-darwin-x64@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz#e63681f4539a94af9cd17246ed8881734386f8cc" + integrity sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg== -"@img/sharp-libvips-linux-arm64@1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz#979b1c66c9a91f7ff2893556ef267f90ebe51704" - integrity sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA== +"@img/sharp-libvips-linux-arm64@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz#b1b288b36864b3bce545ad91fa6dadcf1a4ad318" + integrity sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw== -"@img/sharp-libvips-linux-arm@1.0.5": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz#99f922d4e15216ec205dcb6891b721bfd2884197" - integrity sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g== +"@img/sharp-libvips-linux-arm@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz#b9260dd1ebe6f9e3bdbcbdcac9d2ac125f35852d" + integrity sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A== -"@img/sharp-libvips-linux-s390x@1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz#f8a5eb1f374a082f72b3f45e2fb25b8118a8a5ce" - integrity sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA== +"@img/sharp-libvips-linux-ppc64@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz#4b83ecf2a829057222b38848c7b022e7b4d07aa7" + integrity sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA== -"@img/sharp-libvips-linux-x64@1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz#d4c4619cdd157774906e15770ee119931c7ef5e0" - integrity sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw== +"@img/sharp-libvips-linux-riscv64@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz#880b4678009e5a2080af192332b00b0aaf8a48de" + integrity sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA== -"@img/sharp-libvips-linuxmusl-arm64@1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz#166778da0f48dd2bded1fa3033cee6b588f0d5d5" - integrity sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA== +"@img/sharp-libvips-linux-s390x@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz#74f343c8e10fad821b38f75ced30488939dc59ec" + integrity sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ== -"@img/sharp-libvips-linuxmusl-x64@1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz#93794e4d7720b077fcad3e02982f2f1c246751ff" - integrity sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw== +"@img/sharp-libvips-linux-x64@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz#df4183e8bd8410f7d61b66859a35edeab0a531ce" + integrity sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw== + +"@img/sharp-libvips-linuxmusl-arm64@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz#c8d6b48211df67137541007ee8d1b7b1f8ca8e06" + integrity sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw== + +"@img/sharp-libvips-linuxmusl-x64@1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz#be11c75bee5b080cbee31a153a8779448f919f75" + integrity sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg== + +"@img/sharp-linux-arm64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz#7aa7764ef9c001f15e610546d42fce56911790cc" + integrity sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg== + optionalDependencies: + "@img/sharp-libvips-linux-arm64" "1.2.4" + +"@img/sharp-linux-arm@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz#5fb0c3695dd12522d39c3ff7a6bc816461780a0d" + integrity sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw== + optionalDependencies: + "@img/sharp-libvips-linux-arm" "1.2.4" -"@img/sharp-linux-arm64@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz#edb0697e7a8279c9fc829a60fc35644c4839bb22" - integrity sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA== +"@img/sharp-linux-ppc64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz#9c213a81520a20caf66978f3d4c07456ff2e0813" + integrity sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA== optionalDependencies: - "@img/sharp-libvips-linux-arm64" "1.0.4" + "@img/sharp-libvips-linux-ppc64" "1.2.4" -"@img/sharp-linux-arm@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz#422c1a352e7b5832842577dc51602bcd5b6f5eff" - integrity sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ== +"@img/sharp-linux-riscv64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz#cdd28182774eadbe04f62675a16aabbccb833f60" + integrity sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw== optionalDependencies: - "@img/sharp-libvips-linux-arm" "1.0.5" + "@img/sharp-libvips-linux-riscv64" "1.2.4" -"@img/sharp-linux-s390x@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz#f5c077926b48e97e4a04d004dfaf175972059667" - integrity sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q== +"@img/sharp-linux-s390x@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz#93eac601b9f329bb27917e0e19098c722d630df7" + integrity sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg== optionalDependencies: - "@img/sharp-libvips-linux-s390x" "1.0.4" + "@img/sharp-libvips-linux-s390x" "1.2.4" -"@img/sharp-linux-x64@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz#d806e0afd71ae6775cc87f0da8f2d03a7c2209cb" - integrity sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA== +"@img/sharp-linux-x64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz#55abc7cd754ffca5002b6c2b719abdfc846819a8" + integrity sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ== optionalDependencies: - "@img/sharp-libvips-linux-x64" "1.0.4" + "@img/sharp-libvips-linux-x64" "1.2.4" -"@img/sharp-linuxmusl-arm64@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz#252975b915894fb315af5deea174651e208d3d6b" - integrity sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g== +"@img/sharp-linuxmusl-arm64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz#d6515ee971bb62f73001a4829b9d865a11b77086" + integrity sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg== optionalDependencies: - "@img/sharp-libvips-linuxmusl-arm64" "1.0.4" + "@img/sharp-libvips-linuxmusl-arm64" "1.2.4" -"@img/sharp-linuxmusl-x64@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz#3f4609ac5d8ef8ec7dadee80b560961a60fd4f48" - integrity sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw== +"@img/sharp-linuxmusl-x64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz#d97978aec7c5212f999714f2f5b736457e12ee9f" + integrity sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q== optionalDependencies: - "@img/sharp-libvips-linuxmusl-x64" "1.0.4" + "@img/sharp-libvips-linuxmusl-x64" "1.2.4" -"@img/sharp-wasm32@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz#6f44f3283069d935bb5ca5813153572f3e6f61a1" - integrity sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg== +"@img/sharp-wasm32@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz#2f15803aa626f8c59dd7c9d0bbc766f1ab52cfa0" + integrity sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw== dependencies: - "@emnapi/runtime" "^1.2.0" + "@emnapi/runtime" "^1.7.0" + +"@img/sharp-win32-arm64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz#3706e9e3ac35fddfc1c87f94e849f1b75307ce0a" + integrity sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g== -"@img/sharp-win32-ia32@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz#1a0c839a40c5351e9885628c85f2e5dfd02b52a9" - integrity sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ== +"@img/sharp-win32-ia32@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz#0b71166599b049e032f085fb9263e02f4e4788de" + integrity sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg== -"@img/sharp-win32-x64@0.33.5": - version "0.33.5" - resolved "https://registry.yarnpkg.com/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz#56f00962ff0c4e0eb93d34a047d29fa995e3e342" - integrity sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg== +"@img/sharp-win32-x64@0.34.5": + version "0.34.5" + resolved "https://registry.yarnpkg.com/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz#a81ffb00e69267cd0a1d626eaedb8a8430b2b2f8" + integrity sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw== "@ioredis/commands@^1.1.1": version "1.2.0" @@ -2375,10 +2409,10 @@ prop-types "^15.8.1" react-is "^19.0.0" -"@next/env@15.1.4": - version "15.1.4" - resolved "https://registry.yarnpkg.com/@next/env/-/env-15.1.4.tgz#f727cc4f46527a5223ae894f9476466db9132e21" - integrity sha512-2fZ5YZjedi5AGaeoaC0B20zGntEHRhi2SdWcu61i48BllODcAmmtj8n7YarSPt4DaTsJaBFdxQAVEVzgmx2Zpw== +"@next/env@15.4.7": + version "15.4.7" + resolved "https://registry.yarnpkg.com/@next/env/-/env-15.4.7.tgz#a7594ad61ecc88452d58b624500a30b340dd8528" + integrity sha512-PrBIpO8oljZGTOe9HH0miix1w5MUiGJ/q83Jge03mHEE0E3pyqzAy2+l5G6aJDbXoobmxPJTVhbCuwlLtjSHwg== "@next/eslint-plugin-next@15.1.4": version "15.1.4" @@ -2394,45 +2428,45 @@ dependencies: source-map "^0.7.0" -"@next/swc-darwin-arm64@15.1.4": - version "15.1.4" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.1.4.tgz#49faf320d44d1a813e09501abfd952b0315385c9" - integrity sha512-wBEMBs+np+R5ozN1F8Y8d/Dycns2COhRnkxRc+rvnbXke5uZBHkUGFgWxfTXn5rx7OLijuUhyfB+gC/ap58dDw== - -"@next/swc-darwin-x64@15.1.4": - version "15.1.4" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-15.1.4.tgz#3c234986481e7db8957562b8dfeab2d44fe4c0a7" - integrity sha512-7sgf5rM7Z81V9w48F02Zz6DgEJulavC0jadab4ZsJ+K2sxMNK0/BtF8J8J3CxnsJN3DGcIdC260wEKssKTukUw== - -"@next/swc-linux-arm64-gnu@15.1.4": - version "15.1.4" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.1.4.tgz#d71c5a55106327b50ff194dd40e11c3ca7f744a7" - integrity sha512-JaZlIMNaJenfd55kjaLWMfok+vWBlcRxqnRoZrhFQrhM1uAehP3R0+Aoe+bZOogqlZvAz53nY/k3ZyuKDtT2zQ== - -"@next/swc-linux-arm64-musl@15.1.4": - version "15.1.4" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.1.4.tgz#c6b4cef0f5b943d6308fdb429ecb43be79afce31" - integrity sha512-7EBBjNoyTO2ipMDgCiORpwwOf5tIueFntKjcN3NK+GAQD7OzFJe84p7a2eQUeWdpzZvhVXuAtIen8QcH71ZCOQ== - -"@next/swc-linux-x64-gnu@15.1.4": - version "15.1.4" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.1.4.tgz#2b15f959ac6653800c0df8247489d54982926786" - integrity sha512-9TGEgOycqZFuADyFqwmK/9g6S0FYZ3tphR4ebcmCwhL8Y12FW8pIBKJvSwV+UBjMkokstGNH+9F8F031JZKpHw== - -"@next/swc-linux-x64-musl@15.1.4": - version "15.1.4" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.1.4.tgz#2b9d3ca3c3f506e3515b13c00e19d3031535bb44" - integrity sha512-0578bLRVDJOh+LdIoKvgNDz77+Bd85c5JrFgnlbI1SM3WmEQvsjxTA8ATu9Z9FCiIS/AliVAW2DV/BDwpXbtiQ== - -"@next/swc-win32-arm64-msvc@15.1.4": - version "15.1.4" - resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.1.4.tgz#74928a6e824b258a071d30872c00417ee79d4ee7" - integrity sha512-JgFCiV4libQavwII+kncMCl30st0JVxpPOtzWcAI2jtum4HjYaclobKhj+JsRu5tFqMtA5CJIa0MvYyuu9xjjQ== - -"@next/swc-win32-x64-msvc@15.1.4": - version "15.1.4" - resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.1.4.tgz#188bce4c231f5ab0e7eaca55170764f7e8229db2" - integrity sha512-xxsJy9wzq7FR5SqPCUqdgSXiNXrMuidgckBa8nH9HtjjxsilgcN6VgXF6tZ3uEWuVEadotQJI8/9EQ6guTC4Yw== +"@next/swc-darwin-arm64@15.4.7": + version "15.4.7" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.4.7.tgz#df3a60b3e5c2e03acfffd1d1d3e6d8f289f4a863" + integrity sha512-2Dkb+VUTp9kHHkSqtws4fDl2Oxms29HcZBwFIda1X7Ztudzy7M6XF9HDS2dq85TmdN47VpuhjE+i6wgnIboVzQ== + +"@next/swc-darwin-x64@15.4.7": + version "15.4.7" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-15.4.7.tgz#393a79d0749352c6f0062619ff47132e01c8615a" + integrity sha512-qaMnEozKdWezlmh1OGDVFueFv2z9lWTcLvt7e39QA3YOvZHNpN2rLs/IQLwZaUiw2jSvxW07LxMCWtOqsWFNQg== + +"@next/swc-linux-arm64-gnu@15.4.7": + version "15.4.7" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.4.7.tgz#b3a0c3143974284bb8c12dc517d27e109e263b29" + integrity sha512-ny7lODPE7a15Qms8LZiN9wjNWIeI+iAZOFDOnv2pcHStncUr7cr9lD5XF81mdhrBXLUP9yT9RzlmSWKIazWoDw== + +"@next/swc-linux-arm64-musl@15.4.7": + version "15.4.7" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.4.7.tgz#d59cf07f53c3950659fd2171300ad76fec4eac1c" + integrity sha512-4SaCjlFR/2hGJqZLLWycccy1t+wBrE/vyJWnYaZJhUVHccpGLG5q0C+Xkw4iRzUIkE+/dr90MJRUym3s1+vO8A== + +"@next/swc-linux-x64-gnu@15.4.7": + version "15.4.7" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.4.7.tgz#dae73ecbaad28e38848510c63d59e4adca978e0f" + integrity sha512-2uNXjxvONyRidg00VwvlTYDwC9EgCGNzPAPYbttIATZRxmOZ3hllk/YYESzHZb65eyZfBR5g9xgCZjRAl9YYGg== + +"@next/swc-linux-x64-musl@15.4.7": + version "15.4.7" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.4.7.tgz#2dfb5cb4083b43da79f3db94b211ae07982ac622" + integrity sha512-ceNbPjsFgLscYNGKSu4I6LYaadq2B8tcK116nVuInpHHdAWLWSwVK6CHNvCi0wVS9+TTArIFKJGsEyVD1H+4Kg== + +"@next/swc-win32-arm64-msvc@15.4.7": + version "15.4.7" + resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.4.7.tgz#829b76781df2a5a0c4357b8986aca4028159a538" + integrity sha512-pZyxmY1iHlZJ04LUL7Css8bNvsYAMYOY9JRwFA3HZgpaNKsJSowD09Vg2R9734GxAcLJc2KDQHSCR91uD6/AAw== + +"@next/swc-win32-x64-msvc@15.4.7": + version "15.4.7" + resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.4.7.tgz#39390cba2d2ee049a7f42593db8cc6b685677997" + integrity sha512-HjuwPJ7BeRzgl3KrjKqD2iDng0eQIpIReyhpF5r4yeAHFwWRuAhfW92rWv/r3qeQHEwHsLRzFDvMqRjyM5DI6A== "@next/third-parties@^15.1.5": version "15.1.5" @@ -3747,11 +3781,6 @@ "@svgr/plugin-jsx" "8.1.0" "@svgr/plugin-svgo" "8.1.0" -"@swc/counter@0.1.3": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@swc/counter/-/counter-0.1.3.tgz#cc7463bd02949611c6329596fccd2b0ec782b0e9" - integrity sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ== - "@swc/helpers@0.5.15": version "0.5.15" resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.15.tgz#79efab344c5819ecf83a43f3f9f811fc84b516d7" @@ -5213,13 +5242,6 @@ bufferutil@^4.0.8: dependencies: node-gyp-build "^4.3.0" -busboy@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" - integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== - dependencies: - streamsearch "^1.1.0" - bytes@3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" @@ -5505,27 +5527,11 @@ color-name@1.1.3: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== -color-name@^1.0.0, color-name@~1.1.4: +color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-string@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" - integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - -color@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a" - integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A== - dependencies: - color-convert "^2.0.1" - color-string "^1.9.0" - colorette@^2.0.7: version "2.0.20" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" @@ -5805,9 +5811,9 @@ dateformat@^4.6.3: integrity sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA== dayjs@^1.11.5: - version "1.11.10" - resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.10.tgz#68acea85317a6e164457d6d6947564029a6a16a0" - integrity sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ== + version "1.11.19" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.19.tgz#15dc98e854bb43917f12021806af897c58ae2938" + integrity sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw== de-indent@^1.0.2: version "1.0.2" @@ -5951,10 +5957,10 @@ detect-libc@^1.0.3: resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg== -detect-libc@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.3.tgz#f0cd503b40f9939b894697d19ad50895e30cf700" - integrity sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw== +detect-libc@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.1.2.tgz#689c5dcdc1900ef5583a4cb9f6d7b473742074ad" + integrity sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ== detect-node-es@^1.1.0: version "1.1.0" @@ -6457,9 +6463,9 @@ eslint-config-next@15.1.4: eslint-plugin-react-hooks "^5.0.0" eslint-config-prettier@^9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz#31af3d94578645966c082fcb71a5846d3c94867f" - integrity sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw== + version "9.1.2" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-9.1.2.tgz#90deb4fa0259592df774b600dbd1d2249a78ce91" + integrity sha512-iI1f+D2ViGn+uvv5HuHVUamg8ll4tN+JRHGc6IJi4TP9Kl976C57fzPXgseXNs8v0iA8aSJpHsTWjDb9QJamGQ== eslint-import-resolver-node@^0.3.6, eslint-import-resolver-node@^0.3.9: version "0.3.9" @@ -8029,11 +8035,6 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== - is-async-function@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.0.0.tgz#8e4418efd3e5d3a6ebb0164c05ef5afb69aa9646" @@ -9763,9 +9764,9 @@ nanoid@^3.3.8: integrity sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w== nanoid@^5.1.5: - version "5.1.5" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-5.1.5.tgz#f7597f9d9054eb4da9548cdd53ca70f1790e87de" - integrity sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw== + version "5.1.6" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-5.1.6.tgz#30363f664797e7d40429f6c16946d6bd7a3f26c9" + integrity sha512-c7+7RQ+dMB5dPwwCp4ee1/iV/q2P6aK1mTZcfr1BTuVlyW9hJYiMPybJCcnBlQtuSmTIWNeazm/zqNoZSSElBg== napi-wasm@^1.1.0: version "1.1.0" @@ -9777,28 +9778,26 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -next@15.1.4: - version "15.1.4" - resolved "https://registry.yarnpkg.com/next/-/next-15.1.4.tgz#cb2aee3fbb772e20b98ccc2f0806249c09f780a2" - integrity sha512-mTaq9dwaSuwwOrcu3ebjDYObekkxRnXpuVL21zotM8qE2W0HBOdVIdg2Li9QjMEZrj73LN96LcWcz62V19FjAg== +next@15.4.7: + version "15.4.7" + resolved "https://registry.yarnpkg.com/next/-/next-15.4.7.tgz#927d818068a99c82ef1e988eb5214e906bfe4d00" + integrity sha512-OcqRugwF7n7mC8OSYjvsZhhG1AYSvulor1EIUsIkbbEbf1qoE5EbH36Swj8WhF4cHqmDgkiam3z1c1W0J1Wifg== dependencies: - "@next/env" "15.1.4" - "@swc/counter" "0.1.3" + "@next/env" "15.4.7" "@swc/helpers" "0.5.15" - busboy "1.6.0" caniuse-lite "^1.0.30001579" postcss "8.4.31" styled-jsx "5.1.6" optionalDependencies: - "@next/swc-darwin-arm64" "15.1.4" - "@next/swc-darwin-x64" "15.1.4" - "@next/swc-linux-arm64-gnu" "15.1.4" - "@next/swc-linux-arm64-musl" "15.1.4" - "@next/swc-linux-x64-gnu" "15.1.4" - "@next/swc-linux-x64-musl" "15.1.4" - "@next/swc-win32-arm64-msvc" "15.1.4" - "@next/swc-win32-x64-msvc" "15.1.4" - sharp "^0.33.5" + "@next/swc-darwin-arm64" "15.4.7" + "@next/swc-darwin-x64" "15.4.7" + "@next/swc-linux-arm64-gnu" "15.4.7" + "@next/swc-linux-arm64-musl" "15.4.7" + "@next/swc-linux-x64-gnu" "15.4.7" + "@next/swc-linux-x64-musl" "15.4.7" + "@next/swc-win32-arm64-msvc" "15.4.7" + "@next/swc-win32-x64-msvc" "15.4.7" + sharp "^0.34.3" no-case@^3.0.4: version "3.0.4" @@ -10245,9 +10244,9 @@ path-scurry@^1.6.1: minipass "^5.0.0 || ^6.0.2 || ^7.0.0" path-to-regexp@^6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.2.1.tgz#d54934d6798eb9e5ef14e7af7962c945906918e5" - integrity sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw== + version "6.3.0" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.3.0.tgz#2b6a26a337737a8e1416f9272ed0766b1c0389f4" + integrity sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ== path-type@^4.0.0: version "4.0.0" @@ -11367,11 +11366,16 @@ semver@^7.3.8, semver@^7.5.4: dependencies: lru-cache "^6.0.0" -semver@^7.5.2, semver@^7.6.0, semver@^7.6.3: +semver@^7.5.2, semver@^7.6.0: version "7.6.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== +semver@^7.7.3: + version "7.7.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" + integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== + serialize-javascript@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" @@ -11458,34 +11462,39 @@ sha.js@^2.4.0, sha.js@^2.4.11, sha.js@^2.4.8: inherits "^2.0.1" safe-buffer "^5.0.1" -sharp@^0.33.5: - version "0.33.5" - resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.33.5.tgz#13e0e4130cc309d6a9497596715240b2ec0c594e" - integrity sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw== +sharp@^0.34.3: + version "0.34.5" + resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.34.5.tgz#b6f148e4b8c61f1797bde11a9d1cfebbae2c57b0" + integrity sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg== dependencies: - color "^4.2.3" - detect-libc "^2.0.3" - semver "^7.6.3" + "@img/colour" "^1.0.0" + detect-libc "^2.1.2" + semver "^7.7.3" optionalDependencies: - "@img/sharp-darwin-arm64" "0.33.5" - "@img/sharp-darwin-x64" "0.33.5" - "@img/sharp-libvips-darwin-arm64" "1.0.4" - "@img/sharp-libvips-darwin-x64" "1.0.4" - "@img/sharp-libvips-linux-arm" "1.0.5" - "@img/sharp-libvips-linux-arm64" "1.0.4" - "@img/sharp-libvips-linux-s390x" "1.0.4" - "@img/sharp-libvips-linux-x64" "1.0.4" - "@img/sharp-libvips-linuxmusl-arm64" "1.0.4" - "@img/sharp-libvips-linuxmusl-x64" "1.0.4" - "@img/sharp-linux-arm" "0.33.5" - "@img/sharp-linux-arm64" "0.33.5" - "@img/sharp-linux-s390x" "0.33.5" - "@img/sharp-linux-x64" "0.33.5" - "@img/sharp-linuxmusl-arm64" "0.33.5" - "@img/sharp-linuxmusl-x64" "0.33.5" - "@img/sharp-wasm32" "0.33.5" - "@img/sharp-win32-ia32" "0.33.5" - "@img/sharp-win32-x64" "0.33.5" + "@img/sharp-darwin-arm64" "0.34.5" + "@img/sharp-darwin-x64" "0.34.5" + "@img/sharp-libvips-darwin-arm64" "1.2.4" + "@img/sharp-libvips-darwin-x64" "1.2.4" + "@img/sharp-libvips-linux-arm" "1.2.4" + "@img/sharp-libvips-linux-arm64" "1.2.4" + "@img/sharp-libvips-linux-ppc64" "1.2.4" + "@img/sharp-libvips-linux-riscv64" "1.2.4" + "@img/sharp-libvips-linux-s390x" "1.2.4" + "@img/sharp-libvips-linux-x64" "1.2.4" + "@img/sharp-libvips-linuxmusl-arm64" "1.2.4" + "@img/sharp-libvips-linuxmusl-x64" "1.2.4" + "@img/sharp-linux-arm" "0.34.5" + "@img/sharp-linux-arm64" "0.34.5" + "@img/sharp-linux-ppc64" "0.34.5" + "@img/sharp-linux-riscv64" "0.34.5" + "@img/sharp-linux-s390x" "0.34.5" + "@img/sharp-linux-x64" "0.34.5" + "@img/sharp-linuxmusl-arm64" "0.34.5" + "@img/sharp-linuxmusl-x64" "0.34.5" + "@img/sharp-wasm32" "0.34.5" + "@img/sharp-win32-arm64" "0.34.5" + "@img/sharp-win32-ia32" "0.34.5" + "@img/sharp-win32-x64" "0.34.5" shebang-command@^2.0.0: version "2.0.0" @@ -11558,13 +11567,6 @@ signal-exit@^4.1.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg== - dependencies: - is-arrayish "^0.3.1" - sitemap@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/sitemap/-/sitemap-7.1.1.tgz#eeed9ad6d95499161a3eadc60f8c6dce4bea2bef" @@ -11744,11 +11746,6 @@ stream-shift@^1.0.0: resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.2.tgz#548bff71c92322e1ade886979f7f67c0723eb9e4" integrity sha512-rV4Bovi9xx0BFzOb/X0B2GqoIjvqPCttZdu0Wgtx2Dxkj7ETyWl9gmqJ4EutWRLvtZWm8dxE+InQZX1IryZn/w== -streamsearch@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" - integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== - strict-uri-encode@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546"
Only send validity proofs.
No specific data can be accessed.