import { TempstreamJSX } from "tempstream"; import type { ComponentToHTMLArgs, ExtractStructuredComponentArgumentsParsed, JDDContext, } from "@sealcode/jdd"; import { Component, ComponentArguments } from "@sealcode/jdd"; import { v4 as uuid } from "uuid"; const component_arguments = { custom_css: new ComponentArguments.ShortText(), content: new ComponentArguments.NestedComponent(), } as const; export class CustomCssWrapper extends Component { getArguments() { return component_arguments; } getCSSClumps( jdd_context: JDDContext, args: ExtractStructuredComponentArgumentsParsed ) { const result = args?.content?.getCSSClumps(jdd_context) || []; return result; } async toHTML({ args: { custom_css, content }, classes, jdd_context, }: ComponentToHTMLArgs): Promise { const unique_class = `css-wrapper--${uuid()}`; return (
{ /* HTML */ `` } {content.render(jdd_context)}
); } }