| OLD | NEW |
| 1 <script> | 1 <script> |
| 2 const kEntityMap = new Map([ | 2 const kEntityMap = new Map([ |
| 3 ['\u00a0', ' '], | 3 ['\u00a0', ' '], |
| 4 ['&', '&'], | 4 ['&', '&'], |
| 5 ['<', '<'], | 5 ['<', '<'], |
| 6 ['>', '>'], | 6 ['>', '>'], |
| 7 ['"', '"'], | 7 ['"', '"'], |
| 8 ]); | 8 ]); |
| 9 | 9 |
| 10 const kTextEscapePattern = /&|<|>|"|\u00a0/g; | 10 const kTextEscapePattern = /&|<|>|"|\u00a0/g; |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 56 buffer += serializeElementChildren(element); | 56 buffer += serializeElementChildren(element); |
| 57 buffer += '</' + element.tagName + '>'; | 57 buffer += '</' + element.tagName + '>'; |
| 58 return buffer; | 58 return buffer; |
| 59 } | 59 } |
| 60 | 60 |
| 61 function serializeNode(node) { | 61 function serializeNode(node) { |
| 62 if (node instanceof Text) | 62 if (node instanceof Text) |
| 63 return escapeText(node.data, kTextEscapePattern); | 63 return escapeText(node.data, kTextEscapePattern); |
| 64 if (node instanceof Element) | 64 if (node instanceof Element) |
| 65 return serializeElement(node); | 65 return serializeElement(node); |
| 66 if (node instanceof Document) | 66 if (node instanceof Document || node instanceof ShadowRoot) |
| 67 return serializeChildren(node.firstChild); | 67 return serializeChildren(node.firstChild); |
| 68 throw new Error("Cannot serialize node"); | 68 throw new Error("Cannot serialize node"); |
| 69 } | 69 } |
| 70 | 70 |
| 71 module.exports = { | 71 module.exports = { |
| 72 serializeNode: serializeNode, | 72 serializeNode: serializeNode, |
| 73 }; | 73 }; |
| 74 </script> | 74 </script> |
| OLD | NEW |