Page MenuHomeSealhub

index.ts
No OneTemporary

index.ts

import { FlatTemplatable, tempstream } from "tempstream";
import { Registry } from "./registry";
export * from "./component-arguments";
export * from "./component";
export * from "./registry";
export type JDDocument = Array<{
component_name: string;
args: Record<string, unknown>;
}>;
export interface JDDContext {
render_image: (path_to_image: string) => FlatTemplatable;
}
export const simpleJDDContext: JDDContext = {
render_image: (path) => /* HTML */ `<img src="file://path" />`,
};
export function render(
registry: Registry,
document: JDDocument,
context: JDDContext
) {
return tempstream`${document.map(({ component_name, args }) => {
const component = registry.get(component_name);
if (!component) {
console.warn(
"Component not found in the registry: " + component_name
);
return "";
}
return component.toHTML(args, context);
})}`;
}

File Metadata

Mime Type
text/x-java
Expires
Tue, Dec 24, 14:02 (11 h, 55 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
557245
Default Alt Text
index.ts (878 B)

Event Timeline