mirror of
https://github.com/RGBCube/serenity
synced 2025-06-01 07:28:11 +00:00

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>;
|
|
};
|