@seliseblocks/mailcraft 0.2.19 → 0.2.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/mailcraft-editor.bundle.js +80 -80
  3. package/dist/mailcraft-editor.bundle.js.map +3 -3
  4. package/examples/templates/activate-your-account.html +5 -5
  5. package/examples/templates/back-in-stock.html +2 -2
  6. package/examples/templates/cart-left-behind.html +2 -2
  7. package/examples/templates/community-giveaway.html +2 -2
  8. package/examples/templates/frontend-futures-invite.html +3 -3
  9. package/examples/templates/give-25-get-25.html +3 -3
  10. package/examples/templates/invoice-paid.html +3 -3
  11. package/examples/templates/meet-nova-launch.html +3 -3
  12. package/examples/templates/mega-weekend-sale.html +1 -1
  13. package/examples/templates/order-confirmed.html +2 -2
  14. package/examples/templates/rate-your-headphones.html +2 -2
  15. package/examples/templates/reset-your-password.html +3 -3
  16. package/examples/templates/thankyou-promo-code.html +2 -2
  17. package/examples/templates/the-sunday-brief.html +2 -2
  18. package/examples/templates/welcome-to-your-workspace.html +4 -4
  19. package/examples/templates/your-order-shipped.html +3 -3
  20. package/examples/templates/your-password-was-changed.html +4 -4
  21. package/examples/templates/your-signin-code.html +4 -4
  22. package/examples/vanilla.html +50 -50
  23. package/package.json +1 -1
  24. package/src/core/blocks.js +2 -2
  25. package/src/core/editor-core.js +2 -2
  26. package/src/core/export.js +20 -2
  27. package/src/core/i18n/index.js +83 -83
  28. package/src/core/ids.js +1 -1
  29. package/src/core/import-html.js +8 -2
  30. package/src/core/parse.js +10 -10
  31. package/src/core/placeholder.js +15 -15
  32. package/src/core/sanitize.js +1 -1
  33. package/src/core/variables.js +11 -11
  34. package/src/render/block-body.js +1 -1
  35. package/src/render/focus-preserve.js +158 -158
package/CHANGELOG.md CHANGED
@@ -4,6 +4,12 @@ All notable changes to `@seliseblocks/mailcraft` are documented here.
4
4
 
5
5
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and the project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.2.20] — 2026-09-13
8
+
9
+ ### Fixed
10
+ - **Merge tags ship tight — `{{first_name}}`, never `{{ first_name }}`.** The padded spelling is valid Handlebars, Mustache and Liquid, but plenty of sending engines substitute with a literal string match, or with a regex that forgets `\s*` — and there a padded tag simply never resolves, so the recipient reads raw braces in the middle of a sentence. Tags inserted from the Data tab and the inline toolbar are now written tight, legacy `[[token]]` drafts migrate to the tight form, and — the part that matters for templates that already exist — the exporter repairs the finished document on the way out, whatever the tag's origin: an old draft, a hand-typed tag, a pasted foreign template. Only padding *inside* the braces goes; whitespace that separates keeps its job, so `{{#if is_premium }}` tightens to `{{#if is_premium}}` and the helper still applies to its expression. A `{{{triple stash}}}`, a `{{! comment }}`, a `{{> partial }}` and CSS (minified or nested, which never puts two opening braces side by side) are all left intact.
11
+ - **A hand-written `{{/if }}` is recognised as a block end again.** The importer's logic-tag patterns were asymmetric: the open tag already tolerated `{{#if x }}`, while the close tag accepted `{{/if}}` and nothing else — so a foreign or hand-edited close tag imported as an ordinary text block and silently left the condition open, swallowing everything after it into the branch. Both ends now tolerate padding. This could not be left to the export-time repair above, because nothing tightens what arrives through import.
12
+
7
13
  ## [0.2.19] — 2026-09-13
8
14
 
9
15
  A housekeeping release with one theme: the package stops shipping other people's marks, and stops reaching the network on its own.