Skip to content

v0.3.100

Latest

Choose a tag to compare

@amirsaam amirsaam released this 12 Jul 04:03

Changelog

Features

  • registerGlobal(_:on:src:) overload — external JS file support for Alpine globals
  • x-model debounce and throttle modifiers

Fixes

  • Escape selector strings in Morph to prevent broken/injected JS
  • Escape src in registerGlobal(_:on:src:) to prevent broken/injected JS
  • Resolve findMorphMarker throwing on comment markers
  • Use script { HTMLRaw(...) } for Morph JS injection (proper HTML escaping)
  • Escape single quotes in registerGlobal on: value
  • Deduplicate plugins in setupAlpine
  • Wrap await in jsCommand in async IIFE
  • Rename HTMLAttribute+AlpineMorphHelper+AlpineMorph (fixes module structure)

Refactors

  • Centralize directive construction into AlpineDirectiveModifier + alpineDirective() helper
  • Extract shared escapeForJSString / escapeForTemplateLiteral across core + plugins
  • Add String rawValue to AlpineGlobals enum
  • Deduplicate renderToString into shared TestUtilities target

Testing

  • Convert core, plugin, and Morph tests to snapshot fixtures (196 tests total)
  • Coverage for: MorphOptions static factories, registerGlobal escaping, setupAlpine CDN URLs, Morph escaping

CI

  • Validate snapshot fixture JavaScript syntax via Node.js new Function()

Docs

  • Fix .camel/.dot doc comments in OnModifier and Bind namespace
  • Fix x-transition origin modifier example
  • Correct .cmd modifier documentation
  • Document keyword escape reasons for setup, loop, when
  • Add missing Example blocks to Cloak, Ignore, Modelable, Id