Commit Graph

79 Commits (2b56e249530e1e2023be877ce2e6930be0390a61)

Author SHA1 Message Date
Caridy 687db9f99b [perf-optimization] skip unnecessary work in modules that can support memoization of the data structure consumed by them
Simon Friis Vindum 7da866270a Merge pull request from aronallen/fix/ie11svg
use parentNode instead of parentElement
Aron Allen d8bd32f1e5 updated description of test
Aron Allen 166b8eca23 added test
teddddd 72cdb52e1d Fix Custom Element creation when tag name begins with 'svg'
The check at https://github.com/snabbdom/snabbdom/blob/f79af828/src/h.ts#L37
is too loose, and ends up adding the svg namespace to elements with
tagNames such as svg-icon, which prevents web components lifecycle
callbacks from firing.
José Luis Lafuente ccbf30f0c6
Add support for css variables
Simon Friis Vindum cd952ac52f Merge pull request from zhulongzheng/patch
Fix bug of updating one child with same key but different sel.
Alexandre Galays 5a5c0dc121 Allow h(sel, data, node) and h(sel, node) shortcut notations
zhulongzheng 8ffb4eb91a Fix bug of updating one child with same key but different sel
Andre Staltz 091dc5f961
Migrate from CommonJS modules to ES2015 modules
Matt Kaemmerer 7399632795 Add test for namespaced attributes
Simon Friis Vindum 9a309df04f Merge pull request from fix-fix/fix-boolean-attributes
Don't treat Object.prototype properties as boolean attributes
Andrew Murray 1b48d39e56 Fixed typos
fix-fix 4fe2f5fedf Add tests for attributes module
Andre Staltz c091c59c59 Fix patch() so that the root is patched instead of recreated
Previously, patch(element, vnode) would create a new element every time
for the top-level element, unless the top-level vnode had no id and
className. This is because emptyNodeAt() would create a vnode with sel
equal to the element's tagName, NOT including id and className.

This seems to be just a small fix, however this fix was crucial to get
Web Components (custom elements) working with Cycle.js, because the
custom element's "create" callback was being called infinitely and
recursively, because snabbdom was creating the top-level element every
time, even if the sel of oldVNode and vnode were supposed to be the
same.
Kayo Phoenix 174941c6a4 Added vnode as last argument to event handler
K. 8ca33c916b New implementation of eventlisteners module
Harry Wincup 68d878c274 Additional namespace tests for SVG foreignObject case
paldepind 1ce3cd30d5 Update thunk API and documentation
paldepind 7075aea1d1 New thunk implementation
hville 4ab41ba8d2 Completed tests and matched indendation to spaces
hville 5b164c780a new dataset Module and Test
paldepind a26db8fc5f Only invoke remove hook on root with parent element
paldepind ce14417216 Merge branch 'master' of https://github.com/kay999/snabbdom into replace-root
Ray Di Ciaccio ee00ffa21b When a vnode has 'text' property, remove the text node if vnode ispatched with children.
Ray Di Ciaccio 116950cd5b When a vnode has 'text' property, remove the text node if patched with no 'text'.
Ray Di Ciaccio 0addf72bda Add failing test for iframes.
Sylvain Prat 2279d3cade More tests: nested thunks does not work yet
Sylvain Prat 29eb18108c Repaired broken root init
Sylvain Prat 2341c26e26 Don't assume the root node won't be replaced
Garth Williams 0425b2e5ed Ensure that class, props and style artefacts are not left after re-render
Sylvain Prat 3305f8f253 Fixed tests again
Sylvain Prat 645303e986 Improved/fixed some tests
Sylvain Prat d92dd1f0ce Removed forgotten console.log calls
Sylvain Prat 2f878813b1 Added a bunch of failing tests for thunks
paldepind d0a2f5176e Invoke event listener with several arguments in array
paldepind a6a814c9eb Snabbdom will always remove an element from its proper parent, even if the element has been changed
paldepind f72e48dc05 Do not invoke module `remove` hook for text nodes
paldepind 35de88b833 Replace element if it has a parent
paldepind 4c1893423a Add attachTo helper
paldepind 26a62cab4d Add postpatch hook
paldepind 7344b0aca5 Do not invoke `destroy` hook for text nodes
paldepind 24206f430a Add attachTo module
paldepind f1ee781962 Elements can be created with namespace
paldepind c67611f509 Non array event listeners can be replaced
paldepind 23344df6b8 Pass empty VNode to `create` hook set on element
paldepind 35335d6d64 Old vnode is passed to update hook
paldepind b4b90ac609 Fix bug regarding changed text nodes
paldepind cd7eb76a09 Insert created elements at correct location
Simon Friis Vindum 5fa91d590e Merge pull request from jails/master
Add failed spec when using mixed keyed & non-keyed virtual nodes.