From c3f73f5eb858e04a9804d94ab167c775518d6204 Mon Sep 17 00:00:00 2001 From: ncoley Date: Sun, 26 Mar 2017 19:44:01 -0400 Subject: [PATCH 1/5] Add missing methods for FormData type --- baselines/dom.generated.d.ts | 7 ++++++- inputfiles/addedTypes.json | 35 +++++++++++++++++++++++++++++++++ inputfiles/overridingTypes.json | 7 +++++++ 3 files changed, 48 insertions(+), 1 deletion(-) diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index 95fad6275..a8051e89b 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -3796,7 +3796,12 @@ declare var FocusNavigationEvent: { } interface FormData { - append(name: any, value: any, blobName?: string): void; + append(name: any, value: any, fileName?: string): void; + delete(name: any): void; + get(name: any): any; + getAll(name: any): any; + has(name: any): any; + set(name: any, value: any, fileName?: string): void; } declare var FormData: { diff --git a/inputfiles/addedTypes.json b/inputfiles/addedTypes.json index 61209eebc..e4f01808e 100644 --- a/inputfiles/addedTypes.json +++ b/inputfiles/addedTypes.json @@ -1534,5 +1534,40 @@ "name": "getElementById", "flavor": "DOM", "signatures": ["getElementById(elementId: string): HTMLElement | null"] + }, + { + "kind": "method", + "interface": "FormData", + "name": "delete", + "flavor": "Web", + "signatures": ["delete(name: any): void"] + }, + { + "kind": "method", + "interface": "FormData", + "name": "get", + "flavor": "Web", + "signatures": ["get(name: any): any"] + }, + { + "kind": "method", + "interface": "FormData", + "name": "getAll", + "flavor": "Web", + "signatures": ["getAll(name: any): any"] + }, + { + "kind": "method", + "interface": "FormData", + "name": "has", + "flavor": "Web", + "signatures": ["has(name: any): any"] + }, + { + "kind": "method", + "interface": "FormData", + "name": "set", + "flavor": "Web", + "signatures": ["set(name: any, value: any, fileName?: string): void"] } ] diff --git a/inputfiles/overridingTypes.json b/inputfiles/overridingTypes.json index cb84c43a2..7aa373bbd 100644 --- a/inputfiles/overridingTypes.json +++ b/inputfiles/overridingTypes.json @@ -1016,5 +1016,12 @@ "interface": "DOMImplementation", "name": "createDocument", "signatures": ["createDocument(namespaceURI: string | null, qualifiedName: string | null, doctype: DocumentType | null): Document"] + }, + { + "kind": "method", + "interface": "FormData", + "name": "append", + "flavor": "Web", + "signatures": ["append(name: any, value: any, fileName?: string): void"] } ] From 53ffc3fa20383a3026872e0a8d8bb3cb193172c2 Mon Sep 17 00:00:00 2001 From: ncoley Date: Tue, 28 Mar 2017 21:06:12 -0400 Subject: [PATCH 2/5] Update FormData methods to match XMLHttpRequest Standard --- baselines/dom.generated.d.ts | 12 ++++++------ inputfiles/addedTypes.json | 10 +++++----- inputfiles/overridingTypes.json | 2 +- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index a8051e89b..a320b2125 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -3796,12 +3796,12 @@ declare var FocusNavigationEvent: { } interface FormData { - append(name: any, value: any, fileName?: string): void; - delete(name: any): void; - get(name: any): any; - getAll(name: any): any; - has(name: any): any; - set(name: any, value: any, fileName?: string): void; + append(name: string, value: any, fileName?: string): void; + delete(name: string): void; + get(name: string): any; + getAll(name: string): any[]; + has(name: string): boolean; + set(name: string, value: any, fileName?: string): void; } declare var FormData: { diff --git a/inputfiles/addedTypes.json b/inputfiles/addedTypes.json index e4f01808e..66c6c155f 100644 --- a/inputfiles/addedTypes.json +++ b/inputfiles/addedTypes.json @@ -1540,34 +1540,34 @@ "interface": "FormData", "name": "delete", "flavor": "Web", - "signatures": ["delete(name: any): void"] + "signatures": ["delete(name: string): void"] }, { "kind": "method", "interface": "FormData", "name": "get", "flavor": "Web", - "signatures": ["get(name: any): any"] + "signatures": ["get(name: string): any"] }, { "kind": "method", "interface": "FormData", "name": "getAll", "flavor": "Web", - "signatures": ["getAll(name: any): any"] + "signatures": ["getAll(name: string): any[]"] }, { "kind": "method", "interface": "FormData", "name": "has", "flavor": "Web", - "signatures": ["has(name: any): any"] + "signatures": ["has(name: string): boolean"] }, { "kind": "method", "interface": "FormData", "name": "set", "flavor": "Web", - "signatures": ["set(name: any, value: any, fileName?: string): void"] + "signatures": ["set(name: string, value: any, fileName?: string): void"] } ] diff --git a/inputfiles/overridingTypes.json b/inputfiles/overridingTypes.json index 7aa373bbd..818be0e05 100644 --- a/inputfiles/overridingTypes.json +++ b/inputfiles/overridingTypes.json @@ -1022,6 +1022,6 @@ "interface": "FormData", "name": "append", "flavor": "Web", - "signatures": ["append(name: any, value: any, fileName?: string): void"] + "signatures": ["append(name: string, value: any, fileName?: string): void"] } ] From 2e50da8032076475a2c68d0fca394d7c2fdd48a7 Mon Sep 17 00:00:00 2001 From: ncoley Date: Tue, 28 Mar 2017 21:46:12 -0400 Subject: [PATCH 3/5] Replace any with appropriate types for FormData methods --- baselines/dom.generated.d.ts | 8 ++++---- inputfiles/addedTypes.json | 6 +++--- inputfiles/overridingTypes.json | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index a320b2125..67d0e5b0f 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -3796,12 +3796,12 @@ declare var FocusNavigationEvent: { } interface FormData { - append(name: string, value: any, fileName?: string): void; + append(name: string, value: string | blob, fileName?: string): void; delete(name: string): void; - get(name: string): any; - getAll(name: string): any[]; + get(name: string): FormDataEntryValue | null; + getAll(name: string): FormDataEntryValue[]; has(name: string): boolean; - set(name: string, value: any, fileName?: string): void; + set(name: string, value: string | blob, fileName?: string): void; } declare var FormData: { diff --git a/inputfiles/addedTypes.json b/inputfiles/addedTypes.json index 66c6c155f..e7ad839f3 100644 --- a/inputfiles/addedTypes.json +++ b/inputfiles/addedTypes.json @@ -1547,14 +1547,14 @@ "interface": "FormData", "name": "get", "flavor": "Web", - "signatures": ["get(name: string): any"] + "signatures": ["get(name: string): FormDataEntryValue | null"] }, { "kind": "method", "interface": "FormData", "name": "getAll", "flavor": "Web", - "signatures": ["getAll(name: string): any[]"] + "signatures": ["getAll(name: string): FormDataEntryValue[]"] }, { "kind": "method", @@ -1568,6 +1568,6 @@ "interface": "FormData", "name": "set", "flavor": "Web", - "signatures": ["set(name: string, value: any, fileName?: string): void"] + "signatures": ["set(name: string, value: string | blob, fileName?: string): void"] } ] diff --git a/inputfiles/overridingTypes.json b/inputfiles/overridingTypes.json index 818be0e05..b9012397e 100644 --- a/inputfiles/overridingTypes.json +++ b/inputfiles/overridingTypes.json @@ -1022,6 +1022,6 @@ "interface": "FormData", "name": "append", "flavor": "Web", - "signatures": ["append(name: string, value: any, fileName?: string): void"] + "signatures": ["append(name: string, value: string | blob, fileName?: string): void"] } ] From 86cee0679b4f3b5b2440168e1e5e1bfaf98908d9 Mon Sep 17 00:00:00 2001 From: ncoley Date: Tue, 28 Mar 2017 22:02:33 -0400 Subject: [PATCH 4/5] Add typedef for FormDataEntryValue --- baselines/dom.generated.d.ts | 3 ++- baselines/webworker.generated.d.ts | 3 ++- inputfiles/addedTypes.json | 5 +++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index 67d0e5b0f..dec4420f4 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -14945,4 +14945,5 @@ type ScrollLogicalPosition = "start" | "center" | "end" | "nearest"; type IDBValidKey = number | string | Date | IDBArrayKey; type BufferSource = ArrayBuffer | ArrayBufferView; type MouseWheelEvent = WheelEvent; -type ScrollRestoration = "auto" | "manual"; \ No newline at end of file +type ScrollRestoration = "auto" | "manual"; +type FormDataEntryValue = string | File; \ No newline at end of file diff --git a/baselines/webworker.generated.d.ts b/baselines/webworker.generated.d.ts index fb9358fc0..4d9f37914 100644 --- a/baselines/webworker.generated.d.ts +++ b/baselines/webworker.generated.d.ts @@ -1745,4 +1745,5 @@ type IDBKeyPath = string; type RequestInfo = Request | string; type USVString = string; type IDBValidKey = number | string | Date | IDBArrayKey; -type BufferSource = ArrayBuffer | ArrayBufferView; \ No newline at end of file +type BufferSource = ArrayBuffer | ArrayBufferView; +type FormDataEntryValue = string | File; \ No newline at end of file diff --git a/inputfiles/addedTypes.json b/inputfiles/addedTypes.json index e7ad839f3..0870f229b 100644 --- a/inputfiles/addedTypes.json +++ b/inputfiles/addedTypes.json @@ -1535,6 +1535,11 @@ "flavor": "DOM", "signatures": ["getElementById(elementId: string): HTMLElement | null"] }, + { + "kind": "typedef", + "name": "FormDataEntryValue", + "type": "string | File" + }, { "kind": "method", "interface": "FormData", From 0f76e1f01b43b671ff9e6f0f5341e50d8d8c128e Mon Sep 17 00:00:00 2001 From: ncoley Date: Wed, 29 Mar 2017 08:55:01 -0400 Subject: [PATCH 5/5] Capitalize Blob in FormData type methods --- baselines/dom.generated.d.ts | 4 ++-- inputfiles/addedTypes.json | 2 +- inputfiles/overridingTypes.json | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index dec4420f4..1bceb90b7 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -3796,12 +3796,12 @@ declare var FocusNavigationEvent: { } interface FormData { - append(name: string, value: string | blob, fileName?: string): void; + append(name: string, value: string | Blob, fileName?: string): void; delete(name: string): void; get(name: string): FormDataEntryValue | null; getAll(name: string): FormDataEntryValue[]; has(name: string): boolean; - set(name: string, value: string | blob, fileName?: string): void; + set(name: string, value: string | Blob, fileName?: string): void; } declare var FormData: { diff --git a/inputfiles/addedTypes.json b/inputfiles/addedTypes.json index 0870f229b..2e3043f04 100644 --- a/inputfiles/addedTypes.json +++ b/inputfiles/addedTypes.json @@ -1573,6 +1573,6 @@ "interface": "FormData", "name": "set", "flavor": "Web", - "signatures": ["set(name: string, value: string | blob, fileName?: string): void"] + "signatures": ["set(name: string, value: string | Blob, fileName?: string): void"] } ] diff --git a/inputfiles/overridingTypes.json b/inputfiles/overridingTypes.json index b9012397e..59e285d8d 100644 --- a/inputfiles/overridingTypes.json +++ b/inputfiles/overridingTypes.json @@ -1022,6 +1022,6 @@ "interface": "FormData", "name": "append", "flavor": "Web", - "signatures": ["append(name: string, value: string | blob, fileName?: string): void"] + "signatures": ["append(name: string, value: string | Blob, fileName?: string): void"] } ]