web: colocate graphql fragments, unmask where needed, more idiomatic client-preset use

This commit is contained in:
2026-05-19 01:49:58 +02:00
parent bc8642b1fc
commit b09ce9808d
29 changed files with 2065 additions and 7283 deletions
+12 -3
View File
@@ -1,7 +1,16 @@
import { EmbedBlock as EmbedBlockType } from "@/gql/graphql";
import { graphql } from "@/gql";
import { type EmbedBlockFragment } from "@/gql/graphql";
import styles from "./embedBlock.module.scss";
export const EmbedBlock = ({ block }: { block: EmbedBlockType }) => {
const EmbedBlockFragmentDefinition = graphql(`
fragment EmbedBlock on EmbedBlock {
url
embed
rawEmbed
}
`);
export const EmbedBlock = ({ block }: { block: EmbedBlockFragment }) => {
if (!block.embed) {
return <></>;
}
@@ -18,7 +27,7 @@ export const EmbedBlock = ({ block }: { block: EmbedBlockType }) => {
*/
let embedData: any = {};
try {
embedData = JSON.parse(block.rawEmbed);
embedData = block.rawEmbed ? JSON.parse(block.rawEmbed) : {};
} catch (e) {
embedData = {};
}