feat: json rich text editor, blocks, asides, general structure

This commit is contained in:
Simon Emanuelsson
2024-02-07 11:57:36 +01:00
parent 2bd4e25403
commit 66faa41e98
53 changed files with 966 additions and 211 deletions
+29 -4
View File
@@ -1,9 +1,34 @@
import { Fragment } from "react"
import Puff from "./Asides/Puff"
import { AsideTypenameEnum } from "@/types/requests/utils/typename"
import type { AsideProps } from "@/types/components/current/aside"
export default function Aside({ }: AsideProps) {
return (
<>
export default function Aside({ blocks }: AsideProps) {
if (!blocks?.length) {
return null
}
</>
return (
<aside>
{blocks.map((block, idx) => {
const type = block.__typename
switch (type) {
case AsideTypenameEnum.CurrentBlocksPageAsideContact:
return null
case AsideTypenameEnum.CurrentBlocksPageAsidePuff:
return (
<Fragment key={`puff-${idx}`}>
{block.puff.puffConnection.edges.map(puff => (
<Puff key={puff.node.system.uid} {...puff.node} />
))}
</Fragment>
)
default:
return null
}
})}
</aside>
)
}