⌈⌋ ⎇ branch:  Bitrhythm


Hex Artifact Content

Artifact 325f630962dda2ed70aeea9e823aad11bffc8209fa2a749e324d2d64b9b82d71:


0000: 2f 2a 2a 0a 20 2a 20 49 6e 73 65 72 74 20 73 61  /**. * Insert sa
0010: 66 65 6c 79 20 61 20 74 61 67 20 74 6f 20 66 69  fely a tag to fi
0020: 78 20 23 31 39 36 32 20 23 31 36 34 39 0a 20 2a  x #1962 #1649. *
0030: 20 40 70 61 72 61 6d 20 20 20 7b 20 48 54 4d 4c   @param   { HTML
0040: 45 6c 65 6d 65 6e 74 20 7d 20 72 6f 6f 74 20 2d  Element } root -
0050: 20 63 68 69 6c 64 72 65 6e 20 63 6f 6e 74 61 69   children contai
0060: 6e 65 72 0a 20 2a 20 40 70 61 72 61 6d 20 20 20  ner. * @param   
0070: 7b 20 48 54 4d 4c 45 6c 65 6d 65 6e 74 20 7d 20  { HTMLElement } 
0080: 63 75 72 72 20 2d 20 6e 6f 64 65 20 74 6f 20 69  curr - node to i
0090: 6e 73 65 72 74 0a 20 2a 20 40 70 61 72 61 6d 20  nsert. * @param 
00a0: 20 20 7b 20 48 54 4d 4c 45 6c 65 6d 65 6e 74 20    { HTMLElement 
00b0: 7d 20 6e 65 78 74 20 2d 20 6e 6f 64 65 20 74 68  } next - node th
00c0: 61 74 20 73 68 6f 75 6c 64 20 70 72 65 63 65 65  at should precee
00d0: 64 20 74 68 65 20 63 75 72 72 65 6e 74 20 6e 6f  d the current no
00e0: 64 65 20 69 6e 73 65 72 74 65 64 0a 20 2a 2f 0a  de inserted. */.
00f0: 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 66  export default f
0100: 75 6e 63 74 69 6f 6e 20 73 61 66 65 49 6e 73 65  unction safeInse
0110: 72 74 28 72 6f 6f 74 2c 20 63 75 72 72 2c 20 6e  rt(root, curr, n
0120: 65 78 74 29 20 7b 0a 20 20 72 6f 6f 74 2e 69 6e  ext) {.  root.in
0130: 73 65 72 74 42 65 66 6f 72 65 28 63 75 72 72 2c  sertBefore(curr,
0140: 20 6e 65 78 74 2e 70 61 72 65 6e 74 4e 6f 64 65   next.parentNode
0150: 20 26 26 20 6e 65 78 74 29 0a 7d                  && next).}