first commit
Some checks failed
Test examples / Test Examples (20) (push) Has been cancelled
Test examples / Test Examples (22) (push) Has been cancelled
Lock Threads / action (push) Has been cancelled
Trigger Release / start (push) Has been cancelled
Stale issue handler / stale (push) Has been cancelled
Update Font Data / create-pull-request (push) Has been cancelled
build-and-deploy / deploy-target (push) Has been cancelled
build-and-deploy / build (push) Has been cancelled
build-and-deploy / stable - aarch64-unknown-linux-musl - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-unknown-linux-musl - node@16 (push) Has been cancelled
build-and-deploy / stable - aarch64-unknown-linux-gnu - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-unknown-linux-gnu - node@16 (push) Has been cancelled
build-and-deploy / stable - aarch64-pc-windows-msvc - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-pc-windows-msvc - node@16 (push) Has been cancelled
build-and-deploy / stable - aarch64-apple-darwin - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-apple-darwin - node@16 (push) Has been cancelled
build-and-deploy / build-wasm (nodejs) (push) Has been cancelled
build-and-deploy / build-wasm (web) (push) Has been cancelled
build-and-deploy / Deploy preview tarball (push) Has been cancelled
build-and-deploy / Potentially publish release (push) Has been cancelled
build-and-deploy / publish-turbopack-npm-packages (push) Has been cancelled
build-and-deploy / Deploy examples (push) Has been cancelled
build-and-deploy / thank you, build (push) Has been cancelled
build-and-deploy / Upload Turbopack Bytesize metrics to Datadog (push) Has been cancelled
Rspack Next.js development integration tests / Rspack integration tests (push) Has been cancelled
Rspack Next.js production integration tests / Rspack integration tests (push) Has been cancelled
Turbopack Next.js development integration tests / Next.js integration tests (push) Has been cancelled
Turbopack Next.js production integration tests / Next.js integration tests (push) Has been cancelled
Update Rspack test manifest / Update and upload Rspack development test manifest (push) Has been cancelled
Update Rspack test manifest / Update and upload Rspack production test manifest (push) Has been cancelled
Upload bundler test manifests to areweturboyet.com / Upload test results (push) Has been cancelled
Update React / create-pull-request (push) Has been cancelled
test-e2e-project-reset-cron / reset-test-project (push) Has been cancelled
Notify about the top 15 issues/PRs/feature requests (most reacted) in the last 90 days / run (push) Has been cancelled

This commit is contained in:
Arian Tron
2026-03-10 19:37:31 +03:30
commit 61f56f997c
27684 changed files with 2784175 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
@import "../../../css/queries";
.hero {
padding-top: calc(var(--base) * 3);
@include mid-break {
padding-top: var(--base);
}
}
.media {
margin-top: calc(var(--base) * 3);
width: calc(100% + var(--gutter-h));
position: relative;
@include mid-break {
margin-top: var(--base);
margin-left: calc(var(--gutter-h) * -1);
width: calc(100% + var(--gutter-h) * 2);
}
}
.links {
list-style: none;
margin: 0;
padding: 0;
display: flex;
position: absolute;
background: white;
padding: 0 48px 24px 0;
li {
margin-right: 12px;
}
@include mid-break {
position: static;
padding: 0 var(--gutter-h);
display: block;
li {
margin-right: 0;
> * {
width: 100%;
}
}
}
}

View File

@@ -0,0 +1,39 @@
import { Cell, Grid } from "@faceless-ui/css-grid";
import React from "react";
import { Page } from "../../../payload-types";
import { Gutter } from "../../Gutter";
import { CMSLink } from "../../Link";
import { Media } from "../../Media";
import RichText from "../../RichText";
import classes from "./index.module.scss";
export const HighImpactHero: React.FC<Page["hero"]> = ({
richText,
media,
links,
}) => {
return (
<Gutter className={classes.hero}>
<Grid>
<Cell cols={10} colsM={4}>
<RichText content={richText} />
</Cell>
</Grid>
<div className={classes.media}>
{Array.isArray(links) && links.length > 0 && (
<ul className={classes.links}>
{links.map(({ link }, i) => {
return (
<li key={i}>
<CMSLink {...link} />
</li>
);
})}
</ul>
)}
{typeof media === "object" && <Media resource={media} />}
</div>
</Gutter>
);
};

View File

@@ -0,0 +1,7 @@
@use "../../../css/type.scss" as *;
.richText {
h1 {
@extend %h2;
}
}

View File

@@ -0,0 +1,22 @@
import React from "react";
import { Cell, Grid } from "@faceless-ui/css-grid";
import { Page } from "../../../payload-types";
import { Gutter } from "../../Gutter";
import RichText from "../../RichText";
import { VerticalPadding } from "../../VerticalPadding";
import classes from "./index.module.scss";
export const LowImpactHero: React.FC<Page["hero"]> = ({ richText }) => {
return (
<Gutter>
<Grid>
<Cell cols={8} colsL={10}>
<VerticalPadding>
<RichText className={classes.richText} content={richText} />
</VerticalPadding>
</Cell>
</Grid>
</Gutter>
);
};

View File

@@ -0,0 +1,66 @@
@use "../../../css/common.scss" as *;
.hero {
padding-top: calc(var(--base) * 3);
@include mid-break {
padding-top: var(--base);
}
}
.richText {
position: relative;
h1 {
@extend %h2;
}
&::after {
content: "";
display: block;
position: absolute;
width: 100vw;
left: calc(var(--gutter-h) * -1);
height: 200px;
background: linear-gradient(to bottom, var(--color-base-100), transparent);
top: calc(100% + (var(--base) * 2));
right: 0;
@include mid-break {
display: none;
}
}
}
.links {
position: relative;
list-style: none;
margin: 0;
padding: 0;
display: flex;
margin-top: calc(var(--base) * 4);
li {
margin-right: 12px;
}
@include mid-break {
display: block;
margin-top: var(--base);
li {
margin-right: 0;
}
}
}
.link {
@include mid-break {
width: 100%;
}
}
.media {
position: relative;
width: calc(100% + var(--gutter-h));
}

View File

@@ -0,0 +1,39 @@
import { Cell, Grid } from "@faceless-ui/css-grid";
import React from "react";
import { Page } from "../../../payload-types";
import { Gutter } from "../../Gutter";
import { CMSLink } from "../../Link";
import { Media } from "../../Media";
import RichText from "../../RichText";
import classes from "./index.module.scss";
export const MediumImpactHero: React.FC<Page["hero"]> = (props) => {
const { richText, media, links } = props;
return (
<Gutter className={classes.hero}>
<Grid>
<Cell cols={5} colsM={4}>
<RichText className={classes.richText} content={richText} />
{Array.isArray(links) && (
<ul className={classes.links}>
{links.map(({ link }, i) => {
return (
<li key={i}>
<CMSLink className={classes.link} {...link} />
</li>
);
})}
</ul>
)}
</Cell>
<Cell cols={7} colsM={4}>
{typeof media === "object" && (
<Media className={classes.media} resource={media} />
)}
</Cell>
</Grid>
</Gutter>
);
};

View File

@@ -0,0 +1,21 @@
"use client";
import React from "react";
import { Page } from "../../payload-types";
import { HighImpactHero } from "./HighImpact";
import { MediumImpactHero } from "./MediumImpact";
import { LowImpactHero } from "./LowImpact";
const heroes = {
highImpact: HighImpactHero,
mediumImpact: MediumImpactHero,
lowImpact: LowImpactHero,
};
export const Hero: React.FC<Page["hero"]> = (props) => {
const { type } = props;
const HeroToRender = heroes[type];
if (!HeroToRender) return null;
return <HeroToRender {...props} />;
};