mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 03:22:43 +00:00 
			
		
		
		
	 32e27bc7fa
			
		
	
	
		32e27bc7fa
		
	
	
	
	
		
			
			This is almost guaranteed not to be all CEReactions we need to add, but this puts us in a much better situation.
		
			
				
	
	
		
			66 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| #import <DOM/Document.idl>
 | |
| #import <DOM/Element.idl>
 | |
| #import <DOM/EventTarget.idl>
 | |
| 
 | |
| // https://dom.spec.whatwg.org/#node
 | |
| [Exposed=Window]
 | |
| interface Node : EventTarget {
 | |
| 
 | |
|     readonly attribute unsigned short nodeType;
 | |
|     readonly attribute DOMString nodeName;
 | |
| 
 | |
|     readonly attribute USVString baseURI;
 | |
| 
 | |
|     boolean hasChildNodes();
 | |
|     [SameObject] readonly attribute NodeList childNodes;
 | |
|     readonly attribute Node? firstChild;
 | |
|     readonly attribute Node? lastChild;
 | |
|     readonly attribute Node? previousSibling;
 | |
|     readonly attribute Node? nextSibling;
 | |
|     readonly attribute Node? parentNode;
 | |
|     readonly attribute Element? parentElement;
 | |
|     readonly attribute boolean isConnected;
 | |
|     readonly attribute Document? ownerDocument;
 | |
|     Node getRootNode(optional GetRootNodeOptions options = {});
 | |
| 
 | |
|     [CEReactions] attribute DOMString? nodeValue;
 | |
|     // FIXME: [LegacyNullToEmptyString] is not allowed on nullable types as per the Web IDL spec.
 | |
|     //        However, we only apply it to setters, so this works as a stop gap.
 | |
|     //        Replace this with something like a special cased [LegacyNullToEmptyString].
 | |
|     [LegacyNullToEmptyString, CEReactions] attribute DOMString? textContent;
 | |
| 
 | |
|     [CEReactions] Node appendChild(Node node);
 | |
|     [ImplementedAs=pre_insert, CEReactions] Node insertBefore(Node node, Node? child);
 | |
|     [CEReactions] Node replaceChild(Node node, Node child);
 | |
|     [ImplementedAs=pre_remove, CEReactions] Node removeChild(Node child);
 | |
|     [ImplementedAs=clone_node_binding, CEReactions] Node cloneNode(optional boolean deep = false);
 | |
|     boolean contains(Node? other);
 | |
|     boolean isEqualNode(Node? otherNode);
 | |
|     boolean isSameNode(Node? otherNode);
 | |
| 
 | |
|     const unsigned short ELEMENT_NODE = 1;
 | |
|     const unsigned short ATTRIBUTE_NODE = 2;
 | |
|     const unsigned short TEXT_NODE = 3;
 | |
|     const unsigned short CDATA_SECTION_NODE = 4;
 | |
|     const unsigned short ENTITY_REFERENCE_NODE = 5;
 | |
|     const unsigned short ENTITY_NODE = 6;
 | |
|     const unsigned short PROCESSING_INSTRUCTION_NODE = 7;
 | |
|     const unsigned short COMMENT_NODE = 8;
 | |
|     const unsigned short DOCUMENT_NODE = 9;
 | |
|     const unsigned short DOCUMENT_TYPE_NODE = 10;
 | |
|     const unsigned short DOCUMENT_FRAGMENT_NODE = 11;
 | |
|     const unsigned short NOTATION_NODE = 12;
 | |
| 
 | |
|     unsigned short compareDocumentPosition(Node? otherNode);
 | |
|     // Node.compareDocumentPosition() constants
 | |
|     const unsigned short DOCUMENT_POSITION_DISCONNECTED = 1;
 | |
|     const unsigned short DOCUMENT_POSITION_PRECEDING = 2;
 | |
|     const unsigned short DOCUMENT_POSITION_FOLLOWING = 4;
 | |
|     const unsigned short DOCUMENT_POSITION_CONTAINS = 8;
 | |
|     const unsigned short DOCUMENT_POSITION_CONTAINED_BY = 16;
 | |
|     const unsigned short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 32;
 | |
| };
 | |
| 
 | |
| dictionary GetRootNodeOptions {
 | |
|     boolean composed = false;
 | |
| };
 |