mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 21:22:46 +00:00 
			
		
		
		
	 3275d659bf
			
		
	
	
		3275d659bf
		
	
	
	
	
		
			
			This makes use of the new [UseNewAKString] extended attribute. Using Vector storage will make it easier to make this interface into an IDL iterable. It seems the reason it didn't use Vector originally was due to awkward DeprecatedString -> String conversions.
		
			
				
	
	
		
			23 lines
		
	
	
	
		
			1,009 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
	
		
			1,009 B
		
	
	
	
		
			Text
		
	
	
	
	
	
| #import <FileAPI/Blob.idl>
 | |
| #import <FileAPI/File.idl>
 | |
| #import <HTML/HTMLFormElement.idl>
 | |
| 
 | |
| typedef (File or USVString) FormDataEntryValue;
 | |
| 
 | |
| // https://xhr.spec.whatwg.org/#interface-formdata
 | |
| [Exposed=Window, UseNewAKString]
 | |
| interface FormData {
 | |
|     constructor(optional HTMLFormElement form);
 | |
| 
 | |
|     undefined append(USVString name, USVString value);
 | |
|     undefined append(USVString name, Blob blobValue, optional USVString filename);
 | |
|     undefined delete(USVString name);
 | |
|     // FIXME: The BindingsGenerator is not able to resolve the Variant's visit for FormDataEntryValue when
 | |
|     // the return value for one function returns an optional FormDataEntryValue while the others does not.
 | |
|     (File or USVString)? get(USVString name);
 | |
|     sequence<FormDataEntryValue> getAll(USVString name);
 | |
|     boolean has(USVString name);
 | |
|     undefined set(USVString name, USVString value);
 | |
|     undefined set(USVString name, Blob blobValue, optional USVString filename);
 | |
|     // FIXME: iterable<USVString, FormDataEntryValue>;
 | |
| };
 |