website: add pricing waitlist and blog post (#5058)

* pricing

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* update

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* website: add pricing waitlist and blog post

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* Apply suggestions from code review

Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
Signed-off-by: Jens L. <jens@beryju.org>

* fix lint

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

---------

Signed-off-by: Jens Langhammer <jens@goauthentik.io>
Signed-off-by: Jens L. <jens@beryju.org>
Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
This commit is contained in:
Jens L
2023-03-23 21:34:34 +01:00
committed by GitHub
parent 9a52d8db83
commit 35d2e9cd5f
12 changed files with 366 additions and 6 deletions

View File

@ -0,0 +1,52 @@
import React, { useState } from "react";
interface CardProps {
title: string;
body: string;
}
const Card = ({ title, body }: CardProps): JSX.Element => {
const [isActive, setIsActive] = useState(false);
return (
<div>
<div
style={{
padding: "1rem",
marginBottom: "1rem",
marginTop: "1rem",
display: "flex",
flexDirection: "column",
cursor: "pointer",
}}
className="card"
onClick={() => setIsActive((state) => !state)}
>
<div
style={{
display: "flex",
flexDirection: "row",
}}
>
<div
style={{
marginLeft: "0.5rem",
}}
>
{title}
</div>
</div>
{isActive && (
<div
className="card__body"
dangerouslySetInnerHTML={{ __html: body }}
>
{}
</div>
)}
</div>
</div>
);
};
export default Card;