File tree Expand file tree Collapse file tree 2 files changed +11
-3
lines changed Expand file tree Collapse file tree 2 files changed +11
-3
lines changed Original file line number Diff line number Diff line change @@ -272,6 +272,7 @@ apply_dom_diff = (dom, diff) => {
272
272
let offsets = new Map ( )
273
273
274
274
diff . forEach ( ( change ) => {
275
+ let node = dom
275
276
const [ path , newValue ] = [ change . range , change . content ]
276
277
const indexes = [ ]
277
278
let insert_position = null
@@ -280,9 +281,16 @@ apply_dom_diff = (dom, diff) => {
280
281
insert_position = 1 * _2
281
282
} else indexes . push ( 1 * _1 )
282
283
} )
283
- if ( insert_position == null ) insert_position = indexes . pop ( )
284
284
285
- let node = dom
285
+ if ( indexes . length === 0 ) {
286
+ // If there are no indicies, we assume we're deleting everything
287
+ while ( node . firstChild ) node . removeChild ( node . firstChild )
288
+ offsets . set ( node , 0 )
289
+ node . innerHTML = newValue
290
+ return
291
+ }
292
+
293
+ if ( insert_position == null ) insert_position = indexes . pop ( )
286
294
287
295
for ( let i = 0 ; i < indexes . length ; i ++ ) {
288
296
node = Array . from ( node . childNodes ) [ indexes [ i ] ]
Original file line number Diff line number Diff line change 1
1
{
2
2
"name" : " @braidjs/dom-diff" ,
3
- "version" : " 0.0.9 " ,
3
+ "version" : " 0.0.10 " ,
4
4
"description" : " utilities for diffing html doms" ,
5
5
"author" : " Braid Working Group" ,
6
6
"repository" : " braid-org/dom-diff" ,
You can’t perform that action at this time.
0 commit comments