Skip to content

render method 'svelte/server' too inflexible for emails, and non-page content #14120

@scosman

Description

@scosman

Describe the problem

I wrote the Svelte template https://github.com/CriticalMoments/CMSaasStarter and we are migrating it to Svelte 5.

One thing we use .svelte files for email templates for our mailer. I know it's not the intended use of svelte, but it seems weird to add a second templating system in a svelte project.

We use one template for plaintext and one for html of each email. Both worked fine in svelte 4 using Component.render. Both now have issues in svelte 5.

  • plaintext emails are now injecting HTML comments like <!--[--> and <!----> which I need to strip manually
  • HTML emails are logging warnings of node_invalid_placement_ssr: '<html>' because the email templates include html tags.

Describe the proposed solution

Maybe a "raw" option on the new render method in 'svelte/server'? I'm open to any fix though.

If this is explicitly out of scope we could move to another template system, but again, would love to not have 2 in one project.

Importance

nice to have

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions