Skip to content

Changelog - May, 2026

New Features

Updated Product Block

The Product block received a major update that brings ecommerce products directly into the editor. Your users can now place products from your store into their emails in two ways:

  • static mode, where they hand-pick specific products from a feed,
  • dynamic mode, where the block is connected to a Merge Tag and the ESP fills in the real products at send time, looping over the array you pass in the payload.

Why It Matters

Ecommerce senders can now build product-driven emails, such as featured collections, abandoned carts, "last viewed" rails, or personalized recommendations, all without leaving the editor or maintaining separate templates per campaign. Static mode keeps hand-picked lineups self-contained, while dynamic mode lets a single template adapt to each recipient at send time.

How To Enable

Static mode is the default. To make products available, expose the product feed endpoints described in the documentation.

To turn on dynamic mode, set the following in your TOPOL_OPTIONS:

ts
emailServiceProvider: "sparkpost",
productMergetagTags: [
  { label: "Shopping cart", value: "MT_FOR_ARRAY" },
],
smartMergeTags: {
  enabled: true,
  syntax: {
    start: "{{",
    end: "}}",
  },
},

For full details, please refer to the documentation.

Default Values in Editor

We've expanded support for default values across the editor. The defaultTemplateSettings configuration lets you preset how new templates and their blocks look from the very first block, so content starts out aligned with your brand or design system. Alongside this, each block's settings panel now lets users reset individual properties back to their default value at any time.

Why It Matters

Default values ensure visual consistency, save your users time, and align email content with your brand or design system from the very first block. The per-setting reset makes those defaults a safety net rather than a one-time starting point. End-users can experiment freely, knowing they can always snap a value back to the agreed baseline.

How To Enable

Define your defaults under the defaultTemplateSettings property in your TOPOL_OPTIONS configuration:

ts
defaultTemplateSettings: {
  emailWidth: 660,
  emailBackgroundColor: "#000000",
  hyperlinkColor: "#0066cc",
  text: {
    "font-family": "Helvetica, Arial, sans-serif",
    "font-size": 14,
    "line-height": 1.5,
  },
},

The per-setting reset controls require no configuration and are available automatically. For the full list of supported keys, please refer to the documentation.

Rating Block

The Rating Block is now available as a beta feature. It lets you collect feedback from recipients directly inside the email. Each segment of the Rating block is a clickable link, so when a recipient picks a score, their choice is delivered to your backend through the URL they open. It's highly configurable and fully translatable, so you can shape it to fit your template and your audience.

Why It Matters

Recipients can rate without leaving the email, which makes them far more likely to respond than if they first had to open a separate landing page. And because it's a dedicated block, your users can add a survey or CSAT prompt by dragging it in, with no custom markup or Merge Tag setup.

How To Enable

Beta features are opt-in and disabled by default. Add the betaFeatures object to your TOPOL_OPTIONS and set the flag to true:

ts
betaFeatures: {
  rating: true,
},

For full details, please refer to the documentation.

Improvements

Clipboard Image Support

You can now paste images straight from your clipboard with Cmd/Ctrl + V instead of saving the file to disk and browsing for it. There are two paste targets:

  • The File Manager — pasting while the File Manager is open uploads the image into the currently open folder.
  • The selected image block — pasting with an image block selected on the canvas replaces that block's image.

Why It Matters

Pasting is the fastest path from "I have an image" to "it's in my template." This removes the round-trip of saving a screenshot to disk and locating it in a file picker, which is especially handy for quick screenshots and copied product imagery.

Programmatic Dark Mode Toggle

Host applications can now toggle the Dark Mode preview programmatically with the new TopolPlugin.toggleDarkMode() method. Until now, the dark mode toggle lived only in the editor's own preview toolbar. This exposes the same action to your host page so you can drive it from your own theming UI.

How To Enable

Call the method on the TopolPlugin instance. The toggle only has a visible effect while the editor is in Preview mode:

js
window.TopolPlugin.toggleDarkMode();

For full details, please refer to the documentation.

onPreviewClose Callback

A new onPreviewClose callback fires when the user exits Preview mode and returns to the editor. Previously there was only a signal on the way into preview (via onPreview(html)); this closes that gap, so a host can, for example, hide a toolbar it was showing during preview.

How To Enable

Add the handler to the callbacks object in your TOPOL_OPTIONS:

ts
callbacks: {
  onPreviewClose() {
    // The user has left Preview mode.
  },
},

This is purely additive - the existing onPreview(html) callback is unchanged.

Refreshed Image Editor Icons

The Plugin's built-in image editor has a refreshed, more intuitive set of icons. The updated iconography makes the editing tools easier to recognize at a glance and brings the image editor visually in line with the rest of the Plugin.

Bugfixes

  • Fixed a 403 Forbidden error that prevented saving cropped images for integrations using their own AWS S3 or Cloudflare R2 storage bucket.
  • Fixed a "double snap" glitch in the editor's drag-and-drop snapping behavior that could occur right after a block was deleted.