Ship file viewer, editor improvements, and private package releases

This commit is contained in:
Clintchiz committed 2026-09-09 11:20:11 +05:30
1 parent 645914955c
commit a4a31032b9
158 files changed
+10523 -137

No files matched your search

@@ -0,0 +1,21 @@
import { expect, test } from "bun:test";
import { createSectionPreset, emailPresets } from "../src/presets.ts";
import { renderEmailPreview } from "../src/browser.ts";
import type { BlockDocument } from "@wrnexus/blocks";
test("every designed preset renders natively without remote placeholder assets", async () => {
for (const preset of emailPresets) {
let id = 0;
const section = createSectionPreset(preset.id, () => `preset-${++id}`);
const document: BlockDocument = {schemaVersion:1,kind:"email",meta:{subject:"Preset QA"},theme:{tokens:{}},root:{id:"root",type:"layout.email-document",version:1,props:{width:"600"},styles:{},slots:{content:[section]}}};
const before = JSON.stringify(document);
const result = await renderEmailPreview(document, {variables:{recipientName:"Alex",organizationAddress:"Company address",unsubscribeUrl:"https://example.com/unsubscribe"}});
expect(result.ok).toBe(true);
if (result.ok) {
expect(result.value.html).not.toContain("placehold.co");
expect(result.value.html).toContain(String(section.props.background));
expect(result.value.text.length).toBeGreaterThan(80);
}
expect(JSON.stringify(document)).toBe(before);
}
});