fix(email-renderer): stack AMP columns at mobile widths
This commit is contained in:
1 parent
8e51b28583
commit
2f735b267b
4 files changed
+10
-5
No files matched your search
@@ -62,13 +62,18 @@ describe("email renderer", () => {
|
||||
const draft=structuredClone(document);
|
||||
const content=draft.root.slots.content[0]!.slots.content;
|
||||
draft.root.slots.content[0]!.slots.content=[{id:"columns",type:"layout.columns",version:1,props:{},styles:{},slots:{columns:Array.from({length:count},(_,index)=>({id:`column-${index}`,type:"layout.column",version:1,props:{width:`${100/count}%`},styles:{},slots:{content:index===0?content:[]}}))}}];
|
||||
const result=await renderEmail(draft,{mjml:true});
|
||||
const result=await renderEmail(draft,{mjml:true,amp:true});
|
||||
expect(result.ok).toBe(true);
|
||||
if(!result.ok)continue;
|
||||
const mjml=result.value.exports!.mjml!;
|
||||
expect(mjml.match(/<mj-column\b/g)).toHaveLength(count);
|
||||
expect(await validateMjml(mjml)).toEqual([]);
|
||||
expect(mjml).toContain("Hello <world>");
|
||||
const amp=result.value.parts.amp;
|
||||
expect(amp?.validation.valid).toBe(true);
|
||||
expect(amp?.content.match(/class="wrn-column"/g)).toHaveLength(count);
|
||||
expect(amp?.content).toContain('class="wrn-columns"');
|
||||
expect(amp?.content).toContain('@media only screen and (max-width:480px){.email-body .wrn-columns{display:block}.email-body .wrn-column{display:block;width:100%}}');
|
||||
}
|
||||
});
|
||||
test("global brand logo survives HTML, AMP, and strict MJML export", async () => {
|
||||
|
||||
Reference in new issue
Block a user