- Fix incorrect index references when returning a cloned tree from onBeforeElUpdated
- Allow returning a new fromEl tree from onBeforeElUpdated to be used morph for that branch
- Fix morphing duplicate ids of incompatible tags
- Pass toEl as second argument to
skipFromChildren
callback
- Add new
addChild
andskipFromChildren
callbacks to allow customization of how new children are added to a parent as well as preserving the from tree when indexing changes for diffing.
- Fix merge attrs with multiple properties PR #175
- Multiple forms duplication PR #174
- Pr/167 - Allow document fragment patching PR #168
- Faster attrs merge PR #165
- Minor improvements PR #164
- Chore: Alternate refactor to #155 - Move isSameNode check PR #156
- Use attribute name with the prefix in XMLNS namespace PR #133
- fixed the string with space trouble PR #161
- Template support for creating element from string PR #159
- Enhancement: Fix id key removal from tree when the element with key is inside a document fragment node (ex: shadow dom) PR #119
- Minor: small refactor to morphEl to own function [PR #149](small refactor to morphEl to own function)
- selectNode for range b/c documentElement not avail in Safari commit
- clarify getNodeKey docs PR #151
- New dist for 2.5.1. My bad!
- Bugfix: Fix bug where wrong select option would get selected. PR #117
- Enhancement: Publish es6 format as morphdom-esm.js PR #141
- Enhancement: Start removing old browser support code paths PR #140
- Bug: Fixed losing cursor position in Edge (PR #100 by @zastavnitskiy)
- Changes to improve code maintainability. Single file is now split out into multiple modules and rollup is used to build the distribution files.
- IE-specific bug: fix
<textarea>
withplaceholder
attribute on IE (PR #87 by @ahdinosaur) - Fixed #92 -
morphdom
fails to discard all removed child nodes when first child element is keyed - Docs: fixed docs for
onBeforeNodeAdded
(function should return a node) (PR #91 by @MelleB)
- Allow
toNode.assignAttributes
full control
- Fixed #85 - Siblings not diffed/patched after
isSameNode()
returnstrue
(PR #86 by @AutoSponge)
- Fixed #84 - unexpected repaint of
<select>
tag
- Added simple mechanism to support using cached nodes (Pull Request #81 by @AutoSponge)
- Added support for diffing a real DOM tree with a virtual DOM tree. See: ./docs/virtual-dom.md
- Fixed #78 - Elements under
onBeforeElChildrenUpdated
element removed if they haveid
set
- Small optimization and more tests
- Fixed #47 - Detect and handle reorder of siblings
onNodeAdded
is now called for all on child nodes and not just the root node (closes PR #57)- Simplified code and reduced overall code size
- NOTE: Performance is about the same or slightly better than the previous version of
morphdom
based on benchmarks - Added examples:./examples/
onNodeAdded
is now called for all on child nodes (not just the root node)- Removed options:
onBeforeMorphEl
(useonBeforeElUpdated
instead)onBeforeMorphElChildren
(useonBeforeElChildrenUpdated
instead)
- Fixes #71 - form elements lose class when removing name attribute in MSIE 8-11 and MS Edge (PR #73 by @karfcz)
onNodeDiscarded
is now correctly called when tag name mismatch for keyed el
- Fixes #72 - Compare tag name when matching els by ID
- Fixes #66 by treating comment nodes identically to text nodes (PR #67 by @cfinucane)
- Fixes #63 - Do attr lookup on localName if available
- Use hard coded constants for node types for improved browser compatibility
- Make attributes and elements namespace-aware (@shawnbot)
- Upgraded to
lasso@^2
- Fixed tests
- Support full page html diff (@DylanPiercey)
- Improve node lifecycle options (@callum)
- Checking in
dist/
files into the git repo - Deleted
.cache/
from npm package
- Added a minified UMD distribution file
- Minor internal changes
- Updated
package.json
- Fixes #32 - Support for IE7+
- Fixes #30 - Not all keyed elements are matched up correctly in some cases. Walk target DOM els that are moved over to match all keyed els.
- Added
getNodeKey
option - Pull Request by Riim
- Fixes #21 - Caret position should not change if value did not change
- Fixes #19 - Textarea problems